Sterownik choinkowych węży świetlnych

Sterownik choinkowych węży świetlnych
Pobierz PDF Download icon

Prezentowany układ pozwala na sterowanie siedmioma wężami złożonymi z diod LED, których liczba zależy od napięcia zasilania układu.

Mikrokontroler włącza i wyłącza światła o określonych przez użytkownika godzinach. Podczas pracy układ zaświeca każdy wąż LED aż do zaświecenia się wszystkich siedmiu. Następnie trzykrotnie błyska i gasi je w odwrotnej kolejności, co przy odpowiednim ułożeniu węży na choince (np. wąż 1 na szczycie, kolejno niżej 2 itd.) daje ładny efekt wizualny. Wieszając diody na choince przed domem, na balkonie itd. można go zasilać np. z akumulatora samochodowego.

Aby układ mógł działać przez cały okres Świąt Bożego Narodzenia wystarczy akumulator o pojemności 7 Ah przy założeniu, że układ działa z ustawieniami początkowymi tzn. diody świecą w godzinach 17:00...0:00. Akumulator tej wielkości z łatwością można ukryć pod choinką.

Na rysunku 1 pokazano schemat ideowy sterownika. Jego „sercem” jest mikrokontroler IC1 typu AT89C2051. Rolę stabilizatora napięcia pełni układ IC2 typu LM78L05. Poprawne zerowanie układu po dołączeniu napięcia zasilania zapewnia kondensator C3. Mikrokontroler jest taktowany częstotliwością 6 MHz uzyskiwaną na bazie rezonatora kwarcowego Q1. AT89C2051 ma cykl maszynowy 12 razy dłuższy od cyklu zegarowego, czyli w tym wypadku jeden cykl maszynowy trwa 2 μs.

Rysunek 1. Schemat ideowy sterownika węży świetlnych

Programowanie nastaw użytkownika odbywa się za pomocą jednego klawisza PROG, dołączonego do portu P3.5 mikrokontrolera.

Wężami diod LED mikrokontroler steruje z portu P1 przez siedem źródeł prądowych złożonych z tranzystorów T1...T7, drabinki diodowej DD1 i drabinek rezystancyjnych DR1 i DR2. Zastosowanie źródeł prądowych uniezależnia układ od napięcia zasilania wymuszając przepływ przez diody LED prądu o stałym natężeniu. Tym samym jasność świecenia jest niezależna od stopnia rozładowania akumulatora. Mikrokontroler włącza każde źródło prądowe ustawiając poziom wysoki na bazie tranzystora.

Gdy diody nie świecą (godziny programowane przez użytkownika) na wszystkich bazach tranzystorów źródeł prądowych są stany niskie a zatem płynie prąd przez drabinkę rezystancyjną DR1 (około 14 mA). Prąd ten niepotrzebnie rozładowywałby akumulator. Dlatego zastosowano tranzystor T8 typu BSS84, który odcina napięcie zasilania drabinki rezystancyjnej DR1.

Montaż i uruchomienie

Na rysunku 2 pokazano schemat montażowy sterownika. Zmontowano go na jednostronnej płytce drukowanej. Montaż należy rozpocząć od elementów SMD: kondensatorów C1, C2, C4 i tranzystorów T1...T8. Następnie należy przylutować podstawkę pod mikrokontroler, a później pozostałe elementy. Przed włożeniem mikrokontrolera w podstawkę należy włączyć napięcie zasilania i sprawdzić czy między nóżkami 10 i 20 podstawki mikrokontrolera jest napięcie 5 V. Następnie należy podłączyć miliamperomierz z dołączonym szeregowo rezystorem 100 Ω w miejsce jednego z obciążeń LED. Po włączeniu zasilania w obwodzie nie powinien płynąć prąd. Wówczas należy połączyć odcinkiem drutu wyprowadzenia 10 i 19 podstawki mikrokontrolera – miliamperomierz powinien wskazać około 17 mA. Następnie należy miliamperomierz wraz z szeregowo włączonym rezystorem podłączyć w miejsce kolejnych gałęzi diod LED.

Rysunek 2. Schemat montażowy sterownika

Wszędzie wskazanie przyrządu powinno być podobne. Do tak przetestowanego układu można włożyć mikrokontroler z wcześniej zapisanym programem. Plik źródłowy choinka1.asm i wynikowy choinka1.hex są w materiałach dodatkowych do artykułu.

