
Witam.
Jakiś czas temu pokazałem swój uniwersalny kontroler do automatyki domowej.
https://www.elektroda.pl/rtvforum/topic2844226.html
Od tego czasu powstała jego nowa wersja oparta na mocniejszym sterowniku Mega128 i główny kontroler umożliwiający zarządzanie systemem z poziomu przeglądarki internetowej.
Projekt powstaje bardzo wolno, a dzisiaj pokażę, jak działa stary model sterownika z modułem internetowym.
Moduł internetowy jest oparty o Arduino Mega i standardowy shield internetowy. Jedyne, co zrobiłem to dodatkowa płytka, na której jest zegar DS3231, wyświetlacz LCD, 3 przyciski i 3 porty RS485 w postaci złącz USB.




Moduł internetowy wykorzystuje standardowe biblioteki Arduino. Od zera napisałem obsługę zegara i procedury do obsługi transmisji szeregowej.
Atmega2560 posiada aż 4 porty szeregowe i wystarczająco dużo zasobów do obsługi wszystkich interesujących mnie rzeczy.
USART1 - obsługa wyświetlaczy i paneli kontrolnych umieszczonych w ścianie,
USART2 - obsługa sterowników oświetlenia / żaluzji,
USART3 - obsługa modułów kontroli temperatury i systemów bezpieczeństwa (np krańcówki w oknach i drzwiach).
W prezentowanej przeze mnie wersji udało mi się zrobić:
1. Obsługa zewnętrznego wyświetlacza pokazującego bieżący czas,
2. pełna obsługa dwóch sterowników oświetlenia: ustawianie wyjść i ustawianie parametrów przez HTTP,
3. ustawianie RTC.
Moduł w użyciu https://www.youtube.com/watch?v=EV0p-OZOcgA
Strona HTML tworzona jest z wykorzystaniem styli.
Wciśnięcie przycisku (linku) powoduje, że przeglądarka wysyła do Arduino odpowiedź w postaci linijki tekstu. Tekst ten trzeba obrobić i odczytaną komendę wysłać do sterownika przez RS485. Sterownik zapala lub gasi wybrane wyjście. Kilkanaście ms po tym Arduino znowu odpytuje sterownik, tym razem o stan wyjść. Po otrzymaniu tej informacji do przeglądarki jest wysyłana treść strony z uwzględnieniem stanu wyjść sterownika.

Tyle w skrócie.

Sterownik kontrolujący prace oświetlenia jest w pełni autonomiczny. Awaria modułu internetowego Arduino nie wpływa na jego pracę. Wtedy parametryzowanie jest możliwe przez komputer PC i soft, który napisałem w Delphi.
Pozdrawiam.
Cool? Ranking DIY