logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

MyRoom - czyli moja wersja "inteligentnego" pokoju.

kleszcz10 02 Wrz 2013 23:34 30195 55
  • MyRoom - czyli moja wersja "inteligentnego" pokoju.

    Witam chciałbym przedstawić moją wersję sterownika inteligentnego pokoju.

    Sterownik miał spełniać kilka podstawowych funkcji:

    1. Sterowanie silnika krokowego, poruszającego roletą okienną.
    2. Sterowanie światłem w pokoju, zarówno z pilota jak i z włącznika ściennego.
    3. Wyświetlanie godziny oraz daty.
    4. Wyświetlanie temperatury wewnątrz pokoju oraz na dworze.
    5. Posiadać funkcje budzika oraz harmonogramu dziennego pracy rolety.
    6. Całość miała być sterowana wyłącznie przy pomocy pilota IR.

    Układ zbudowany jest na mikrokontrolerze ATmega 32 taktowanym wewnętrznym zegarem 2Mhz. Za wyświetlanie daty i godziny odpowiedzialny jest układ PCF8563, natomiast do pomiaru temperatury wykorzystane są czujniki ds18b20. Cały program zajmuje 16KB pamięci.

    Menu urządzenia składa się z 4 części:
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    1. Ustawienia godziny
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    2. Ustawienia daty
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    3. Ustawienia alarmu ( budzika )
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    4. Ustawienia rolety, które zostały podzielone na dwie części:
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    a) Ustawienia harmonogramu, ustawia się w nim godzinę otwarcia oraz zamknięcia rolety.
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    b) Kalibracja rolety, ustawia się w nim 3 położenia rolety oraz dokonuje kalibracji. Przedstawione liczby wskazują ilość kroków wykonanych przez silnik krokowy.
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    Do poruszania roletą został wykorzystany silnik krokowy wraz z przekładnią, odzyskany ze starej drukarki.
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    Całość sterowana jest przy pomocy pilota IR nadającego w kodzie RC-6
    MyRoom - czyli moja wersja "inteligentnego" pokoju.

    Sterowanie roletą odbywa się poprzez wybranie któregoś przycisku z zakresu od 1 do 3, oraz przy pomocy strzałek pozwalających na ręczne sterowanie roletą. Aby zapalić któreś ze świateł należy nacisnąć przycisk czerwony lub zielony.

    Umieszczam również filmik przedstawiający działanie całego układu.



    Fajne? Ranking DIY
    O autorze
    kleszcz10
    Poziom 12  
    Offline 
    kleszcz10 napisał 56 postów o ocenie 125. Mieszka w mieście Warszawa. Jest z nami od 2008 roku.
  • #3 12697145
    trippo1
    Poziom 12  
    Jaki silnik został wykorzystany do sterowania roletą?? Np. typ, model lub z jakiego urządzenia został wyciągnięty?
  • #4 12697163
    Snikers
    Poziom 24  
    Ostatnio bardzo mocno nadużywa się słowa "inteligentne". Jakie algorytmy zastosowałeś w projekcie bo wygląda to na moduł zdalnego sterowania z kilkoma automatycznymi funkcjami.
  • #5 12697198
    filokolo1
    Poziom 17  
    Witam, bardzo ciekawy projekt. Co to za obudowa? Jakie koszty wykonania? Ja też ostatnio się zastanawiałem nad zautomatyzowania rolet i świateł. Czy kolega da program? Jak jest zamocowany silnik ?
  • #6 12697295
    paavo91
    Poziom 19  
    A ja chciałem spytać jak ten LCD tak ładnie wkomponowałeś w obudowę? Może nie jestem zorientowany czy są jakieś obudowy pod konkretne LCD np. 2x16? Bo wycinanie tego samemu to strata czasu i do tego efekty nie zawsze są ok.
  • #7 12697312
    Patrycjusz93
    Poziom 13  
    Przyłączam się do pytania co to za obudowa?

    No i czemu ten pulpit główny ma tak krzywo wyświetlane dane. Jakoś mnie to razi, jakby mało estetyczne.

    Jak głośno pracuje silnik?
  • #8 12697406
    pier
    Poziom 24  
    Również uważam że bardzo estetyczne jest zrobione to urządzenie i chciałbym poznać symbol tej obudowy.
    Zamieścił Byś zdjęcia środka, bardzo mnie ciekawi jak to wygląda od zewnątrz.
    Jakiego drivera Użyłeś do silnika krokowego?
  • #9 12697624
    SylwekK
    Poziom 32  
    Fajny i miły dla oka projekt. Nie myślałeś żeby przy sterowaniu oświetleniem zrobić regulację jego natężenia. Pchając się w taką amtegę aż się prosi o rozbudowane funkcje świecące :) Aha, nie chcę żebyś myślał, że się czepiam - to się też tyczy wielu prezentowanych w tym dziale konstrukcji, ale po co tracić pamięć w procku na ustawianie sekund?? Czy nie wystarczy, że w momencie zatwierdzenia ustawień zegara sekundy były by wyzerowane?
    No i faktycznie jak ktoś tu wspomniał ułożenie danych na głównym ekranie wydaje się jakieś takie nieco chaotyczne :)
  • #10 12697666
    djfarad02
    Poziom 19  
    Nie rozumiem jednej rzeczy i dotyczy to właściwie wszystkich konstrukcji na elektrodzie wykorzystujących wyświetlacze LCD. Wyświetlacz posiada pole odczytowe oraz metalową ramkę, której nie powinno być widać. Tymczasem praktycznie wszyscy wycinają otwór wielkości ramki. Tutaj autor sporządził szybkę, która bez wątpienia powinna być, ale dlaczego znowu jest ona wielkości ramki wyświetlacza?

    Proponowałbym np tak:
    MyRoom - czyli moja wersja "inteligentnego" pokoju. MyRoom - czyli moja wersja "inteligentnego" pokoju. MyRoom - czyli moja wersja "inteligentnego" pokoju.
  • #11 12697745
    SylwekK
    Poziom 32  
    djfarad02 napisał:
    Nie rozumiem jednej rzeczy i dotyczy to właściwie wszystkich konstrukcji na elektrodzie wykorzystujących wyświetlacze LCD...

    Eeeetam wszystkich :) Poniżej prosty przykład jak można to w miarę estetycznie rozwiązać wykorzystując wydruk na folii samoprzylepnej.

    MyRoom - czyli moja wersja "inteligentnego" pokoju.
  • #12 12697963
    snnaap
    Poziom 25  
    Jeżeli mówimy o estetyce no to w tym projekcie jest już na jakimś poziomie przynajmniej nie zwisają metry kabla.
    Przydała by się obudowa na mechanizm rolety.

    Aby zrobić ten pokój jeszcze bardziej inteligentnym proponuje sterować kaloryferem, zamiast głowicy termostatycznej założyć głowicę sterowaną elektrycznie i sterujesz temperaturą w pokoju. Obniżanie temperatury w nocy itp.

    Pozdrawiam
  • #13 12698559
    kleszcz10
    Poziom 12  
    george2002 napisał:
    trzy pytania: w czym napisany program i dla czego dosyć wolny zegar wewnętrzny Atmegi - 2Mhz, może spokojnie na 8Mhz, trzecie - czy silnik chodzi cicho

    1. Program został napisany w języku C
    2. Przy wyższym taktowaniu był problem z dobraniem opóźnień czasowych wykorzystywanych przy obsłudze termometrów oraz odbiornika IR. Jestem przekonany że da się to zrobić na dużo wyższych częstotliwościach chociaż mnie się nie udało.
    3. Pracuje na tyle cicho że podczas unoszenia rolety o 5:00 rano dźwięk silnika w żaden sposób mnie nie budzi :) .

    Leszcz72 napisał:
    Hmm, wspomniane było o sterowaniu oświetleniem.
    Coś więcej?


    Do sterowania oświetleniem wykorzystane zostały przekaźniki bistabilne które wyzwalane są za pomocą włącznika ściennego lub przy pomocy sterownika. Na płytce sterownika znajdują się 2 przekaźniki 12/230V oraz driver ULN2003 które służą załączeniu wcześniej wspomnianych przekaźników bistabilnych.

    trippo1 napisał:
    Jaki silnik został wykorzystany do sterowania roletą??


    Do sterowania roletą wykorzystany został silnik pm42l wraz z przekładnią która była zamontowana w drukarce, nie pamiętam dokładnie jaki model. Silnik sterowany jest przy pomocy drivera SLA7024 który również znajdował się w drukarce.

    filokolo1 napisał:
    Co to za obudowa? Jakie koszty wykonania? Ja też ostatnio się zastanawiałem nad zautomatyzowania rolet i świateł. Czy kolega da program? Jak jest zamocowany silnik ?


    Co do obudowy jest to podwójna puszka natynkowa marki Legrand wraz z panelem. Dokładnego symbolu tej obudowy nie znam. Koszt budowy samego układu wyniósł ok. 200 zł. Nie udostępnię programu oraz schematu płytki, jednak w razie pytań służę pomocą. Silnik wraz z przekładnią zamocowany jest do kawałka kątownika, Roleta przymocowana jest osiowo do większego koła przekładni.

    Co do ułożeń danych na ekranie głównym miały być one wyśrodkowane jednak nie do końca to wyszło, efekt mnie w pełni satysfakcjonuje.

    snnaap napisał:
    Aby zrobić ten pokój jeszcze bardziej inteligentnym proponuje sterować kaloryferem...


    Takie rozwiązanie jest zastosowane chociaż służy do tego zupełnie inny sterownik który był prezentowany wcześniej na tym forum.
  • #14 12698628
    Konto nie istnieje
    Konto nie istnieje  
  • #16 12698959
    kokosoft
    Poziom 15  
    Nie rozumiem parcia kolegów na jak największa częstotliwość taktowania procesora. Jeśli 2Mhz wystarczają, to szkoda prądu na taktowanie 16Mhz.
  • #17 12698996
    Konto nie istnieje
    Konto nie istnieje  
  • #18 12699235
    excray
    Poziom 41  
    juzek555 napisał:
    szkoda ci 50 mA?, To prawie tyle co zwykła LED większej mocy, zauważ, że w programie mogą być zawarte inne procedury które kręcą się znacznie szybciej....

    Skoro sterownik działa tak jak powinien to słusznie kolega zauważył że nie ma sensu ustawiać większego taktowania. Raz że większe zużycie dwa że mniejsza stabilność. Ekologia i pragmatyzm się kłania.
  • #19 12699564
    kleszcz10
    Poziom 12  
    juzek555 napisał:
    Ja taktuję 16Mhz i wszystko hula jak trzeba.
    Zastanawia mnie tylko jedna sprawa: Skoro pokusiłeś się o M32, to nie mogłeś zrobić automatycznej korekcji natężenia oświetlenia w pokoju ?
    Ustawiasz wartość i dajesz w auto. (jak jest za widno rolety przysłonią na odpowiedniej wysokości. Jak jest za ciemno, rolety idą do samej góry, a program tak steruje oświetleniem w pokoju, by zapewnić odpowiednią jego ilość.)
    Osobiście z resztek pamięci pokusił bym się o sterowanie elektrozaworu, od kaloryfera, oraz jako bajer obsługę zegara NIXIE...

    Tak przy okazji ile zużyłeś pamięci? (nie licząc obsługi wyświetlacza. Mówimy o istotnych sprawach. )


    Tak jak już wcześniej napisałem zdaję sobie sprawę z tego że układ mógłby pracować z większą częstotliwością jednak mnie się to nie udało. Prawdopodobnie posiadam kiepski zbiór bibliotek które nie dają takich możliwości.

    Też rozważałem opcje pomiaru światła w pomieszczeniu i dobierania automatycznie poziomu rolety. Jednak zrezygnowałem z tego z braku umiejętności obsługi przetwornika A/C do którego miałby być podłączony czujnik światła.

    kleszcz10 napisał:
    Cały program zajmuje 16KB pamięci.


    Nie wiem dokładnie ile pamięci zajmuję każda funkcja w sterowniku.

    Pisałem już wcześniej że mam już urządzenie odpowiedzialne za kontrolę temperatury w każdym pokoju oraz sterowanie piecem i kaloryferami :)

    Co do komunikatów głosowych, uważam że to fajny bajer ale przy większym projekcie np. gdyby sterowanie obejmowało obszar całego mieszkania i dotyczyło większej ilości funkcji. Przy tak małej skali jak sterowanie jednym pokojem, taka funkcja mogła by denerwować.
  • #20 12699655
    barti879
    Poziom 18  
    W jaki sposób zrealizowane jest "zatrzymywanie" rolet? Jakiś czujnik przeciążeniowy czy krańcowy?
  • #21 12699689
    kleszcz10
    Poziom 12  
    barti879 napisał:
    W jaki sposób zrealizowane jest "zatrzymywanie" rolet? Jakiś czujnik przeciążeniowy czy krańcowy?


    Przy otwieraniu i zamykaniu rolety, procesor zlicza kroki wysłane do silnika. Dzięki temu jestem wstanie dość precyzyjnie określić położenie rolety. Więc gdy silnik po wykonaniu odpowiedniej ilości kroków po prostu zatrzymuje się.
  • #22 12699705
    scal12
    Poziom 19  
    juzek555 napisał:
    Skoro bawimy się w mocniejsze sterowniki, to można by zrealizować inteligentny system zarządzania mikroklimatem, oświetleniem, power panel w standardzie, monitoring, rozbudowana obsługa AGD, wyświetlacze z iphone na każdym kroku, oraz 2 oszczędne komputery pokładowe rezerwujące się wzajemnie... (na podglądzie z PC powinno być widoczne wszystko, wraz z parametrami wszystkich urządzeń. Czyli cała rozbudowana sieć zbierająca informację, począwszy od zwykłej ładowarki do tel. komórkowego)

    Oczywiście można zbudować wszystko tylko jakie koszty i wiedza jest do tego potrzebna. Sterowniki które tu są opisane to zwykłe prace amatorskie, a nie urządzenia produkowane profesjonalnie i na szeroką skalę.
    Co do komend głosowych to doskonała opcja i udogodnienie dla osób niepełnosprawnych.
  • #23 12699776
    Prezes19-94
    Poziom 11  
    kleszcz10 napisał:
    barti879 napisał:
    W jaki sposób zrealizowane jest "zatrzymywanie" rolet? Jakiś czujnik przeciążeniowy czy krańcowy?


    Przy otwieraniu i zamykaniu rolety, procesor zlicza kroki wysłane do silnika. Dzięki temu jestem wstanie dość precyzyjnie określić położenie rolety. Więc gdy silnik po wykonaniu odpowiedniej ilości kroków po prostu zatrzymuje się.


    A co w momencie gdy rolety zostaną w połowie okna i zostanie na chwile wyłączony prąd? Czy po prostu jest to zapisywane w eeprom-ie?
  • #24 12699815
    kleszcz10
    Poziom 12  
    Prezes19-94 napisał:
    A co w momencie gdy rolety zostaną w połowie okna i zostanie na chwile wyłączony prąd? Czy po prostu jest to zapisywane w eeprom-ie?


    No niestety w przypadku zaniku napięcia roleta staje a wszystkie ustawienia w sterowniku się resetują. Na szczęście zdarza się to niezwykle rzadko i przywrócenie nastaw ręcznie nie stanowi żadnego problemu :)
  • #25 12699982
    treker
    Poziom 25  
    Wykorzystałeś istniejącą instalację w ścianach, czy specjalnie remontowałeś, aby wszystko ukryć? Wygląda bardzo dobrze :)

    Rozumiem, że straciłeś możliwość ręcznej kontroli rolety? Planujesz jakieś zapasowe źródło zasilania, które chociaż pozwoliłoby podnieść roletę podczas braku prądu lub jakieś awarii?
  • #26 12700028
    Konto nie istnieje
    Konto nie istnieje  
  • #27 12701478
    kleszcz10
    Poziom 12  
    treker napisał:
    Wykorzystałeś istniejącą instalację w ścianach, czy specjalnie remontowałeś, aby wszystko ukryć? Wygląda bardzo dobrze

    Rozumiem, że straciłeś możliwość ręcznej kontroli rolety? Planujesz jakieś zapasowe źródło zasilania, które chociaż pozwoliłoby podnieść roletę podczas braku prądu lub jakieś awarii?


    Została wykorzystana istniejąca instalacja elektryczna a całość okablowania została schowana w ekranie na którym znajduje się sterownik. Ekran ten został zbudowany wcześniej przy okazji remontu i znajdują się w nim rury od centralnego ogrzewania, na przewody jest jeszcze sporo miejsca. Co do ręcznej kontroli w przypadku braku zasilania, zawsze pozostaje opcja pociągnięcia za linkę z odważnikiem, co tym samym spowoduje uniesienie się rolety :) . Nie planuje na razie żadnego zapasowego źródła zasilania, gdyż zaniki napięcia zdarzają się niezwykle rzadko i zazwyczaj nie trwają długo.

    juzek555 napisał:
    Etam. Są bardziej prostsze kompilatory niż C. Po pierwsze jedziesz z taktowaniem 16MHz, po drugie wykorzystanie ADC jest czystą przyjemnością w użytkowaniu.. (ty programujesz automatykę a inni piszą pod twoje potrzeby jasny oraz przejrzysty kompilator)


    Kompilator który pan przedstawił jest bardzo ciekawy i nie wykluczam że w przyszłości z niego skorzystam. Jest to mój pierwszy projekt zrealizowany na procesorze AVR i przy wykorzystaniu języka C. Uważam że jeszcze wiele przede mną nauki i na pewno prędzej czy później opanuję obsługę większych częstotliwości oraz przetworników ADC ;)
  • #28 12701774
    Konto nie istnieje
    Konto nie istnieje  
  • #29 12701803
    Artyliusz
    Poziom 12  
    Bardzo udany i estetyczny projekt. Od dawno przybiera we mnie chęć stworzenia podobnego projektu, które coraz częściej są tutaj przedstawiane.

    juzek555 napisał:
    Etam. Są bardziej prostsze kompilatory niż C. Po pierwsze jedziesz z taktowaniem 16MHz, po drugie wykorzystanie ADC jest czystą przyjemnością w użytkowaniu.. (ty programujesz automatykę a inni piszą pod twoje potrzeby jasny oraz przejrzysty kompilator)

    C jest językiem programistycznym, a nie kompilatorem. Natomiast Vamgraf (o którym była już gdzieś na forum toczona siarczysta dyskusja z Panem na czele) jest "środowiskiem graficznym" do programowania. Trochę różnią się te dwa pojęcia. Poza tym są IDE.

    Co do taktowania to można od razu nawiązać do chwilowego braku zasilania i reset procka, bo można pomyśleć nad bateryjnym podtrzymaniem do czasu powrotu zasilania, a przy owym mniejsze taktowania jest wskazane. Poza tym myślę, że dobrze jest programować jak najoszczędniej, a zarazem skutecznie co się udało autorowi.
  • #30 12702094
    kleszcz10
    Poziom 12  
    gajerz napisał:
    Podswietlenie wyswietlacza wlaczone na stale, czy sterowane z uC?
    Jaki kompilator C masz?


    Podświetlenie wyświetlacza jest podłączone na stałe, ale nie jest to w żaden sposób uciążliwe. Co do kompilatora to używam WinAVR ale pewnie zmienię go na Atmel Studio.

    Co do rozbudowy to oczywiście jest wiele możliwości i wszystko zależy od predyspozycji oraz wyobraźni autora ;)
REKLAMA