
Witam wszystkich fascynatów własnych projektów, którzy wolnym czasem lubią sobie pomajsterkować przy elektronice.
Dziś pragnę zaprezentować uniwersalną listwę zasilającą, która sprawdzi się nie tylko w inteligentnych domach, ale może być przydatna w sytuacji kiedy potrzebujemy przypisania określonej funkcji do tradycyjnego gniazda sieciowego tj.
- czas
- prąd
- zdalne sterowanie
- temperatura
Budowa urządzenia:
- Obudowa
- 5 Przełączników dwubiegunowych 16A
- 4 sieciowe gniazda panelowe z uziemieniem 16A
- Gniazdo sieciowe 16A z komorą bezpiecznikową. (bezpiecznik 10A)
- 4 przekładniki prądowe (montaż PCB)
- 4 przekaźniki mocy
- 4 kondensatory MKT w obwodzie każdego z gniazd + 4 warystory ochronne
- 3 warystory ochronne na wejściu zasilania (pomiędzy L i N, pomiędzy L i PE oraz N i PE )
- Transformator toroidalny 2 X 12V
- 2 Stabilizatory napięcia 7812 oraz 7824
- 2 Wzmacniacze LM324
- ATmega32
- zegar RTC
- zewnętrzny cyfrowy czujnik temperatury
- wyświetlacz 4 X 20 znaków
- przejściówka z USB na RS232
- 2 super kondensatory (potrzymanie zegara RTC)
- Odbiornik IR
- pozostałe elementy pomocnicze typu: bezpieczniki, rezystory, kondensatory, tranzystory





A teraz kilka sów na temat samego softu.
- Bardzo proste oraz intuicyjne menu (podobne jak w telefonach komórkowych starszego typu)
- Obsługa cyfrowego czujnika temperatury, zegara RTC, oraz odbiornika IR
- Elastyczność (możliwość indywidualnego programowania każdego z gniazd )
- Możliwość przypisania zmiennej IR dla załącz jak również dla wyłącz (zmienną można wprowadzić ręcznie jak również automatycznie po przez wybór przycisku w pilocie)
- Możliwość ustawienia temperatury dla załącz oraz dla wyłącz
- Możliwość ustawienia daty oraz czasu dla załącz lub dla wyłącz
- Możliwość skojarzenia z prądem wybranego gniazda dla załącz oraz dla wyłącz (funkcja jest przydatna np. przy oszczędzaniu energii, czyli po wyłączeniu komputera zostanie odcięte zasilanie dla monitora)
Dzięki tej funkcji można także ustawić odpowiednią selekcję. (np. GN2 zależne od GN1, a z kolei GN3 zależne od GN2 gdzie GN4 będzie zależne od GN3.)
Posługując się tą funkcją należy pamiętać o tym, by nie prowadzić do pętli (np. GN2 zależne od GN1 gdzie GN1 będzie zależne od GN2)
- Możliwość wprowadzenia stanu "normalnie załącz" oraz "normalnie wyłącz".
-Wszystkie wprowadzone zmiany przez użytkownika są zapisywane w pamięci EPROM po ostatnim zatwierdzeniu
- Panel oficjalny wyświetla datę, czas, temperaturę z czujnika DS18B20, sumę prądów oraz prądy poszczególnych gniazd.
Ponadto w ATmega32 jest zaprogramowany proces automatycznej zmiany zakresów pomiarowych (podobnie jak w multimetrach), dzięki czemu uzyskujemy większą rozdzielczość przetwarzania analogowych wartości z wbudowanego ADC.
Zaprogramowana jest także sygnalizacja akustyczna wskazująca na brak, bądź błąd czujnika DS18B20. (Sygnalizacja jest aktywna jedynie w przypadku skojarzenia dowolnego z gniazd z czujnikiem temperatury)
Zaprogramowałem także oszczędny na pamięć algorytm umożliwiający szybką edycję liczby przy pomocy kursora.
Dla próby zastosowałem zewnętrzny zatrzask wartości analogowych (sprowadzenie próbkowania do podobnych wartości) obsługiwany przez specjalnie dedykowany proces synchronizujący moduł pomiarowy na LM324 z przetwornikami ADC oraz przekazem informacji do dalszych procesów w tzw. kółku logicznym (odświeżanie zatrzasków zewnętrznych/ przekaz wartości/wewnętrzny zatrzask wartości ADC)
Nawet nieźle się sprawuje ta metoda pomiarowa (mam dość szybkie oraz stabilne próbkowanie w przebiegu sinusoidalnym)
Generalnie takie rzeczy realizuje się inaczej, no ale ja chciałem zrobić coś po swojemu. (heh nawet działa

Oprogramowanie zostało napisane (narysowane) w Vamgrafie okazujące jego możliwości dla tych którzy zaczynają swoja przygodę z mikrokontrolerami.


Tutaj znajduje się link do prezentacji, przedstawiający klika z funkcji programu:
http://www.youtube.com/watch?v=n_tIvvnD-tI
Uwaga: schematu nie wstawiam, ponieważ PCB rysowałem pisakiem z pamięci. (w razie pytań udzielę pomocnych odpowiedzi)