Elektroda.pl
Elektroda.pl
X
Relpol przekaźniki
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

MagaSter - sterownik automatyki domowej

poczitamagoczi 17 Kwi 2010 02:18 5904 9
  • Swego czasu byłem bardzo zainteresowany maksymalnym wykorzystywaniem wielozadaniowych systemów w mikrokontrolerach. Wtedy też powstał projekt który chce przedstawić: MagaSter - sterownik inteligentnego domu. Chciałem żeby obsługiwał jak najwięcej zdań w moim małym RTOSie.

    Jego podstawowe założenia:
    - Sterowanie radiowe z wykorzystaniem szeroko stosowanego protokołu Bluetooth.
    - Sterowanie za pomocą podczerwieni.
    - Wysoki stopień interaktywności, (wykorzystanie graficznego wyświetlacza LCD, wielofunkcyjna klawiatura).
    - Wykorzystanie dedykowanego systemu operacyjnego.
    - Możliwość komunikacji w standardzie RS-485 z wykorzystaniem mechanizmu Multi-Master.
    - Zastosowanie pamięci Flash służącej do rejestracji zdarzeń systemowych.
    - Zastosowanie sensorów temperatury oraz wilgotności.
    - Zastosowanie układu zegara czasu rzeczywistego.
    - Modułowa budowa sterownika.
    - Wejścia oraz wyjścia cyfrowe.
    - Dwa wyjściowe kanały PWM.
    Sterownik składa się z dwóch modułów. Na module pierwszym znajduje się mikrokontroler oraz elementy peryferyjne których funkcjonowanie jest niezbędne do prawidłowej pracy systemu. Na module drugim znajduje się interfejs użytkownika (wyświetlacz LCD oraz klawiatura ), moduł do komunikacji radiowej Bluetooth oraz czujnik podczerwieni.

    MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej


    Całość systemu oparta jest na ATMEGA 128 pracującym w częstotliwości 16 MHz. Zdalna kontrola systemu możliwa jest poprzez użycie modułu komunikacji bezprzewodowej Bluetooth BTM-222 oraz odbiornika podczerwieni TFMS5360. Dostęp do rejestrów sterujących jest możliwy także poprzez magistrale RS485 za co odpowiada układ MAX 481 CSA. Sterownik jest wyposażony w zegar czasu rzeczywistego DS 1307 komunikujący się z mikrokontrolerem za pomocą protokołu I2C. Urządzenie posiada trzy wejścia na których można wykryć stan linii wysokiego napięcia. Wyjścia sterownika stanowią cztery wyjścia cyfrowe oraz dwa przekaźniki. Sterownik posiada sensor temperatury DS18B20 który to komunikuje się ze mikrokontrolerem na pomocą magistrali 1-wire. W celu sterowania silnikami prądu stałego oraz diodami LED przy pomocy zewnętrznych driverów ze sterownika wyprowadzone zostały 2 kanały PWM.

    MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej
    Na tym ostatnim zdjęciu pokazany jest mój programator - zestaw zl3avr przerobiony na Jtag ICE ;)

    MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej

    Teraz ten projekt porzuciłem ale myślę nad nową wersją sterownika.

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    poczitamagoczi
    Poziom 14  
    Offline 
    poczitamagoczi napisał 117 postów o ocenie 76, pomógł 8 razy. Mieszka w mieście Dąbrowa Górnicza. Jest z nami od 2008 roku.
  • Relpol przekaźniki
  • #2
    poczitamagoczi
    Poziom 14  
    Dorzucam jeszcze parę zdjęć ostatniej wersji sterownika.
    MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej MagaSter - sterownik automatyki domowej
  • Relpol przekaźniki
  • #4
    poczitamagoczi
    Poziom 14  
    No w tym projekcie zakładałem multi-mastera ale skończyło się na master-slave na Modbusie. W moim nowym projekcie właśnie jestem na etapie programowania protokołu komunikacyjnego i tu chce zastosować BacNeta który obsługuje również Token Passing. Kiedyś bawiłem się też w ten sposób że wysyłałem najpierw adres urządzenia które na 100ms miało prawo zająć linię i nadawać, chyba podobnie działa CAN tyle że tam są jeszcze priorytety...
  • #5
    tumeks
    Poziom 17  
    Szkoda, że nie zabezpieczyłeś ścieżek. Pomysłowy projekt :D
  • #6
    wacek1974
    Poziom 12  
    Całkiem fajnie Ci to wyszło ale ja zamiast klawiszy zastosował bym panel dotykowy .
    Wtedy było by już full profesjonal ;)
  • #7
    serum
    Poziom 15  
    CAN działa na całkiem innej zasadzie. Gdy magistrala jest wolna, to dowolna jednostka może rozpocząć transmisję wiadomości. CAN został zaprojektowany z myślą o multimaster, bardzo sprytnie jest tam rozwiązany problem arbitrażu - warto sobie poczytać.
  • #8
    poczitamagoczi
    Poziom 14  
    No rzeczywiście zacząłem studiować materiał o CANie i arbitraż połączony z priorytetowymi to bardzo pomysłowe rozwiązanie.

    No chciałem zastosować rozwiązanie z dotykowym wyświetlaczem ale okazało się za drogie...

    No fakt nie zabezpieczyłem ścieżek :P w moim nowym projekcie będe miał zamawianą płytkę z soldermaską a po lutowaniu plastik 70 :)
  • #9
    Motor RKS
    Poziom 9  
    il ecie to kosztowało
  • #10
    poczitamagoczi
    Poziom 14  
    Około 170 zł na płytkę z elektroniką. Najdroższe elementy to :
    Atmega 128 ~= 20zł
    btm 222 ~= 70zł
    wyświetlacz graficzny ~= 42 zł