به گروه آموزشی مهندس فرجی خوش آمدید
گروه آموزشی مهندس فرجی|آموزش اتوماسیون صنعتیگروه آموزشی مهندس فرجی|آموزش اتوماسیون صنعتیگروه آموزشی مهندس فرجی|آموزش اتوماسیون صنعتی
09939643266
برای استعلام کلیک کنید

سرویس های ارتباطی MPI

خصوصیات ارتباط S7 communication

3-2 سرویس ارتباطی  S7 communication

با استفاده از این سرویس ارتباطی می‌توان با انجام تنظیمات پیکربندی ارتباط در نرم‌افزار STEP7 و تعریف یک اتصال منطقی از نوع S7-Connection در Netpro بین دو PLC با یکدیگر به تبادل دیتا پرداخت.

3-2-1 خصوصیات سرویس S7 communication

  • این سرویس تحت شبکه‌های MPI، Profibus، Profinet و Industrial Ethernet ارائه شده است.

برخی از خصوصیات این سرویس برای شبکه MPI عبارتست از:

  • این سرویس به صورت سرور/کلاینت و کلاینت/کلاینت عمل می‌کند.
  • PLCهای S7-300 فقط می‌توانند بعنوان سرور مورد استفاده قرار گیرند و توسط یک PLC S7-400، دیتای آنها را خوانده و یا دیتایی در آنها نوشت.
  • در این سرویس نمی‌توان در دو طرف ارتباط از PLC S7-300 استفاده نمود. حداقل باید یکطرف PLC S7-400 قرار داشته باشد.
  • PLCهای S7-400 می‌توانند بعنوان سرور و کلاینت مورد استفاده قرار گیرند. در این صورت می‌توان از همه بلاک‌های ارائه شده توسط این سرویس برای ارتباط استفاده نمود.
  • در این روش تعریف کانکشن در نرم‌افزار Netpro الزامی است. برای تعریف کانکشن، یک PLC بعنوان Local و دیگری بعنوان Partner معرفی می‌شود. امکان تعریف PLC S7-300 بعنوان Local وجود نداشته و فقط می‌توان این نوع PLC را بعنوان Partner معرفی نمود.
  • حجم دیتای قابل تبادل در این سرویس می‌تواند حداکثر برابر 64 K Byte باشد که بسیار بیشتر از سرویس S7 basic communication است.
  • در این روش می‌توان چندین کانکشن مختلف بین یک PLC با یک یا چند PLC دیگر ایجاد نمود. البته باید به تعداد کانکشن‌های مجاز هر CPU نیز توجه نمود.
  • در این سرویس، انتقال و دریافت اطلاعات توسط SFBها و FBهای خاصی صورت می‌پذیرد. لیست این بلاک‌ها در جدول … نشان داده شده است. {رفرنس1}

سرویس‌های ارائه شده توسط سرویس S7 communication جهت شبکه MPI عبارتند از:

  • BSEND / BRCV: ارسال و دریافت اطلاعات به صورت تایید شده با امنیت بالا (مخصوص S7-400)، بر مبنای ارتباط کلاینت/کلاینت
  • USEND / URCV: ارسال و دریافت اطلاعات بدون تایید، بر مبنای ارتباط کلاینت/کلاینت
  • GET/PUT: انجام عمل خواندن و یا نوشتن اطلاعات در یک PLC دیگر بدون برنامه‌نویسی در آن، بر مبنای ارتباط سرور/کلاینت

جدول 1-4 خصوصیات ارتباط S7 communication را نشان می‌دهد.

جدول 1-4

خصوصیات ارتباط S7 communication

جدول 2-4 بلاک‌های مورد استفاده در برنامه‌نویسی ارتباط S7 communication و حداکثر حجم دیتای قابل انتقال توسط آنها را نشان می‌دهد.

جدول 2-4 بلاک‌های مورد استفاده در سرویس S7 communication

نوع سرویس بلاک‌های S7-300 بلاک‌های S7-400 حداکثر حجم دیتا

در S7-300

حداکثر حجم دیتا

در S7-400

BSEND / BRCV FB12/ FB13 SFB12/SFB13 64 Kbytes 64 Kbytes
USEND / URCV FB8/ FB9 SFB8/ SFB9 160 Bytes 440 Bytes
GET/PUT FB14/ FB15 SFB14/ SFB15 160 Bytes 440 Bytes

 

نکته1: مسیر قرارگیری بلاک‌های برای ارتباط از طریق MPI (منظور زمانی که از پورت CPU استفاده می‌شود نه از CP):

  • S7-300: در مسیر Library: Standard Library / Communication Blocks
  • S7-400: در مسیر Library: Standard library / System function blocks

نکته2: بلاک‌های S7-300 زمانی قابل استفاده است که از پورت PN (Profinet) روی CPU استفاده شود و برای شبکه MPI قابل استفاده نیست.

 

تعریف ارتباط از نوع S7-Connection

