خلاصه
در این تعهد، ما از یک ماژول بلوتوث HC-05 در کنار یک تلفن هوشمند برای انتقال دستورالعملهای صوتی برای نظارت بر LED و پذیرش دستورالعملهای صوتی استفاده میکنیم. رویکرد ما شامل استفاده از یک برنامه Android "Arduino Bluetooth Voice Controller" است که به راحتی از فروشگاه Play قابل دانلود است. میکروفون ورودی گفتاری را دریافت می کند، که متعاقباً توسط ماژول صوتی از طریق دستورات صوتی پردازش می شود. این دستورات صوتی از طریق دستگاه تلفن همراه به راه اندازی بلوتوث صادر می شود که دارای عملکردهای خاصی برای تنظیم فعال و غیرفعال کردن LED های جداگانه است.
اهداف
- کسب مهارت استفاده از ماژول HC-05 برای مدیریت آردوینو از طریق ارتباط بلوتوث.
- کسب مهارت در مدیریت LED ها از طریق ادغام ماژول های بلوتوث و آردوینو.
کاربرد در صنایع مختلف
اتوماسیون جایگاهی محوری در حوزه فناوری دارد. اتوماسیون خانگی مدیریت دستگاه های الکتریکی خانگی مانند چراغ ها، درها، پنکه ها، تهویه مطبوع و غیره را تسهیل می کند. علاوه بر این، امنیت خانه را افزایش می دهد و مکانیزم واکنش اضطراری را ایجاد می کند. اتوماسیون خانگی نه تنها تلاش انسان را کاهش می دهد، بلکه به صرفه جویی در انرژی و بهره وری زمان نیز کمک می کند. هدف اصلی اتوماسیون و امنیت خانه، کمک به افراد دارای معلولیت و سالمندان، توانمندسازی آنها برای نظارت بر لوازم خانگی و دریافت هشدارها در شرایط حیاتی است.
روش شناسی پروژه
کنترل صدا مستلزم استفاده از فناوری تشخیص گفتار است که در آن سیستم کلمات گفته شده را درک می کند. هدف اصلی این تلاش کنترل LED ها از طریق دستورات صوتی انسان است. در این تنظیمات، یک ماژول تشخیص صدا برای شناسایی گفتار کاربر استفاده شده است، در نتیجه تغییر حالت های LED را تسهیل می کند. تکامل کاربرد این پروژه به مدیریت دستگاههای خانگی از طریق دستورالعملهای صوتی گسترش مییابد، بنابراین آن را به یک راهحل بالقوه اتوماسیون خانگی تبدیل میکند. دستورات در برد آردوینو برنامه ریزی می شوند. لوازم خانگی را می توان از دو طریق مدیریت کرد: دستورالعمل های صوتی یا استفاده از یک دستگاه تلفن همراه به عنوان یک کنترل از راه دور.
آردوینو، یک محیط توسعه یکپارچه کاربر پسند، برای ساخت برنامهها به زبانهای C یا C++ استفاده میشود که سپس بر روی کنترلکننده آردوینو برای اجرای دستورات مختلف بارگذاری میشوند.
اجزاء:
- 1x آردوینو Uno
- 1x ماژول بلوتوث HC-05
- 3×330 اهم مقاومت
- 3 برابر LED
- سیم های جامپر
- 1x تخته نان
رویه پروژه
ماژول بلوتوث HC-05، در پیکربندی استاندارد خود، شش پین را در خود جای داده است. با این وجود، برای محدوده این پروژه، تمرکز ما بر روی چهار پایه خاص خواهد بود: VCC، GND، TXD و RXD.
پین VCC ماژول بلوتوث با ورودی +3.3 ولت آردوینو ارتباط برقرار می کند. پین GND ماژول به زمین آردوینو متصل می شود. با اتصال به پایه دیجیتال 0 (RXD)، پایه TX ماژول مدار خود را کامل می کند، در حالی که پایه RXD با پایه دیجیتال 1 (TXD) ارتباط برقرار می کند.
با راهاندازی LED کنترلشده با صدای ما، به برقراری ارتباط بین LED و آردوینو با استفاده از برد برد ادامه دهید. در ابتدا، ترمینال کوتاهتر LED را به زمین وصل کنید. سپس، ترمینال بلندتر هر LED را به یک مقاومت 330 اهم وصل کنید.
منبع تغذیه +5 ولت را می توان با استفاده از ابزارهای مختلف به آردوینو هدایت کرد. استفاده از پورت USB از رایانه شما گزینه مناسبی است. با این حال، قبل از معرفی پاور به آردوینو، ضروری است که ارتباط بین GND آردوینو و زمین برد برد را تایید کنید.
کد:
#include <SoftwareSerial.h> SoftwareSerial BLU(0,1); String voice; int Green = 4; //Connect To Pin #4 int Yellow = 2; //Connect To Pin #2 int Red = 3; //Connect To Pin #3 void allon() { digitalWrite(Red, HIGH); digitalWrite(Yellow, HIGH); digitalWrite(Green, HIGH); } void alloff() { digitalWrite(Red, LOW); digitalWrite(Yellow, LOW); digitalWrite(Green, LOW); } void setup() { Serial.begin(9600); BLU.begin(9600); pinMode(Red, OUTPUT); pinMode(Yellow, OUTPUT); pinMode(Green, OUTPUT); } void loop() { while (Serial.available()) //Check if there is an available byte to read { delay(10); //Delay added to make thing stable char c = Serial.read(); //Conduct a serial read if (c == '#') { break; //Exit the loop when the # is detected after the word } voice += c; } if (voice.length() > 0) { if(voice == "*turn on all LED") { allon(); } else if(voice == "*turn off all LED") { alloff(); } else if(voice == "*switch on red") { digitalWrite(Red,HIGH); } else if(voice == "*switch on yellow") { digitalWrite(Yellow,HIGH); } else if(voice == "*switch on green") { digitalWrite(Green,HIGH); } else if(voice == "*switch off red") { digitalWrite(Red,LOW); } else if(voice == "*switch off yellow") { digitalWrite(Yellow,LOW); } else if(voice == "*switch off green") { digitalWrite(Green,LOW); } voice=""; //Reset variable } }
برای آزمایش پروژه، برنامه اندروید «BT Voice Control for Arduino» را که توسط Simple Labs IN توسعه یافته است، خریداری کنید. پس از آن، به نماد منوی واقع در گوشه سمت راست بالا دسترسی پیدا کنید و "Connect Robot" را انتخاب کنید. در پنجره بعدی، ماژول بلوتوث HC-05 را تعیین کرده و یک اتصال برقرار کنید. پس از شفاهی دستورات خاص از کد ارائه شده از طریق برنامه، LED های متمایز باید رفتار روشن و خاموش مورد انتظار را نشان دهند.