Stap-vir-stap gids vir die opstelling en probleemoplossing van Arduino IR-afstandbeheer

Stap-vir-stap gids vir die opstelling en probleemoplossing van Arduino IR-afstandbeheer

Jy gebruik IR-afstandbeheerders om Arduino-projekte eenvoudig en prettig te maak. IR-tegnologie help jou om dinge tuis te beheer. Jy kan jou eie afstandbeheerders bou of seine van ander afstandbeheerders lees. Met Arduino se infrarooi-afstandbeheerstelsels kan jy nuwe maniere vind om toestelle te beheer. Jy kan ook jou eie spesiale afstandbeheerders skep. Die Arduino IR-afstandbeheeropstelling is 'n maklike manier om draadlose beheer by jou projekte te voeg.

Toepassingstipe

Beskrywing

Beheer van huishoudelike toestelle

Gebruik IR-afstandbeheerders vir TV's en ander dinge by die huis.

Pasgemaakte afstandbeheerders

Maak afstandbeheerders om baie toestelle makliker te beheer.

Dekodering van seine

Gebruik seine weer om nuwe toestelle te beheer.

Bou van persoonlike kontroles

Maak kontroles vir spesiale behoeftes in Arduino infrarooi afstandwerk.

Jy kan begin deur 'n basiese IR-ontvanger te bedraad. Dan kan jy nuwe idees vir Arduino infrarooi afstandbeheer probeer.

IR Kommunikasie Basiese beginsels

Wat is IR?

IR laat toestelle seine na mekaar stuur. IR beteken infrarooi, wat 'n soort lig is wat ons nie kan sien nie. IR-kommunikasie gebruik hierdie onsigbare lig om inligting te stuur. Afstandbeheerders en ontvangers gebruik IR-LED's en sensors hiervoor. Daar is twee hoofmaniere waarop IR werk: punt-tot-punt en diffuus. Punt-tot-punt vereis dat die afstandbeheerder na die ontvanger wys. Diffuus laat toestelle praat sonder 'n direkte lyn. IR werk in 'n frekwensiebereik van 300 GHz tot 400 THz. Jy kan IR vind in dinge soos TV's, oorfone en huisbeveiligingstelsels.

Wenk: IR-seine gaan nie deur soliede goed nie. Maak seker dat niks die pad tussen jou afstandbeheerder en ontvanger blokkeer nie.

  • IR-kommunikasie gebruik pulse van infrarooi lig.

  • IR-seine werk die beste met niks in die pad nie.

  • IR-tegnologie word in baie huishoudelike elektronika gebruik.

IR-afstandsbediening en IR-ontvanger

Jy benodig beide 'n IR-afstandbeheerder en 'n IR-ontvanger om IR te gebruik. Die afstandbeheerder stuur data as pulse van infrarooi lig. Die ontvanger kry hierdie pulse en dekodeer hulle. Vir Arduino IR-projekte gebruik jy dikwels 'n SunFounder Uno-bord, USB-kabel, infrarooi-ontvangermodule, afstandbeheerder en 'n 3-pen-kabel.

Komponent

funksie

IR afstandbeheer

Stuur infrarooi seine

IR-ontvangermodule

Kry en dekodeer seine

Arduino-raad

Hanteer die ontvangde data

IR-afstandbeheerders gebruik spesiale koderingsmetodes wat Verbruikers-IR genoem word. Hierdie metodes stuur bevele stadig, tot 32 bisse teen 4000 bisse per sekonde. Die ontvanger kontroleer hoe lank die IR-ligpulse en -spasiërings duur. Modulasie teen 38 kHz help die ontvanger om ander ligte te ignoreer.

IR-protokolle

Jy gebruik protokolle om toestelle met IR te beheer. Protokolle is reëls vir die stuur en lees van IR-seine. Die NEC-protokol is baie algemeen in elektronika. Ander gewilde protokolle is JVC, Sony SIRC, Philips RC5 en RC6. Hierdie protokolle gebruik 'n 38 kHz draergolf om binêre seine te stuur.

  • NEC-afstandprotokol

  • RC5 Afstandsprotokol

  • JVC-protokol

  • Sony SIRC-protokol

  • Philips RC6-protokol

Elke knoppie op jou IR-afstandbeheerder stuur sy eie kode. Die ontvanger pas die kode by 'n opdrag. Protokolle en kodering verseker dat elke knoppie iets anders doen. Dit gee jou akkurate beheer, want elke kode is spesiaal.

Arduino IR-afstandbeheeropstelling

Arduino IR-afstandbeheeropstelling
Image Bron: pexels

IR-ontvanger-pinout

Jy moet die pinout ken voordat jy begin arduino ir afstandbeheer opstellingDie meeste IR-ontvangers het drie penne. Elke pen het 'n spesiale taak. Jy moet elke pen aan die regte plek op jou Arduino-bord koppel. Dit help jou opstelling om goed te werk.

IR-ontvangerpen

Arduino-pen

-

GND

+ (middelste pen)

5V

S

Digitale pen 11

Die minuspen gaan na GND. Die pluspen verbind aan 5V. Die seinpen skakel na 'n digitale pen, dikwels pen 11. Gaan altyd jou IR-ontvanger se datablad na. Sommige ontvangers gebruik verskillende penname, maar die meeste volg hierdie patroon.

Bedrading na Arduino

Jy moet jou IR-ontvanger aan jou Arduino koppel vir 'n werkende Arduino IR-afstandbeheeropstelling. jumperdrade vir maklike opstellingMaak seker dat jy die ontvanger aan die regte penne koppel. Hierdie stap is die sleutel vir goeie hardewareverbindings.

IR ontvanger

Arduino

UIT (links)

Speld 2

GND (middel)

GND (-)

Vcc (regs)

5 V (+)

Volg hierdie stappe vir jou opstelling:

  1. Plaas die IR-ontvanger op jou broodbord.

  2. Koppel die OUT-pen aan digitale pen 2 op jou arduino.

  3. Heg die GND-pen aan die GND op jou bord vas.

  4. Koppel die Vcc-pen aan die 5V-pen.

Wenk: Kontroleer elke draad dubbeld voordat jy jou opstelling aanskakel. 'n Verkeerde verbinding kan verhoed dat jou Arduino IR-afstandbeheerder werk.

Hardeware-kontrole

Nadat jy die ontvanger gekoppel het, moet jy jou opstelling nagaan. Maak seker dat elke draad styf is. Soek vir los drade of gebuigde penne. Jou Arduino IR-afstandbeheerderopstelling benodig soliede hardewareverbindings. As jy flikkerende liggies op jou ontvanger sien, werk jou opstelling. Indien nie, kontroleer jou bedrading weer.

Jy kan 'n multimeter gebruik om die spanning by die ontvanger te toets. Die 5V-pen behoort naby 5 volt te wys. Die GND-pen behoort nul te lees. Die seinpen behoort te verander wanneer jy knoppies op jou IR-afstandbeheerder druk. Dit beteken jou opstelling is gereed vir die volgende stap.

Programmering van Arduino en die lees van kodes

Installeer IRremote Biblioteek

Jy benodig die IRremote-biblioteek om jou IR-ontvanger te programmeer. Hierdie biblioteek help jou om seine vanaf jou afstandbeheerder te lees. Om dit te installeer, volg hierdie stappe: Maak die Arduino IDE oop. Gaan na Sketch, dan Include Library, dan Manage Libraries. Soek vir 'Arduino-IRremote' in die Biblioteekbestuurder. Klik installeer.

As jy foute soos 'TCCR2B is nie gedeklareer nie' of hervestigingsfoute sien, het jy dalk 'n skyfie-wanpassing. Hierdie probleme gebeur met Attiny-mikrobeheerders. Jy kan dit regstel deur Arduino IDE weergawe 1.0.5 te gebruik. Maak seker dat die biblioteeklêers in die regte vouer is.

Nadat jy die biblioteek geïnstalleer het, kan jy begin om jou IR-ontvanger te programmeer. Die IRremote-biblioteek het voorbeelde om jou te help om kodes te lees en toestelle te beheer.

Lees IR-kodes

Jy kan IRremote-biblioteekvoorbeelde gebruik om kodes vanaf jou afstandbeheerder te lees. Maak die "IRrecvDemo" voorbeeldskets oop. Laai dit op na jou arduino. Koppel jou IR-ontvanger aan die bord. Maak die Seriële Monitor in Arduino IDE oop.

Wanneer jy 'n knoppie op jou afstandbeheerder druk, kry die IR-ontvanger die sein. Die Arduino dekodeer die sein en wys kodes in heksadesimale formaat. Druk elke knoppie om sy kode te vind. Skryf die kodes neer sodat jy dit later kan gebruik.

Wenk: Om kodes vir alle knoppies op te teken, druk elke knoppie en noteer die kodes in die Seriële Monitor. Dit help jou om die kodes vir jou afstandbeheerder te vind.

Jy mag dalk wil weet watter protokol jou afstandbeheerder gebruik. Jy kan dit op verskillende maniere doen: Gebruik 'n ossilloskoop om na die sein te kyk. Gebruik jou IR-ontvanger met Arduino om die protokol te dekodeer. Probeer koderingsmetodes soos Pulswydtemodulasie of Tweefase-kodering.

Die IRremote-biblioteekvoorbeelde wys dikwels die protokolnaam saam met die kodes. Dit help jou om kodes by die regte protokol te pas.

Koppel kodes aan aksies

Nadat jy die kodes vir jou afstandbeheerder gevind het, kan jy hulle aan aksies in jou Arduino-skets koppel. Gebruik IRremote-biblioteekvoorbeelde om LED's, motors of ander toestelle te beheer. Laai jou kode op na die Arduino. Maak die Seriële Monitor oop. Rig jou afstandbeheerder na die IR-ontvanger en druk knoppies. Die Arduino lees die kodes en voer die aksies uit wat jy instel.

Jy kan IR-sleutelkodes gebruik om uitsette te beheer. Skakel byvoorbeeld 'n LED met een knoppie aan. Skakel dit af met 'n ander knoppie. Jy kan ook kodes gebruik om motors of relais te beheer. Stel aksies in jou skets vir elke kode wat jy wil gebruik.

  • Vang die kodes vir elke knoppie vas.

  • Gebruik die kodes in jou Arduino-skets om uitsette te beheer.

  • Stel funksies vir elke kode op om persoonlike afstandbeheerders te maak.

  • Probeer verskillende voorbeelde om te leer hoe om kodes vir baie toestelle te gebruik.

Jy kan probeer om kodes aan nuwe aksies toe te ken. Dit laat jou toe om persoonlike kontroles vir jou projekte te bou. As jy kodes vir 'n nuwe afstandbeheerder wil hê, herhaal die proses en werk jou skets op. Die programmering van die IR-ontvanger met Arduino gee jou baie maniere om draadlose beheer te gebruik.

Beheeruitsette met IR-afstandsbediening

LED's en toestelle

Jy kan die IR-afstandbeheerder gebruik om jou Arduino dinge te laat beheer. Die mees algemene dinge wat jy beheer, is LED's en huistoestelle. Stel eers die IR-ontvanger op en koppel dit aan jou Arduino. Elke knoppie op die afstandbeheerder stuur sy eie sein. Jou Arduino lees hierdie seine en beheer wat jy wil hê.

  • LEDs

  • toestelle

  • Baie toestelle wat jy sonder drade kan beheer

Jy kan meer as een LED gelyktydig aanskakel. Kies in jou kode watter penne na elke LED gaan. Gebruik skakelaarkaste om elke knoppie by 'n sekere LED of toestel te pas. Wanneer jy 'n knoppie druk, skakel die arduino die uitset aan of af.

Wenk: Jy kan die infrarooi afstandbeheerder gebruik om ligte, waaiers of ander dinge sonder drade te beheer.

Hier is 'n eenvoudige kodevoorbeeld vir die beheer van verskeie LED's:

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

Jy kan die PIN-nommers en kodes verander om by jou projek te pas. Hierdie manier werk met enige afstandbeheerder.

Aanpassing vir verskillende afstandbeheerders

Jy mag dalk verskillende soorte infrarooi afstandbeheerders wil gebruik. Jy moet jou Arduino-kode 'n bietjie verander. Vind eers uit watter infrarooi protokol jou afstandbeheerder gebruik. Skryf die opdragte vir elke knoppie neer. Kyk na die seine vir elke taak en maak notas. Verander een ding op 'n slag en skryf neer wat gebeur.

  1. Vind uit wat die IR-protokol vir jou afstandbeheerder is.

  2. Skryf die opdragte vir elke knoppie neer.

  3. Kontroleer en hou notas vir elke sein en werk.

  4. Verander een ding op 'n slag en teken aan wat gebeur.

Met die infrarooi afstandbeheerder kan jy jou Arduino-projek vir baie afstandbeheerders verander. Dit laat jou toe om baie dinge te beheer. Jy kan enige afstandbeheerder gebruik deur jou kode op te dateer met nuwe opdragte en protokolle.

Probleemoplossing van IR-ontvanger en kodes

Probleemoplossing van IR-ontvanger en kodes
Image Bron: pexels

Hardeware probleme

Jy kan probleme ondervind met die opstelling van jou IR-ontvanger. Hardewareprobleme verhoed dikwels dat jou Arduino-projek werk. Jy kan die IR-LED met 'n selfoonkamera nagaan. Die kamera kan die lig sien wat jou oë nie kan sien nie. As jy geen lig sien nie, probeer om die LED se oriëntasie om te keer. Soms wys die LED in die verkeerde rigting. Rig 'n TV-afstandbeheerder na die ontvanger en kyk na die status-LED. As dit flikker, kry jou ontvanger die sein. As die status-LED aanbly wanneer jy die straal onderbreek, blokkeer die IR-sein en kyk of die ontvanger reageer.

Los drade of gebuigde penne kan probleme veroorsaak. Maak seker dat die detektor korrek aan die arduino koppel. Gebruik 'n multimeter om die spanning by die ontvangerpenne te kontroleer. Die GND-pen moet nul lees. Die 5V-pen moet naby vyf volt wys. Die seinpen moet verander wanneer jy knoppies op die afstandbeheerder druk. As jy geen verandering sien nie, kontroleer jou bedrading weer.

Wenk: Toets jou stelsel in 'n skaduryke area. Direkte sonlig of sterk ligte kan die IR-ontvanger ontwrig. Jy kry beter resultate binnenshuis of in lae lig.

  • Gebruik 'n selfoonkamera om die infrarooi LED na te gaan.

  • Draai die LED om as dit nie aanskakel nie.

  • Rig 'n TV-afstandbeheerder na die ontvanger en let op flitse.

  • Maak seker dat die detektordrade aan die arduino gekoppel is.

  • Blokkeer die infrarooi sein en kontroleer die status-LED.

  • Toets spanning by die ontvangerpenne.

Sagteware- en seinprobleme

Sagtewareprobleme kan jou IR-ontvanger laat werk. Jy kan kies tussen IRremote- of IRLib-biblioteke vir die stuur en lees van IR-seine. Probeer alle voorbeeldsketse van hierdie biblioteke. Deur voorbeelde te toets, kan jy probleme met jou ontvanger of afstandbeheerder vind. Soms kan die ontvanger nie seine van sekere afstandbeheerders dekodeer nie. Gaan na of jou biblioteek jou afstandbeheerder se protokol ondersteun.

Omgewingslig of ander infrarooibronne kan met jou ontvanger inmeng. Hardewarefilters help om ongewenste lig te verminder. Plaas die ontvanger weg van helder ligte. Toets jou stelsel in 'n donker kamer om te sien of die ontvanger beter werk. As jy steeds probleme ondervind, kyk vir ander infrarooibronne in die omgewing.

  • Probeer verskillende biblioteke soos IRremote of IRLib.

  • Toets alle voorbeeldsketse om sagtewareprobleme te vind.

  • Kontroleer of jou ontvanger seine van jou afstandbeheerder dekodeer.

  • Gebruik hardewarefilters om ongewenste lig te blokkeer.

  • Beweeg die ontvanger weg van helder ligte.

  • Toets in 'n donker kamer vir beter werkverrigting.

  • Soek vir ander infrarooi bronne wat interferensie kan veroorsaak.

Let wel: Die dekodering van baie tipes infrarooi-afstandsbedieningseine help jou om versoenbaarheidsprobleme te vind. Teken altyd die kodes vir elke knoppie aan en pas dit by die regte aksie in jou Arduino-skets.

Jy het geleer hoe om 'n Arduino met 'n IR-afstandbeheerder te gebruik. Hier is stappe om jou te help:

  1. Installeer die IRremote-biblioteek. Koppel jou IR-sensor aan die regte penne.

  2. Gebruik voorbeeldkode om seine van jou afstandbeheerder te kry. Kyk na die uitset op jou monitor.

  3. Pas elke knoppie op jou afstandbeheerder by 'n beheeraksie in jou projek.

  4. Probeer verskillende afstandbeheerders om jou beheer te verbeter en probleme op te los.

As jy hulp nodig het, kyk na hierdie gemeenskapsbronne:

Besprekingstitel

Beskrywing

help

Vra vrae oor probleme met IR-afstandbeheer.

Hoe interpreteer ek die rou data van die monitor vir IR-kodes?

Leer hoe om IR-kodedata te lees en te gebruik.

sendSamsungLG() werk nie met my LG HX906 nie.

Vind antwoorde vir toestelversoenbaarheidsprobleme.

ESP32 probleem met kanaal 0 wat reeds vir vertoon gebruik word

Kry wenke vir ESP32- en IR-afstandbeheerprobleme.

selflaai lus

Kyk of ander dieselfde IR-afstandbeheerprobleme het.

Probleemoplossing is deel van leer. Probeer nuwe maniere om dinge te beheer en toets verskillende afstandbeheerders.

FAQ

Hoe weet jy of jou IR-ontvanger werk?

Jy kan jou IR-ontvanger nagaan deur 'n afstandbeheerder daarop te rig en te kyk vir 'n flikkerende LED. As jy flitse sien wanneer jy knoppies druk, kry jou ontvanger seine. Jy kan ook 'n foonkamera gebruik om die IR-lig te sien.

Waarom lees jou Arduino geen IR-kodes nie?

U het miskien 'n bedradingsprobleem of 'n biblioteekprobleemKontroleer alle verbindings en maak seker dat jy die regte penne gebruik. Installeer die IRremote-biblioteek. Probeer voorbeeldsketse om jou opstelling te toets. Maak seker dat jou Arduino-bord krag kry.

Kan jy enige afstandbeheerder met jou Arduino IR-ontvanger gebruik?

Die meeste IR-ontvangers werk met baie afstandbeheerders. Jy moet die kodes vir elke knoppie vind. Sommige afstandbeheerders gebruik spesiale protokolle. Toets jou afstandbeheerder met die IRremote-biblioteek. Skryf die kodes neer en pas dit by die aksies in jou skets.

Wat moet jy doen as jou IR-seine nie die ontvanger bereik nie?

Beweeg voorwerpe weg van die pad tussen jou afstandbeheerder en ontvanger. IR-seine benodig 'n duidelike lyn. Probeer om jou opstelling in 'n kamer met minder sonlig te gebruik. Kontroleer of jou ontvanger direk na die afstandbeheerder wys.

Hoe beheer jy meer as een toestel met jou Arduino IR-afstandbeheerder?

Jy kan verskillende kodes aan verskillende uitsette in jou skets koppel. Gebruik skakelaarkaste vir elke knoppiekode. Koppel meer toestelle aan jou Arduino en stel aksies vir elkeen. Toets elke knoppie om seker te maak dit werk.

Laat 'n boodskap

Jou e-posadres sal nie gepubliseer word nie. Verpligte velde gemerk *