
Witam.
To mój pierwszy post w tej kategorii więc proszę o wyrozumiałość.
Chciałbym przedstawić mój uniwersalny sterownik oparty na mikrokontrolerze Atmega8/328.
Sterownik będzie podstawą mojej instalacji w domku jednorodzinnym.
Konstrukcja jest prosta: mikrokontroler steruje pracą 8 przekaźników poprzez nieśmiertelny ULN. Wszystkie złącza (styki NO i NC) przekaźnika są wyprowadzone na zaciski ARK. Od strony wejściowej mamy do dyspozycji 10 wejść 12V z galwaniczną (optyczną) separacją. Wejścia zorganizowane są w dwie grupy 2 i 8 wejść. Używa się ich jak standardowych wejść w sterownikach PLC. Wszystkie wejścia i wyjścia mają odpowiadające im LEDY na panelu czołowym urządzenia.
Moduł może się komunikować z otoczeniem za pomocą RS232 (złącze RJ45) lub RS485 (ARK).
Sygnalizacja nadawania za pomocą LEDa umieszczonej przy terminalu RS485.
Wybór sygnału RX odbywa się przez zworkę natomiast sygnał TX mikrokontrolera jest obecny na dwóch złączach zawsze.
Ostatnia wolna linia zasila LED na panelu który miganiem sygnalizuje pracę układu oraz transmisje danych. Istnieje możliwość wykorzystania go do np. podłączenia magistrali 1Wire.
I w ten sposób wykorzystałem wszystkie porty w mikrokontrolerze. Korzystam z wewnętrznego zegara RC 8Mz. Transmisja 9600 działa bez problemu.
Jak widać urządzenie to elektrycznie żaden majstersztyk. Celowo zastosowałem obudowy DIL. Miejsca w środku jest i tak sporo poza tym jak coś się spali (a w czasie testów przez własną nieuwagę spaliłem to i owo) można łatwo wymienić
Sterownik jak na razie posiada 3 rodzaje funkcjonalności:
1. Sterownik oświetlenia.
Praca każdego przekaźnika sterowana jest przez przełącznik dzwonkowy. Dodatkowe dwa wejścia pozwalają na wyłączenie i załączenie wszystkich na raz. Można wybierać tryb „schodowy” dla każdego z wyjść (do 500 minut z 2 minutową rozdzielczością).
2. Sterownik żaluzji.
Sterowanie praca 4 standardowych napędów 230V. Nadal korzystam z wyłączników dzwonkowych ale do obsługi jednego silnika służą dwa przekaźniki.
Zastosowałem nietypowe rozwiązanie polegające na tym że pierwszy przekaźnik stykiem NO podaje napięcie do drugiego, a dopiero drugi podaje przez NO/NC prąd do silnika rolety.
Dzięki temu nie jest możliwe jednoczesne podanie napięcia na dwa wyprowadzenia silnika. Nawet po sklejeniu styków.
Z pierwszego przekaźnika (NC) można zasilać klasyczny przełącznik roletowe.
Ponadto oprogramowanie pozwala na wpisanie długości cyklu pracy dla każdej z rolet i zapewnia sekwencyjne wyłączanie (najpierw wyłączany jest przekaźnik podający napięcie a po 100ms wyłączany jest przekaźnik kierunkowy.
3. Moduł I/O
Można odczytać stan wejść i ustawić wyjścia.
Konfiguracja odbywa się przez niewielki programik napisany w Delphi. Oprócz zmiany parametrów można symulować wciskanie przycisków. Komendy sterujące rozpisałem na 3 kategorie.
Zmiana stanu na przeciwny, ustawienie stanu, reset stanu. W zależności od tego na jaki adres w przestrzeni rejestrowej sterownika zostanie wysłana komenda taki rodzaj akcji się wykona.
Każdy ze sterowników posiada swój adres ustawiany z poziomu PC oraz odpowiada na adresie rozgłoszeniowym. Format transmisji jest bardzo zbliżony do Modbusa. Zrezygnowałem z liczenia sum kontrolnych, przesyłając inne dane kontrolne (np. powtórzone jakieś pole, lub różnica jakichś pól).
Dzięki takiej „układance” mogę wysłać jedną komendę do kilku urządzeń oraz sterować każdym z osobna
Do sterowania użyłem także odpowiedniego skryptu php, krasnala i Moxy 5150.
Użycie Moxy załatwia sprawę bo w sieci lokalnej pojawia się adres IP i port do którego można pisać jak do portu szeregowego. Docelowo jednak chciałbym to zrobić na Raspberry Pi bo Moxa to spory wydatek.
Płytka mojego projektu została wykonana w firmie w najtańszej opcji (jedynie wiercenie i cynowanie). Obudowa jest robiona na kuchennym stole (brak prawdziwego warsztatu). Złącze IDC pozwala na szybkie wgranie nowego softu.
Soft na mikrokontrolery powstaje w Bascomie.
Obecnie pracuję nad nowymi funkcjami i kolejnymi modułami do mojej domowej sieci.
Pozdrawiam





Poprawiłem post dodając zdjęcie na początku. Proszę zapoznać się z regulaminem działu DIY Konstrukcje. Dziękuję.
/Faces/
Cool? Ranking DIY