آگوست 6

دیتا، DP، اترنت، پروفیباس، CPU

گرفت. به عنوان مثال ممکن است یک شبکه با توپولوژی باس از تکنیک Master / Slave استفاده کند و شبکه دیگری با همان توپولوژی باس Token را بکار ببرد[5].
3-4- شبکه کردن PLC‌ ها با استفاده از اترنت
ارتباطی که می‌توان بین PLC‌ ها روی اترنت صنعتی (از نظر منطقی و نه از نظر فیزیکی) برقرار نمود متنوع است و بستگی به ویژگی‌های کارت CP اترنت روی PLC زیمنس دارد. موارد زیر از اهم این ارتباطات منطقی هستند [46]:
جدول3-1: سرویس‌های ارتباطی زیمنس [46]
در صورت وجود شرایط ذکرشده و با توجه به نکاتی که در ادامه تشریح خواهد شد این ارتباطات را می‌توان در حالت‌های زیر برقرار نمود:
1. بین دو S7-300
2. بین دو S7-400
3. بین S7-300 و S7-400
به عنوان مثال اگر روی S7-300 کارت CP 343-1 Lean وجود داشته باشد این کارت فقط TCP/IP را پشتیبانی می‌کند، بنابراین نمی توان ارتباط S7 Connection بین آنها برقرار نمود.
3-4-1- ارتباطات SEND / RECEIVE در شبکه اترنت
این سرویس ارتباطی می‌تواند بین دو نود اترنت که TCP / IP یا ISO Transport یا ISO-On-TCP را پشتیبانی کنند برقرار گردد. رفتار پروتکل TCP به تنهایی به اینگونه است که انتقال روی جریان دیتا متمرکز
می شود ولی هیچ اطلاعاتی در مورد طول دیتا، نقطه شروع و نقطه پایان ارسال نمی گردد. این موضوع معمولا در شرایط که فرستنده میداند چند بایت بایستی بفرستد مشکلی پیش نمی آورد و این بایت‌ها به صورت جریانی از دیتا انتقال می‌یابند.
بطور خلاصه در TCP تبادل دیتا بدون شکستن و خرد کردن دیتا به بسته‌های پیام صورت می‌گیرد ولی در ISO عمل خرد شدن دیتا صورت می‌گیرد. چهار سرویس ارتباطی Send / Receive از نظر ماکزیمم مقدار دیتا در جدول زیر مورد مقایسه قرار گرفته اند. این ماکزیمم حجم دیتای قابل جابجایی با یک Connection را نشان می‌دهند [47].
جدول 3-2: حجم دیتای قابل جابجایی مبنی بر سرویس‌های ارتباطی [47]
3-4-2- کارکردهای 3ارتباطی
برای برقراری انواع سرویس‌های ارتباطی روی اترنت نیاز به برنامه نویسی با فانکشن‌های خاص داریم. لیست فانکشن‌های مورد نیاز برای سرویس‌های مزبور در جدول زیر آمده است. این فانکشن‌ها در ادامه توضیح داده خواهند شد. در این لیست توجه شود که S7 Connection یک ارتباط چند منظوره است یعنی علاوه بر اترنت می‌تواند روی برخی شبکه‌های دیگر مانند MPI ، پروفیباس نیز با همین فانکشن‌ها استفاده شود.
سایر سرویس‌های ارتباطی در این جدول مخصوص اترنت است. با توجه به جدول مشاهده می‌شود که فانکشنهای مورد استفاده برای این سرویس‌های ارتباطی عمدتا مشابه می‌باشد [46].
جدول 3-3: فانکشن‌های مورد استفاده مبنی بر سرویس‌های ارتباطی [46]
در این تحقیق قصد داریم ارتباط اترنت بین PLC‌های سری 300 را به صورت‌های زیر برقرار نماییم و با اندازه گیری زمان ارسال و دریافت، پروتکل اترنت را نسبت به پروتکل پروفیباس بررسی و تحلیل نماییم:
1. بین دو CPU
2. بین سه CPU به حالت غیر Real Time
3. بین سه CPU به حالت Real Time
از آنجا که در این رساله از ارتباط S7 Connection استفاده کرده ایم در ادامه پیکربندی و برنامه نویسی این نوع ارتباط را بطور خلاصه برای ارتباط دو CPU شرح می‌دهیم.
3-4-3- پیکربندی و برنامه نویسی ارتباط S7 CONNECTION
این ارتباط یک ارتباط چندمنظوره است یعنی می‌توان آن را روی شبکه‌های دیگر مانند پروفیباس و MPI نیز پیکربندی و برنامه نویسی نمود و خاص اترنت نیست. فانکشن‌های برنامه نویسی S7 Connection متفاوت است. برخی بلاک‌های آن حجم دیتای بیشتری را جابجا می‌کند. قدم‌هایی که برای پیکربندی و برنامه نویسی این ارتباط برداشته می‌شود را در ادامه توضیح خواهیم داد [48]:
3-4-3-1- پیکر بندی سخت افزار
در محیط نرم افزار زیمنس یعنی Simatic Manager قسمت Hwconfig کارت CP مناسب که ISO یا ISO-on-TCP را ساپورت می‌کند انتخاب و دقت می‌نماییم کهMAC Address آن فعال باشد. در غیر اینصورت امکان پیکربندی ارتباط در Netpro میسر نخواهد بود. ممکن است به جای کارت CP از CPU خاصی که پورت LAN داشته باشد استفاده نمایید که در اینصورت می‌توان به جای استفاده از MAC Address ازAddress IP استفاده نماییم [49].
3-4-3-2- پیکربندی ارتباط در NETPRO
تنظیمات شبکه اترنت و Set PG/PC را روی اترنت مربوطه انجام می‌دهیم، سپس با پیکربندی مناسب از اینکه هر دو PLC در دسترس هستند اطمینان حاصل می‌کنیم [49].
شکل ‏36: شبکه کردن دو PLC 300 توسط اترنت
چنانچه هر دو PLC در دسترس باشند پیکره بندی ایجاد شده به صورت زیر می باشد:
شکل ‏37: Connection Table
هر سطر از این جدول بیانگر نوع ارتباط و CPU مقصد به صورت شکل زیر می باشد. توجه شود که در این حالت ارتباط مورد نظر به صورت Unicast است یعنی یک PLC با PLC دیگر . اگر روی این شبکه تعداد زیادی PLC وجود داشت همه آنها در این پنجره لیست می‌شدند و ما فقط CPU مقصد را انتخاب می‌کنیم.
شکل ‏38: مشخصات ارتباط برقرار شده
اگر در هنگام پیکربندی سخت افزار IP Address در یک یا دو طرف غیر فعال شده باشد نیز با پیغام خطا مواجه خواهیم شد.
پس از انجام عملیات ذکر شده در Netpro ذخیره و کامپایل کرده و در صورت عدم وجود خطا اطلاعات را از همان جا به هردو PLC دانلود کرده و CPU را Run می‌کنیم. با استفاده از آیکون Activate بالای پنجره Netpro می‌بینیم که محیط به حالت Online در می‌آید [50].
3-4-3-3- برنامه نویسی تبادل دیتا در اترنت
پس از اطمینان از صحت اتصالات و عدم وجود خطا در مرحله قبل اکنون می‌توان به برنامه نویسی پرداخت. ارتباط ارسال و دریافت یک ارتباط دو طرفه است که بدین منظور از توابع خاص ارتباطی استفاده
می گردد.
• برای ارسال دیتا روی ISO-on-TCP از فانکشن AG_Send یا AG_Lsend استفاده می‌شود [51].
• برای دریافت دیتا روی ISO-on-TCP از فانکشن AG_LRecv یا AG_Recv استفاده می‌شود [51].
اینکه از کدام فانکشن‌ها استفاده شود به نوع سیستم (300 یا 400)، نوع کارت CP و حجم دیتا بستگی دارد. توضیحات بیشتر در جدول زیر مشخص شده است:
جدول 3-4: فانکشن‌های برنامه نویسی اترنت [51]
در CPU فرستنده فانکشن Send اجرا می‌شود و دیتا از آدرس داده شده به بافر کارت CP فرستنده ارسال
می گردد. اطلاعات بسته به نوع سرویس ارتباطی تعیین شده (ISO-on-TCP ) فریم‌های دیتا را تشکیل داده و به لایه فیزیکی ارسال می‌نماید. لایه فیزیکی از طریق کابل و اتصالات شبکه دیتا را به لایه فیزیکی کارت CP گیرنده منتقل می‌کند. در کارت CP گیرنده دیتا از فریم دیتا جدا شده و در بافر ذخیره می‌شود. در CPU گیرنده، دیتا از فریم جدا شده و در بافر ذخیره می‌شود. در CPU گیرنده فانکشن Receive دیتا را در آدرس داده شده ذخیره می‌کند [51].
3-5- شبکه کردن PLC‌ها با استفاده از پروفیباس
شناخت اجزای سخت افزاری شبکه پروفیباس پیش نیاز پیکربندی آنها در محیط نرم افزاری Step7 است. شبکه پروفیباس یک شبکه باز می‌باشد و محصولات متنوع سازندگان مختلف با قابلیت اتصال به این شبکه عرضه گردیده است. از اینرو معرفی تمام سخت افزارهای موجود در این مجموعه نه میسر است و نه ضروری. در این قسمت صرفا برخی از المانهای سخت افزاری شبکه پروفیباس که در نرم افزار Step7 در قالب یک کاتالوگ ارائه شده اند به اجمال معرفی می‌شوند. از آنجا که عملکرد پروفیباس بر روش Master/Slave استوار است لذا می‌توان اجزای این شبکه را به دو دسته اصلی تقسیم نمود:
1. DP Master
2. DP Slave
دسته اول مربوط به CPU‌هایی می‌شود که یک پورت مخصوص پروفیباس دارند. معمولا در انتهای نام این CPU‌ها عبارت 2DP وجود دارد. اگر CPU فاقد پورت DP باشد امکان اتصال مستقیم آن به شبکه پروفیباس وجود ندارد و برای این منظور باید کارت CP در کنار CPU نصب گردد.
دسته دوم تجهیزات جانبی و متمرکزی هستند که با Master ارتباط می‌گیرند. Slave‌ها طیف گسترده ای از تجهیزات را شامل می‌شوند که برخی از مهمترین آنها در جدول زیر ذکر شده اند.
جدول 3-5: Slaves [52]
نکته دیگری که در بحث انواع Master/Slave لازم به ذکر است اینست که بعضی DP Interface‌های متعلق به مجموعه S7-300 مانند CPU 315-2DP هم می‌توانند به صورت DP Master و هم به عنوان DP Slave عمل کنند. در حالتی که در این تجهیزات، حالت DP Slave انتخاب می‌شود، باید تکنیک در اختیار گرفتن باس را هم معین کنیم. دو مد برای تکنیک در اختیار گرفتن باس قابل تعریف است [53]:
• 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 همانطور که در فوق توضیح داده شد، وضعیت فرق می‌کند [54].
3-5-1- تنظیمات شبکه پروفیباس
برای انجام تنظیمات شبکه پروفیباس از برنامه Netpro استفاده کرده و به پیکره بندی شبکه پروفیباس
می‌پردازیم [49].
شکل ‏39: شبکه کردن دو PLC 300 توسط پروفیباس
3-5-1-1- پارامتر HIGHEST PROFIBUS ADDRESS
در استاندارد EN 50 170 این پارامتر موسوم به HSA (Highest-Station Address) می‌باشد. این پارامتر برای بهینه سازی نحوه در اختیار گرفتن باس و مدیریت کردن حلقه Token ، زمانی که چندین Master به شبکه پروفیباس وصل هستند بکار می‌رود. این پیکربندی را در آینده مورد بررسی قرار خواهیم داد. در آزمایشات این پروژه یک Master بیشتر نداریم و لذا مقدار پیش فرض یعنی 126 را تغییر نمی‌دهیم [55].
3-5-1-2- پارامتر TRANSMISSION
سرعتی که در اینجا برای انتقال اطلاعات انتخاب می‌کنید برای سرتا سر طول شبکه و کلیه نود‌های متصل به آن اعمال می‌شود. در نتیجه کلیه تجهیزات و Distributed I/O‌ هایی که به این شبکه وصل می‌شوند باید روی همین سرعت تنظیم شوند. سرعت انتقال اطلاعات پروفیباس می‌تواند بین 9.6kbps تا 12Mbps تغییر کند. همانطور که در شکل می‌بینید سرعت انتقال در این پروژه 93.75Kbps انتخاب شده است [55].
3-5-1-3- پروفایل‌های پروفیباس
برای کاربردهای مختلف شبکه پروفیباس یک سری پروفایل‌های استاندارد وجود دارد. در واقع این پروفایل‌ها مجموعه ای از setting‌ ها هستند که بر روی پارامتر‌های باس شبکه پروفیباس انجام می‌شوند. این پارامترها توسط نرم افزار محاسبه و تنظیم می‌شوند و کافی است ما پروفایل موردنظر را انتخاب کنیم. بدیهی است که مانند نرخ ارسال، این پارامترها به کل مجموعه شبکه و تجهیزات متصل به آن اعمال می‌شوند [56].
3-5-2- INTELLIGENT SLAVE
یک نوع Dp-Slave دیگر نیز وجود دارد که به آن I-Slave گفته می‌شود و مخفف Inteligent Slave
می باشد. انواع I-Slave‌ ها به شرح زیر می‌باشند:
1. انواع DP Master‌ هایی که قابلیت عمل کردن در مد Slave را هم دارند مثل: CPU 318-2DP [57]
2. 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 دسترسی دارد [59].
از آنجا که هدف ما، برقراری ارتباط پروفیباس بین دو CPU خواهد بود بنابراین CPU دوم حکم Slave هوشمند را دارد.
3-5-3- برنامه نویسی تبادل دیتا در پروفیباس
در این بخش نحوه برنامه نویسی برای ارتباط DP تشریح می‌شود. ورودی خروجی‌ها شبیه کارتهای I/O که در کنار CPU قرار می‌گیرند برنامه نویسی می‌شوند به طوری که از بلوک SFC14 با نام سمبلیک DPRD-DAT برای دریافت دیتا و از SFC15 با نام سمبلیک DPWR-DAT برای ارسال دیتا استفاده می‌شود [60].
شکل ‏310: SFC14 [61]
شکل ‏311: SFC15 [62]
آنچه در این بلاک‌ها تحت عنوان LADDR ظاهر می‌شود آدرس مقصد است که دیتا باید به آن ارسال یا از آن دریافت شود و باید به فرمت Hex نوشته شود.
حجم دیتایی که باید ارسال یا دریافت شود توسط آدرسی که بصورت Pointer در جلوی Record نوشته
می شود مشخص میگردد. به عنوان مثال اگر قرار باشد از یک کارت ورودی که روی یک DP Slave مدولار قرار گرفته کل هشت بایت با آدرس شروع صفر را بخواند در اینصورت در SFC14 در جلوی Record باید مقدار P#I0.0 byte 8 را قرار داد. باید توجه داشت که برای DP Slave‌ های مدولار در هر فراخوانی فقط
می توان آدرس یک مدول را تبادل کرد [61].
3-6- جمع بندی:
در این فصل به چگونگی ارتباط بین PLC‌ های زیمنس از طریق شبکه اترنت و شبکه پروفیباس پرداختیم و پیکربندی این دو شبکه را به لحاظ سخت افزاری توضیح دادیم. همچنین بلوک‌هایی مورد نیاز در برنامه نویسی را معرفی کرده و با استفاده از آن شبکه اترنت و پروفیباس را شبیه سازی و پیاده سازی نمودیم که در ضمایم این پایان نامه موجود می‌باشد. حال می‌خواهیم در بخش بعدی به بررسی تئوری رفتار زمانی این دو شبکه در انتقال دیتا بپردازیم و در نهایت با نتایج بدست آمده از آزمایش‌های عملی مقایسه و بررسی نماییم.
تحلیل تتوری و عملی شبکه‌های صنعتی
4- تحلیل تئوری و عملی شبکه‌های صنعتی
برای روشن شدن دلیل نیاز به تحلیل و بررسی زمانی یک پروتکل ارتباطی نظیر اترنت ابتدا به ارایه یک مثال
می‌پردازیم. فرض کنید سه ایستگاه برای انتقال اطلاعات در سایت وجود دارد و یکی از آنها در حال ارسال دیتا به مقصد است و دو ایستگاه دیگر منتطر خالی شدن بستر هستند. به محض اینکه بستر آزاد شد یکی از ایستگاه‌ها به طور تصادفی قادر به فرستادن دیتای خود به مقصد خواهد شد . بنابراین این نوع شبکه، تضمینی به ارسال دیتا از یک ایستگاه در یک زمان خاص به مقصد را نخواهد داشت و مفهوم ارسال اطلاعات به صورت زمان حقیقی از بین خواهد رفت. نقص اترنت باعث شد متخصصان از پروتکل‌های دیگری همچون WorldFIP, Profibus, P Net و غیره در سطح فیلد و کنترل استفاده کنند تا از به موقع رسیدن اطلاعات به سطح مانیتورینگ مطمئن باشند. آنان جهت ارتقاء سرعت این نوع پروتکل‌ها تلاش زیادی کردند اما تا کنون موفق به دست یابی به سرعت اترنت نشده اند و همچنان انتقال دیتا با این پروتکل‌ها با تاخیر چشمگیری همراه است [9].
لازم به ذکر است زمان-حقیقی بودن یک سیستم به معنای انتقال و دسترسی آنی به اطلاعات نمی‌باشد، بلکه منظور تضمین دسترسی به داده در یک زمان معین یا کمتر از آن می‌باشد. چرا که عملاً در هیچ شبکه ای به دلیل وجود تاخیرات ذاتی سیستم نمیتوان به انتقال آنی اطلاعات رسید، حتی اگر از نور، به عنوان سریع ترین مدیای موجود، استفاده نمود. در واقع هدف اصلی در این پروژه شناخت و مدل سازی زمان تاخیر سیستم و یا به عبارت بهتر قانونمند کردن تاخیر در شبکه اترنت و پروفیباس و محاسبه حداکثر زمان آن و ارائه راهکار جهت کم کردن این زمان می‌باشد. این تاخیر عمدتاً منشاء نرم افزاری داشته و به پروتکل مورد استفاده بستگی دارد. نکته دیگری که در این زمینه می‌توان به آن اشاره نمود این است که طراحی یک سیستم کنترل بر روی یک شبکه با تاخیر بالا ولی با مدل شناخته شده برای تأخیر، مناسب تر از طراحی آن بر روی یک شبکه سریع ولی فاقد تضمین دسترسی به اطلاعات می‌باشد. به عنوان مثال در برخی موارد شبکه زمان حقیقی مانند مدباس1 (به عنوان یکی از کندترین پروتکل های صنعتی موجود) در یک بستر RS-485 با نرخ انتقال 2400 b/s بر شبکه اترنت با نرخ انتقال Mb/s 100 ترجیح داده می شود؛ چرا که در آن تضمین ارسال، انتقال و دریافت داده در زمان معین موجود می‌باشد، چیزی که در یک شبکه اترنت با تمام ویژگی‌ها و سرعت بالا وجود ندارد [9].
برای درک بهتر علل موثر در تاخیرات به وجود آمده در شبکه و بهینه نمودن آن، در این بخش با استفاده از CPU‌ های زیمنس، چندین مدل شبکه ی اترنت و پروفیباس ارایه و به لحاظ تئوری بررسی می‌گردد. سپس هر یک از این مدل‌ها با CPU ها به صورت عملی آزمایش و با نتایج تئوری مقایسه می‌گردد.
4-2- محاسبه زمانی ارتباط پروفیباس
همانطور که در بخش‌های قبل ذکر گردید ارتباط پروفیباس بر مبنای ارتباط سریال Half Duplex می‌باشد که از بستر ارتباطی RS-485 جهت ارسال و دریافت اطلاعات استفاده می‌کند. همانطور که می‌دانیم RS-485 از یک زوج سیم جهت ارسال و دریافت بهره می‌برد. لذا در هر لحظه یک وسیله متصل به یک باس RS-485 امکان ارسال داشته و مابقی وسایل فقط شنونده هستند. لذا جهت مدیریت باس معمولا در این سیستم‌ها از یک Master استفاده می‌شود. در سیستم مورد بررسی ما نیز این امر لحاظ گردیده است. دو توپولوژی یک Master و یک Slave و یک Master و دو Slave مورد بررسی قرار گرفته است [63].
شایان ذکر است از آنجا که ارتباط سریال مبتنی بر پروفیباس می‌تواند نرخ‌های ارسال متفاوت داشته باشد در تمامی آزمایش‌ها باس بر روی نرخ Kbps 93.75 تنظیم گردیده است. این فرض می‌تواند بین Kbps 9.6 تا Mbps 12 متغیر باشد که با توجه به سیکل زمانی CPU‌های استفاده شده (1 ms) در نرخ‌های بالاتر از Kbps 93.75 به دلیل سرعت بالا امکان ثبت وقایع وجود ندارد(درواق



Copyright 2018. All rights reserved.

Posted آگوست 6, 2018 by 92 in category "مقالات

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *