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

Prosty sterownik domowy - by Mirley

mirley 01 Gru 2009 10:16 24015 38
  • Prosty sterownik domowy - by Mirley

    Witam.

    Chciałbym zaprezentować kolejne moje opracowanie. Opisywane urządzenie jest prostym sterownikiem domowym, urządzeniem pełniącym wiele pożytecznych funkcji, do których między innymi należą: dwupunktowy pomiar temperatury (w domu i na dworze) i zegar pracujący w trybie 24-godzinnym, wzbogacony o dwukanałowy sterownik czasowy. Dodatkowo w programie zaimplementowano prosty termostat z histerezą oraz prosty system alarmowy z dwoma obwodami ochronnymi. Funkcja cichego alarmu umożliwia podgląd o której godzinie obwód ochronny został naruszony, bez włączania syreny. Układ sterownika został zbudowany na mikrokontrolerze ATMEGA16 a wszystkie ustawienia dokunuje się poprzez bardzo prosty interfejs z wyświetlaczem LCD i 6-przyciskową klawiaturą. Do odmierzania czasu wykorzystano układ RTC przez co sterownik może długo chodzić podtrzymując czas na zasilaniu bateryjnym. Wyjścia układu zbudowane na triakach posiadają optoizolację od napięcia sieciowego.

    Schemat:
    Prosty sterownik domowy - by Mirley

    Sercem układu jest mikrokontroler U1 (ATMega16) wraz z rezonatorem kwarcowym X1 (16MHz) i kondensatorami C1 (22pF) i C2 (22pF). Do odmierzania czasu wykorzystywany jest układ RTC U2 (PCF8583). Do jego poprawnej pracy wymagany jest rezonator kwarcowy (tak zwany zegarkowy) X2 (32,768kHz) oraz kondensator C5 (33pF). Kondensatory C6 (100nF) i C7 (47uF) filtrują napięcie zasilania samego układu RTC, które podawane jest poprzez prosty układ bezprzerwowego zasilania z diodami D1 (1N4148), D2 (1N4148) i baterią BAT1 (3V). Rezystory R15 (3,3k) i R16 (3,3k) podciągają linie magistrali I2C do plusa zasilania, umożliwiając jej poprawną pracę.

    Obwody zasilania całej płytki zbudowane są na stabilizatorze U5 (7805) i kondensatorach filtrujących C3 (220uF), C4 (47uF) i C8 (100nF). Potencjometr P1 (10k) umożliwia regulację kontrastu wyświetlacza W1 (LCD 16x2). Podświetlanie wyświetlacza uruchamiane jest z poziomu programu sterownika za pomocą tranzystora T1 (BC556) i rezystora R2 (3,3k). Prąd podświetlania wyświetlacza ograniczany jest przez rezystor R1 (47R). W roli sygnalizacji alarmu pracuje buzzer z generatorem BUZ1 (5V), włączany poprzez tranzystor T2 (BC556) i rezystory R3 (3,3k) i R4 (3,3k).

    Złącze Prog (goldpin) umożliwia programowanie mikrokontrolera U1 w układzie, do tego został tez wyprowadzony pin resetu Res. Złącze RS (goldpin) umożliwia podpięcie komunikacji Rs232 a właściwie odpowiedniego konwertera, w przypadku klasycznego Rs232 będzie to MAX232 a przypadku konwertera USB-RS232, odpowiednia przejściówka. Klawiaturę urządzenia stanowią przyciski S1-S6 (uSwitch). Złącze ALARM (ARK) stanowi wejścia czujników alarmowych, jedno wejście jest typu N.O. a drugie typu N.C. Rezystor R14 (4,7k) umożliwia poprawną pracę magistrali 1-Wire z czujnikami U3-U5 (DS18B20).





    Budowa:
    Pod mikrokontroler U1 i układ RTC U2 dobrze jest zastosować podstawki. Złacza na czujniki U3 i U4 są w takiej odległości że można wlutować w ich miejsce podstawkę DIL6, tak jak można to zobaczyć na zdjęciach. Złącza te przydadzą się w momencie rejestracji czujników DS18B20 i podczas testów całego systemu. Potem można wykorzystać złącze U5 do podłączenia wszystkich czujników temperatury równolegle. Zamiast BUZ1 można podłączyć układ sterujący większą syreną alarmową. Do zasilania całego układu najwygodniej jest użyć ładowarki od komórki (np. NOKIA 6610) gdyż daje ona przy takiej pracy napięcie ponad 5V. Szczególną ostrożność należy zachować przy podłączaniu odbiorników 230V gdyż triaki znajdują się na tej samej płytce co sterownik i istnieje ryzyko porażenia. Układ został zbudowany głównie do celów pokazowych (stąd układy wykonawcze na tej samej płytce) ale jest w pełni funkcjonalnym urządzeniem.

    Prosty sterownik domowy - by Mirley

    Foto:
    Prosty sterownik domowy - by Mirley Prosty sterownik domowy - by Mirley Prosty sterownik domowy - by Mirley Prosty sterownik domowy - by Mirley

    Strona domowa projektu:
    http://mirley.firlej.org/prosty_sterownik_domowy


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • #2 01 Gru 2009 16:12
    Popak
    Moderator na urlopie...

    Witam
    Projekt użyteczny i ładnie wykonany. Jedynie co mi się nie podoba to "Dwór:" i "Dom:". Mogłeś zastosować zamiast tych słów na przykład temp. "In:" i "Out:" ale to nie problem zmienić ;)

    Pozdrawiam

  • #3 01 Gru 2009 16:34
    rysiek182
    Poziom 11  

    Hmm, bardzo ciekawy projekt, z możliwością rozbudowy i w ogóle....

    Jedyne co można jeszcze umieścić w tym urządzeniu to detektor zera, aby wyjścia Lamp można było sterować, w celu regulacji jasności oświetlenia.


    Pozdrawiam,

  • #4 01 Gru 2009 16:34
    Kuniarz
    Moderator Projektowanie

    DJpopak;) napisał:
    Witam
    Projekt użyteczny i ładnie wykonany. Jedynie co mi się nie podoba to "Dwór:" i "Dom:". Mogłeś zastosować zamiast tych słów na przykład temp. "In:" i "Out:" ale to nie problem zmienić ;)

    Pozdrawiam


    ...rozumiem, że kolega na stałe mieszka w kraju, gdzie ustawowym jest język angielski ? :P

    Wracając do meritum, ciekawy projekt, automatyka domowa to przyszłośc. Przyjemnie byłoby zastosować zamiast przycisków enkoder wciskany - jedna gałeczka i wszystko rozwiązane ;-)

  • #5 01 Gru 2009 16:46
    MasterMatan
    Poziom 21  

    Bardzo fajne miłe i przyjemne jednak czy nie lepiej by było zrobić osobną płytkę dla tej części pod wysokim napięciem i połączyć ją z płytką "główną" przewodem wielożyłowym (typu taśma)? Lekko strach mieć takie urządzonko bez obudowy gdy jest duże wręcz wielkie prawdopodobieństwo przypadkowego dotknięcia.
    Pozdrawiam

  • #6 01 Gru 2009 19:00
    mklos1
    Poziom 25  

    Projekt estetyczny. Podoba mi się z dokładnością do rozmieszczenia części wysokiego napięcia. Jest zbyt blisko przycisków. Jeżeli będzie użytkowany tak jak teraz istnieje bardzo duże prawdopodobieństwo porażenia. Przydałoby się do tego dorobić stosowną obudowę, bez potrzeby dorabiania oddzielnej płytki, aczkolwiek trzeba by w kolejnej wersji zadbać o stosowny odstęp.

    A tak na marginesie. Na elektrodzie pojawiło się bardzo dużo rozwiązań regulatorów bazujących na czujnikach serii DS. O ile regulator akwariowy jest OK, tak regulator CO czy CWU to już trochę mi się nie widzi. Jestem raczej przyzwyczajony do tego, że na węzłach CO/CWU pojawiają się pomiary z użyciem PT100 i oczekiwana dokładność (nie rozdzielczość!) pomiaru temperatur to 0.1C (zwykle jest gorzej). Ale akurat tak się robi na dużych węzłach, typu blok mieszkalny.
    DS ma dokładność rzędu 1 stopnień w zakresie od -10 do +85 stopni. Jak duży może mieć to wpływ na koszty eksploatacji CO/CWU dla domu jednorodzinnego?

  • #7 01 Gru 2009 19:34
    tmf
    Moderator Mikrokontrolery Projektowanie

    Zaden - bo w koncu ustawiasz temp. zapewniajaca ci komfort, a nie taka, zeby dobrze wygladalo na wyswietlaczu.
    BTW, PT100 to ma dokladnosc 0,1 stopnia jak go skalibrujesz chyba? Albo jak kupisz go w wersji 300zl/sztuka?

  • #8 01 Gru 2009 19:45
    olinek2
    Poziom 23  

    Przecież DS ma owszem dokładność względną koło 1st. C ale ona już nie zmienia się z biegiem czasu, więc czy będziesz miał zmianę temperatur niedużą to zmierzysz, ale jeśli interesuje się dokładna wartość temperatury a niej jej zmiana to PT 100 tez musisz kalibrować względem jakiegoś innego termometru...

  • #9 01 Gru 2009 19:57
    mirley
    Poziom 17  

    Co to 230V na płytce to faktycznie może być problemem jak sie bedzie chciało zamontować taki sterownik na ścianie. Układ który widzicie miał leżeć na stole podczas pokazu i taka konstrukcja jest ku temu najlepsza.

    Co do czujnika DS to uważam że jest lepszy do takiego zastosowania. Sygnał który odbierasz jest cyfrową liczbą a nie analogowym na który nakłada się szum. poza tym do obslugi czujnika DS potrzebny jest tylko uC, a nie wzmacniacze pomiarowe, czy źródła prądowe itp.

  • #10 01 Gru 2009 23:09
    mklos1
    Poziom 25  

    tmf napisał:
    Zaden - bo w koncu ustawiasz temp. zapewniajaca ci komfort, a nie taka, zeby dobrze wygladalo na wyswietlaczu.
    BTW, PT100 to ma dokladnosc 0,1 stopnia jak go skalibrujesz chyba? Albo jak kupisz go w wersji 300zl/sztuka?


    Kalibracja dwupunktowa + linearyzacja daje dobre efekty. Zwykle daje się uzyskać dokładność 0.2, 0.1 stopnia w zakresie temperatur interesującym dostawcę ciepła. Ale niestety jest to okupione rozbudowaną elektroniką obsługującą taki czujnik.

  • #11 02 Gru 2009 00:01
    tmf
    Moderator Mikrokontrolery Projektowanie

    To jedno, a drugie, ze w warunkach domowych nie jestes w stanie takiej kalibracji dokonac. Skad wziasc wzorzec temperatury? To raczej kosztowne zabawki. No i pozostaje pytanie o sens - dla dostawcy ciepla to wazne, bo wylicza w ten sposob ile dostarczyl energii (nie znam sie na tym, ale wydaje mi sie, ze absolutna temp. jest niepotrzebna, bo przeciez wystarczy znac dT i przeplyw), w domu sensu to nie ma zadnego.

  • #12 02 Gru 2009 09:34
    ghost666
    Tłumacz Redaktor

    tmf napisał:
    To jedno, a drugie, ze w warunkach domowych nie jestes w stanie takiej kalibracji dokonac. Skad wziasc wzorzec temperatury? To raczej kosztowne zabawki. No i pozostaje pytanie o sens - dla dostawcy ciepla to wazne, bo wylicza w ten sposob ile dostarczyl energii (nie znam sie na tym, ale wydaje mi sie, ze absolutna temp. jest niepotrzebna, bo przeciez wystarczy znac dT i przeplyw), w domu sensu to nie ma zadnego.


    Woda z lodem - 0°C, wrząca woda 100°C. Dwa punkty o szerokiej skali temperatur, a przy okazji pewne i na tyle dokładne że kalibracja jest wystarczająca.

  • #13 02 Gru 2009 09:59
    tmf
    Moderator Mikrokontrolery Projektowanie

    Ghost, raczysz zartowac. Po pierwsze musialbys miec ultraczysta wode, po drugie wprowadzic korekty na cisnienie, po trzecie miec jakies swietnie zaizolowane pojemnki, co moze nie jest problemem przy 0 ale jest olbrzymim przy 100. Dodatkowo trzebaby znac preznosc par wody nad wrzaca mieszanina, kontrolowac ilosc energii itd. Do tego sluza calkiem drogie i profesjonalne narzedzia. Uzyskanie 0,1 stopnia dokladnosci to naprawde wyzwanie.

  • #14 02 Gru 2009 10:17
    ghost666
    Tłumacz Redaktor

    tmf napisał:
    Ghost, raczysz zartowac. Po pierwsze musialbys miec ultraczysta wode, po drugie wprowadzic korekty na cisnienie, po trzecie miec jakies swietnie zaizolowane pojemnki, co moze nie jest problemem przy 0 ale jest olbrzymim przy 100. Dodatkowo trzebaby znac preznosc par wody nad wrzaca mieszanina, kontrolowac ilosc energii itd. Do tego sluza calkiem drogie i profesjonalne narzedzia. Uzyskanie 0,1 stopnia dokladnosci to naprawde wyzwanie.


    Hm, widzisz, właśnie w tym problem że nie żartuję. Zauważ jak mały wpływ mają te czynniki na temperatury, w porównaniu z np. błędami nieliniowości. Jeśli uważasz ten sposób za bezsensowny napisz o tym moim wykładowcom.

  • #15 02 Gru 2009 10:55
    tmf
    Moderator Mikrokontrolery Projektowanie

    Nie wiem co ci opowiadaja wykladowcy, ale zmiana cisnienia o 2mmHg zmienia temp. wrzenia o ponad 0,1 stopnia. To jest roznica spotykana na codzien, odpowiada to niecalym 3cm slupa wody, wiec taka zmiane moze np. wywolac zbyt intensywne wrzenie i utrudnienie wydobywania sie pary przez szyjke w czajniku. Taka roznice wywola tez np. to czy mieszkasz w wiezowcu na parterze, czy na gorze. I nie pisz o innych rzeczach, ktorymi sie nie zajmujemy - twierdziles, ze w domu mozna skalibrowac czujnik z dokladnoscia do 0,1 stopnia - jakkolwiek teoretycznie jest to mozliwe, to z pewnoscia nie uda sie tego zrobic za pomoca mieszaniny wody z lodem i wrzatku. A poza cisnieniem dodaj do tego wplyw skladu chemicznego wody. Jak sie uda skalibrowac +/-1 stopien to bedzie to niezly wynik.

  • #16 02 Gru 2009 11:42
    IMEX
    Poziom 20  

    O czym wy piszecie

    jest sterownik i jego funkcjonalność

  • #17 02 Gru 2009 16:12
    kafarektibia
    Poziom 10  

    DJpopak;) napisał:
    Witam
    Projekt użyteczny i ładnie wykonany. Jedynie co mi się nie podoba to "Dwór:" i "Dom:". Mogłeś zastosować zamiast tych słów na przykład temp. "In:" i "Out:" ale to nie problem zmienić ;)

    Pozdrawiam


    Przecież to ma być zastosowanie do domu ;P dla nas to oczywiste ale czy będziesz uczył starą teściową co znaczy in co out ;P?

  • #18 02 Gru 2009 16:34
    mirley
    Poziom 17  

    Poza tym nie lubię pisać "In", "Out" a na pierwszym ekranie "Aktualny Czas". Trochę to głupio wygląda... jakby na to nie patrzeć posługujemy się językiem polskim tak jak juz to było wcześniej zasugerowane

  • #19 02 Gru 2009 17:25
    Popak
    Moderator na urlopie...

    Jak ma być po Polsku to chociaż można dać temp. wew. i temp. zew.
    Już to inaczej się czyta i wizualnie wygląda lepiej.

    Pozdrawiam

  • #20 02 Gru 2009 22:31
    TO-mik
    Poziom 12  

    Witam
    W kwestii polszczyzny to połowa naszego pięknego kraju mówi "dwór" a połowa "pole"
    i tyle ,jest pięknie.
    A pytanie mam z innej beczki w jakim zakresie jest regulowana histereza i z jakim krokiem i drugie pytanie do jakiej długości kabla DSy działają poprawnie (potrzebuję ok 12-16 m i chcę zastosować kabel utp)
    pozdrawiam

  • #21 02 Gru 2009 23:20
    IMEX
    Poziom 20  

    Histereza jest chyba bez ograniczeń - zrobilem to ale mam w pracy - min histereza to 0,5 oC co 0,1 oC

    kabel UTP odpada przy odleglosci 15metrow

    proponuje i wyjdzie taniej albo tyle samo 3x075 miedz i bedzie oki

  • #22 03 Gru 2009 10:26
    tmf
    Moderator Mikrokontrolery Projektowanie

    Dlaczego UTP odpada? Standard 1-wire precyzuje tylko maksymalna pojemnosc kabla, ktora o ile dobrze pamietam nie moze przekraczac 4nF. Kiedys testowalem czujnik na kablu UTP o dl. 150m i nie bylo najmniejszych problemow.

  • #25 07 Gru 2009 15:42
    IMEX
    Poziom 20  

    poprawiona wersja 1,03 w testach - dodatkowe 4 menu - ale błędy - w wersni 1,04 bedzie bezbłądnie myślę - Więc projekt sie rozwija - bedzie kolejna zmiana zapewne - wymiana procesora z obecnego Atmega 16 na Atmega 32 100% więcej pamięci na dodatkowe programy -

    Mirek rozbudował sterownik o menu konkretnie dla moich potrzeb wiec to się chwali - przez co wspieram serwis

    Może inni maja jakieś pomysły jeśli chodzi o rozbudowanie kolejnego menu - czujnik a raczej Czytnik danych z czujnika poziomu SZAMBA

  • #26 08 Gru 2009 19:12
    Cycu67
    Poziom 13  

    ja bym proponował zastosować wyświetlacz 4X16 dodać jeszcze 2 ds18b20
    zewnętrzna temp
    wewnętrzna temp
    bojler temp
    piec temp
    triak do pompki centralnego
    triak do wentylatora
    i jeszcze z 3 szt do żarówek co sądzisz (IMEX)

  • #27 08 Gru 2009 20:57
    mirley
    Poziom 17  

    Do sterowania piecem jest sterownik pieca... to powoli staje sie zaawansowany sterownik domowy..

    Co do tego pomysłu to nie wiem czy jest to dobry pomysł, strasznie dużo rzeczy jest w jednym układzie i jak coś sie z nim stanie to wszystko leży, wolę jednak systemy rozproszone gdzie oddzielne urządzenia działają niezależnie, ewentualnie mogą się komunikować z jednym centralnym układem ale jego awaria nie może posypac całości

  • #28 08 Gru 2009 22:06
    mklos1
    Poziom 25  

    mirley napisał:
    Do sterowania piecem jest sterownik pieca... to powoli staje sie zaawansowany sterownik domowy..

    Co do tego pomysłu to nie wiem czy jest to dobry pomysł, strasznie dużo rzeczy jest w jednym układzie i jak coś sie z nim stanie to wszystko leży, wolę jednak systemy rozproszone gdzie oddzielne urządzenia działają niezależnie, ewentualnie mogą się komunikować z jednym centralnym układem ale jego awaria nie może posypac całości


    Oczywiście awaria w systemie rozproszonym będzie oczywiście mniej uciążliwa, z punktu widzenia użytkownika wciąż będzie awarią, którą trzeba będzie niezwłocznie usunąć.
    Można by wiele dyskutować na temat wad i zalet systemów rozproszonych, tak jedną, niekwestionowaną rzeczą jest to, że systemy rozproszone są droższe od zintegrowanych przy założeniu tej samej funkcjonalności.
    Dom jest takim systemem, który jest statyczny i raczej nie podlega radykalnym zmianom czy rozbudowom. Elementy sterujące CO/CWU, piec, klima etc powinny należeć do urządzeń, które muszą działać bezawaryjnie przez długi okres czasu, bez względu na konfigurację systemu (rozproszony czy zintegrowany). Integracja wielu funkcji w jednym urządzeniu jest korzystna z punktu widzenia ceny, która w obecnych czasach jest często decydująca przy wyborze produktu. Pojedynczy "regulator domowy" będzie lepszy chociażby dlatego, że użytkownik musi się uczyć obsługi tylko jednego urządzenia, a nie kilku urządzeń, zainstalowanych w różnych miejscach.

  • #29 09 Gru 2009 11:11
    IMEX
    Poziom 20  

    Cycu67 napisał:
    ja bym proponował zastosować wyświetlacz 4X16 dodać jeszcze 2 ds18b20
    zewnętrzna temp
    wewnętrzna temp
    bojler temp
    piec temp
    triak do pompki centralnego
    triak do wentylatora
    i jeszcze z 3 szt do żarówek co sądzisz (IMEX)


    Cycu67 właśnie padł mi procek z mojej winy wiec zamowilem kolejny ale przy okazji zamowiłem LCD 4x20 BIG - duże znaki będzie efekt ale bede musial przepisywac dodatki do mojego programu bo pozmieniają się procedury wyswietlnia z 2 na 4 linie

    Rzeczywiście można mozna dać 4xds18b20 do temperatur i usadowic to w jednym menu to nie problem,

    Jeśli chodzi o dodatkowe triaki to juz program będzie za duży - ale czy triaki te dodatkowe też czasowe ?

    Żeczywiście trzeba troszeczke jeszcze dopracować szczegóły w programie ale ogólnie jest SUPER

  • #30 09 Gru 2009 21:15
    Cycu67
    Poziom 13  

    ale atmega 32 powinna zmieścić wszystko
    a co do triaków to np wraz ze wzrostem temp np pieca wyłącza sie