Reklāma

Paslēpiet to savā viesistabā un smieties, jo TiVo kasti šķietami pārņem dēmons, kurš pieprasa skatīties sierīgos iepirkšanās kanālus. Neatkarīgi no tā, vai jūsu galvenais mērķis ir izslēgt katru apkārtnes televizoru vai izveidot universālu Siri kontrolēts tālvadības pults, šis projekts kalpo kā lielisks sākumpunkts, lai apgūtu IR vadības pamatus un uztvērēji.

Šajā “palaidnībā” mēs izveidosim ierīci, kas reģistrē un pēc tam atskaņo infrasarkano staru komandu virkni. Tas darbosies ar jebkuru ierīci, kas izmanto infrasarkano staru tālvadības pulti vai pat ar vairāku ierīču kombināciju - ierakstot līdz 10 taustiņu nospiešanām.

Komponenti

Šis ir saraksts ar lietām, kas jums būs nepieciešamas šim projektam:

  • Arduino un plākstera vadi
  • Infrasarkano staru uztvērējs, piemēram, TSOP382, taču jums vajadzētu būt spējīgam atrast saderīgu vecajā elektronikā. Es izvilku mīnu no rezerves RGB apgaismojuma kontroliera. Parasti tām ir 3 kājas un tās ir melnas, un viena puse izskatās kā gaismas diode, kas ir pārgriezta uz pusēm un iestiprināta. Esmu pārliecināts, ka tam ir kāds tehnisks vārds.
  • IR raidītāja gaismas diode, piemēram, TIL38 - atkal tie ir diezgan izplatīti, bet no Maplin nopirku jaunu jaudīgu; tie izskatās identiski jebkuram citam gaismas diodei, tāpēc noteikti nejauciet tos savā elektronikas komplektā!
  • Jūsu IR gaismas diodei piemērots rezistors - izmantojiet šo LED kalkulators ņemot vērā barošanas spriegumu (5 V no Arduino) un priekšējo spriegumu un strāvu no LED datu lapas (parasti ap 1,2 V @ 20 mA). Manā gadījumā tas iznāca kā 220 omi.
  • Spiedpoga un 10k nolaižamie un 100 omi rezistori.
  • Lejupielādējiet IR attālā bibliotēka - Ken Shirriff no Github un vieta jūsu Arduino / Bibliotēkas mape. Ir arī daži koda piemēri, kurus mēs izmantosim un kuriem pēc tam vajadzētu piekļūt no Arduino Atvērts -> Bibliotēkas izvēlne.
sastāvdaļas

Elektroinstalācija

Pārvaldiet šo shēmu trīs daļās - slēdzis ir nedaudz viltīgs, bet viss pārējais ir viegli. Atcerieties, ka gaismas diodes īsā kāja ar plakano seju ir katods (negatīvs vai iezemēts); garā kāja ir anoda (pozitīva).

ķēdes shēma-ir-palaidnība

Signālu saņemšana

Iet uz priekšu un atveriet bibliotēkas / IRremote / IRrecvDemo piemēra kods. Pārliecinieties RECV_Pin ir pareizi iestatīts, apkopojiet un augšupielādējiet, pēc tam atveriet seriālo konsoli ar ātrumu 9600 baud. Satveriet jebkuru tālvadības pulti, kas jums jānodod rokā, pavērsiet to pret uztvērēju un sāciet nospiest pogas. Dažādas pogas ražos dažādus kodus; daži tad norādīs uz ilgu nospiešanu ar sākotnējo kodu FFFFFF, savukārt dažādas tālvadības pultis var vienkārši atkārtot kodu vēlreiz.

neatgriezeniski

Lai iegūtu sīkāku informāciju par saņemtajiem datiem, apskatiet IRrecvDump tā vietā parādīs gan saņemtā signāla veidu (šajā gadījumā 32 bitu NEC), gan neapstrādātas vērtības. Labi zināt, bet vairumā gadījumu jūs vienkārši vēlēsities atšifrētas vērtības.

