AVR, آردوینو arduino, پروژه آردوینو, توصیه شده

راه اندازی مدباس توسط آردوینو

سنسور حرارت در شبکه مدباس

آشنایی با مدباس و جایگاه آن در اتوماسیون صنعتی

امروزه کاربرد شبکه‌های صنعتی نظیر مدباس بر کسی پوشیده نیست. در گذشته برای ارتباط بین دو دستگاه لازم بود سیگنال‌های کنترلی توسط سیم‌کشی یک به یک به هم متصل شوند (Hardwire)؛ حال اینکه امروزه به‌سادگی توسط یک زوج سیم یا فیبر نوری این ارتباط برقرار می‌شود. این ارتباط در سیستم‌های کنترل، مانیتورینگ و سیستم‌های کنترل نظارتی SCADA به‌وفور مشاهده می‌شود.

در صنعت از چند نوع شبکه استفاده می‌شود که برخی از آن‌ها بیشتر مورد‌استفاده هستند:

  • Industrial Ethernet
  • Profibus
  • Modbus
  • Foundation Fieldbus
  • ASI

در این مقاله سعی داریم به زبان ساده و به‌دور از مباحث پیچیده‌ی شبکه و لایه‌های نرم‌افزاری، با آردوینو ارتباط modbus را پیاده‌سازی کنیم. پس با سیسوگ همراه باشید.

 

آیا می‌توان از آردوینو در صنعت استفاده کرد؟

از گذشته تا کنون هر زمان صحبت از طرح برد کنترلری در زمینه‌ی صنعت می‌شده است، PLC ها در اوج قله و تقریباً بدون هیچ رقیبی خود‌نمایی می‌کرده‌اند. البته این موفقیت بی‌دلیل هم نیست.

در نقطه‌ی مقابل، آردوینو یک برد ساده با امکانات محدود، که برای روی میز و کاربردهای آموزشی معرفی شده است. حتی فکر کردن به اینکه یک برد آردوینو بخواهد مثلاً یک کوره‌ی القایی را کنترل و یا مانیتور کند، کمی دور از ذهن است.

حال اگر بخواهیم این کار را بکنیم چطور عمل کنیم؟

در اینجاست که پروتکل مدباس اهمیت خود را نشان می‌دهد. شاید نتوان به این سادگی‌ها از یک برد آردوینو به‌عنوان قلب یک کوره‌ی القایی در توان‌های بالا استفاده کرد ولی به‌سادگی می‌توان از آن در کارهای دیگری مثل مانیتور کردن استفاده کرد.

سنسور حرارت

در این مقاله سعی می‌کنیم داده‌های یک سنسور درجه حرارت را توسط پروتکل مدباس در یک شبکه SCADA توسط آردوینو دریافت کنیم. رجیستر و داده‌های سنسور مطابق جدول زیر است:

Command NameCommand Number
Read Holding Register03
Write (Preset) Single Register06
Return Slave ID17

 

AddressBytesRangeDefaults
(°C /°F)
Register and Description
0 to 34Serial Number -4 byte value. Read-only
4 to 52Serial Version -2 byte value. Read-only
61255254ADDRESS. Modbus device address
10020-1000ROOM TEMPERATURE reading in DegF
10120-600ROOM TEMPERATURE reading in DegC
30420-1000Relative Humidity reading. Writing a humidity value to the register will do calibration.

شیلد توسعه‌ی RS232 و RS485 برای آردوینو

برای این‌که بتوان با یک آردوینو با شبکه مدباس ارتباط برقرار کرد می‌توان از یکی از شیلد‌هایی که بستر 232 و یا 485 را فراهم می‌کنند، استفاده کرد. ما در این پروژه از یک مبدل 485 استفاده کرده‌ایم.

شیلد RS-485 یرای آردوینو

برای این منظور از یک برد آردوینو UNO و یک شیلد توسعه و یک مبدل 485 استفاده شده است.

شیلد توسعه آردوینو

سنسور دما و برد آزدوینو و شیلد RS 485

برای سخت‌افزار 485 می‌توانید از شیلدها و مبدل‌های موجود در بازار استفاده کنید. در زیر یک شیلد و نقشه‌ی آن و یک مبدل 232 به 485 نشان داده شده است:

مبدل 232 به 485

شیلد RS 485

شماتیک شیلد RS 485

سورس برنامه‌ی آردوینو برای ارتباط با پروتکل مدباس

ماژول 485 و سنسور دمای انتخابی خود را متصل کنید و تمام.

 

می‌توانید کتابخانه‌ی RS485 را از لینک زیر دانلود کنید:

arduinoRS485-Modbus-library-v0_4.zip (631 دانلود ها)

 

نوشته های مشابه

6 دیدگاه در “راه اندازی مدباس توسط آردوینو

  1. محمد گفت:

    سلام
    کتابخانه spi ایراد دارد در برنامه

    1. زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      متوجه منظورتون نمیشه ، فکر کنم کتابخانه spi از کتابخانه های خود Arduino است.
      میشه بگید چه مشکلی داره یا چه خطایی دریافت می کنید.

  2. سیما درزی علی گفت:

    واقعا جای همچین مطلب بسیار مفید و کاربردی ای در سایت فوق العاده شما خالی بود

    احسنت.

    1. سلام
      تشکر بابت حسن توجه شما

  3. مطالبتون واقعا ناب و بدردبخور هستند‌.
    با تشکر از زحماتتون

    1. متشکر
      از اینکه مطالب مورد توجهتون قرار گرفته خوشحالیم

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

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