Oświetlenie (czy to warsztatowe czy tez akwariowe) powinno być przede wszystkim praktyczne. O ile jeśli chodzi o oświetlenie do akwarium stabilizacja parametrów (mocy) jest ważna o tyle jeśli chodzi o oświetlenie warsztatu łatwość zmiany mocy jest jednym z głównych czynników.
Postanowiłem więc wykonać przykładowe oświetlenie oparte o 4 drivery LDD-600L oraz Arduino Nano. Wszystkie moduły umieściłem na płytce prototypowej i podłączone do zasilacz 12V 3A. Dzięki takiemu rozwiązaniu do zasilenia zarówno belki jak i wszystkich modułów wystarcza jeden zasilacz oraz przetwornica step-down zamontowana na płytce.
Schemat nie wymaga większych wyjaśnień. Całość oparłem o płytkę prototypową Bella Compact która została opisana tutaj.
Do budowy (poza samą lampą) użyto następujących materiałów:
- obudowa Z1W
- front pod wyświetlacz LCD 20x4znaki (opcjonalne) – do samych potencjometrów wystarczy standardowy front i wywiercone otwory)
- płytka prototypowa Bella Compact
- 4 drivery LDD-600L
- Arduino Nano
- Przetwornica step down (aby nie używać drugiego zasilacza)
- gniazdo keystone do podłączenia lampy
- gniazdo zasilania do podłączenia zasilacza
- zasilacz 12V 3A
Potencjometry zostały podpięte w miejsce w którym zwykle znajduje się klawiatura (środkowe nóżki). Lewa i prawa nóżka potencjometru to odpowiednio piny 5V oraz pin GND. W momencie kiedy używamy potencjometry zamiast klawiatury potencjometry nie zostały wlutowane.
Skrypt pod arduino do sterowania oświetleniem:
int Led1 = 5; int Led2 = 6; int Led3 = 10; int Led4 = 11; void setup() { pinMode(Led1, OUTPUT); pinMode(Led2, OUTPUT); pinMode(Led3, OUTPUT); pinMode(Led4, OUTPUT); Serial.begin(9600); Serial.println(); Serial.println("Odwiedz strone www.mn-tech.pl"); Serial.println(); delay(5000); } void loop() { int analog0 = analogRead(A0); int analog1 = analogRead(A1); int analog2 = analogRead(A2); int analog3 = analogRead(A3); static int D1; static int D2; static int D3; static int D4; D1 = (analog0/4); D2 = (analog1/4); D3 = (analog2/4); D4 = (analog3/4); analogWrite(Led1, D1); analogWrite(Led2, D2); analogWrite(Led3, D3); analogWrite(Led4, D4); Serial.print(" LED1: "); Serial.print((D1*100)/255); Serial.print("% LED2: "); Serial.print((D2*100)/255); Serial.print("% LED3: "); Serial.print((D3*100)/255); Serial.print("% LED4: "); Serial.print((D4*100)/255); Serial.print("%"); Serial.println(" www.mn-tech.pl"); delay(500); }
Jak widać powyższy skrypt skróciłem prawie do minimum. Można oczywiście usunąć dodatkowe linijki (serial.print) i wtedy uzyskamy totalne minimum. Jednak nie będziemy w stanie sprawdzić działania skryptu bez podpięcia belki.
Poniżej znajduje się film opisujący budowę oraz sposób działania sterownika.
Film z budowy sterownika zamkniętego w obudowie Z1W. W filmie zastosowałem płytkę Bella Compact w wersji 1.1. Sterownik został wykonany w taki sposób, aby przy użyciu niewielkich zmian można było zrobić z niego w pełni automatyczny sterownik Bella albo Luna.