Wprowadzanie nastaw

Program napisano w taki sposób, że urządzenie może pracować z ustawieniami „fabrycznymi” i wówczas nie wymaga wprowadzania nastaw. Wtedy wystarczy włączyć zasilanie sterownika równo w południe (o godzinie 12:00) a węże świetlne będą zaświecane pomiędzy 17 a 24 każdego dnia.

Jeżeli natomiast ktoś chciałby, aby układ pracował w innym cyklu, to należy wprowadzić nastawy. Do tego jest przeznaczony klawisz PROG, którego krótkie naciśnięcia powodują zmianę ustawień, a dłuższe przytrzymanie (powyżej 1 s) zatwierdza wprowadzone dane.

Wprowadzane dane są wyświetlane za pomocą diod na dwóch pozycjach kodu BCD. Programowanie należy wykonać zanim umieścimy węże LED na choince. Gdy są one już rozwieszone nie sposób odczytać nastaw. Dlatego na czas programowania warto dołączyć do układu oddzielne 7 diod świecących w miejsce węży świetlnych. Pierwsza cyfra kodu BCD reprezentująca jedności jest podłączona tak, że: P1.0=20×1; P1.1=21×1; P1.2=22×1; P1.3= 23×1. Cyfra BCD reprezentująca dziesiątki podłączona w następujący sposób: P1.4=20×10; P1.5=21×10; P1.6=22±10. To może wydawać się zawiłe, ale osobom, które potrafią odczytać zapis binarny nie powinno to sprawiać problemu. Można oczywiście wykonać dodatkowy układ dekodera BCD na 2 cyfry 7-segmentowe dołączany na czas programowania.

Po włączeniu zasilania zaświecą się następujące diody:

Ich kombinacja oznacza godzinę 17, o której włączy się oświetlenie. Jeżeli pozostawimy układ przez 30 sekund, to automatycznie przejdzie on do trybu wykonywania programu z ustawieniami fabrycznymi przyjmując za czas startu 12:00.

Krótkimi przyciśnięciami klawisza PROG można zmieniać godzinę rozpoczęcia świecenia światełek kolejno na 18, 19 itd. Jeżeli wybierzemy już żądaną godzinę włączenia światełek, należy przycisnąć klawisz PROG i przytrzymać wciśnięty dłużej niż 1 sekundę. Wówczas Zaświeci się następująca kombinacja diod:

Kombinacja ta oznacza 0 minut. Krótkimi naciśnięciami klawisza PROG można ustawić dowolną z liczb z zakresu 0...59. Jeżeli już ustawimy żądaną liczbę, należy przycisnąć klawisz PROG i trzymać wciśnięty dłużej niż 1 sekundę. Wówczas wszystkie diody LED błysną trzykrotnie informując, że godzina rozpoczęcia pracy została zapisana i układ przechodzi do ustawiania godziny wyłączenia, którą należy ustawić tak samo, jak załączenia. Po zakończeniu należy ustawić aktualny czas.

Na koniec programowania należy zdecydować czy aktualna godzina jest z zakresu czasu kiedy to diody mają świecić. Jeżeli tak należy długo nacisnąć klawisz PROG i układ przejdzie do trybu aktywnego. Jeżeli aktualny czas jest spoza zakresu godzin, w których diody mają świecić się, należy krótko przycisnąć klawisz PROG co zakończy funkcję programowania i układ przejdzie w stan czuwania.

Grzegorz Mazur

Wykaz elementów:
Rezystory:
  • DR1: drabinka 8×10 kΩ
  • DR2: drabinka 7×33 Ω
Kondensatory:
  • C1, C2: 33 pF (SMD 1206)
  • C3: 2,2 µF/10 V
  • C4: 100 nF (SMD 1206)
  • C5: 470 µF/10 V
  • C6: 100 µF/35 V
Półprzewodniki:
  • IC1: AT89C2051-24PI
  • IC2: 78L05
  • T1...T7: BC807
  • T8: BSS84P
  • DD1: sieć 8×1N4148
Pozostałe:
  • Q1: kwarc 6 MHz
  • SW1: przycisk
Artykuł ukazał się w
Elektronika Praktyczna
grudzień 2010
DO POBRANIA
Pobierz PDF Download icon
Materiały dodatkowe
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik grudzień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich styczeń 2025

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów