- Kinakailangan ang Mga Bahagi
- Paano gumagana ang IR Communication?
- Diagram ng Circuit
- Programming para sa Arduino IR Remote Decoder
- Sine-save ang IR Remote Decoder Data sa Excel Sheet
Ang IR (Infrared) na komunikasyon ay simple, mababang gastos, at malawak na ginagamit na teknolohiyang wireless na komunikasyon. Ang ilaw ng IR ay medyo kapareho ng nakikitang ilaw, maliban sa haba ng haba ng haba ng haba ng haba ng haba. Ang pag-aari ng IR na ito ay ginagawang hindi makita sa mata ng tao at perpekto para sa wireless na komunikasyon.
Maraming mga application kung saan kailangan mong i-decode ang mga signal ng IR upang mapatakbo ang ilang mga aparato na may IR remote. Kaya sa tutorial na ito, gagamitin namin ang TSOP1838 IR receiver upang bumuo ng isang IR Remote Decoder gamit ang Arduino. Ang hex code para sa bawat pindutan ay mai-log sa Microsoft Excel Sheet. Ang simpleng IR Remote Control Decoder na ito ay maaaring magamit sa mga proyekto tulad ng IR Remote control Robot, automation ng Home, at iba pang mga proyekto na kinokontrol ng IR.
Dati ay ginamit namin ang IR remote at TSOP receiver upang bumuo ng maraming mga kapaki-pakinabang na application tulad ng:
- IR Remote Controlled TRIAC Dimmer Circuit
- IR Remote Controlled Home Automation gamit ang Arduino
- IR Remote Controlled Home Automation gamit ang PIC Microcontroller
- Kinokontrol ng Cell Phone AC gamit ang Arduino at Bluetooth
Kinakailangan ang Mga Bahagi
- Arduino Uno / Arduino Nano
- IR Receiver (TSOP1838)
- Jumper Wires
- Breadboard
Paano gumagana ang IR Communication?
Tulad ng ibang mga sistema ng komunikasyon, ang komunikasyon ng Infrared ay mayroon ding transmiter at tatanggap. Ang transmitter ay mukhang isang LED, ngunit gumagawa ito ng ilaw sa IR spectrum sa halip na ang nakikita na spectrum. Habang ang IR receiver ay isang photodiode na naka-embed na may isang pre-amplifier na binabago ang ilaw ng IR sa isang de-koryenteng signal. Para sa komunikasyon ng IR parehong transmitter at receiver ay dapat na itinuro sa bawat isa. Upang matuto nang higit pa tungkol sa IR transmitter at circuit ng tatanggap, sundin ang link.
Kapag pinindot ang isang remote button, ang IR LED (Transmitter) ay naglalabas ng infrared light. Ang ilaw na ito ay natanggap ng Receiver na karaniwang isang photodiode o phototransistor. Ngunit ang ilaw ng IR ay nagpapalabas din ng araw, mga bombilya, at anumang bagay na gumagawa ng init. Maaari itong makagambala sa signal ng transmiter, kaya upang maiwasan, ang transmitter signal ay binago gamit ang dalas ng carrier sa pagitan ng 36 kHz hanggang 46 kHz. Sa pagtanggap ng senyas, na-demodulate ng IR receiver ang signal at binago ito sa binary bago ipadala ito sa microcontroller.
Narito gumagamit kami ng isang remote ng TV para sa pagpapadala ng IR signal at TSOP1838 kasama ang Arduino para sa pagtanggap sa kanila.
Gayundin, suriin ang iba't ibang mga application na batay sa IR dito kasama ang TV Remote Control Jammer Circuit at IR tester circuit.
Diagram ng Circuit
Ang diagram ng Circuit para sa IR Remote Decoder na gumagamit ng Arduino ay ibinibigay sa ibaba:
Ang mga koneksyon ay napaka-simple dahil ang sensor ng IR Receiver ay mayroon lamang tatlong mga pin, Vs, GND, at Data. Ikonekta ang Vs at GND pin ng IR Receiver sa 3.3V GND pin ng Arduino at Data pin sa Digital pin 2 ng Arduino.
Programming para sa Arduino IR Remote Decoder
Ang kumpletong code para sa Arduino IR Decoder ay ibinibigay sa dulo ng pahina.
Para sa pag-decode ng IR Remote, una, kailangan naming mag-download at magdagdag ng isang IR library sa Arduino IDE. Maaari mong i-download ang IR Remote library mula rito. Pagkatapos i-download ang file, buksan ang iyong Arduino IDE at Pumunta sa Sketch> Isama ang library> Add.Zip library . Piliin ang file ng library at mag-click sa 'Buksan'.
Simulan ang iyong code sa pamamagitan ng pagsasama ng IR Remote library file.
# isama
Pagkatapos nito tukuyin ang Arduino pin kung saan mo ikinonekta ang Data pin ng IR Receiver. Sa aking kaso, ito ay konektado sa D2 pin ng Arduino.
int IRPIN = 2;
Pagkatapos nito lumikha ng isang halimbawa para sa IR Receiver pin.
IRrecv irrecv (IRPIN);
Sa susunod na linya, tukuyin ang isang bagay para sa klase ng decode_results , gagamitin ito ng tatanggap ng IR upang maipadala ang na-decode na impormasyon.
resulta sa pag-decode_resulta;
Sa loob ng pag- andar ng setup () , simulan ang serial komunikasyon, at simulan ang IR receiver sa pamamagitan ng pagtawag sa pag- andar ng IRrecv paganahin angInIn ().
void setup () {Serial.begin (9600); Serial.println ("Pagpapagana sa IRin"); irrecv.enableIRIn (); Serial.println ("Pinapagana ang IRin"); Initialize_streamer (); }
Sa pagpapaandar ng loop () , ang irrecv.decode ay patuloy na sumusuri para sa bagong signal at kung ang isang bagong signal ay natanggap, ang natanggap na signal code ay maiimbak sa isang resulta.value function.
void loop () {if (irrecv.decode (& resulta)) {Serial.print ("Halaga:"); Serial.println (resulta.value, HEX); Write_streamer (); irrecv.resume (); } pagkaantala (500); }
Para sa pagpapadala ng data sa isang sheet ng Excel mula sa Arduino, gumagamit kami ng PLX-DAQ. Gamit ang pagpapaandar ng Writing_streamer () , ipinapadala namin ang data nang serally sa isang tukoy na pattern tulad ng pagpapakita ng halaga sa serial monitor. Ang mga pangunahing linya ay ipinaliwanag sa ibaba:
walang bisa ang Writing_streamer () {Serial.print ("DATA"); // laging isulat ang "DATA" upang Ipahiwatig ang sumusunod bilang Data Serial.print (","); // Lumipat sa susunod na haligi gamit ang isang "," Serial.print (resulta.value, HEX); // Petsa ng tindahan sa Excel Serial.print (","); // Lumipat sa susunod na haligi gamit ang isang "," Serial.println (); // End of Row lumipat sa susunod na hilera}
Kapag handa na ang hardware at ang programa, oras na upang i-upload ang programa sa iyong Arduino Nano Board. Matapos i-upload ang code, ituro ang remote patungo sa IR receiver at pindutin ang mga remote button. Ang hex code para sa bawat pindutan ay mai-print sa serial monitor.
Sine-save ang IR Remote Decoder Data sa Excel Sheet
Ngayon upang magpadala ng data sa isang sheet ng Excel, gagamitin namin ang PLX-DAQ. Ito ay isang Excel Plug-in na software na tumutulong sa iyo na sumulat ng mga halaga mula sa Arduino upang direkta sa isang sheet ng Excel sa iyong Laptop o PC. Gamitin ang link upang mai-download ang file. Pagkatapos mag-download, i-extract ang file at mag-click sa.exe file upang mai-install ito. Lilikha ito ng isang folder na pinangalanang PLX-DAQ sa iyong desktop.
Ngayon buksan ang ' PLX-DAQ spreadsheet' file mula sa desktop folder. Kung ang mga macros ay hindi pinagana sa iyong Excel, makakakita ka ng isang bloke ng seguridad tulad ng ipinakita sa imaheng nasa ibaba:
Mag-click sa Mga Pagpipilian-> Paganahin ang nilalaman -> Tapusin -> OK upang Paganahin ang Macros. Pagkatapos nito, makukuha mo ang sumusunod na screen:
Piliin ngayon ang rate ng baud bilang "9600" at ang port kung saan nakakonekta ang iyong Arduino at pagkatapos ay mag-click sa Connect upang simulan ang streaming ng data. Ang iyong mga halaga ay dapat magsimula upang mai-log tulad ng ipinakita sa larawan sa ibaba.
Ito ay kung paano ang isang Arduino IR Remote Decoder ay maaaring maitayo nang madali upang mai-convert ang mga malalayong signal ng IR sa katumbas na HEX code.
Kumpletuhin ang Arduino code na may demo video na ibinibigay sa ibaba.