Pojďme programovat elektroniku: Vyzkoušíme IR, ovládneme světýlko přes Bluetooth a vyšleme zprávu na sto metrů

  • Budeme odposlouchávat IR ovladač klimatizace
  • Vyrobíme laciný rádiový vysílač
  • Vyzkoušíme komunikaci pomocí Bluetooth a v pásmu 433 MHz

Už je to měsíc, co jsem naposledy z krabice vytáhl ultrazvukový dálkoměr HC-SR04, infračervený detektor pohybu PIR a jednoduchý detektor dešťových kapek, připojil je k malé prototypovací destičce Arduino a na jednoduchých příkladech ukázal, že ke zprovoznění elektronického prvku chytré domácnosti dnes nepotřebujete titul inženýra, ale jen základní znalost programování, odvahu učit se nové věci a pár korun na účtu, eBay je totiž na podobné experimentování nebezpečně levný.

V mezidobí mi dorazilo několik desítek nových obálek a balíčků s hromadou atraktivních hraček, které si vyzkoušíme v dalších pokračováních našeho seriálu. Pokud jsme doposud pomocí všemožných senzorů měřili hodnoty, dnes se podíváme na několik modulů, které se postarají o to, aby se dostala informace z bodu A do bodu B a to bez kabelu.

Infračervený vysílač a přijímač

Tím nejprimitivnějším komerčně používaným způsobem bezdrátové komunikace je dnes IR – infračervený přenos signálu. Má jej každý televizní ovladač a dokonce i některé telefony. Podobný IR vysílač/přijímač seženete i v každém e-shopu pro bastlíře, přičemž cena se bude pohybovat od několika desetikorun na eBay a jemu podobných po vyšší částku v Česku, která je ale ospravedlnitelná nejen povinnou zárukou, ale často i skladovou dostupností, takže na drobnou součástku nebudete čekat dlouhé týdny.

Klepněte pro větší obrázek
Primitivní infračervený vysílač a přijímač, kterých jsou plné e-shopy pro bastlíře

Infračervený vysílač za dvacetikorunu samozřejmě sám o sobě nic neumí. Je to vlastně jen dioda, která svítí infračerveným světlem, když do ní pošlete signál. A stejně tak přijímač zachytí buď IR světlo a tedy logickou jedničku, anebo nic a tedy logickou nulu. Podobné moduly mají zpravidla tři vodiče: napájení (+), zem (-) a pin samotného digitálního signálu.

Je to primitivní (a proto komplikované)

Infračervený vysílač je tedy po technické stránce naprosto primitivní – jako byste za tmy blikali třeba baterkou a světlo zaznamenávali pomocí fotorezistoru. Pokud nebudete chtít jen blikat, ale přenášet i nějaké informace, samotný přenosový protokol, tedy generátor blikání a jeho detektor, si už musíte napsat svépomocí. A pokud budete chtít pomocí IR ovládat nějaké spotřebiče, bude to ještě mnohem složitější, protože budete potřebovat přesnou dokumentaci signálů, které používají.

Klepněte pro větší obrázek
Infračervený signál pro zapnutí spotřebiče může vypadat třeba takto. Střídají se různě dlouhé impulzy světla (hodnota 1) oddělené drobnou prodlevou (hodnota 0). Čas na ose X je v mikrosekundách.

Zpravidla si proto budete muset zahrát na reverzního inženýra, který pomocí IR přijímače nejprve nahraje signál z dálkového ovládání pro daný úkon, no a pak už jej může zreprodukovat a vyslat stejný sled světelných pulzů do vysílače.

Knihovna IRremote

Podobný problém už naštěstí řešily tisíce bastlířů před námi, takže GitHub je plný knihoven pro Arduino, které se o to postarají za nás. Jedna z těch povedenějších se jmenuje IRremote a má v sobě dokonce předvolby pro některé výrobce – třeba Sony, Samsung a další. Instalaci knihoven pro Arduino jsme si už vysvětlili v předchozím povídání, takže stačí jen otevřít některý z dodaných praktických příkladů.

Já se pomocí IR přijímače a vysílače pokusím zapnout starou a relativně hloupou redakční klimatizaci. Není napojená na žádný centrální termostat, takže je třeba nastavit teplotu na dálkovém ovladači a podle potřeby ji spustit.

Mým cílem pro příští letní sezónu bude mikropočítač, který bude klimatizaci pomocí IR signálu spouštět automaticky tehdy, pokud teplota v kanceláři překoná neúnosnou mez, a také podle časového plánu vždy ráno před příchodem kolegů do práce, aby byla kancelář patřičně vychlazená.

Zapnu klimatizaci pomocí Arduina

