Vodnik po korakih za nastavitev in odpravljanje težav z IR daljinskim upravljalnikom Arduino

Vodnik po korakih za nastavitev in odpravljanje težav z IR daljinskim upravljalnikom Arduino

Z IR daljinskimi upravljalniki lahko poenostavite in naredite projekte Arduino zabavne. IR tehnologija vam pomaga upravljati stvari doma. Lahko sestavite svoje daljinske upravljalnike ali berete signale iz drugih daljinskih upravljalnikov. Z infrardečimi daljinskimi sistemi Arduino lahko ustvarite nove načine za upravljanje naprav. Ustvarite lahko tudi svoje posebne daljinske upravljalnike. Nastavitev IR daljinskega upravljalnika Arduino je preprost način za dodajanje brezžičnega upravljanja vašim projektom.

Vrsta aplikacije

Opis

Nadzor gospodinjskih aparatov

Za televizorje in druge stvari doma uporabite IR daljinske upravljalnike.

Daljinski upravljalniki po meri

Izdelajte daljinske upravljalnike za lažje upravljanje številnih naprav.

Dekodiranje signalov

Za upravljanje novih naprav ponovno uporabite signale.

Izdelava kontrolnikov po meri

Izdelajte krmilnike za posebne potrebe pri delu z infrardečim daljinskim upravljalnikom Arduino.

Začnete lahko z ožičenjem osnovnega IR sprejemnika. Nato lahko preizkusite nove ideje za infrardeči daljinski upravljalnik Arduino.

Osnove IR komunikacije

Kaj je IR?

IR omogoča napravam, da si pošiljajo signale. IR pomeni infrardeča svetloba, ki je ne moremo videti. IR komunikacija uporablja to nevidno svetlobo za pošiljanje informacij. Daljinski upravljalniki in sprejemniki za to uporabljajo IR LED diode in senzorje. IR deluje na dva glavna načina: od točke do točke in difuzno. Pri od točke do točke mora biti daljinski upravljalnik obrnjen proti sprejemniku. Difuzno omogoča napravam, da se pogovarjajo brez neposredne linije. IR deluje v frekvenčnem območju od 300 GHz do 400 THz. IR lahko najdete v napravah, kot so televizorji, slušalke in domači varnostni sistemi.

Nasvet: IR signali ne gredo skozi trdne predmete. Prepričajte se, da nič ne ovira poti med daljinskim upravljalnikom in sprejemnikom.

  • IR komunikacija uporablja impulze infrardeče svetlobe.

  • IR signali delujejo najbolje, če jim ni ničesar na poti.

  • IR tehnologija se uporablja v številnih gospodinjskih aparatih.

IR daljinski upravljalnik in IR sprejemnik

Za uporabo IR potrebujete tako IR daljinski upravljalnik kot IR sprejemnik. Daljinski upravljalnik pošilja podatke kot impulze infrardeče svetlobe. Sprejemnik te impulze sprejema in jih dekodira. Za projekte Arduino IR pogosto uporabljate ploščo SunFounder Uno, kabel USB, modul infrardečega sprejemnika, daljinski upravljalnik in 3-pinski kabel.

Sestavina

funkcija

IR daljinski upravljalnik

Pošilja infrardeče signale

Modul IR sprejemnika

Pridobi in dekodira signale

Plošča Arduino

Obdeluje prejete podatke

IR daljinski upravljalniki uporabljajo posebne metode kodiranja, imenovane Consumer IR. Te metode pošiljajo ukaze počasi, do 32 bitov s hitrostjo 4000 biti na sekundo. Sprejemnik preveri, kako dolgo trajajo impulzi in presledki IR svetlobe. Modulacija pri 38 kHz pomaga sprejemniku, da ignorira druge luči.

IR protokoli

Za upravljanje naprav z IR se uporabljajo protokoli. Protokoli so pravila za pošiljanje in branje IR signalov. Protokol NEC je zelo pogost v elektroniki. Drugi priljubljeni protokoli so JVC, Sony SIRC, Philips RC5 in RC6. Ti protokoli za pošiljanje binarnih signalov uporabljajo nosilni val 38 kHz.

  • Oddaljeni protokol NEC

  • Oddaljeni protokol RC5

  • Protokol JVC

  • Protokol Sony SIRC

  • Protokol Philips RC6

Vsak gumb na vašem IR daljinskem upravljalniku pošlje svojo kodo. Sprejemnik kodo uskladi z ukazom. Protokoli in kodiranje zagotavljajo, da vsak gumb naredi nekaj drugačnega. To vam omogoča natančen nadzor, saj je vsaka koda posebna.

Nastavitev IR daljinskega upravljalnika Arduino

Nastavitev IR daljinskega upravljalnika Arduino
Izvirni naslov: pekseli

Razporeditev pinov IR sprejemnika

Preden začnete, morate poznati razporeditev pinov. Nastavitev IR daljinskega upravljalnika za ArduinoVečina IR sprejemnikov ima tri pine. Vsak pin ima posebno nalogo. Vsak pin morate priključiti na pravo mesto na vaši Arduino plošči. To pomaga, da vaša nastavitev deluje dobro.

Priključek IR sprejemnika

Arduino Pin

-

GND

+ (srednji zatič)

5V

S

Digitalni zatič 11

Minus pin je povezan z ozemljitvijo (GND). Pozitivni pin je povezan s 5 V. Signalni pin je povezan z digitalnim pinom, pogosto s pinom 11. Vedno preverite podatkovni list vašega IR sprejemnika. Nekateri sprejemniki uporabljajo različna imena pinov, vendar večina sledi temu vzorcu.

Ožičenje za Arduino

Za delujočo nastavitev IR daljinskega upravljalnika za Arduino morate IR sprejemnik priključiti na Arduino. Uporabite premostitvene žice za enostavno nastavitevPrepričajte se, da sprejemnik priključite na prave pine. Ta korak je ključnega pomena za dobre strojne povezave.

IR sprejemnik

Arduino

IZHOD (levo)

Zatič 2

GND (sredina)

GND (-)

Vcc (desno)

5 V (+)

Za nastavitev sledite tem korakom:

  1. IR sprejemnik postavite na svojo testno ploščo.

  2. Priključite pin OUT na digitalni pin 2 na vašem Arduinu.

  3. Priključite GND pin na GND na vaši plošči.

  4. Povežite pin Vcc s pinom 5V.

Nasvet: Preden vklopite napravo, dvakrat preverite vsako žico. Napačna povezava lahko prepreči delovanje vašega IR daljinskega upravljalnika Arduino.

Preverjanje strojne opreme

Ko priključite sprejemnik, morate preveriti nastavitev. Prepričajte se, da je vsaka žica trdno priključena. Poiščite ohlapne žice ali upognjene nožice. Vaš Arduino IR daljinski upravljalnik potrebuje trdne strojne povezave. Če na sprejemniku utripajo lučke, vaša nastavitev deluje. Če ne, ponovno preverite ožičenje.

Za preverjanje napetosti na sprejemniku lahko uporabite multimeter. Napetost na pinu 5V mora biti blizu 5 voltov. Na pinu GND mora biti nič. Napetost na signalnem pinu se mora spremeniti, ko pritisnete gumbe na infrardečem daljinskem upravljalniku. To pomeni, da je vaša nastavitev pripravljena na naslednji korak.

Programiranje Arduina in branje kod

Namestitev knjižnice IRremote

Za programiranje infrardečega sprejemnika potrebujete knjižnico IRremote. Ta knjižnica vam pomaga brati signale iz daljinskega upravljalnika. Če jo želite namestiti, sledite tem korakom: Odprite Arduino IDE. Pojdite na Sketch, nato Include Library in nato Manage Libraries. V upravitelju knjižnic poiščite »Arduino-IRremote«. Kliknite namesti.

Če vidite napake, kot je »TCCR2B ni bil deklariran« ali napake pri premestitvi, imate morda neujemanje čipov. Do teh težav pride pri mikrokrmilnikih Attiny. Odpravite jih lahko z uporabo Arduino IDE različice 1.0.5. Prepričajte se, da so datoteke knjižnice v pravi mapi.

Ko namestite knjižnico, lahko začnete programirati svoj IR sprejemnik. Knjižnica IRremote vsebuje primere, ki vam bodo pomagali pri branju kod in upravljanju naprav.

Branje IR kod

