Čas a teplota na oled displeji
Tento projekt slouží k měření teploty, tlaku a času a k jejich zobrazení na OLED displeji. Současně data vypisuje na sériovou linku.
Tento projekt jsem vymyslel proto, abychom nezapomínali zhasínat na našem WC. Pokud je místnost prázdná a svítí uvnitř světlo, rozsvítí se před záchodem na Arduinu kontrolka, která zhasne po vypnutí vypínače světla. Tak bezpečně víme, že jsme zapomněli zhasnout. Na WC je umístěn fotorezistor zapojený dle schématu.
Celé to napájím 2500 mAh powerbankou, kterou musím jednou za půl dne vyměnit. Střídám periodicky dvě powerbanky. Dalo by se to však po úpravě napájet z větší baterie nebo 5 V nabíječkou ze sítě. Zařízení má odběr pod 10 mA.
Dokáže rozeznat zbytkové denní světlo proudící ze světlíku, který vede do lodžie, od svítící žárovky.
Schéma zapojení senzoru:
Zdrojový kód:
/* Může vyžadovat úpravy nastavení prodlev a rozsahu pro konkrétní místnost zvlášť, vystup z děliče 10K odporu a fotorezistoru -> A0 */ void setup() { Serial.begin(9600); //inicializace seriove linky pinMode(13, OUTPUT); //inicializace vystupu } void loop() { int mereni = analogRead(A0); //cteni hodnoty fotorezistoru int soucet; int prumer; for (int i = 0; i < 15; i++); { //provedení 15 měření pro ustálení výsledku mereni = analogRead(A0); soucet = + mereni; //uložení výsledku pro následné zrpůměrování prumer = (mereni / 15); //výpočet průmeru z 15 mereni Serial.println(prumer); //odeslani prumeru na seriovou linku delay(1000); } if ((prumer >= 25) and (prumer < 35)) { delay(15000); digitalWrite(13, HIGH); //svetlo sviti } else { digitalWrite(13, LOW); //je tma nebo pronika denni svetlo } }
Tento projekt slouží k měření teploty, tlaku a času a k jejich zobrazení na OLED displeji. Současně data vypisuje na sériovou linku.
Kamarád mi poprosil o pomoc s tím že v současnosti potřebuje v jednom projektu ovládat čtyři reléové moduly, kdy jeden obsahuje šestnáct relátek které zakoupil v [1] a již má hotovou část zapojení přípravku, s tím že časem by chtěl ovládání z PC „po otestování“, ovládat diody pomocí tabletu nebo chytrého telefonu. Na tento počet ovládání relé je potřeba 64 ovládacích pinů, což ani ARDUINO MEGA 2560 s potřebou dalších vstupů které budou potřeba není možné použít. Po návrzích s posuvnými registry kterých by bylo potřeba osm kusů a složitosti zapojení mi napadlo použít pásek NEOPIXEL s RGB led diodami kdy na ovládání stačí jeden výstup z ARDUINA. Tak že pro pokusy co a jak půjde použít, jsem použil modul relátek osazený dvěma relátky, modul s MOSFET tranzistorem, Neopixel pásek s osmi RGB led diodami WS2812B, fototranzistor GL5528 a bluetooth JDY-33 pro komunikaci s tabletem chytrým telefonem vše zakoupené v [1]. Napsané programy jsou celkem dva jeden pouze pro ovládání Neopixel s osmi RGB led diodami, druhý pak umožňuje ovládat maximálně 255 RGB led použitých v Neopixel pásku. Oba programy umožňují ovládat libovolnou RGB diodu nebo více RGB led diod na Neopixel pásku včetně barev a dají se upravit dle potřeby. Přípravek může posloužit při vlastních pokusech s RGB LED Neopixel pásky a zároveň doplňuje články v [2]. Ovládání RGB diod je zde řešeno s ARDUINO NANO je možné použít i ARDUINO UNO. Programové ovládání RGB led diod na Neopixel pásku je dle požadavků kamaráda.