آموزش آردوینو

آموزش کنترل رله با برد آردوینو (کنترل وسایل)

سلام. آموزش نحوه کنترل رله با آردوینو را آماده کرده ایم. (آموزش Arduino قسمت 8) را آماده کرده ایم.

آموزش کنترل رله با برد آردوینو

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

در این قسمت ما ابتدا به طور کامل با رله ها و نحوه کار آنها آشنا میشویم و سپس نحوه برنامه نویسی برد آردوینو برای کنترل رله را می آموزیم.

رله چیست و چگونه کار میکند ؟

رله یک سوئیچ الکترومغناطیسی است که توسط جریان کم کنترل می شود و برای روشن و خاموش کردن جریان بزرگتر مورد استفاده قرار می گیرد. با استفاده از جریان کوچک می توان حالت رله را تغییر داد. رله گزینه خوبی برای کنترل دستگاه های AC (جریان متناوب) با استفاده از یک جریان DC بسیار کوچکتر است. رله دارای پنج پایه به شرح زیر است :

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.

رله چیست و چگونه کار میکند ؟

هنگامی که هیچ ولتاژی به سیم پیچ اعمال نشود، Com به NC متصل است. و هنگامی که مقدار ولتاژ به سیم پیچ اعمال شود، میدان الکترو مغناطیسی تولید میشود که آرماتور متصل به NC را به سمت خود جذب میکند و باعث میشود COM و NO به هم متصل شوند. این کار باعث میشود بتوانیم با استفاده از جریان کمتر مثل جریان برد آردوینو که 5 ولت است، ورود جریان به طور مثال 220 ولت را کنترل کنیم.

رله ها انواع بسیار مختلفی دارند، در اینجا ما از رله با ولتاژ عامل 6 ولت استفاده میکنیم که به ما اجازه میدهد عبور جریان 7 آمپر 250 ولت AC را کنترل کنیم.

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

رله ها اغلب با استفاده از یک مدار درایور کوچک که شامل یک ترانزیستور، دیود و یک مقاومت ترکیب میشوند. ترانزیستور برای تقویت جریان استفاده می شود به طوری که جریان کامل (از منبع DC) می تواند از طریق یک سیم پیچ جریان یابد تا انرژی آن را به طور کامل استفاده کند. از مقاومت برای تهیه بایاس به ترانزیستور استفاده می شود. و هنگام خاموش شدن ترانزیستور از دیود برای جلوگیری از جریان معکوس استفاده می شود.

هر سیم پیچ Inductor با خاموش شدن ناگهانی جریان متضاد و قوی ای تولید میکند بنابراین باید از دیود برای جلوگیری از جریان معکوس استفاده می شود. ماژول های رله با دیود و قطعات لازم به صورت آماده در بازار موجود است اما در صورتی که میخواهید از رله تنها استفاده کنید باید خودتان دیود ، ترانزیستور و … را به آن متصل کنید.

مدار درایور رله به همراه قطعات مورد نیاز آن در تصویر زیر نشان داده شده است.

مدار و قطعات ماژول رله

نحوه اتصال رله به برد آردوینو

در تصویر زیر نحوه اتصال یک رله به برد Arduino را مشاهده میکنید. همانطور که میبینید ما از پین A0 آردوینو برای کنترل رله استفاده کرده ایم.

شماتیک نحوه اتصال رله به برد آردوینو

در این مدار کنترل رله ما از آردوینو برای کنترل رله از طریق ترانزیستور BC547 استفاده کرده ایم. ما پایه ترانزیستور را از طریق یک مقاومت 1k به pin A0 وصل کرده ایم. یک لامپ AC برای نمایش عملکرد استفاده می شود. از آداپتور 12v برای تغذیه مدار استفاده می شود.

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید

کار ساده است ، ما باید پین RELAY یعنی PIN A0 را فعال کنیم تا ماژول رله روشن شود و پین رله را غیرفعال کنیم تا ماژول رله خاموش شود. چراغ / وسیله AC طبق رله روشن و خاموش می شود.

برنامه نویسی رله در آردوینو

در این قسمت ما به طور کامل با نحوه برنامه نویسی رله در نرم افزار Arduino آشنا میشویم.

در قسمت اول کد ما پین رله را تعریف میکنیم که همانطور که گفتیم A0. همچنین برای اینکه برنامه از سادگی در بیاید ما یک متغیر تعریف میکنیم به نام interval که نمایان گر 1000 است. کمی جلوتر میفهمید به چه کار می آید.

#define relay A0 // تعریف پین رله
#define interval 1000 // تعریف 1000

سپس به تابع void setup میرسیم، در این قسمت پین رله (A0) را به عنوان پین خروجی تعریف میکنیم.

void setup() {
  pinMode(relay, OUTPUT); // تنظیم پین رله به عنوان خروجی
}

سپس به اصل کار میرسیم که تابع void loop است. هرچه در این تابع قرار دهیم پی در پی تکرار میشود. ما در این قسمت کد ها را طوری مینویسیم که رله ما خاموش و روشن شود.

void loop()
{
   digitalWrite(relay, HIGH); // رله روشن
   delay(interval); // به مدت تعریف شده 1 ثانیه
   digitalWrite(relay, LOW); // رله خاموش
   delay(interval); // به مدت تعریف شده 1 ثانیه
}

در قسمت بالا میبینید که در روبروی Delay که همان تاخیر است به جای عدد از کلمه interval استفاده کرده ایم. این کار باعث میشود در برنامه هایی که تعداد زیادی تاخیر شبیه به هم وجود دارد ، تغییر زمان انتظار راحت تر شود.

به طور مثال ما میخواهیم 10 ال ای دی را به فلاشر تبدیل کنیم که هر 1 ثانیه چشمک بزنند. اینجا اگر برای هر ال ای دی ، یک Delay عددی بنویسیم، در صورتی که بخواهیم مقدار تاخیر را به 2 ثانیه تبدیل کنیم باید 10 قسمت از کد را تغییر دهیم. اما اگر مثل اینجا یک کلمه را به جای عدد تعریف کنیم فقط با تغییر عدد تاخیر در اول کد، تاخیر برای هر 10 ال ای دی تغییر میکند.

کد کامل را در باکس زیر آورده ایم.

#define relay A0
#define interval 1000
void setup() {
  pinMode(relay, OUTPUT);
}
void loop()
{
   digitalWrite(relay, HIGH);
   delay(interval);
   digitalWrite(relay, LOW);
   delay(interval);
}

میخواهید برنامه نویسی STM32 را یاد بگیرید؟

دوره آموزش STM32

میخواهید الکترونیک را یاد بگیرید؟

دوره آموزش الکترونیک
دوره آموزش آردوینو

میخواهید آردوینو را به صورت پروژه محور یاد بگیرید؟ برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید

برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام آیرنکس عضو شوید.

محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

3 نظر

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

  2. سلام وقت بخیر
    من میخوام دوتا جک برقی رو کنترل کنم
    که به چهار رله نیاز دارم
    سوالم اینه
    برای کنترل چهار رله میشه از یک برد اردینو استفاده کرد؟

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

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