Za branje kode z daljinskega upravljalnika lahko uporabite primere iz knjižnice IRremote. Odprite skico primera »IRrecvDemo«. Naložite jo na svoj Arduino. Priključite IR sprejemnik na ploščo. Odprite serijski monitor v Arduino IDE.

Ko pritisnete gumb na daljinskem upravljalniku, infrardeči sprejemnik sprejme signal. Arduino dekodira signal in prikaže kode v šestnajstiški obliki. Pritisnite vsak gumb, da poiščete njegovo kodo. Zapišite si kode, da jih boste lahko uporabili pozneje.

Nasvet: Če želite zabeležiti kode za vse gumbe, pritisnite vsak gumb in si zapišite kode v serijski monitor. To vam bo pomagalo najti kode za vaš daljinski upravljalnik.

Morda boste želeli vedeti, kateri protokol uporablja vaš daljinski upravljalnik. To lahko storite na različne načine: Za ogled signala uporabite osciloskop. Za dekodiranje protokola uporabite IR sprejemnik z Arduinom. Poskusite z metodami kodiranja, kot sta pulzno-širinska modulacija ali dvofazno kodiranje.

Primeri knjižnice IRremote pogosto prikazujejo ime protokola skupaj s kodami. To vam pomaga, da kode uskladite s pravilnim protokolom.

Preslikaj kode v dejanja

Ko najdete kode za svoj daljinski upravljalnik, jih lahko preslikate v dejanja v skici Arduino. Uporabite primere knjižnice IRremote za upravljanje LED diod, motorjev ali drugih naprav. Naložite svojo kodo v Arduino. Odprite serijski monitor. Usmerite daljinski upravljalnik proti IR sprejemniku in pritisnite gumbe. Arduino prebere kode in izvede dejanja, ki jih nastavite.

Za upravljanje izhodov lahko uporabite kode infrardečih tipk. Na primer, LED diodo vklopite z enim gumbom. Izklopite jo z drugim gumbom. Kode lahko uporabite tudi za upravljanje motorjev ali relejev. Za vsako kodo, ki jo želite uporabiti, v skici nastavite dejanja.

  • Zapišite kode za vsak gumb.

  • Za nadzor izhodov uporabite kode v skici Arduino.

  • Nastavite funkcije za vsako kodo, da ustvarite prilagojene daljinske upravljalnike.

  • Poskusite z različnimi primeri, da se naučite uporabljati kode za številne naprave.

Lahko poskusite preslikati kode na nova dejanja. To vam omogoča, da za svoje projekte ustvarite prilagojene kontrole. Če želite kode za nov daljinski upravljalnik, ponovite postopek in posodobite skico. Programiranje IR sprejemnika z Arduinom vam ponuja veliko načinov uporabe brezžičnega upravljanja.

Krmilni izhodi z IR daljinskim upravljalnikom

LED diode in naprave

Z infrardečim daljinskim upravljalnikom lahko upravljate stvari s svojo Arduino. Najpogosteje upravljate LED diode in domače naprave. Najprej nastavite infrardeči sprejemnik in ga priključite na Arduino. Vsak gumb na daljinskem upravljalniku pošilja svoj signal. Arduino prebere te signale in upravlja, kar želite.

  • LED

  • Gospodinjski aparati

  • Številne naprave lahko upravljate brez žic

Hkrati lahko vklopite več kot eno LED diodo. V kodi izberite, kateri priključki gredo na posamezno LED diodo. Uporabite stikala, da vsak gumb povežete z določeno LED diodo ali napravo. Ko pritisnete gumb, Arduino vklopi ali izklopi izhod.

Nasvet: Z infrardečim daljinskim upravljalnikom lahko upravljate luči, ventilatorje ali druge stvari brez žic.

Tukaj je preprost primer kode za krmiljenje več LED diod:

