شِفر (کود) آردوینو و ویدئو برای کنترل ریلی با PowerShell از طریق USB

شِفر (کود) آردوینو و ویدئو برای کنترل ریلی با PowerShell از طریق USB

در این آموزش بررسی می‌کنیم چگونه یک ریلی را با استفاده از آردوینو و یک ماجیول USB به UART کنترل کنیم، همه از طریق دستورات Windows PowerShell. این پیکربندی به شما امکان می‌دهد با ارسال دستورات مشخص از طریق خط فرمان، یک چراغ را از راه دور روشن و خاموش کنید. در پایان این راهنما سیستمی عملیاتی خواهید داشت که می‌تواند دستگاه‌های AC را به‌صورت ایمن و مؤثر کنترل کند.

CP2102 usb to UART with relay

ما از قابلیت‌های ارتباط سریال آردوینو برای شنیدن فرمان‌هایی که از PowerShell ارسال می‌شوند استفاده خواهیم کرد. فرمان‌های مشخص مورد استفاده اعداد صحیحی خواهند بود که متناظر با روشن و خاموش کردن ریلی هستند. این پروژه نیازمند برخورد دقیق با ولتاژ AC است، بنابراین در تمام طول فرآیند باید تدابیر ایمنی رعایت شوند. برای توضیحات بیشتر حتما ویدیوی کامل را تماشا کنید (در ویدیو در 00:00).

توضیح سخت‌افزار

اجزای اصلی درگیر در این پروژه شامل برد آردوینو، ماجیول USB به UART و ریلی هستند. آردوینو نقش مغز عملیات را بازی می‌کند، دستورات سریال را پردازش کرده و مطابق آن ریلی را کنترل می‌کند. ماجیول USB به UART ارتباط بین آردوینو و رایانهٔ شما را تسهیل می‌کند و امکان وارد کردن دستورات از طریق PowerShell را فراهم می‌آورد.

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

جزئیات مشخصات فنی

تولیدکنندهFTDI
شماره قطعهFT232R
ولتاژ منطقی/ورودی-خروجی3.3 V / 5 V
ولتاژ تغذیه4.5 V تا 5.5 V
جریان خروجی (برای هر کانال)50 میلی‌آمپر
جریان پیک (برای هر کانال)100 میلی‌آمپر
راهنمای فرکانس PWMقابل اعمال نیست
آستانه‌های منطقی ورودی0.3 V (پایین)، 0.7 V (بالا)
افت ولتاژ روی Rدرین-سورس در حالت روشن/ اشباعحداکثر 0.5 V
محدودیت‌های حرارتی125 °C
بسته32 پایه LQFP
یادداشت‌ها / انواعمبدل USB به UART

  • برای ریلی و ماجیول UART، سطوح ولتاژ مناسب را تأمین کنید.
  • اگر انتظار می‌رود ریلی بارهای سنگین را تحمل کند، از یک هیت‌سینک استفاده کنید.
  • قبل از روشن کردن سیستم، همهٔ اتصالات را دوباره بررسی کنید.
  • ماجیول را از رطوبت و مواد رسانا دور نگه دارید.
  • برای جلوگیری از جهش‌های ولتاژ، از زمین مشترک برای همهٔ قطعات استفاده کنید.

دستورالعمل‌های سیم‌کشی

Arduino wiring for FTDI usb with relay
Arduino wiring for FTDI usb with relay
Arduino wiring for CP2102 usb to UART with relay
Arduino wiring for CP2102 usb to UART with relay

ابتدا پایه VCC ماجیول ریلی را به پایه 5V روی آردوینو متصل کنید. سپس پایه GND ریلی را به یکی از پایه‌های زمین روی آردوینو وصل کنید. پایه کنترل (با برچسب IN یا مشابه) ریلی باید به پایه دیجیتال 8 روی آردوینو متصل شود.

