27. 3. 2021

Hodiny s NeoPix led WS2812b

 Když jeden potřebuje velká čísla na hodiny aby se daly snadno číst, tak kde je sehnat? No, existuje sice pár velkých segmentových číslic ke kterým potřebujete nějaký driver, třeba něco jako TM1637. To se mi nechtělo, ale protože miluju programovatelný RGB LEDky WS2812b, tak jsem se pustila do návrhu vlastních číslic.

Od nápadu k DPS to trvalo dlouho, ne, že by to bylo těžké, ale protože jsem si Eagle otevřela vždycky na chvíli večer po návratu z obchodu. 

Tady je ukázka 7 segmentová číslice v2 s výškou 76mm. Dvě ledky WS2812b na segment, ale dá se snadno škálovat. Při výšce 90mm už budou na segment 3 ledky. Použité led jsou v pouzdře 5050. Případně při použití WS2812b v pouzdře 2020 se může počet diod zvýšit na dvojnásobek a přitom klesne celková spotřeba číslic. To bude další verze.


Maximální spotřeba vychází na 840mA na číslici. Na celý hodiny je to hodně, ale při použití jedné barvy s nízkým jasem a PIR čidlem se dají krátkodobě provozovat i na baterku. 

A než mi přišly první kusy z výroby, začala jsem psát vlastní knihovnu. Po měsíci snažení a marných pokusů bylo na čase sehnat profesionála, co ji napíše za mě. To se povedlo a tak teď mám Arduino knihovnu NeoPixSegment verze 1.0 i s několika ukázkami.

Stojánky jsou navržené tak, aby číslice s navléknutým stínítkem byla v ose uprostřed stojánku a dolů se i s použitím distančních sloupků krásně vejde celé Arduino Nano, modul hodin DS3231 a miniaturní PIR čidlo. Dokonce se tam vejde i nabíjecí baterie Li-Ion 18650 včetně potřebných modulů k nabíjení. Škoda, že celková spotřeba je poměrně vysoká a tak chod na jeden Li-Ion článek nevydrží příliš dlouho. Ale jako záloha při výpadku elektřiny, proč by ne, že. 

Kde čísla sehnat? 

Číslice a k nim i dvojtečky si můžeš objednat na e-shopu buď už jako hotové, nebo jednotlivé součásti a vše si spájet dohromady doma. Na každou jednu desku čísla potřebuješ 14x led WS2812b + 14x kondenzátor 100nF + stojánek. Na dvojtečku jsou potřeba 2x led WS2812b a 2x kondenzátor 100nF a stojánek pro dvojtečku. Ten je užší aby číslice od dvojtečky nebyly příliš daleko. Všechno je na e-shopu. Pro stavbu je vhodné použít desku stojánku, které se dají pájet k sobě do série aby vytvořily základnu hodin. K dispozici jsou i 3D tištěné díly, stínítko s difuzorem z PLA.

Jak hodiny sestavit?

Nejprve potřebujeme čísla a stojánky. Do stojánku je vyfrézovaný otvor, ten je občas potřeba doladit jehlovým pilníčkem aby se číslo na nožičce dalo vsunout do otvoru. Stojánek patří pájecíma ploškama dolů aby vrchní plocha byla čistá a hezká.

Ideální postup je napájet číslo na stojánek a potom kompletní číslice na stojánku spojit dohromady.

Vlevo je pak vstup k prvnímu číslu a vpravo výstup k dalšímu. Na každém stojánku jsou i samostatné pájecí plošky VCC a GND. Ty jsou připravené pro napájení dalších modulů aby se nemuselo tahat tolik vodičů od Arduina. 

Výsledek v2




 Číslice v4

Teď když mám už číslice další verze, vylepšila jsem i stínítka a už mám i krabičku do které se všechna elektronika našlape. Místa tam není příliš mnoho aby byla krabička co nejmenší, ale všechno se vejde.

Stínítko i difuzory jsou tištěné z PLA (lze použít i ASA275) a každé číslo se skládá ze čtyř částí.
Krabička na ukázku, zatím je k dispozici několik verzí v testovací fázi pro kombinace senzorů TEMT6000, SHT31 a AM612. Uvnitř je místo pro Arduino nano, RTC DS3231, USB-C konektor, 3way button a příprava pro 2x kapacitní senzor na boky. Všechno koupíš na www.vokolo.cz a je tam i aktuální odkaz na GitHub a Thingiverse, kde stáhneš FW do Arduina a STL pro tisk. Ještě by se dovnitř mohlo vejít BT, nebo Arduino nano vyměnit za ESP. To by taky byla alternativa pro nastavování. Ale teď jde připojit i telefon přes OTG kabel s aplikací Serial monitor.


Nakonec k detailnímu nastavení nejen času a barvy čísel jsem napsala kompletního průvodce pro nastavení hodin a funkcí přes Serial monitor.

Dá se nadefinovat vlastní barva čísel a všechny drobnosti, jak se mají hodiny chovat. Rychlost přenosu je 9600 baud.

Ukázka zatím nejnovější verze nastavení přes serial monitor:


1 komentář: