آردوینو سیستم عامل FreeRTOS پروژه های آردوینو

طراحی و پیاده سازی رله تایمر ۴ کانال بلوتوثی با سیستم عامل FreeRTOS

create-bluetooth-relay-4-channel-timer-with-arduino-freertos-hc-05-module-digispark
نوشته شده توسط معین صابری

۳رله های تایمر دار یکی از مهم ترین ابزارها در صنایع مختلف است. به کمک این ابزار شما می توانید مدت فعال سازی و انتظار برای فعال بودن را تنظیم کنید. در این آموزش قصد داریم تا به طراحی و پیاده سازی یک سیستم رله کنترل تایمر دار با ۴ کانال بپردازیم.  در این سیستم شما می توانید ۴ رله را به صورت زمانبندی شده کنترل نمایید. سیستم کنترل به صورت بی سیم و از طریق بلوتوث تلفن همراه، فرامین شما را می پذیرد. جهت کنترل رله ها به صورت همزمان، از سیستم عامل FreeRTOS استفاده کرده ایم. این سیستم عامل به ما امکان می دهد تا به صورت همزمان، برنامه های مختلفی را اجرا کنیم. در ادامه پروژه رله تایمر ۴ کانال بلوتوثی با مرجع تخصصی سیستم عامل FreeRTOS به زبان فارسی، دیجی اسپارک همراه باشید.

 


نقش سیستم عامل رله تایمر ۴ کانال بلوتوثی


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

 

در این پروژه به کمک سیستم عامل FreeRTOS می توانیم چندین برنامه را به صورت همزمان، به طوریکه روی یکدیگر تداخلی نداشته باشند اجرا کنید. در این پروژه، ۵ برنامه فعال هستند. یکی از این برنامه ها مسئول دریافت داده ها از بلوتوث است. چهار برنامه دیگر وظیفه کنترل خاموش و روشن بودن رله های خود را دارند. این مدت زمان به میلی ثانیه محاسبه شده و به صورت تاخیر، محاسبه می گردد. در اینجا سیستم عامل برنامه دریافت داده از پورت سریال را مدیریت می کند.در کنار این، سیستم عامل وظیفه دارد تا به هر ۴ برنامه رسیدگی کرده و زمانبندی رله ها را تنظیم نماید.

 


قطعات پروژه رله تایمر ۴ کانال بلوتوثی


اگر بخواهیم پروژه رله کنترل ۴ کانال را به طور خلاصه تشریح کنیم، با ۳ قسمت پردازنده مرکزی، واحد رله ها و واحد مخابراتی رو به رو هستیم. به کمک ماژول بلوتوث، می توانیم فرامین کاربر را به صورت بیسیم از تلفن همراه دریافت کنیم. برای این مورد، ما از مآژول بلوتوث HC05 استفاده می کنیم. ماژول بلوتوث HC05 یک ماژول بی نهایت کاربردی است. به کمک این ماژول می توانید ارتباط بی سیمی را بین برد آردوینو و تلفن همراه ایجاد کرد.

 

ماژول بلوتوث HC05 یک ماژول کلیدی برای پروژه های بی سیم است. جهت راه اندازی و کار با این ماژول سلسله آموزشی در دیجی اسپارک تعبیه شده که با کلیک بر روی این لینک می توانید آموزش را مطالعه کنید. در ادامه این موضوع، برد آردوینو UNO به عنوان پردازشگر مرکزی در این پروژه انتخاب شده است. برد آردوینو دارای پردازنده مرکزی ATMEGA328P است. این برد راه اندازی و کار با میکروکنترلرها را بسیار تسریع و البته تسهیل می کند.

 

سیستم عامل FreeRTOS قابلیت اجرا روی برد آردوینو را دارد. سیستم عامل FreeRTOS یک سیستم عامل برای اجرای چندبرنامگی بر روی میکروکنترلرهاست. با کلیک بر روی این لینک، می توانید سلسله آموزش های سیستم عامل FreeRTOS را مشاهده کنید. اما در ادامه، ماژول رله، یک ابزار بسیار مناسب است. به کمک ماژول رله می توانید رله را به سادگی و بدون نیاز به مدار جانبی، راه اندازی کنید. به همین منظور، از ماژول رله ۴ کامال استفاده می کنیم. این ماژول ۴ رله را بر روی خود جای داده و می تواند همه آن ها را درایو کند.

 


نصب کتابخانه سیستم عامل FreeRTOS


همانطور که اطلاع دارید، کتابخانه ها یکی از ابزارهای کلیدی و کاربردی در برنامه نویسی به شمار می روند. به کمک این ابزار، می توانیم توابع نوشته شده در فایلهایی به نام کتابخانه ذخیره کرده و سپس در پروژه های متعدد از آن استفاده کنیم.  همانطور که پیشتر گفته شد، برای راه اندازی و کار با سیستم عامل، کتابخانه توسعه داده شده است. برای استفاده از این کتابخانه، ابتدا باید آن را نصب کنیم. برای نصب کتابخانه در محیط آردویینو، ابتدا مطابق تصویر زیر بر روی گزینه Tools و سپس Manage Libraries کلیک کنید.

اصول نصب کتابخانه در آردوینو - دیجی اسپارک

 

در مرحله بعد، در منوی جست و جوی کتابخانه ها. جهت نصب کتابخانه،  freertos را تایپ کنید. با تایپ این عبارت با تصویر زیر رو به رو خواهید شد. مطابق تصویر، کتابخانه مشخص شده با کادر قرمز رنگ را نصب نمایید.

نصب کتابخانه وقفه با FreeRTOS در آردوینو - دیجی اسپارک

 


کدهای پروژه رله تایمر ۴ کانال بلوتوثی


پس از آشنایی با ساز و کار سیستم، نوبت به آپلود کدهای پروژه رله تایمر ۴ کانال بلوتوثی می رسد. لطفا کدهای زیر را روی برد آردوینو UNO خود آپلود کنید.

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 


اتصالات پروژه رله تایمر ۴ کانال بلوتوثی


در این قسمت به بررسی شماتیک و اتصالات پروژه رله تایمر ۴ کانال بلوتوثی می پردازیم. ابتدا به تصویر زیر که فرم کلی اتصالات را نمایش می دهد، دقت کنید.

در ادامه، مطابق تصویر فوق اتصالات را باید به شکل زیر ادامه دهیم.

 


اتصالات ماژول بلوتوث


  • اتصال پایه VCC ماژول بلوتوث به پایه ۵ ولت آردوینو
  • اتصال پایه GND ماژول بلوتوث به پایه GND آردوینو
  • اتصال پایه TX ماژول بلوتوث به پایه RX برد آردوینو

 


اتصالات ماژول رله ۴ کانال


  • اتصال پایه VCC ماژول به ۵ ولت آردوینو
  • اتصال پایه GND ماژول به GND آردوینو
  • اتصال پایه IN ماژول رله به پایه های ۲ الی ۵ آردوینو

 


اجرای پروژه


پس از برقراری اتصالات، نوبت به اجرای پروژه می رسد. جهت اجرای پروژه، می بایست نرم افزار blueterm را روی تلفن همراه خود نصب داشته باشید. در همین حال، نرم افزار را باز کرده و به بلوتوث HC05 متصل می شویم. در این حال، برای کنترل رله ها، به شکل زیر عمل می کنیم.

مدت زمان خاموش بودن، مدت زمان روشن بودن، شماره کانال

به عنوان مثال شما می خواهید رله شماره ۱ که به پایه شماره ۲ آردوینو متصل شده را برای سه ثانیه روشن و سپس ۵ ثانیه خاموش نگه دارید. بدین ترتیب به شکل زیر عمل می کنیم.

۱,۳۰۰۰,۵۰۰۰

توجه داشته باشید که مدت زمان به میلی ثانیه فرض می گردد. همچنین برای سایر کانال های رله به همین شیوه مدت زمان فعال/غیر فعال بودن رله تنظیم می گردد.

 


لوازم مورد نیاز


لینک خرید ماژول HC05

لینک خرید برد آردوینو UNO

لینک خرید ماژول رله ۴ کانال

 


جمع بندی


در این آموزش به طراحی و پیاده سازی یک سیستم رله کنترل ۴ کانال می پردازیم. به کمک این پروژه شما می توانید ۴ رله را به طور همزمان کنترل کنید. در این پروژه جهت اجرا با سرعت بالا و بدون هنگ کردن پروژه، از سیستم عامل FreeRTOS استفاده کرده ایم. به کمک سیستم عامل می توانید هر ۴ رله را به طور همزمان کنترل کرده و همچنین می توانید ماژول بلوتوث را مدیریت کرده و درخواست های کاربر را دریافت کنید.

 

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

 

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

معین صابری

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

تبادل نظر و رفع عیب با ثبت دیدگاه