مدباس (modbus) یک پروتکل ارتباطی استاندارد است که امروزه در صنعت به طور گسترده مورد استفاده قرار می گیرد.تقریباً تمامی کنترلرهای صنعتی مثل PLC ها و HMI ها از این پروتکل صنعتی استاندارد پشتیبانی می کنند.اساس ارتباط نرم افزاری در این پروتکل همان ارتباط سریال UART است.UART برای افرادی که با میکروکنترلر ها کار می کنند واژه ای آشناست.بله دقیقا از پورت سریال میکروکنترلر می توان با کنترل کننده های صنعتی مثل PLC و HMI ارتباط برقرار کرد.این پروتکل در سال ۱۹۷۹ توسط شرکت MODICON ابداع شد که برای ارتباط بین PLC ها مورد استفاده قرار می کرفت.اما به دلیل سادگی و قابل اعتماد بودن این ارتباط ، به سرعت گسترش یافت . امروزه این ارتباط در سه نوع مختلف وجود دارد.
-MODBUS RTU
– MODBUS ASCII
– MODBUS TCP/IP
مدباس ASCII و RTU برای ارتباط در شبکه های با حجم دیتای کم ،پردازش راحت تر و در قالب سخت افزارهایی مانند RS232 ، RS485وRS422 مورد استفاده قرار می گیرد.
مدباس TCP/IP برای ارتباط در شبکه با نرخ انتقال بالاتر و پردازش های سریعتر در قالب Ethernet مورد استفاده قرار می گیرد.ارتباط RTU/ASCII بر اساس MASTERو SLAVE وارتباط TCP/IP بر اساس Server و Client است.
از آنجا که همه میکروکنترلرها از ارتباط سریال UARTپشتیبانی می کنند پس می توان این پروتکل را بر روی آنها پیاده سازی کرد.مدباس ASCII همان طور که ازنامش پیداست برای انتقال کاراکترهای ASCII طراحی شده است.به این مفهوم که می توان دستورات دریافتی از طریق پورت سریال را درقالب یک PACKET با طول مشخص پردازش کرد و پاسخ را نیز در یک قالب مشخص برای Masterارسال نمود.
مدباس RTU برخلاف ASCII دیتاهای باینری را ارسال و دریافت می کند.
مدباس RTU با مدباس ASCII کاملا متفاوت است و نمی توان دستگاه هایی را که با مدباس RTU کار می کنند با مدباس ASCII جایگزین کرد.
پکت هایی که درقالب مدباس منتقل می شوند از یک اگوریتم بسیار قوی برای کنترل خطا استفاده می کنند . این الگوریتم بر اساس یک سری اعمال منطقی بر روی تمام بیت های موجود در پکت دیتا صورت می گیرد به طوری به هیچ عنوان احتمال خطا در انتقال دیتا وجود ندارد و این یکی از نقاط قوت این ارتباط محسوب می شود.
در مدباس RTU عملیات خطا یابی CRC error checking و در مدباس اسکی LRC error checking نامیده می شود.
اما همانطور که می دانید مزیت اصلی این پروتکل قابلیت ایجاد یک شبکه بین دستگاه های مختلف است.در مدباس می توان تعداد بسیار زیادی دستگاه را از طریق RS485 ، RS422 ، Ethernet و یا ترکیبی از این ها را با یکدیگر شبکه کرد.
-استاندارد RS485:
استاندارد RS485 از یک سخت افزار واسط به نام max485 استفاده می کند. با استفاده از این IC می توان تنها از طریق یک زوج سیم مانند سیم تلفن ، شبکه ای از میکروکنترلرها به همراه PLC ها ، HMI ها و سایر دستگاههای صنعتی در فواصل طولانی تا بیش از ۱ کیلومتر ایجاد نمود.و به راحتی دستورات و دیتاها را بین همه node های شبکه منتقل کرد.
ارتباط RS422:
ارتباط RS422 نیز شبیه به RS485 هست با این تفاوت که خطوط انتقال در این ارتباط از ۴ سیم دوبه دو تفاضلی تشکلیل شده است و نویز پذیری آن بسیار اندک است.آیسی مبدل RS422 نیز معمولا MAX490 است.
-سرعت انتقال در شبکه مدباس:
سرعت انتقال در مدباس RTU و ASCII بستگی به Baude Rate دارد.هر چه میزان باودریت بالاتر باشد سرعت انتقال نیز بیشتر خواهد بود اما به طور معمول از باودریت های بین 9600 تا 115200 استفاده می شود.همچنین سرعت انتقال در حالت RTU نیز به دلیل ارسال اطلاعات به صورت باینری بیشتر از ASCII است.
در شبکه مدباس RTU/ASCII یک وسیله در نقش Master و بقیه در نقش Slave هستند.هر Slave نیز دارای یک ID منحصر به فرد است که عددی بین ۱ تا ۲۴۷ است.مستر برای برقراری ارتباط با وسیله مورد نظر IDآن را در پکت مورد نظر قرار می دهد . تمام دستگاهای مورد نظر در شبکه مدباس به پیام ارسالی از طرف master گوش می دهند و در صورتی که ID موجود در پکت با آدرس خود مطابقت داشته باشد به آن پاسخ خواهند داد
برای مطالعه بیشتر در ارتباط میکروکنترلر AVR و PLC از طریق مدباس و همچنین ارائه مثال های عملی در زمینه ارتباط میکروکنترلرها با PLC می توانید PDF راهنمای کامل پروتکل مدباس و نحوه ارتباط میکروکنترلرهای AVR با PLC را از این لینک در فروشکاه فارس الکترونیک استفاده کنید.
خرید فایل آموزش ارتباط میکروکنترلرهای AVR و PLC از طریق مدباس
مطلب خوبی بود