همانطور که ذکر شد، سرویس S7 communication (S7 Connection) سرویسی است که نیاز به تعریف کانکشن در بخش NetPro دارد. برای این منظور می‌توان به روش زیر عمل نمود:

1- برای هر PLC به طور جداگانه وارد  محیط HW Config شده و تنظیمات سخت‌افزاری لازم را انجام دهید. سپس تنظیمات ارتباط CPU با شبکه MPI را نیز انجام داده و یک آدرس دلخواه به CPU اختصاص دهید. به شکل 1-4 توجه فرمایید. در پایان تنظیمات را Compile نمایید.

محیط HW Config

شکل 1-4

2- در محیط Simatic Manager از منوی Options گزینه Configure Network را انتخاب نمایید. در اینصورت محیط نرم‌افزار NetPro به صورت شکل 2-4 نمایان می‌شود. شکل2-4 حالتی را نشان می‌دهد که دو PLC S7-300 و یک PLC S7-400 به شبکه MPI متصل شده‌اند.

محیط نرم‌افزار NetPro

شکل 2-4

هدف ما در این تمرین، ایجاد ارتباط بین PLC S7-400 با PLC 2 (S7-300) است.

3- ابتدا با موس روی گزینه CPU 414-1 در آیکن مربوط به SIMATIC 400(1) کلیک نموده و سپس از Insert گزینه New Connection را انتخاب نمایید. در اینصورت کادر Insert New Connection به صورت نشان داده شده در شکل 3-4 نمایان می‌شود. در این کادر، در بخش Connection Partner وارد زیرمجموعه PLC 2 شده و گزینه CPU 315-2DP را انتخاب نموده و در بخش Connection، سرویس S7 connection را انتخاب نمایید.

سرویس S7 connection

شکل 3-4

4- روی گزینه Apply کلیک نمایید، در اینصورت کادر Properties- S7 Connection به صورت نشان داده شده در شکل 4-4 نمایان می‌شود. در این شکل، گزینه مهم، کد ID است که بعدا باید در بلاک‌های برنامه‌نویسی وارد شود.

Properties- S7 Connection

شکل 4-4

5- در کادر Properties- S7 Connection روی گزینه OK کلیک نمایید. در اینصورت یک سطر جدید به جدول موجود در نرم‌افزار NetPro افزوده می‌شود. به شکل 5-4 توجه فرمایید.

Properties- S7 Connection

شکل 5-4

6- در پایان از منوی Network گزینه Save And Compile را انتخاب نموده و در کادر باز شده، گزینه Compile Change Only را انتخاب نمایید تا تنظیمات ذخیره‌سازی و Compile شود. در صورتی‌که در این کادر، گزینه Compile and check everything را انتخاب نمایید، همه تنظیمات پیکربندی بررسی و Compile می‌شود.

پیکربندی بررسی و Compile

شکل 6-4

 

آشنایی با بلاک BSEND (FB12/SFB12) (در شبکه MPI مخصوص S7-400)

از این بلاک به‌منظور ارسال دیتا در سمت فرستنده (سرور) استفاده می‌شود. در شکل 7-4 بلاک BSEND (FB12/SFB1) در زبان LAD به همراه پارامترهای آن نشان داده شده است.

بلاک BSEND (FB12/SFB12)

شکل 7-4

جدول 3-4 نیز پارامترهای بلاک BSEND (FB12/SFB1) به همراه عملکرد آنها را نشان می‌دهد.

جدول 3-4

پارامتر ورودی/ خروجی Data Type عملکرد
REQ Input BOOL فعال‌ساز ارسال دیتا توسط بلاک (با اعمال لبه بالارونده ارسال دیتا آغاز می‌شود)
R Input BOOL لغو کردن ارسال دیتا
ID Input WORD ID مربوط به کانکشن تعریف شده در NetPro
R_ID Input DWORD کد مشخص‌کننده جهت دریافت اطلاعات در گیرنده برای چندبار استفاده از بلاک می‌توان در این پایه کد مشخصی را وارد و در گیرنده نیز همان کد را وارد نمود تا دیتا به درستی به گیرنده ارسال شود.
DONE Output BOOL نشان دهنده پایان ارسال دیتا با گرفتن مقدار یک منطقی، مقدار صفر منطقی بیانگر اینست که ارسال دیتا انجام نشده و یا به پایان نرسیده است.
ERROR Output BOOL مقدار یک منطقی بیانگر بروز خطا و مقدار صفر منطقی بیانگر عدم بروز خطا در ارسال اطلاعات است.
STATUS Output WORD کد وضعیت را نشان می‌دهد که در شرایط بروز خطا کد متناسب با نوع خطا را نشان می‌دهد. این کدها در Help بلاک موجود است.
SD_1 IN_OUT ANY آدرس دیتای مورد نظر جهت ارسال به فرم Pointer مثلا               p# DB10.DBX5.0 Byte 10
LEN IN_OUT WORD اندازه دیتای ارسالی بر حسب Byte (در صورتی که در پایه SD_1 اندازه دیتا وارد نشود)

 

 

پیام بگذارید