Začátkem letošního roku (2019) jsem se rozhodl, že si zkusím postavit malé "pasivní" krevetárium. Bez topení, bez filtrace, jen s LED osvětlením. Když jsem přemýšlel nad řízením LEDek, zalíbila se mi možnost plynulého řízení jejich jasu a simulace východu a západu slunce. Plynulé ovládání svitu jsem bral jako výbornou možnost, jak ideálně nastavit úroveň osvětlení, a pomoci tak s docílením rovnováhy v akváriu. Na větším akváriu mě vždy vadila nemožnost snížit jas osvětlení při použití zářivky. Chvíli mi trvalo, než jsem se zorientoval v nabídce RGB LED a možnostech jejich řízení, no nakonec mě cesta zavedla až k mikrokontroleru Arduino, který mě do té doby zcela míjel. (jaká škoda :) ) Arduino skýtá ohromné možnosti pro takový projekt, stejně jako 3D tisk, o kterém bude také řeč.
Za pár dní jsem "šel na nákup".
1 ks Arduino UNO R3
1 ks RTC Hodiny reálného času DS3231 (přesné, teplotně stálé)
1 ks I2C Displej OLED 0.91" 128 x 32 bodů - bílý
1 ks teplotní čidlo DS18B20 - vodotěsné - (přesné, nerezové pouzdro)
1 ks spínaný zdroj MEAN WELL RS-25-12, (12 V, 25 W)
1 ks membránová klávesnice 1 x 5
1 ks RGB LED modul pro Arduino STM32 AVR (řízení RGB LEDek)
3 ks 4k7 rezistor
1 ks modul s LM2596 DC-DC (mění napětí z 12 V na 5 V)
Arduino propojovací kablíky (různé kombinace)
(lze koupit v ČR, ale mnohem levněji v Číně)
1 m LED pásek červený/zelený/modrý STRIP 5050 OPSB/RGB
1 ks zástrčka síťová KES 1/ST
1 ks pojistkové pouzdro PTF 5030
1 ks pojistka skleněná T0,5 A
2 m vícežilového kablíku AWG 28-34F
9 ks svorkovnice CPP 3.5/3BU
2 m dvoužilový kabel CYH 2 x 0,75 mm 2/2-0
1 ks univerzální plošný spoj TA-ECL/2
smršťovací bužírky
1 m hliníkový LED profil Mikro 21 m difuzor (matný)
4 ks koncovky LED profilu
vteřinové lepidlo
tavná pistole
(zakoupeno v ČR)
Arduino - hardware
Z koupených dílů jsem na stole postavil změť kabelů a modulů, tedy propojil modul hodin, ovládání LED, klávesnici a OLED display s
Arduinem (schéma níže). Arduino jsem zatím napájel přes USB kabel s počítače. LED pásky napájel spínaný zdroj 12 V/25 W.
Arduino - software
Po sestavení všech modulů začala práce na vývoji software. Ovládací program jsem si rozdělil na několik částí: - řízení LED - čtení a konfigurace klávesnice - správa MENU (uživatelské nabídky)
Pro práci s hardware jsem využil již existující knihovny:
FastLED (obsluha RGB LED pásků)
U8glib (obsluha OLED display)
OneWire a DallasTemperature (obsluha teploměru)
DS3231 (obsluha hodin reálného času)
(najdete buď přímo v Arduino IDE a nebo na Github)
Nejnáročnější bylo programování menu, od něhož jsem chtěl možnost snadného rozšíření o další položky, lokalizaci, schopnost nastavení různých hodnot jako číslo, čas či datum. Protože je Arduino UNO docela omezované velikostí programové paměti, bylo třeba psát kód s rozvahou - šetřit každý bajt. Úvodní obrazovku jsem rozdělil na záhlaví, kde se zobrazuje aktuální teplota vody a čas. A hlavní část, kde se zobrazují stavové ikony a položky menu. Pozici v menu poté v zápatí znázorňuje tzv. progress bar.
Software nyní hlídá několik událostí, které lze konfigurovat. Pokud některá z událostí nastane, display se probudí a zobrazí patřičnou ikonu.
- dosažení minimální teploty
- dosažení maximální teploty
- den údržby
Program také umožňuje následující (viz. obrázek)
- nastavit automatické zapínání/vypínání osvětlení
- noční osvětlení
- nastavit jas LED osvětlení
- nastavení hodin
- nastavení dne údržby atd.
Jak už bylo uvedeno výše, při programování je třeba šetřit každý bajt, takže např. fonty je třeba ořezat o nevyužívané znaky. Tím se dá ušetřit i několik kB. Já nakonec skončil u dvou upravených a ořezaných fontů, ke kterým jsem dokreslil stavové ikony (programem Fony). (pro převod fontů do formátu, který využívá knihovna U8glib použijte program bdf2u8g_101.exe)
Ostatní hardware
Akvárium, které jsem pro projekt použil mělo rozměry 32 x 16 x 23 (cm) a jednalo se o obyčejné skleněné akvárium bez jakéhokoliv příslušenství. Proto bylo nutné nejdříve navrhnout horní kryt s držákem LED pásků. Poté následoval návrh vedení kabelů, které jsou schovány v otevíratelných lištách, klipy LED pásků, držák teploměru, kryt displaye, krabička pro napájecí zdroj a samotné Arduino s ostatní elektronikou. Vše jsem navrhoval v primitivním starém programu 123D. (viz. obrázky)
Navržené díly jsem vytiskl na 3D tiskárně (v mém případě Creality Ender 3D - mimochodem vynikající levná tiskárna). Vše z materiálu PLA (snad zvládne kontakt s vodou) krom držáku teploměru a klipů pro LED pásky, ty jsou z PETG pro lepší pevnost a pružnost. Některé díly je nutné tisknout ze dvou částí a poté slepit. Buď z důvodu složitého tvaru (držák teploměru) a nebo velikosti (víko akvária).
Po vytištění všech dílů jsem začal s montáží LED pásků. Pro mé akvárium stačily 2 x 20 cm pásky. Ty jsem umístil do hliníkových profilů (chlazení) a nacvakl do předem přilepených klipů ve víku akvária. (viz. obrázek) Zatím je nemám ve smršťovací bužírce, ale až bude akvárium založené, bude to vhodné, aby se k páskům nedostala voda. Difuzor na hliníkový profil jsem zvolil matný, aby lépe spojil světelné záření RGB LEDek, i když je třeba počítat se ztrátou světla (cca 20 %, čirý bere asi 5 %).
Lišty pro vedení kabelů jsem přilepit oboustrannou lepící páskou.
Pro připojení všech externích zařízení k Arduinu a rozvod napájení jsem použil univerzální plošný spoj a několik svorkovnic. (viz. obrázek) Pro napájení je třeba osadit modul redukující vstupní 12V napětí na 5V. (Ten ještě na obrázku chybí, napájení zatím obstarává
USB kabel z PC)
Závěr
Nyní je samozřejmě důležité vše vyzkoušet na založeném akváriu. Jestli bude zvolené osvětlení dostatečné, jestli PLA výtisky vydrží kontakt s vodou atd. Každopádně jsem se výrobou docela bavil a doufám, že článek bude inspirací pro ostatní. RGB LED osvětlení má nízkou spotřebu, která velmi hrubě odpovídá zvolené úrovni jasu v menu. 100 jednotek odpovídá cca 100 mA proudu (při 12 V). 255 jednotek je pak cca 300 mA. Tzn., že na maximum LEDky berou cca 3 W.
Spotřeba celku při maximálním jasu osvětlení je: ?? (bude doplněno)
Spotřeba celku při vypnutém osvětlení je: ?? (bude doplněno)
Hodně zábavy s Arduinem!
Video ukázka: https://youtu.be/d_QfHKmU05U
Za správnost informací zodpovídá autor článku, dotazy směřujte na autora. Hodnocení článku hvězdičkami provádí redakce. K článku se vyjádřete pomocí palců (líbilo se / nelíbilo se).
Líbilo se: 29x • Nelíbilo se: 0x • Zveřejněno: 27.02.2019 • Upraveno: 27.02.2019 • Přečteno: 1276x
Schválili: vaclav 27.02.19 • romant 27.02.19 • ctibum 28.02.19
Žádné související články |
08.12.2022 | Pořiďte si chytré akvárium | 217x | |
02.02.2011 | Vzduchovací motorek - oprava | 1148x | |
24.02.2018 | TC 420 - popis a instalace | 1288x | |
14.07.2009 | Uchovávání nitěnek | 1883x | |
30.12.2014 | Rozstřikovací rampa pro interní filtr Eheim Aquaball | 895x | |
17.09.2014 | Výroba rozstřikovací rampy levně a rychle | 1380x | |
07.07.2018 | Topení pro set JBL líheň artemí | 21x | |
28.03.2013 | EHEIM Test hlučnosti vzduchovacích motorků. | 666x | |
05.10.2014 | Výroba drop checkeru z plastovej skumavky za 1 minutu | 994x | |
05.02.2013 | External Filter 120 od Up-Aqua | 869x |
Funkce je dostupná pouze pro přihlášené uživatele
Žádné další články |