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

blog
۱۳۹۶-۰۶-۰۴
4 دقیقه

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

امروزه کاربرد شبکه‌های صنعتی نظیر مدباس بر کسی پوشیده نیست. در گذشته برای ارتباط بین دو دستگاه لازم بود سیگنال‌های کنترلی توسط سیم‌کشی یک به یک به هم متصل شوند (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

 

اطلاعات
17
0
لینک و اشتراک
profile

Paradise Electronic

متخصص الکترونیک

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند. فروش در پالت
family

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد. جستجو در آیسی
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند.
family

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد.
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند.
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

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

دیدگاه ها

profile
اوستان گفت :
۱۳۹۹-۰۹-۱۲ ۱۲:۲۷

موردی که در شماتیک توجه مرا جلب کرد استفاده از ترانزیستور 8050 جهت قرار دادن آی سی 485 در حالت سند یا ریسیو بدون نیاز به اشغال پایه اضافی میکرو بود
آیا همیشه میشه از این سیمبندی استفاده کرد یا مختص همین کتابخانه هست ؟

profile
محمد گفت :
۱۳۹۸-۰۵-۲۲ ۱۴:۳۶

سلام من می خواهم با استفاده از محیط آردوینو برای stm32 برنامه بنویسم و پروتکل مودباس را راه اندازی کنم، چه جوری می تونم از این نمونه کد استفاده کنم؟
آیا امکانش هست؟

profile
زئوس Zeus گفت :
۱۳۹۸-۰۵-۲۶ ۱۰:۰۱

سلام دوست عزیز
امکان که بله قطعا هست ؛ برای این کار تنها نیازه مقداری از برنامه نویسی C++ سر در بیاورید و توابع مروبط به صفر و یک کردن خروجی را تغییر دهید هم چنین روال های ارسال و دریافت داده سریال را جایگذین کنید.
به همین سادگی 🙂

profile
HOSI گفت :
۱۳۹۸-۰۳-۰۱ ۱۲:۱۶

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

profile
زئوس Zeus گفت :
۱۳۹۸-۰۳-۰۴ ۱۱:۰۳

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

profile
محمد گفت :
۱۳۹۷-۰۳-۲۴ ۱۵:۳۷

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

profile
زئوس Zeus گفت :
۱۳۹۷-۰۳-۲۷ ۱۲:۲۴

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

profile
علیرضا گفت :
۱۳۹۸-۰۵-۱۹ ۱۲:۲۸

سلام کتابخانه modbusRS485 کلا مشکل داره و run نمیشه…حتی مثال هاشم اجرا نمیشه.

profile
زئوس Zeus گفت :
۱۳۹۸-۰۵-۲۰ ۰۹:۳۰

اگه بگید چه خطایی دریافت میکنید بهتر میشه کمک کرد.

profile
علیرضا گفت :
۱۳۹۸-۰۵-۲۶ ۱۳:۵۰

یه سوال اینکه من مدباسو با یه کد دیگه نوشتم روش حل شد الان که فانکشن وصل میکنم که فرکانس رو بخونم تو فرکانس های پایین 3hz و تو فرکانس های بالا(2khz) اختلاف چیزی که می خونم تا 30hz هم میرسه نمیدونید مشکل کجاست؟؟؟
حتی روی سریال خود آردوینو ینو که تست می کنم همین مشکل و دارم.
حتی کد خواندن فرکانس رو با کانتر نوشتم باز همین مشکل هست.

profile
زئوس Zeus گفت :
۱۳۹۸-۰۶-۰۶ ۱۰:۵۲

ببخشید متوجه نشدم فرکانس رو به کجا وصل میکنید ؟ چون که مودباس همون سریال خودمون هست یا نهایتا روی شبکه باشه در هر حال نمیتونید بهش فرکناس وصل کنید
پس احتمالا یه ترانسدیوسر برای تبدیل فرکانس به پروتکل مودباس باید داشته باشید.

profile
علیرضا گفت :
۱۳۹۸-۰۵-۲۶ ۱۳:۴۵

error library SPI mide k mige mojod nist dar soraty k hast…

profile
علی گفت :
۱۳۹۶-۰۷-۰۴ ۲۳:۲۱

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

احسنت.

profile
Paradise Electronic گفت :
۱۳۹۶-۰۷-۰۵ ۰۸:۵۸

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

profile
حامد رشیدی گفت :
۱۳۹۶-۰۶-۰۵ ۰۱:۲۹

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

profile
Paradise Electronic گفت :
۱۳۹۶-۰۶-۰۵ ۰۹:۱۲

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

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله