در این مقاله میخواهیم به شبکه مدباس، Modbus، که یکی از شناخته شدهترین و محبوبترین پروتکل ارتباطی در اتوماسیون صنعتی است، بپردازیم. شبکه مدباس چیست ؟ چطور کار میکند و کاربرد این شبکه کجاست؟
در سال 1979، شرکت مادیکن Modicon یک پروتکل لایه کاربردی را برای استفاده با کنترل کنندههای منطقی برنامهپذیر (PLC) معرفی کرد. این پروتکل مدباس نام داشت و اولین فیلدباس پرکاربرد در تاریخ اتوماسیون شد. برای درک بهتر این شبکه ابتدا به توضیح کوتاهی درباره هرم اتوماسیون میپردازیم. از پائینترین سطح هرم شروع میکنیم به این سطح هرم سطح فیلد میگویند و تمام ابزارها مانند سنسورها، عملگرها، موتورهای الکتریکی، سوئیچها و… در این قسمت از سطح هرم قرار گرفتهاند. سطح بعدی هرم سطح کنترل است در این بخش کنترلرها مانند پی ال سی، اچ ام آی، CNC و … وجود دارند که اطلاعات را از حسگرها و سطح فیلد گرفته و پردازش میکنند.
پی ال سیها مانند پی ال سی دلتا از جمله کنترلرهای قوی و دقیقی است که به طور گسترده در صنعت مورد استفاده قرار میگیرد. پی ال سی قادر است تا فرمانهای کنترلی را بر اساس ورودیای که از سنسورها میگیرد ارسال کند. پی ال سی شامل CPU، I/O دیجیتال، I/O آنالوگ و ماژولهای ارتباطی است. PLC این قابلیت را دارد که توسط کاربر برنامهریزی شده و اعمال خواسته شده را مطابق انتظار انجام دهد. به همین دلیل است که پی ال سی ها در صنایع مختلف مثل خطوط مونتاژ کارخانجات، سیستم های تولید برق و غیره کاربرد دارند.
اچ ام آی ها که پرفروش ترین آن در بازار ایران اچ ام آی دلتا میباشد، وظیفه ارتباط برقرار کردن بین اپراتور انسانی و فرایندهای کنترل شده توسط PLC ها هستند تا داده های دریافت شده از آنها را به شکل دیتاهای گرافیکی و نمودارهای مختلف نشان دهند.
مدباس با استفاده از کامپیوترها و HMI ها دستگاه ها را مانیتور کرده و با برنامه ریزی، بین دستگاه های هوشمند و سنسورها یا ابزارها ارتباط برقرار میکند. دانستن نحوه ایجاد شبکه های مبتنی بر مدباس برای هر تکنسین و مهندس برقی که در زمینه اتوماسیون صنعتی کار میکند ضروری است. توانایی یکپارچه سازی ابزارهای تولید شده توسط سازندگان مختلف، مهارتی است که بازار تقاضای بالایی دارد و بر ارزش و فروش کار شما اثرگذار است. در واقع پروتکل ارتباطی مدباس، یک زبان مشترک برای برقراری ارتباط بین دستگاه ها و تجهیزات فراهم می کند به عنوان مثال، با استفاده از مدباس، دستگاه ها در یک سیستم و تحت یک شبکه واحد می توانند، نتایج را به یک SCADA یا PLC انتقال داده و تحت همین شبکه دما و رطوبت را نیز اندازه گیری کنند.
فیلدباس یک پروتکل ارتباطی است که در شبکه های صنعتی برای اتصال تجهیزات سطح فیلد به کنترل کنندههای صنعتی (PLC) استفاده می شود.
فیلدباس اغلب میزان سیم کشی مورد نیاز بین کنترلرها و دستگاه ها را کاهش می دهد زیرا چندین دستگاه میتوانند به یک جفت سیم متصل شوند. محدودیت فاصله بین تجهیزات سمت فیلد را کاهش میدهد و با استفاده از فیلدباس، میتوان پروسه یا فرآیند را بصورت DCS (استفاده از چند PLC بجای یک PLC) کنترل و پایش کرد.
از پروتکل های محبوب و پرکاربرد فیلدباس می توان به Modbus، CANopen، EtherCat بصورت Open Sorce و Profibus، Profinet اشاره کرد.
مفهوم مستر و اسلیو در شبکه های صنعتی:
درهمه شبکه های صنعتی یک مستر Master به عنوان رئیس وجود دارد که میتواند به اسلیوها Slave فرمان دهد. مستر درخواست خود را به یک اسلیو ارسال میکند که اقداماتی را انجام دهد و به مستر پاسخ میدهد. در شبکه های تحت فیلد یا Fieldbus مستر اغلب یک PLC است و سایر تجهیزات اسلیو هستند.
انواع پروتکل ارتباطی مدباس:
چندین نسخه از پروتکل Modbus برای پورت سریال (Serial Port) و اترنت (Ethernet) وجود دارد و رایج ترین آنها عبارتند از:
- MODBUS RTU
- MODBUS ASCII
- MODBUS TCP
- MODBUS PLUS
در مدباس ASCII و RTU داده ها از طریق یک ارتباط سریال یعنی RS232/RS485/RS422 رد و بدل میشوند. رابط اصلی مدباس بر روی ارتباطات سریال RS-232 اجرا میشود، اما اخیرا بیشتر از رابط مدباس RS-485 استفاده میکنند دلیل این انتخاب مزیتهای ایجاد شده توسط RS-485 مانند فاصلههای طولانی تر، سرعت بالاتر، امکان استفاده از دستگاه های چندگانه (devices multiple) در یک شبکه مدباس میباشد.
Slave-Master مبتنی بر RS-485از اتصالات فرستنده و گیرنده دو سیمه (wire-two) استفاده میکند. در رابطهای ساده ای مانند 232RS یا 485RS، پیام های مدباس با فرم ساده در شبکه ارسال میشوند و شبکه تنها به اتصال مدباس اختصاص داده می شود. این پروتکل برای استفاده از طریق TCP/IP و اترنت نیز سازگار شد. که این مدل معمولا به عنوان MODBUS TCP شناخته میشود. با این حال، اگر شبکه شما به چندین دستگاه ناهمگن (devices heterogeneous multiple) نیاز داشته باشد که این دستگاه ها از یک شبکه چند منظوره مانند IP / TCP مبتنی بر اترنت استفاده می کنند، پیام های مدباس در بسته های اترنت با فرمت مورد نظر برای این رابط فیزیکی تعبیه شده است. بنابراین در این مورد، مدباس و سایر پروتکل های ترکیبی (protocols mixed)، می توانند هم زمان در یک رابط فیزیکی هماهنگ وجود داشته باشند. یعنی می توان گفت، به این دلیل که مدباس از پروتکل های استاندارد IP / TCP استفاده می کند، پس با همه دستگاه های مجهز به استاندارد اترنت سازگار است. نسخههای دیگری از مدباس وجود دارد که یکی به نام MODBUS PLUS است که از پروتکل HDLC استفاده میکند که این نسخه در این مقاله مورد بحث قرار نخواهد گرفت.
تفاوت بین RS232, RS485 و RS422 :
RS232 به صورت یک ارتباط سه سیمه است و فقط بصورت PTP (پوینت تو پوینت) میباشد که در این شبکه یک مستر و یک اسلیو موجود میباشد (وقتی با برنامه WPLSoft یک پی ال سی را پروگرام میکنیم در حقیقت از این شبکه استفاده میکنیم). ارتباط RS485 یک ارتباط دو سیمه است در این نوع ارتباط که به آن نیمه دوبلکس میگویند می توان 255 تجهیز به عنوان اسلیو در شبکه وجود داشته باشد. در این ارتباط انتقال و دریافت داده به صورت همزمان صورت نمی گیرد (Half Dublex) و مستر بعد از ارسال داده و با کمی توقف پاسخ را از اسلیو دریافت می کند و همچنین به دلیل داشتن قابلیت دیفرانسیلی این شبکه نویز پذیر نمیباشد. ارتباط RS422 که به صورت یک ارتباط 4 سیمه است برخلاف RS485 بصورت فول دوبلکس است به این صورت است که در این ارتباط انتقال و دریافت داده به صورت همزمان صورت می گیرد و همانند RS485 به دلیل وجود قابلیت دیفرانسیلی در این نوع ارتباط نیز نویزپذیری صورت نمی گیرد.
در ادامه بحث پروتکلهای مدباس، به حالتهای انتقال و نحوه کد گذاری پیام ها می پردازیم که این انتقال بر اساس دو مد RTU و ASCII صورت می گیرد.
مد RTU و ASCII:
مد RTU و مد ASCII دو نوع مد اتصال سریال مدباس میباشند. در مد RTU داده ها، به صورت باینری منتقل میشوند و در مد ASCII داده ها بصورت کد اسکی یا کاراکتری منتقل می شود. پیامهای باینری کوتاه تر از ASCII هستند و از نظر تئوری انتقال و دریافت سریع تر دارند. اما در مد ASCII پیامها از یک کاراکتر شروع، که یک “:” است تشکیل شده و انتهای پیام با یک بازگشت و تغذیه خط (فید لاین) تعریف میشود. سرعت انتقال در هر دو مد بصورت معمولی 9600 بیت در ثانیه است.
تشخیص خطا در داده (Check Sum) در مدباس RTU بوسیله ی الگوریتم (CRC)Cyclic Redundancy Check که 2 بایت هست انجام می گیرد ولی در مدباس ASCII تشخیص خطا یا همان چک سام بوسیله ی الگوریتم LRC یا (Longitudinal Redundancy Check)که 1 بایت می باشد صورت می گیرد.
چهار اصطلاح Start Bit, Stop Bit, Data Bit و Parity در مدهای RTU وASCII کاربرد دارد که در زیر هر کدام تعریف شده اند:
Start Bit: بیت شروع می باشد که برای هر دو مد عدد 1 قرار می گیرد.
Data Bit: طول داده ارسالی با این گزینه مشخص می شود که در مد RTU هشت بیت و در مد ASCII هفت بیت انتخاب میشود.
Parity: یا بیت توازن، که دارای دو نوع زوج و فرد است. مثلا در نوع زوج(Even)، اگر تعداد یک ها در هر بایت زوج بود، بیت پریتی صفر می شود تا زوج بودن بایت فرد نشود و اگر تعداد یک ها در یک بایت فرد بود، پریتی یک شده و تعداد آن ها را زوج می کند.
Stop Bit: بیت پایانی فریم داده می باشد و سایز آن بسته به انتخاب Parity می باشد.
مدباس TCP/IP :
از طریق Modbus/TCP میتوان به راحتی از طریق شبکههای اترنت ارتباط برقرار کرد. Modbus/TCP همچنین به آدرسهای بسیار بیشتری نسبت به RS485 دسترسی دارد و استفاده از Masters های متعدد و سرعت در محدوده گیگابیتی از جمله مزیت های مدباس TCP یا Modbus Over IP نسبت به مدباس سریال است. در حالی که Modbus RTU/ASCII دارای محدودیت 255 گره در هر شبکه است، شبکه Modbus/TCP میتواند به اندازهای که لایه فیزیکی بتواند از عهده آن برآید، اسلیو داشته باشد که اغلب این عدد در حدود 1024 است.
از شبکه مدباس کجا استفاده می شود؟
مدباس در ابتدا برای استفاده با پی ال سی ها طراحی شده بود و در برنامههای آموزشی اتوماسیون صنعتی به عنوان مثال برای انتقال داده های یک سنسور به پی ال سی استفاده میشد اما امروزه بخش جدایی ناپذیر از فرآیند های مرتبط با ماشین سازی و Factory Automation است و به جرات می توان گفت هر دستگاهی که از تجهیزاتی نظیر PLC، HMI و یا اینورتر بهره مند است حتما از شبکه مدباس در این دستگاه استفاده شده است. نمایندگی دلتا یوزتکنو پیشرو در صنعت بوده و در زمینه آموزش اتوماسیون صنعتی دلتا بهترین خدمات را به فعالان حوزه اتوماسیون صنعتی ارائه می دهد. فیلم آموزش کامل شبکه مدباس با استفاده از تجهیزات دلتا در سایت یوزتکنو در دسترس می باشد. همچنین می توان نمونه برنامه مدباس دلتا را از مرکز دانلود سایت یوزتکنو دانلود کرد.