برای ماجیول USB به UART، پایه TX را به پایه RX آردوینو وصل کنید و پایه RX ماجیول را به پایه TX آردوینو وصل کنید. حتماً پایه زمین (GND) ماجیول USB را به همان زمین آردوینو متصل کنید تا مرجع مشترکی برقرار شود. این تنظیم اجازه می‌دهد ارتباط بی‌وقفه‌ای بین آردوینو و کامپیوتر شما از طریق PowerShell برقرار شود.

نمونه‌های شِفر (کود) و راهنمای گام‌به‌گام

byte RX_Value = 0;        // stores received byte
#define relay 8 // pin 8 for relay
int comON = 6; // code to turn ON the light
int comOFF = 2; // code to turn OFF the light

در این گزیده، متغیر را تعریف می‌کنیم.RX_Valueبرای نگه‌داشتن فرمان دریافتی از نمایشگر مسلسل. اینrelayروی پایه 8 تنظیم شده است، و ما دو فرمان را تعریف می‌کنیم:comONبرای روشن کردن چراغ وcomOFFبرای خاموش کردن آن.

FT232-AZ-USB-to_TTL-serial-adapter
void setup() {
  Serial.begin(9600); // Start serial communication at 9600 baud
  pinMode(relay, OUTPUT); // Set relay pin as output
  digitalWrite(relay, HIGH); // Turn the relay OFF initially
}

درsetup()در این تابع ارتباط سریال را با سرعت 9600 baud مقداردهی اولیه می‌کنیم که باید با تنظیمات PowerShell مطابقت داشته باشد. پایه ریلی به‌عنوان خروجی پیکربندی شده و آن را روی HIGH قرار می‌دهیم تا مطمئن شویم ریلی هنگام شروع برنامه خاموش است.

Wirig relay module to AC load
if (Serial.available()) {
    RX_Value = Serial.read(); // Read the incoming byte
    if (RX_Value == comON) {
        digitalWrite(relay, LOW); // Turn the relay ON
    } else if (RX_Value == comOFF) {
        digitalWrite(relay, HIGH); // Turn the relay OFF
    }
}

این قطعه شِفر (کود) نشان می‌دهد که برنامه چگونه به داده‌های سریال ورودی گوش می‌دهد. اگر فرمانی دریافت شود که مطابقت داشته باشدcomON, ریلی فعال می‌شود و چراغ روشن می‌شود. برعکس، اگرcomOFFوقتی دریافت می‌شود، ریلی غیرفعال شده و چراغ خاموش می‌شود. این حلقه ادامه می‌یابد و امکان کنترل پاسخگو از PowerShell را فراهم می‌کند.

نمایش / آنچه باید انتظار داشته باشید

وقتی تنظیمات کامل شد و شِفر (کود) آپلود شد، باید بتوانید PowerShell را باز کرده و فرمان‌ها را برای کنترل چراغ ارسال کنید. تایپ کردن فرمان مربوطه باید فوراً ریلی را فعال کرده و چراغ را طبق خواسته روشن یا خاموش کند. هنگام کار با دستگاه‌های AC احتیاط کنید و مطمئن شوید در طول آزمایش هیچ سیم برق‌داری در معرض نباشد.

برچسب‌های زمانی ویدیو

  • 00:00- معرفی و کلیات پروژه
  • 02:30- توضیح سیم‌کشی
  • 05:00- مرور شِفر (کود)
  • 08:15- نمایش دستور PowerShell
  • 10:45- نتیجه‌گیری و نکات ایمنی

تصاویر

Wirig relay module to AC load
Wirig relay module to AC load
FT232-AZ-USB-to_TTL-serial-adapter
FT232-AZ-USB-to_TTL-serial-adapter
Arduino wiring for FTDI usb with relay
Arduino wiring for FTDI usb with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
CP2102 usb to UART with relay
Arduino wiring for CP2102 usb to UART with relay
Arduino wiring for CP2102 usb to UART with relay
91-Arduino code to control a relay via USB from the command line using Windows PowerShell
زبان: C++
کپی شد!

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

منابع و مراجع

هنوز هیچ منبعی موجود نیست.

فایل‌ها📁

فایل Fritzing

سایر فایل‌ها