Dnes zdolám první překážku. Pokusím se ji zapnout pomocí Arduina a IR vysílače namísto dálkového ovládání.

Klepněte pro větší obrázek
Stropní klimatizaci lze nastavit a spustit jen pomocí dálkového IR ovladače

Knihovna IRremote naši klimatizaci samozřejmě vůbec nezná, takže použiji jeden z jejích příkladů jménem IRrecvDumpV2, který skrze sériovou linku vypíše do PC zachycený signál ve formě pole časů jednotlivých pulzů v mikrosekundách. Příklad zároveň vygeneruje úryvek kódu, který pak budu moci použít pro vysílač.

Po spuštění programu na Arduinu stačí na IR přijímač namířit dálkové ovládání a stisknout požadované tlačítko. V sériovém monitoru se rázem vypíše zachycený signál.

Klepněte pro větší obrázek Klepněte pro větší obrázek
Jakmile jsem klepl na tlačítko dálkového ovládání, rozsvítila se detekční LED dioda na modulu IR přijímače a na počítači se skrze sériovou linku vypsal zaznamenaný infračervený signál vyjádřený délkou jednotlivých pulzů v mikrosekundách. Na posledním řádku mi program vygeneroval kód v C s hodnotami signálu, který mohu zkopírovat a použít naopak pro vysílač.

Pak už stačí přepnout obvod na vysílač a otevřít příklad IRsendRawDemo, který pošle optický signál podle pole časů jednotlivých pulzů, které jsem zachytil v předchozím kroku.

Klepněte pro větší obrázek Klepněte pro větší obrázek
Zaznamenaný signál jsem zkopíroval do příkladu s vysílačem, který je už poměrně jednoduchý. Poté jsem program spustil na Arduinu a namířil vysílač na klimatizaci, která krátce poté pípla a spustila se.

V další kapitole vyzkoušíme nejlevnější modul pro rádiovou komunikaci. Když si nedáte jedno pivo, je váš.

19 komentářů

Nejnovější komentáře

  • Peter Machala 26. 9. 2016 12:30:43
    Díky za tieto články. Práve analyzujem možnosti pre úlohu: "keď sa tento...
  • hamik 22. 9. 2016 9:13:48
    Parada, vyborny clanek kterych uz na Zive v posledni dobe bohuzel moc...
  • I_Love_MySQL 22. 9. 2016 8:45:11
    Dobré.. Ja som vyrastal na Václavovi Malinovi, možno vy pán Čížek budete...

Určitě si přečtěte


Deset tipů, jak ovládnout Google: Vyhledávejte jako mistři

Deset tipů, jak ovládnout Google: Vyhledávejte jako mistři

** Vyhledávače jsou natolik dobré, že si poradí i s frází v běžné češtině ** Pokud to ale nebude stačit, můžete vyzkoušet pokročilé funkce ** Vybrali jsme ty nejzajímavější

25.  9.  2016 | Jakub Čížek | 19

9 nejlepších programů na úpravu fotek. Placené i zdarma

9 nejlepších programů na úpravu fotek. Placené i zdarma

** Pro běžné úpravy fotek nemusíte pirátit Photoshop, vystačíte si s levnějšími programy ** Ceny pokročilých editorů se většinou vejdou do dvou tisíc korun ** Mnohdy stačí i bezplatné nástroje

26.  9.  2016 | Stanislav Janů | 49

Jak zastavit nechtěné programy na Windows? Koukněte na Plánovač úloh

Jak zastavit nechtěné programy na Windows? Koukněte na Plánovač úloh

** V systému se mohou periodicky spouštět nechtěné aplikace ** Anebo si vyberou tu nejméně vhodnou chvíli ** Prozkoumejte Plánovač úloh na Windows

23.  9.  2016 | Jakub Čížek | 128

Týden Živě: Zvyknou si Češi platit paušál za software?

Týden Živě: Zvyknou si Češi platit paušál za software?

** Zoner vypustil do světa nové Photo Studio. Je za paušál. ** HP nechce neoficiální inkoust ** Koutek časopisu Computer

25.  9.  2016 | Časopis Computer | 65

Aby byl signál a internet všude: jak fungují a kde jsou schované antény operátorů

Aby byl signál a internet všude: jak fungují a kde jsou schované antény operátorů

** Základnové stanice BTS mobilních operátorů zdaleka nejsou jen typické kovové stožáry ** Podívejte se na některé nevšední instalace ** Dozvíte se, z čeho se moderní BTS skládá a jak funguje

Včera | David Polesný | 18


Aktuální číslo časopisu Computer

Srovnání výhodných 27" monitorů

Velký test levných rychlých routerů

Jak nastavit Android, aby vás nesledoval

45 podrobných testů a recenzí