Jistě jste je již viděli, malé krabičky, které nenápadně visí třeba někde v rohu místnosti a záhadně blikají. Ti chytřejší vědí, že jsou to čidla – součást systému elektronického zabezpečení budovy. Málokdo ale ví, jak vlastně tato čidla přesně fungují a jen ti co pracují s arduinem ví, že se taková čidla dají velmi snadno propojit přímo s arduinem. Můžeme si tak vytvořit nejen vlastní zabezpečovací systémy (na jeden jednodušší dojde v příští lekci), ale můžeme také třeba zhasínat a rozsvěcet světla na chodbě (vzhledem, že je to s 220V, tak to dělat nebudeme :-)), nebo si třeba spustit motorek.
Abychom mohli provádět taková kouzla, jako třeba naučit arduino, aby reagovalo na přítomnost člověka v určitém prostoru, použijeme takzvaného PIR detektoru (nebo také lidověji infradetektoru). Než si řekneme, jak to vlastně funguje, musíme si říci, co je to infrazáření a jak do toho všeho vlastně zapadá.
IR záření (infrazáření)
Infrazáření je elektromagnetické záření s vlnovou délkou větší než viditelné světlo, ale menší než mikrovlnné záření. Prostým zrakem není viditelné. Lidské tělo se vlivem vlastního metabolismu zahřívá. Teplo se z těla uvolňuje pomocí infračerveného záření. Každé těleso, které je teplejší než je absolutní nula (ta vůbec nejnižší teplota) uvolňuje infračervené záření.
Infračervené záření mohou vnímat různé detekory, jsme schopni ho vyhodnocovat a umíme ho také posunout do viditelného zobrazení. V praxi se toho využívá například při vyhodnocování úniku tepla z budov, při ochraně objektů, pro úsporné osvětlení a při spoustě dalších okolností.
Infradetektor HC SR-501
Infradetektory jsou poměrně masově používány pro detekci pohybu objektu o určité teplotě v daném prostoru. A to je případ infradetektoru HC SR-501 se kterým budeme pracovat.
Infradetektor je pasivní zařízení. Nevysílá žádné detekční paprsky (jak by se mohlo zdát z obrázku). Co ale umí je přijímat infračervené záření a jeho úroveň vyhodnocovat v různých oblastech čipu – senzoru. K tomu všemu mu ještě pomáhá fresnelova čočka (wikipedie), která přijaté záření zesiluje a přesněji směruje na čip.
PIR senzor tedy vhodnocuje IR záření, které dopadá na jeho senzor. Poplach vyhlásí – aktivuje se v momentě, kdy dojde ke změně. IR záření naruší současně dva, nebo více sektorů, tedy dojde k pohybu objektu, který vyzařuje IR záření. Infradetektory vnímají navíc pohyb o určité rychlosti, tudíž je neaktivuje pozvolna se zahřívající topení. Těleso, které může aktivovat senzor musí být o určité velikost, tudíž letící moucha nic neudělá, ale pejsek, který se vám courá po zabezpečeném prostoru způsobí poplach. Pohybující se objekt musí být navíc v jisté vzdálenosti od detektoru a musí mít jistou teplotu (obalíte-li se silným igelitem máte větší šanci poplach nezpůsobit :-)). Pokud se pohybujete véééélmi pomalu ve větší vzdálenosti od čidla máte také šanci nebýt zpozorováni. No to bych asi nechal na vás, zkuste si zaexperimentovat, kdy vás čidlo vidí a kdy ne. 🙂
Pokud držíte PIR senzor o kterém zde píši v ruce a kouknete se na zadní stranu plošného spoje uvidíte tři piny, určené pro vstup napájení detektoru (GND a VCC) a výstup signálu. Na pinu OUTPUT je pokud není detektor ve stavu signalizace poplachu 0V. Pokud detektor signalizuje pustí na pin 3,3V. Výstupní signál umíme v arduinu vyhodnotit a v programu s ním i dále pracovat.
Detektor umí snímat až v dosahu do 7 metrů. Na bližší vzdálenost mnohem snadněji narušíte více střežených oblastí, tudíž je čidlo na bližší vzdálenost mnohem citlivější. Senzor snímá zhruba v úhlu 10 stupňů.
Na desce naleznete také dva trimry, kde můžete šroubovákem seřizovat jednak citlivost detektoru a jedna časovou prodlevu, po které je čidlo opět aktivní.
Tip: Po připojení se mi vyplatilo pár minut počkat, aby se detektor dostal do jakéhosi rovnovážného stavu, než mi začal spolehlivě reagovat, takže hned po zapojení nepospíchejte a nechte si to takzvaně sednout.
Zapojení s arduinem
Zapojte sestavu podle schématu. Katoda LED diody je zapojena spolu s ochranným odporem 220 ohmů na pin 13. PIR detektor je zapojen napájení na GND a V, datový výstup připojen na pin 2.
Na desku odešlete následující kód.
/* Program pro demonstraci použití PIR detektoru s arduinem */ //void setup – inicializuje nastevní desky //pin 2 – output PIR senzor //pin 13 – výstup z desky na LED void setup() { pinMode(2, INPUT); pinMode(13, OUTPUT); } // nekonečná smyčka – program je neustále aktivní void loop() { //načtení stavu výstupu z PIR senzoru int pirSensor=digitalRead(2); //Podmínkový příkaz, pokud je PIR aktivován – rozsvítí se LED if (pirSensor==1) { digitalWrite(13,1); } else { digitalWrite(13,0); } } |
Výsledný program by měl vždy pro aktivaci PIR senzoru rozsvítit LED diodu.
Úkoly:
1, Vyzkoušejte si nastavení PIR senzoru, zkuste snížit a zvýšit citlivost a vyzkoušejte si z jaké vzdálenosti a jak rychle na vás detektor reaguje.
2, Přidejte do sestavy další LED diodu a naprogramujte arduino tak, aby se rozsvítila když vás PIR senzor nedetekuje a zhasla, pokud vás PIR senzor „uviděl“.
lol