- Mga Materyal na Kinakailangan:
- Pamamaraan sa Paggawa:
- Paunang mga kinakailangan:
- Paggawa ng isang AC Remote:
- Circuit Diagram at Paliwanag:
- Pag-decode ng iyong Mga Remote na Senyas ng AC:
- Pangunahing Arduino Program:
- Pag-install ng Android Application:
- Paggawa ng kinokontrol na Mobile Phone AC:
Sa modernong mundo ngayon, kung saan man tayo magpunta marami tayong mga elektronikong aparato sa paligid natin. Ngunit, sa lahat, mayroon lamang isang aparato na personal na mayroon kami sa aming mga bulsa sa lahat ng oras. Oo, ito ay ang aming mga mobile phone. Ngayon Ang mga mobile phone ay naging higit sa isang aparato na ginagamit para sa komunikasyon, ang mga ito ang aming mga camera, ang mga ito ang aming mga mapa, sila ang aming mga shopping kart at ano ang hindi?
Gamit ang kakayahang ito sa aming mga kamay, talagang isang nakakainip na ideya na gumamit ng mga Remote control upang makontrol ang anumang mga elektronikong aplikasyon sa aming bahay tulad ng TV, AC, Home theatre atbp Palaging nakakabigo upang maabot ang Remote ng AC mula sa komportable na ginhawa ng aming Higaan o sofa. Samakatuwid sa proyektong ito magtatayo kami ng isang maliit na set-up gamit ang kung saan maaari mong makontrol ang Air conditioner sa pamamagitan ng iyong Smart phone gamit ang Bluetooth at Arduino. Tunog kagiliw-giliw na tama! Bumuo tayo ng isa
Mga Materyal na Kinakailangan:
- Arduino Mega 2560
- TSOP (HS0038)
- Humantong ang IR
- Anumang Kulay LED at 1K Resistor (opsyonal)
- HC-06
- Breadboard
- Mga Koneksyon sa Mga Wires
Pamamaraan sa Paggawa:
Ang lahat ng mga Remote Control sa aming tahanan na ginagamit namin upang makontrol ang TV, Home Theatre, AC atbp ay gumagana sa tulong ng IR Blasters. Ang isang IR blaster ay walang anuman kundi isang IR LED na maaaring blaster isang senyas sa pamamagitan ng paulit-ulit na pag-pulso; ang signal na ito ay basahin ng tatanggap sa electronics appliance. Para sa bawat magkakaibang pindutan sa remote isang natatanging signal ay sasabog na pagkatapos basahin ng tatanggap ay ginagamit upang maisagawa ang isang partikular na paunang natukoy na gawain. Kung nabasa namin ang signal na ito na lumalabas mula sa Remote, maaari naming gayahin ang parehong signal gamit ang isang IR LED kung kailan kinakailangan na gampanan ang partikular na gawain. Nakagawa na kami dati ng IR Blaster circuit para sa Universal IR Remote at para sa awtomatikong AC Temperature control.
Ang TSOP ay isang IR Receiver na maaaring magamit upang mai-decode ang signal na nagmumula sa Remotes. Gagamitin namin ang TSOP na ito upang mai-decode ang lahat ng impormasyon mula sa aming Remote at iimbak ito sa Arduino. Pagkatapos gamitin ang impormasyong iyon at isang IR Led maaari naming muling likhain ang mga signal ng IR mula sa aming Arduino tuwing kinakailangan.
Paunang mga kinakailangan:
Para sa Arduino Bluetooth Controlled AC Project na ito, tiyaking mayroon kang Arduino Mega at hindi anumang iba pang bersyon ng Arduino, dahil mabigat ang laki ng code. I-install ang IR Remote Library gamit ang link na ito upang gumana sa TSOP at IR Blaster.
Paggawa ng isang AC Remote:
Bago kami magpatuloy sa proyekto tumagal ng ilang oras at pansinin kung paano gumagana ang iyong AC remote. Gumagawa ang mga remote ng AC sa medyo kakaibang paraan kumpara sa TV, mga remote ng DVD IR. Maaaring mayroong 10-12 na mga pindutan lamang sa iyong Remote, ngunit makakapagpadala sila ng maraming iba't ibang mga uri ng signal. Ibig sabihin ang Remote ay hindi nagpapadala ng parehong code sa bawat oras para sa parehong pindutan. Halimbawa, kapag binawasan mo ang temperatura gamit ang down button upang gawin itong 24 ° C (degree Celsius) makakakuha ka ng isang senyas na may isang hanay ng data, ngunit kapag pinindot mo ulit ito upang maitakda ang 25 ° C hindi ka magkakaroon ng pareho data dahil ang temperatura ngayon ay 25 at hindi 24. Katulad nito ang code para sa 25 ay magkakaiba din para sa iba't ibang bilis ng fan, mga setting ng pagtulog atbp. Kaya't huwag tayong mag-ikot sa lahat ng mga pagpipilian at ituon lamang ang mga halaga ng temperatura na may pare-pareho na halaga para sa iba pang mga setting.
Ang isa pang problema ay ang dami ng data na ipinapadala para sa bawat pindutin ang pindutan, normal na mga remote na nagpapadala ng alinman sa 24 na piraso o 48 na piraso ngunit ang isang AC na remote ay maaaring magpadala ng hanggang sa 228 na piraso dahil ang bawat signal ay naglalaman ng maraming impormasyon tulad ng Temp, Fan Speed, Oras ng pagtulog, Swing style atbp Ito ang dahilan kung bakit kailangan namin ng isang Arduino Mega para sa mas mahusay na mga pagpipilian sa pag-iimbak.
Circuit Diagram at Paliwanag:
Sa kabutihang palad ang pag-setup ng hardware ng Mobile Phone Controlled Air Conditioner na ito ay napakadali. Maaari mo lamang gamitin ang isang breadboard at gawin ang mga koneksyon tulad ng ipinakita sa ibaba.
Maaari ding magamit ang sumusunod na talahanayan upang ma-verify ang iyong mga koneksyon.
S. Hindi: |
Component Pin |
Arduino Pin |
1 |
TSOP - Vcc |
5V |
2 |
TSOP - Gnd |
Gnd |
3 |
TSOP - Signal |
8 |
4 |
IR Led - Cathode |
Gnd |
5 |
IR Led - Anode |
9 |
6 |
HC-05 - Vcc |
5V |
7 |
HC05 - Gnd |
Lupa |
8 |
HC05 - Tx |
10 |
9 |
HC05 - Rx |
11 |
Kapag tapos na ang iyong mga koneksyon dapat magmukhang ganito ang ipinakita sa ibaba. Gumamit ako ng isang Breadboard upang malinis ang mga bagay, ngunit maaari mo ring ikaw Lalaki sa mga babaeng wires nang direkta upang mai-hook ang lahat ng mga bahagi
Pag-decode ng iyong Mga Remote na Senyas ng AC:
Ang unang hakbang upang makontrol ang iyong AC ay ang paggamit ng TSOP1738 upang mai- decode ang AC Remote Control IR Codes. Gawin ang lahat ng mga koneksyon tulad ng ipinakita sa circuit diagram at tiyaking na-install mo ang lahat ng mga nabanggit na aklatan. Ngayon buksan ang halimbawa ng programang " IRrecvDumpV2 " na maaaring matagpuan sa File -> Mga Halimbawa -> IRremote -> IRrecvDumpV2 .
int recvPin = 8; IRrecv irrecv (recvPin);
Dahil ang aming TSOP ay kumonekta sa pin 8, palitan ang linya ng numero 9 sa int recPin = 8 tulad ng ipinakita sa itaas. Pagkatapos I-upload ang programa sa iyong Arduino Mega at buksan ang Serial Monitor.
Ituro ang iyong Remote patungo sa TSOP at pindutin ang anumang pindutan, para sa bawat pindutan na pinindot mo ang kani-kanilang Signal ay babasahin ng TSOP1738, na-decode ng Arduino at ipinapakita sa Serial Monitor. Para sa bawat pagbabago ng temperatura sa iyong Remote makakakuha ka ng ibang Data. I-save ang Data na ito dahil gagamitin namin ito sa aming pangunahing programa. Ang iyong serial monitor ay magmumukhang ganito, ipinakita ko rin ang Word file kung saan nai-save ko ang nakopyang data.
Ipinapakita ng Screenshot ang code para sa pagtatakda ng temperatura sa 26 ° C para sa aking AC remote. Batay sa iyong Remote makakakuha ka ng ibang hanay ng mga code. Katulad nito kopyahin ang mga code para sa lahat ng iba't ibang antas ng temperatura. Maaari mong suriin ang lahat ng mga Air Conditioner Remote control IR code sa Arduino Code na ibinigay sa pagtatapos ng tutorial na ito.
Pangunahing Arduino Program:
Ang kumpletong pangunahing programa ng Arduino ay maaaring nasa ilalim ng pahinang ito, ngunit hindi mo maaaring gamitin ang parehong programa. Kailangan mong baguhin ang mga halaga ng Signal code na nakuha lamang namin mula sa Halimbawa ng sketch. Buksan ang pangunahing programa sa iyo ng Arduino IDE at mag-scroll pababa sa lugar na ito na ipinapakita sa ibaba kung saan kailangan mong palitan ang mga halaga ng array sa mga halagang nakuha mo para sa iyong Remote.
Tandaan na gumamit ako ng 10 Mga Array kung saan dalawa sa amin ang dati nang ON-ON at patayin ang AC habang ang natitirang 8 ay ginagamit upang magtakda ng magkakaibang temperatura. Halimbawa Temp23 ay ginagamit upang itakda ang 23 * C sa iyong AC, kaya't gamitin ang kani-kanilang code sa Array na iyon. Kapag tapos na iyan, kailangan mo lamang i-upload ang code sa iyong Arduino.
Kailangan naming mag-import ng dalawang aklatan para sa proyektong ito. Ang isa ay ang IRremote library na idinagdag lamang namin sa Arduino at ang isa pa ay ang built-in na Software Serial Library na tumutulong sa amin sa paggamit ng module na Bluetooth.
# isama
Susunod na pinasimulan namin ang Module ng Bluetooth sa pin 10 at 11 at pagkatapos ay gumagamit ng isang bagay na tinatawag na irsend upang ma-access ang lahat ng mga tampok ng IR ng library.
SoftwareSerial BT_module (10, 11); // RX, TX IRsend irsend;
Susunod ay ang napakahalagang mga linya ng code. Dito naroroon ang impormasyon upang makontrol ang iyong AC. Ang ipinakita sa ibaba ay para sa aking AC remote, dapat ay nakuha mo ang sa iyo sa nakaraang hakbang.
Susunod sa loob ng walang bisa na pag- andar ng pag- setup , sinisimulan namin ang dalawang mga serial na komunikasyon. Ang isa ay ang Bluetooth sa 9600 Baud rate at ang isa pa ay ang Serial monitor sa 57600 baud rate.
void setup () {BT_module.begin (9600); // BT gumagana sa 9600 Serial.begin (57600); // Serial Monitor work son 57600}
Sa loob ng aming void loop (infinite loop), sinusuri namin kung mayroong anumang natanggap ng Bluetooth Module. Kung may natanggap ay iniimbak namin ang impormasyong iyon sa variable na BluetoothData .
habang (BT_module.available ()) // Kung darating ang data {BluetoothData = BT_module.read (); // basahin ito at i-save ito Serial.println (BluetoothData); // i-print ito sa serial para sa layunin ng pagsubok}
Ang impormasyong natanggap ng Bluetooth ay batay sa pindutang pinindot sa aming Android app na mai-install namin sa aming susunod na hakbang. Kapag natanggap ang impormasyon kailangan lang nating mag- trigger ng kani-kanilang IR code tulad sa ibaba
kung (BluetoothData == '2') {irsend.sendRaw (Temp23, sizeof (Temp23) / sizeof (Temp23), khz); antala (2000); // Magpadala ng signal upang maitakda ang Temperatue 23C}
Dito kung natanggap ang code na '2' kailangan nating itakda ang temperatura ng AC sa 23 ° C. Katulad nito mayroon kaming code mula 0 hanggang 9 upang maisagawa ang lahat ng mga pangunahing pagpapaandar ng kontrol ng AC. Maaari kang mag-refer sa kumpletong code ng arduino sa dulo ng pahinang ito.
Pag-install ng Android Application:
Ang pangwakas na hakbang ng naka- air condition na Kontroladong telepono ay ang i-install ang Android application. Ang application ng Android para sa proyektong ito ay nilikha gamit ang Pagproseso ng Android Mode. Ang pagpoproseso ay isang mahusay na tool upang lumikha ng mga.EXE file o mga file ng APK para sa iyo ng mga naka-embed na proyekto. Ito ay isang bukas na mapagkukunan ng platform tulad ng Arduino at samakatuwid ay ganap na malayang mag-download upang magamit.
Kung hindi mo nais na lumalim dito, maaari mo lang i- download ang APK file mula dito sa loob ng zip file at mai-install ito nang direkta sa iyong mobile phone. Buksan ang application at makakakuha ka ng isang screen tulad ng ipinakita sa ibaba kung saan maaari kang magpatuloy sa susunod na hakbang at masiyahan sa pagtatrabaho sa proyekto. Ngunit kung nais mong i-tweak ang programa ng application upang magkasya ito sa iyong pangangailangan pagkatapos ay maaari kang magbasa nang higit pa.
Ang kumpletong file ng programa para sa Processing code ay maaaring ma- download mula rito. Ang Zip na ito ay magkakaroon ng code at mapagkukunan ng imahe gamit ang kung saan gumagana ang application. Matapos buksan ang code maaari mong i-tweak ang mga sumusunod na linya upang iakma ito para sa iyong pangangailangan.
Tulad ng sinabi kanina, ang Pagproseso ay katulad ng Arduino. Kaya mayroon din itong isang walang bisa na pag-setup at void loop (dito gumuhit) na mga pag-andar. Sa loob ng walang bisa na pag- andar ng pag- setup ay magtuturo kami sa Bluetooth ng telepono upang kumonekta sa Bluetooth ng Arduino. Ang pangalan ng aking aparato dito ay "HC-05" kaya ang aking linya ng code ay
bt.start (); // simulang makinig para sa mga koneksyon sa BT bt.getPairedDeviceNames (); bt.connectToDeviceByName ("HC-05"); // Kumonekta sa aming module na blu-06 na Bluetooth
Susunod sa loob ng mga pag- andar ng load_buttons () maaari kang gumuhit ng maraming mga pindutan hangga't gusto mo. Gumuhit ako ng 10 mga pindutan tulad ng ipinakita sa Application. Sinusundan ng mayroon kaming function na read_buttons () na ginagamit upang makita kung aling pindutan ang iyong hinahawakan. Ang bawat pindutan ay may isang tukoy na kulay, kaya kapag hinawakan ng isang gumagamit ang screen sinusuri namin kung aling kulay ang kanyang hinawakan at matukoy kung aling pindutan ang kanyang hinawakan. Ang isang sample na code upang lumikha ng isang pindutan at piliin ito batay sa kulay ay ipinapakita sa ibaba
punan (255,145,3); tuwid (lapad / 2-lapad / 4, taas / 2, lapad / 4, taas / 12); punan (255); teksto ("25C", lapad / 2-lapad / 4, taas / 2); // button 5 if (color_val == - 13589993) {byte data = {'0'}; bt.broadcast (data);}
Ang linyang “byte data = {'0'};” ay isang napakahalagang linya. Dito namin napagpasyahan kung aling code ang dapat ipadala sa Arduino sa pamamagitan ng Bluetooth. Dito kung pinindot ang pindutan na ito ang char na "0" ay ipinadala mula sa Bluetooth patungong Arduino. Katulad nito maaari kaming magpadala ng ibang character para sa iba't ibang mga pindutan. Ang mga character na ito ay maaaring ihambing sa panig ng Arduino at ang kani-kanilang pagkilos ay maaaring gawin.
Magpatuloy at kumibot sa paligid ng code, kung mayroon kang anumang mga pagdududa na maabot ako sa pamamagitan ng seksyon ng komento at susubukan ang aking makakaya sa pagtulong sa iyo.
Paggawa ng kinokontrol na Mobile Phone AC:
Kapag handa ka na sa iyong Hardware, Arduino Code at mga android application oras na upang tamasahin ang output. I-upload ang Arduino Code sa iyong Hardware at ilagay ito nakaharap sa iyong AC. Ngayon buksan ang android application sa iyong Mobile phone, kung gumagana ang lahat tulad ng inaasahan dapat mong makita ang " Nakakonekta sa: aparato_name (ilang code) " tulad ng ipinakita sa ibaba
Ngayon pindutin lamang ang anumang pindutan sa iyong Android application at dapat itong magpalitaw ng kani-kanilang pagkilos sa AC na parang gumagamit ka ng isang Remote. Maaari kang magdagdag ng maraming mga pindutan na gusto mo sa pamamagitan ng pagbabago ng code at i- automate mo rin ang iyong AC batay sa temperatura ng iyong kuwarto o presensya. Suriin ang kumpletong Arduino Code at ang Video sa ibaba.
Inaasahan kong nasiyahan ka sa proyekto at naintindihan ang konsepto sa likod nito. Tulad ng dati kung mayroon kang anumang problema sa paggawa ng trabahong ito, maaari mong gamitin ang mga forum upang mag-post sa iyo ng mga katanungan at malutas sila.
Ang file ng APK para sa pag-install ng Android Application ay maaaring ma-download mula rito.