irdump

Signāla atkārtošana

Mēs šodien nerakstīsim savu palaidnību no nulles, tāpēc dodieties uz priekšu un pārbaudiet IR ieraksts piemērs. Kodu sarežģītība šeit ievērojami palielinās, taču galvenokārt tas viss ir jārisina, izmantojot dažāda veida IR kodus - būtībā lūk, kas notiek cilpas iekšpusē:

  • Pārbaudiet, vai poga nav nospiesta, atkārtojiet pašreiz saglabāto signālu, ja tas ir, un atkārtojiet ik pēc 50 ms, līdz tas tiek nospiests.
  • Ja tas netiek nospiests un tiek noteikts signāls, reģistrējiet to.

Lielākais šī piemēra ierobežojums ir tas, ka tas darbojas tikai ar vienu kodu vienlaikus, tāpēc, nospiežot citu tālvadības pogu, tas tiks pārrakstīts pēdējais. Poga vienkārši atkārto pašu pēdējo saņemto signālu. Apkopojiet un palaidiet kodu, lai varētu izmantot šo pamata signāla atkārtotāju. Atsevišķa signāla atskaņošanai tas darbojas lieliski, taču tas praktiski nav izmantojams palaidnībā vai kā citādi.

Palaidnība!

Nedaudz pārveidosim, lai ierakstītu 10 vai vairāk ļauno signālu. Jūs varat atrast pilns modificētais kods šeit, taču šeit ir sniegts izmaiņu izklāsts, ko es veicu, ja vēlaties, lai jūs pats to programmētu:

  • Definējiet 3 jaunus 10. izmēra masīvus signālu kopas glabāšanai katru reizi, kad tie tiek atklāti, un veselu skaitli, lai saglabātu šo masīvu lielumu.
  • Saglabājiet indeksu par to, kur mēs šobrīd atrodamies šajā masīvā. Palieliniet indeksu katru reizi, kad tiek noteikts signāls, bet nepalieliniet, ja signāls ir atkārtots kods.
  • Būla vērtība, kas vairs netiek reģistrēta, kad esam sasnieguši maksimālo.
  • Būla, lai norādītu, vai atrodamies atskaņošanas režīmā, nevis, lai turētu pogu nospiestu; mainīja arī pogu loģiku, lai to pārslēgtu.

Ņemiet vērā, ka indikatora gaismas diode uz Arduino (13. tapa) aktivizēsies, kad atmiņa būs pilna. Pašlaik jums ir jāreģistrē 10 pogu nospiešanas - ne mazāk - un atkārtošanas režīms starp katru pogas atkārtošanu gaidīs 1 sekundi. Šeit tas darbojas:

Jūs varat vai nu spēlēt ar vairāk IR palaidnību, vai arī uzskatīt to par labu sākumu episkākam tekstam mājas automatizācijas projekts Mājas automatizācijas rokasgrāmata ar Aveņu Pi un ArduinoMājas automatizācijas tirgus ir pārpludināts ar dārgām patērētāju sistēmām, savstarpēji nesavienojamām un dārgām instalēšanai. Ja jums ir Aveņu Pi un Arduino, jūs to pašu varat sasniegt ... Lasīt vairāk ; un neaizmirstiet pārbaudīt visus pārējos Arduino projekti. Dalieties ar savu darbu (vai problēmām) komentāros un, lūdzu, parādiet atzinību par šo rakstu, daloties tajā ar iecienītākajiem sociālajiem tīkliem!

Attēla kredīts: DaGoaty

Džeimsam ir mākslīgā intelekta bakalaura grāds, un viņš ir sertificēts CompTIA A + un Network +. Viņš ir galvenais MakeUseOf izstrādātājs un brīvo laiku pavada, spēlējot VR peintbolu un galda spēles. Kopš mazotnes viņš būvēja datorus.