اگر در هنگام پیکربندی سخت افزار IP Address در یک یا دو طرف غیر فعال شده باشد نیز با پیغام خطا مواجه خواهیم شد.
پس از انجام عملیات ذکر شده در Netpro ذخیره و کامپایل کرده و در صورت عدم وجود خطا اطلاعات را از همان جا به هردو PLC دانلود کرده و CPU را Run میکنیم. با بهره گرفتن از آیکون Activate بالای پنجره Netpro میبینیم که محیط به حالت Online در میآید [۵۰].
برنامه نویسی تبادل دیتا در اترنت
پس از اطمینان از صحت اتصالات و عدم وجود خطا در مرحله قبل اکنون میتوان به برنامه نویسی پرداخت. ارتباط ارسال و دریافت یک ارتباط دو طرفه است که بدین منظور از توابع خاص ارتباطی استفاده
می گردد.
برای ارسال دیتا روی ISO-on-TCP از فانکشن AG_Send یا AG_Lsend استفاده میشود [۵۱].
برای دریافت دیتا روی ISO-on-TCP از فانکشن AG_LRecv یا AG_Recv استفاده میشود [۵۱].
اینکه از کدام فانکشنها استفاده شود به نوع سیستم (۳۰۰ یا ۴۰۰)، نوع کارت CP و حجم دیتا بستگی دارد. توضیحات بیشتر در جدول زیر مشخص شده است:
جدول ۳-۴: فانکشنهای برنامه نویسی اترنت [۵۱]
در CPU فرستنده فانکشن Send اجرا میشود و دیتا از آدرس داده شده به بافر کارت CP فرستنده ارسال
می گردد. اطلاعات بسته به نوع سرویس ارتباطی تعیین شده (ISO-on-TCP ) فریمهای دیتا را تشکیل داده و به لایه فیزیکی ارسال می کند. لایه فیزیکی از طریق کابل و اتصالات شبکه دیتا را به لایه فیزیکی کارت CP گیرنده منتقل میکند. در کارت CP گیرنده دیتا از فریم دیتا جدا شده و در بافر ذخیره میشود. در CPU گیرنده، دیتا از فریم جدا شده و در بافر ذخیره میشود. در CPU گیرنده فانکشن Receive دیتا را در آدرس داده شده ذخیره میکند [۵۱].
شبکه کردن PLCها با بهره گرفتن از پروفیباس
شناخت اجزای سخت افزاری شبکه پروفیباس پیش نیاز پیکربندی آنها در محیط نرم افزاری Step7 است. شبکه پروفیباس یک شبکه باز میباشد و محصولات متنوع سازندگان مختلف با قابلیت اتصال به این شبکه عرضه گردیده است. از اینرو معرفی تمام سخت افزارهای موجود در این مجموعه نه میسر است و نه ضروری. در این قسمت صرفا برخی از المانهای سخت افزاری شبکه پروفیباس که در نرم افزار Step7 در قالب یک کاتالوگ ارائه شده اند به اجمال معرفی میشوند. از آنجا که عملکرد پروفیباس بر روش Master/Slave استوار است لذا میتوان اجزای این شبکه را به دو دسته اصلی تقسیم نمود:
DP Master
DP Slave
دسته اول مربوط به CPUهایی میشود که یک پورت مخصوص پروفیباس دارند. معمولا در انتهای نام این CPUها عبارت ۲DP وجود دارد. اگر CPU فاقد پورت DP باشد امکان اتصال مستقیم آن به شبکه پروفیباس وجود ندارد و برای این منظور باید کارت CP در کنار CPU نصب گردد.
دسته دوم تجهیزات جانبی و متمرکزی هستند که با Master ارتباط میگیرند. Slaveها طیف گسترده ای از تجهیزات را شامل میشوند که برخی از مهمترین آنها در جدول زیر ذکر شده اند.
جدول ۳-۵: Slaves [52]
نکته دیگری که در بحث انواع Master/Slave لازم به ذکر است اینست که بعضی DP Interfaceهای متعلق به مجموعه S7-300 مانند CPU 315-2DP هم میتوانند به صورت DP Master و هم به عنوان DP Slave عمل کنند. در حالتی که در این تجهیزات، حالت DP Slave انتخاب میشود، باید تکنیک در اختیار گرفتن باس را هم معین کنیم. دو مد برای تکنیک در اختیار گرفتن باس قابل تعریف است [۵۳]:
DP Slave as active node
DP Slave as Passive node
از دیدگاه پروتکل DP نحوه ارتباط و تبادل دیتا در Active DP Slave و Passive DP Slave یکسان است. تنها تفاوت این است که Active DP Slave علاوه بر ارتباط عادی با Master مربوطه، یک Token هم در اختیار دارد که میتواند با سایر نودها ارتباط بگیرد و مستقیما به تبادل دیتا بپردازد. به این ترتیب در حالت Passive DP Slave این Master است که تعیین میکند که کدام Passive DP Slave باس را در اختیار بگیرد. اما برای Active DP Slave همانطور که در فوق توضیح داده شد، وضعیت فرق میکند [۵۴].
تنظیمات شبکه پروفیباس
برای انجام تنظیمات شبکه پروفیباس از برنامه Netpro استفاده کرده و به پیکره بندی شبکه پروفیباس
میپردازیم [۴۹].
شکل ۳‑۹: شبکه کردن دو PLC 300 توسط پروفیباس
پارامتر Highest Profibus Address
در استاندارد EN 50 170 این پارامتر موسوم به HSA (Highest-Station Address) میباشد. این پارامتر برای بهینه سازی نحوه در اختیار گرفتن باس و مدیریت کردن حلقه Token ، زمانی که چندین Master به شبکه پروفیباس وصل هستند بکار میرود. این پیکربندی را در آینده مورد بررسی قرار خواهیم داد. در آزمایشات این پروژه یک Master بیشتر نداریم و لذا مقدار پیش فرض یعنی ۱۲۶ را تغییر نمیدهیم [۵۵].
پارامتر Transmission
سرعتی که در اینجا برای انتقال اطلاعات انتخاب میکنید برای سرتا سر طول شبکه و کلیه نودهای متصل به آن اعمال میشود. در نتیجه کلیه تجهیزات و Distributed I/O هایی که به این شبکه وصل میشوند باید روی همین سرعت تنظیم شوند. سرعت انتقال اطلاعات پروفیباس میتواند بین ۹٫۶kbps تا ۱۲Mbps تغییر کند. همانطور که در شکل میبینید سرعت انتقال در این پروژه ۹۳٫۷۵Kbps انتخاب شده است [۵۵].
پروفایلهای پروفیباس
برای کاربردهای مختلف شبکه پروفیباس یک سری پروفایلهای استاندارد وجود دارد. در واقع این پروفایلها مجموعه ای از setting ها هستند که بر روی پارامترهای باس شبکه پروفیباس انجام میشوند. این پارامترها توسط نرم افزار محاسبه و تنظیم میشوند و کافی است ما پروفایل موردنظر را انتخاب کنیم. بدیهی است که مانند نرخ ارسال، این پارامترها به کل مجموعه شبکه و تجهیزات متصل به آن اعمال میشوند [۵۶].
IntelLigent Slave
یک نوع Dp-Slave دیگر نیز وجود دارد که به آن I-Slave گفته میشود و مخفف Inteligent Slave
می باشد. انواع I-Slave ها به شرح زیر میباشند:
انواع DP Master هایی که قابلیت عمل کردن در مد Slave را هم دارند مثل: CPU 318-2DP [57]
ET های CPU دار مثل ET 200 X و ET 200S [58]
در ارتباط معمولی Master با DP Slave ها، Master مستقیما به ناحیه I/O در DP Slave دسترسی دارد اما در ارتباط Master با I-Slave ها، Master مستقیما به I/O دسترسی ندارد بلکه I-Slave یک پردازش اولیه روی I/O انجام میدهد و سپس تصویر آنها را در اختیار Master قرار میدهد و Master از طریق حافظه I-Slave به I/O های I-Slave دسترسی دارد [۵۹].
از آنجا که هدف ما، برقراری ارتباط پروفیباس بین دو CPU خواهد بود بنابراین CPU دوم حکم Slave هوشمند را دارد.
برنامه نویسی تبادل دیتا در پروفیباس
در این بخش نحوه برنامه نویسی برای ارتباط DP تشریح میشود. ورودی خروجیها شبیه کارتهای I/O که در کنار CPU قرار میگیرند برنامه نویسی میشوند به طوری که از بلوک SFC14 با نام سمبلیک DPRD-DAT برای دریافت دیتا و از SFC15 با نام سمبلیک DPWR-DAT برای ارسال دیتا استفاده میشود [۶۰].
شکل ۳‑۱۰: SFC14 [61]
شکل ۳‑۱۱: SFC15 [62]
آنچه در این بلاکها تحت عنوان LADDR ظاهر میشود آدرس مقصد است که دیتا باید به آن ارسال یا از آن دریافت شود و باید به فرمت Hex نوشته شود.
حجم دیتایی که باید ارسال یا دریافت شود توسط آدرسی که بصورت Pointer در جلوی Record نوشته
می شود مشخص میگردد. به عنوان مثال اگر قرار باشد از یک کارت ورودی که روی یک DP Slave مدولار قرار گرفته کل هشت بایت با آدرس شروع صفر را بخواند در اینصورت در SFC14 در جلوی Record باید مقدار P#I0.0 byte 8 را قرار داد. باید توجه داشت که برای DP Slave های مدولار در هر فراخوانی فقط
می توان آدرس یک مدول را تبادل کرد [۶۱].
تحلیل زمانی مخابره سیگنالهای کنترلی از طریق پیوندهای چند مرحله ای ...