#include <IRremote.h>
int IR_Recv = 3;
int ledPins[] = {5, 6, 9, 10};
void setup() {
  for (int i = 0; i < 4; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
  IrReceiver.begin(IR_Recv, ENABLE_LED_FEEDBACK);
}
void loop() {
  if (IrReceiver.decode()) {
    switch (IrReceiver.decodedIRData.command) {
      case 0x10: digitalWrite(ledPins[0], HIGH); break;
      case 0x11: digitalWrite(ledPins[1], HIGH); break;
      case 0x12: digitalWrite(ledPins[2], HIGH); break;
      case 0x13: digitalWrite(ledPins[3], HIGH); break;
    }
    IrReceiver.resume();
  }
}

Številke pinov in kode lahko spremenite glede na svoj projekt. Ta način deluje s katerim koli daljinskim upravljalnikom.

Prilagajanje za različne daljinske upravljalnike

Morda boste želeli uporabljati različne vrste IR daljinskih upravljalnikov. Kodo na Arduinu boste morali nekoliko spremeniti. Najprej ugotovite, kateri IR protokol uporablja vaš daljinski upravljalnik. Zapišite si ukaze za vsak gumb. Oglejte si signale za vsako opravilo in si jih zapisujte. Spreminjajte eno stvar naenkrat in zapišite, kaj se zgodi.

  1. Poiščite protokol IR za vaš daljinski upravljalnik.

  2. Zapišite ukaze za vsak gumb.

  3. Preverite in si zabeležite vsak signal in opravilo.

  4. Spreminjajte eno stvar naenkrat in zabeležite, kaj se zgodi.

Z IR daljinskim upravljalnikom lahko svoj Arduino projekt spremenite za številne daljinske upravljalnike. To vam omogoča nadzor nad številnimi stvarmi. Uporabite lahko kateri koli daljinski upravljalnik tako, da posodobite svojo kodo z novimi ukazi in protokoli.

Odpravljanje težav z IR sprejemnikom in kodami

Odpravljanje težav z IR sprejemnikom in kodami
Izvirni naslov: pekseli

Težave s strojno opremo

Pri nastavitvi IR sprejemnika se lahko pojavijo težave. Težave s strojno opremo pogosto preprečijo delovanje vašega projekta Arduino. IR LED lahko preverite s kamero mobilnega telefona. Kamera lahko vidi svetlobo, ki je vaše oči ne morejo. Če ne vidite nobene svetlobe, poskusite obrniti usmeritev LED diode. Včasih je LED dioda obrnjena v napačno smer. Usmerite daljinski upravljalnik televizorja v sprejemnik in opazujte statusno LED diodo. Če utripa, vaš sprejemnik prejema signal. Če statusna LED dioda ostane prižgana, ko prekinete žarek, blokirajte IR signal in preverite, ali se sprejemnik odzove.

Ohlapne žice ali upognjeni nožice lahko povzročijo težave. Prepričajte se, da je detektor pravilno priključen na Arduino. Z multimetrom preverite napetost na nožicah sprejemnika. Nosilec GND mora kazati nič. Nosilec 5V mora kazati blizu petih voltov. Signalni pin se mora spremeniti, ko pritisnete gumbe na daljinskem upravljalniku. Če ne vidite nobene spremembe, ponovno preverite ožičenje.

Nasvet: Sistem preizkusite v senčnem prostoru. Neposredna sončna svetloba ali močna svetloba lahko motita infrardeči sprejemnik. Boljše rezultate boste dosegli v zaprtih prostorih ali pri šibki svetlobi.

  • Za preverjanje infrardeče LED diode uporabite kamero mobilnega telefona.

  • Če LED ne zasveti, obrnite smer.

  • Usmerite daljinski upravljalnik televizorja proti sprejemniku in opazujte utripe.

  • Prepričajte se, da so žice detektorja priključene na Arduino.

  • Blokirajte infrardeči signal in preverite statusno LED.

  • Preizkusite napetost na sprejemnih priključkih.

Težave s programsko opremo in signalom

Težave s programsko opremo lahko preprečijo delovanje vašega IR sprejemnika. Za pošiljanje in branje IR signalov lahko izbirate med knjižnicama IRremote ali IRLib. Preizkusite vse primere skic iz teh knjižnic. Primeri testiranja vam pomagajo najti težave s sprejemnikom ali daljinskim upravljalnikom. Včasih sprejemnik ne more dekodirati signalov iz določenih daljinskih upravljalnikov. Preverite, ali vaša knjižnica podpira protokol vašega daljinskega upravljalnika.

Svetloba okolice ali drugi viri infrardeče svetlobe lahko motijo ​​vaš sprejemnik. Strojni filtri pomagajo zmanjšati neželeno svetlobo. Sprejemnik postavite stran od močnih luči. Preizkusite sistem v temnem prostoru, da vidite, ali sprejemnik deluje bolje. Če težave še vedno obstajajo, preverite, ali so v bližini drugi viri infrardeče svetlobe.

  • Poskusi različne knjižnice, kot sta IRremote ali IRLib.

  • Preizkusite vse primerne skice, da odkrijete težave s programsko opremo.

  • Preverite, ali vaš sprejemnik dekodira signale iz daljinskega upravljalnika.

  • Za blokiranje neželene svetlobe uporabite strojne filtre.

  • Sprejemnik premaknite stran od močnih luči.

  • Za boljše delovanje preizkusite v temni sobi.

  • Poiščite druge vire infrardečega sevanja, ki lahko povzročajo motnje.

Opomba: Dekodiranje številnih vrst signalov IR daljinskega upravljalnika vam pomaga najti težave z združljivostjo. Vedno si zapišite kode za vsak gumb in jih v skici Arduino povežite s pravilnim dejanjem.

Naučili ste se uporabljati Arduino z IR daljinskim upravljalnikom. Tukaj so koraki, ki vam bodo v pomoč:

  1. Namestite knjižnico IRremote. Priključite IR senzor na prave pine.

  2. Uporabite primer kode za pridobivanje signalov iz daljinskega upravljalnika. Oglejte si izhod na monitorju.

  3. Vsak gumb na daljinskem upravljalniku povežite z dejanjem upravljanja v svojem projektu.

  4. Za boljši nadzor in odpravo težav poskusite različne daljinske upravljalnike.

Če potrebujete pomoč, si oglejte te vire skupnosti:

Naslov razprave

Opis

Pomoč

Postavite vprašanja o težavah z IR daljinskim upravljalnikom.

Kako interpretiram surove podatke iz monitorja za IR kode?

Naučite se brati in uporabljati podatke IR kode.

Funkcija sendSamsungLG() ne deluje z mojim LG HX906

Poiščite odgovore za težave z združljivostjo naprav.

Težava z ESP32, saj je kanal 0 že uporabljen za prikaz

Pridobite nasvete za težave z ESP32 in IR daljinskim upravljalnikom.

zagonska zanka

Preverite, ali imajo še drugi enake težave z IR daljinskim upravljalnikom.

Odpravljanje težav je del učenja. Preizkusite nove načine upravljanja in preizkusite različne daljinske upravljalnike.

FAQ

Kako veste, ali vaš IR sprejemnik deluje?

IR sprejemnik lahko preverite tako, da vanj usmerite daljinski upravljalnik in opazujete utripajočo LED lučko. Če ob pritisku gumbov vidite utripanje, sprejemnik sprejema signale. IR lučko lahko vidite tudi s kamero telefona.

Zakaj tvoj Arduino ne bere nobenih IR kod?

Morda imate težava z ožičenjem ali težava s knjižnicoPreverite vse povezave in se prepričajte, da uporabljate pravilne pine. Namestite knjižnico IRremote. Poskusite s primeri skic, da preizkusite svojo nastavitev. Prepričajte se, da ima vaša plošča Arduino napajanje.

Ali lahko s svojim IR sprejemnikom Arduino uporabljam kateri koli daljinski upravljalnik?

Večina IR-sprejemnikov deluje s številnimi daljinskimi upravljalniki. Za vsak gumb morate najti kode. Nekateri daljinski upravljalniki uporabljajo posebne protokole. Preizkusite svoj daljinski upravljalnik s knjižnico IRremote. Zapišite si kode in jih povežite z dejanji v svoji skici.

Kaj storiti, če vaši IR signali ne dosežejo sprejemnika?

Premaknite predmete stran od poti med daljinskim upravljalnikom in sprejemnikom. IR signali potrebujejo neovirano linijo. Poskusite uporabljati napravo v prostoru z manj sončne svetlobe. Preverite, ali je sprejemnik obrnjen neposredno proti daljinskemu upravljalniku.

Kako lahko z IR daljinskim upravljalnikom Arduino upravljate več kot eno napravo?

V skici lahko različne kode preslikate na različne izhode. Za vsako kodo gumba uporabite stikala. Na Arduino priključite več naprav in za vsako nastavite dejanja. Preizkusite vsak gumb, da se prepričate, da deluje.

Pustite komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena *