Trin-for-trin guide til opsætning og fejlfinding af Arduino IR-fjernbetjening

Trin-for-trin guide til opsætning og fejlfinding af Arduino IR-fjernbetjening

Du bruger IR-fjernbetjeninger til at gøre Arduino-projekter enkle og sjove. IR-teknologi hjælper dig med at styre ting derhjemme. Du kan bygge dine egne fjernbetjeninger eller læse signaler fra andre fjernbetjeninger. Med Arduinos infrarøde fjernbetjeningssystemer kan du finde nye måder at styre enheder på. Du kan også oprette dine egne specielle fjernbetjeninger. Arduino IR-fjernbetjeningsopsætningen er en nem måde at tilføje trådløs kontrol til dine projekter.

Ansøgningstype

Beskrivelse

Styring af husholdningsapparater

Brug IR-fjernbetjeninger til tv'er og andre ting derhjemme.

Brugerdefinerede fjernbetjeninger

Lav fjernbetjeninger til nemmere at styre mange enheder.

Afkodning af signaler

Brug signaler igen til at styre nye enheder.

Opbygning af brugerdefinerede kontroller

Lav kontroller til særlige behov i Arduino infrarød fjernbetjening.

Du kan starte med at tilslutte en simpel IR-modtager. Derefter kan du afprøve nye ideer til Arduino infrarød fjernbetjening.

Grundlæggende om IR-kommunikation

Hvad er IR?

IR lader enheder sende signaler til hinanden. IR står for infrarødt, hvilket er en slags lys, vi ikke kan se. IR-kommunikation bruger dette usynlige lys til at sende information. Fjernbetjeninger og modtagere bruger IR-LED'er og sensorer til dette. Der er to primære måder, IR fungerer på: punkt-til-punkt og diffus. Punkt-til-punkt kræver, at fjernbetjeningen vender mod modtageren. Diffus lader enheder tale sammen uden en direkte linje. IR fungerer i et frekvensområde fra 300 GHz til 400 THz. Du kan finde IR i ting som tv'er, hovedtelefoner og hjemmealarmsystemer.

Tip: IR-signaler går ikke gennem faste genstande. Sørg for, at intet blokerer vejen mellem din fjernbetjening og modtageren.

  • IR-kommunikation bruger pulser af infrarødt lys.

  • IR-signaler fungerer bedst, når der ikke er noget i vejen.

  • IR-teknologi bruges i mange typer hjemmeelektronik.

IR-fjernbetjening og IR-modtager

Du skal bruge både en IR-fjernbetjening og en IR-modtager for at bruge IR. Fjernbetjeningen sender data som pulser af infrarødt lys. Modtageren modtager disse pulser og afkoder dem. Til Arduino IR-projekter bruger du ofte et SunFounder Uno-kort, USB-kabel, infrarødt modtagermodul, fjernbetjening og et 3-benet kabel.

Component

Funktion

IR-fjernbetjening

Sender infrarøde signaler

IR-modtagermodul

Modtager og afkoder signaler

Arduino bestyrelse

Håndterer de modtagne data

IR-fjernbetjeninger bruger specielle kodningsmetoder kaldet Consumer IR. Disse metoder sender kommandoer langsomt, op til 32 bits ved 4000 bits pr. sekund. Modtageren kontrollerer, hvor længe IR-lyspulserne og -mellemrummene varer. Modulation ved 38 kHz hjælper modtageren med at ignorere andre lys.

IR-protokoller

Du bruger protokoller til at styre enheder med IR. Protokoller er regler for at sende og læse IR-signaler. NEC-protokollen er meget almindelig inden for elektronik. Andre populære protokoller er JVC, Sony SIRC, Philips RC5 og RC6. Disse protokoller bruger en 38 kHz bærebølge til at sende binære signaler.

  • NEC-fjernprotokol

  • RC5 Fjernprotokol

  • JVC-protokol

  • Sony SIRC-protokol

  • Philips RC6-protokol

Hver knap på din IR-fjernbetjening sender sin egen kode. Modtageren matcher koden med en kommando. Protokoller og kodning sørger for, at hver knap gør noget forskelligt. Dette giver dig præcis kontrol, fordi hver kode er speciel.

Opsætning af Arduino IR-fjernbetjening

Opsætning af Arduino IR-fjernbetjening
Billede Kilde: pexels

IR-modtagerens pinout

Du skal kende pinout'en, før du starter Opsætning af Arduino IR-fjernbetjeningDe fleste IR-modtagere har tre ben. Hvert ben har en særlig funktion. Du skal forbinde hvert ben til det rigtige sted på dit Arduino-kort. Dette hjælper din opsætning med at fungere godt.

IR-modtager-pin

Arduino pin

-

GND

+ (midterste pin)

5V

S

Digital pinkode 11

Minusbenet går til GND. Plusbenet forbindes til 5V. Signalbenet forbindes til et digitalt ben, ofte ben 11. Tjek altid din IR-modtagers datablad. Nogle modtagere bruger forskellige bennavne, men de fleste følger dette mønster.

Ledningsføring til Arduino

Du skal tilslutte din IR-modtager til din Arduino for at få en fungerende Arduino IR-fjernbetjening opsat. jumperledninger for nem opsætningSørg for at tilslutte modtageren til de rigtige ben. Dette trin er nøglen til gode hardwareforbindelser.

IR-modtager

Arduino

UD (venstre)

Pind 2

GND (midten)

Jord (-)

Vcc (højre)

5 V (+)

Følg disse trin for din opsætning:

  1. Placer IR-modtageren på dit breadboard.

  2. Tilslut OUT-pinden til den digitale pin 2 på din Arduino.

  3. Fastgør GND-pinden til GND på dit printkort.

  4. Forbind Vcc-pinden med 5V-pinden.

Tip: Dobbelttjek hver ledning, før du tænder for din opsætning. En forkert forbindelse kan forhindre din Arduino IR-fjernbetjening i at fungere.

Hardwaretjek

Når du har tilsluttet modtageren, skal du kontrollere din opsætning. Sørg for, at alle ledninger er stramme. Kig efter løse ledninger eller bøjede ben. Din Arduino IR-fjernbetjening kræver solide hardwareforbindelser. Hvis du ser blinkende lys på din modtager, fungerer din opsætning. Hvis ikke, skal du kontrollere dine ledninger igen.

Du kan bruge et multimeter til at teste spændingen ved modtageren. 5V-benet skal vise tæt på 5 volt. GND-benet skal vise nul. Signalbenet skal ændre sig, når du trykker på knapper på din IR-fjernbetjening. Det betyder, at din opsætning er klar til næste trin.

Programmering af Arduino og læsning af koder

Installer IRremote-biblioteket

Du skal bruge IRremote-biblioteket for at programmere din IR-modtager. Dette bibliotek hjælper dig med at læse signaler fra din fjernbetjening. Følg disse trin for at installere det: Åbn Arduino IDE. Gå til Sketch, derefter Include Library, og derefter Administrer biblioteker. Søg efter 'Arduino-IRremote' i Library Manager. Klik på Installer.

Hvis du ser fejl som 'TCCR2B blev ikke deklareret' eller relokeringsfejl, kan der være en chip-uoverensstemmelse. Disse problemer opstår med Attiny-mikrocontrollere. Du kan rette dem ved hjælp af Arduino IDE version 1.0.5. Sørg for, at biblioteksfilerne er i den rigtige mappe.

Når du har installeret biblioteket, kan du begynde at programmere din IR-modtager. IRremote-biblioteket indeholder eksempler, der kan hjælpe dig med at læse koder og styre enheder.

Læs IR-koder

Du kan bruge eksempler fra IRremote-biblioteket til at læse koder fra din fjernbetjening. Åbn eksempelskissen "IRrecvDemo". Upload den til din Arduino. Tilslut din IR-modtager til boardet. Åbn den serielle skærm i Arduino IDE.

Når du trykker på en knap på din fjernbetjening, modtager IR-modtageren signalet. Arduinoen afkoder signalet og viser koder i hexadecimalt format. Tryk på hver knap for at finde dens kode. Skriv koderne ned, så du kan bruge dem senere.

Tip: For at registrere koder for alle knapper skal du trykke på hver knap og notere koderne i seriel skærm. Dette hjælper dig med at finde koderne til din fjernbetjening.

Du vil måske gerne vide, hvilken protokol din fjernbetjening bruger. Du kan gøre dette på forskellige måder: Brug et oscilloskop til at se på signalet. Brug din IR-modtager med Arduino til at afkode protokollen. Prøv kodningsmetoder som pulsbreddemodulation eller bifasekodning.

Eksemplerne på IRremote-biblioteket viser ofte protokolnavnet sammen med koderne. Dette hjælper dig med at matche koder med den rigtige protokol.

Knyt koder til handlinger

Når du har fundet koderne til din fjernbetjening, kan du knytte dem til handlinger i din Arduino-sketch. Brug eksempler fra IRremote-biblioteket til at styre LED'er, motorer eller andre enheder. Upload din kode til Arduinoen. Åbn den serielle skærm. Ret din fjernbetjening mod IR-modtageren, og tryk på knapperne. Arduinoen læser koderne og udfører de handlinger, du har indstillet.

Du kan bruge infrarøde nøglekoder til at styre udgange. For eksempel kan du tænde en LED med én knap. Sluk den med en anden knap. Du kan også bruge koder til at styre motorer eller relæer. Indstil handlinger i din skitse for hver kode, du vil bruge.

  • Registrer koderne for hver knap.

  • Brug koderne i din Arduino-skitse til at styre output.

  • Opsæt funktioner for hver kode for at lave brugerdefinerede fjernbetjeninger.

  • Prøv forskellige eksempler for at lære, hvordan du bruger koder til mange enheder.

Du kan prøve at knytte koder til nye handlinger. Dette giver dig mulighed for at bygge brugerdefinerede kontroller til dine projekter. Hvis du vil have koder til en ny fjernbetjening, skal du gentage processen og opdatere din skitse. Programmering af IR-modtageren med Arduino giver dig mange måder at bruge trådløs styring på.

Styringsudgange med IR-fjernbetjening

LED'er og enheder

Du kan bruge IR-fjernbetjeningen til at få din Arduino til at styre ting. De mest almindelige ting, du styrer, er LED'er og hjemmeenheder. Først skal du konfigurere IR-modtageren og tilslutte den til din Arduino. Hver knap på fjernbetjeningen sender sit eget signal. Din Arduino læser disse signaler og styrer, hvad du ønsker.

  • LEDs

  • Hvidevarer

  • Mange enheder du kan styre uden ledninger

Du kan tænde mere end én LED på samme tid. I din kode skal du vælge hvilke ben der skal til hver LED. Brug kontakthuse til at matche hver knap med en bestemt LED eller enhed. Når du trykker på en knap, tænder eller slukker Arduinoen for udgangen.

Tip: Du kan bruge IR-fjernbetjeningen til at styre lys, ventilatorer eller andre ting uden ledninger.

Her er et simpelt kodeeksempel til styring af flere LED'er:

#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();
  }
}

Du kan ændre pinkoder og -numre, så de passer til dit projekt. Denne metode fungerer med enhver fjernbetjening.

Tilpasning til forskellige fjernbetjeninger

Du kan bruge forskellige typer infrarøde fjernbetjeninger. Du skal ændre din Arduino-kode lidt. Først skal du finde ud af, hvilken infrarød protokol din fjernbetjening bruger. Skriv kommandoerne for hver knap ned. Se på signalerne for hvert job, og tag noter. Ændr én ting ad gangen, og skriv ned, hvad der sker.

  1. Find ud af IR-protokollen til din fjernbetjening.

  2. Skriv kommandoerne ned for hver knap.

  3. Kontrollér og noter for hvert signal og job.

  4. Ændr én ting ad gangen, og skriv ned, hvad der sker.

Med IR-fjernbetjeningen kan du ændre dit Arduino-projekt for mange fjernbetjeninger. Dette giver dig mulighed for at styre mange ting. Du kan bruge enhver fjernbetjening ved at opdatere din kode med nye kommandoer og protokoller.

Fejlfinding af IR-modtager og koder

Fejlfinding af IR-modtager og koder
Billede Kilde: pexels

Hardware problemer

Du kan støde på problemer med opsætningen af ​​din IR-modtager. Hardwareproblemer forhindrer ofte dit Arduino-projekt i at fungere. Du kan kontrollere IR-LED'en ved hjælp af et mobiltelefonkamera. Kameraet kan se lyset, som dine øjne ikke kan. Hvis du ikke ser noget lys, kan du prøve at vende LED'ens retning. Nogle gange vender LED'en den forkerte vej. Ret en tv-fjernbetjening mod modtageren, og se status-LED'en. Hvis den blinker, modtager din modtager signalet. Hvis status-LED'en forbliver tændt, når du afbryder strålen, skal du blokere IR-signalet og se, om modtageren reagerer.

Løse ledninger eller bøjede ben kan forårsage problemer. Sørg for, at detektoren er korrekt forbundet til Arduinoen. Brug et multimeter til at kontrollere spændingen ved modtagerbenene. GND-benet skal vise nul. 5V-benet skal vise tæt på fem volt. Signalbenet skal ændre sig, når du trykker på knapper på fjernbetjeningen. Hvis du ikke ser nogen ændring, skal du kontrollere dine ledninger igen.

Tip: Test dit system i et skyggefuldt område. Direkte sollys eller stærkt lys kan forstyrre IR-modtageren. Du får bedre resultater indendørs eller i svagt lys.

  • Brug et mobiltelefonkamera til at kontrollere IR-LED'en.

  • Vend LED'en om, hvis den ikke lyser.

  • Ret en tv-fjernbetjening mod modtageren og hold øje med blink.

  • Sørg for, at detektorledningerne er forbundet til Arduinoen.

  • Bloker IR-signalet, og kontroller status-LED'en.

  • Test spændingen ved modtagerens ben.

Software- og signalproblemer

Softwareproblemer kan forhindre din IR-modtager i at virke. Du kan vælge mellem IRremote- eller IRLib-bibliotekerne til at sende og læse IR-signaler. Prøv alle eksempelskitser fra disse biblioteker. Test af eksempler hjælper dig med at finde problemer med din modtager eller fjernbetjening. Nogle gange kan modtageren ikke afkode signaler fra bestemte fjernbetjeninger. Kontroller, om dit bibliotek understøtter din fjernbetjenings protokol.

Omgivende lys eller andre infrarøde kilder kan forstyrre din receiver. Hardwarefiltre hjælper med at reducere uønsket lys. Placer receiveren væk fra stærkt lys. Test dit system i et mørkt rum for at se, om receiveren fungerer bedre. Hvis du stadig har problemer, skal du kontrollere, om der er andre infrarøde kilder i nærheden.

  • Prøv forskellige biblioteker som IRremote eller IRLib.

  • Test alle eksempelskitser for at finde softwareproblemer.

  • Tjek om din receiver afkoder signaler fra din fjernbetjening.

  • Brug hardwarefiltre til at blokere uønsket lys.

  • Flyt modtageren væk fra stærkt lys.

  • Test i et mørkt rum for bedre ydeevne.

  • Se efter andre infrarøde kilder, der kan forårsage interferens.

Bemærk: Afkodning af mange typer IR-fjernbetjeningssignaler hjælper dig med at finde kompatibilitetsproblemer. Notér altid koderne for hver knap, og match dem med den rigtige handling i din Arduino-skitse.

Du har lært, hvordan man bruger en Arduino med en IR-fjernbetjening. Her er trin, der kan hjælpe dig:

  1. Installer IRremote-biblioteket. Tilslut din IR-sensor til de rigtige ben.

  2. Brug eksempelkode til at få signaler fra din fjernbetjening. Se outputtet på din skærm.

  3. Match hver knap på din fjernbetjening med en kontrolhandling i dit projekt.

  4. Prøv forskellige fjernbetjeninger for at forbedre din kontrol og løse problemer.

Hvis du har brug for hjælp, kan du se på disse fællesskabsressourcer:

Diskussionstitel

Beskrivelse

Hjælp

Stil spørgsmål om problemer med IR-fjernbetjeningen.

Hvordan fortolker jeg rådataene fra skærmen for IR-koder?

Lær hvordan du læser og bruger IR-kodedata.

sendSamsungLG() virker ikke med min LG HX906

Find svar på problemer med enhedskompatabilitet.

ESP32-problem med kanal 0, der allerede bruges til visning

Få tips til problemer med ESP32 og IR-fjernbetjening.

bootloop

Se om andre har de samme problemer med IR-fjernbetjeningen.

Fejlfinding er en del af læringen. Prøv nye måder at styre tingene på, og test forskellige fjernbetjeninger.

Ofte stillede spørgsmål

Hvordan ved du, om din IR-modtager virker?

Du kan tjekke din IR-modtager ved at pege en fjernbetjening mod den og holde øje med en blinkende LED-lampe. Hvis du ser blink, når du trykker på knapper, modtager din modtager signaler. Du kan også bruge et telefonkamera til at se IR-lyset.

Hvorfor læser din Arduino ingen IR-koder?

Du har muligvis en ledningsproblem eller et biblioteksproblemKontroller alle forbindelser, og sørg for at bruge de rigtige ben. Installer IRremote-biblioteket. Prøv eksempelskitser for at teste din opsætning. Sørg for, at dit Arduino-kort får strøm.

Kan du bruge enhver fjernbetjening med din Arduino IR-modtager?

De fleste IR-modtagere fungerer med mange fjernbetjeninger. Du skal finde koderne for hver knap. Nogle fjernbetjeninger bruger særlige protokoller. Test din fjernbetjening med IRremote-biblioteket. Skriv koderne ned, og match dem med handlinger i din skitse.

Hvad skal du gøre, hvis dine IR-signaler ikke når modtageren?

Flyt genstande væk fra stien mellem din fjernbetjening og receiver. IR-signaler skal have en klar linje. Prøv at bruge din opsætning i et rum med mindre sollys. Kontroller, om din receiver vender direkte mod fjernbetjeningen.

Hvordan styrer man mere end én enhed med sin Arduino IR-fjernbetjening?

Du kan knytte forskellige koder til forskellige output i din skitse. Brug switch cases til hver knapkode. Tilslut flere enheder til din Arduino og indstil handlinger for hver enkelt. Test hver knap for at sikre, at den fungerer.

Efterlad en kommentar

Din e-mail adresse vil ikke blive offentliggjort. Krævede felter er markeret *