Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Europejski lider sprzedaży techniki i elektroniki.
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Arduino - sterowanie funkcjami w domku na działce

bicker7 25 Lut 2016 15:50 1893 8
  • #1 25 Lut 2016 15:50
    bicker7
    Poziom 10  

    Witam wszystkich
    Od dłuższego czasu chciałem wykonać sterownik, który będzie pełnił kontrolę nad domkiem letniskowym. Utworzyłem temat, aby podzielić się doświadczeniami przy tych pracach oraz uzyskać pomoc, podpowiedź w chwilach zwątpienia.

    Do dzieła!
    W oko wpadło mi Arduino, więc wybrałem to cudo na serce mojego systemu. A dokładniej planuję użyć kilku płytek Arduino Pro mini i połączyć je w całość.
    Chciałbym aby system przysyłał mi sms z raportami o sytuacjach alarmowych, np.:
    ulatniający się gaz
    niekontrolowany pobór wody
    ujemna temperatura w domu
    brak prądu
    itp.
    Dodatkowo może uda się postawić stronę internetową, na której będą dostępne informacje o obecnie panujących tam warunkach.
    Poniżej wykaz podstawowych funkcji, jakie ma pełnić sterownik:
    Funkcje:

    1. Studzienka:
    a. Licznik zużycia wody na wodomierzu
    b. Czujnik temperatury 18b20 wody (obudowa wodomierza)

    2. Łazienka
    a. Czujnik temperatury i wilgotności
    b. Załączanie wentylatora

    3. Kotłownia
    a. Czujnik temperatury otoczenia
    b. Czujnik temperatury kotła na wyjściu
    c. Czujnik temperatury kotła na wejściu
    d. Czujnik temperatury wody na wejściu zimnej
    e. Czujnik temperatury wody ciepłej

    4. Kuchnia
    a. Czujnik gazu
    b. Czujnik temperatury i wilgotności nad kuchenką
    c. Czujnik temperatury i wilgotności otoczenia
    d. Czujnik zalania
    e. Czujnik ruchu
    f. Sterowanie okapem
    g. Sterowanie oświetleniem pod szafkami

    5. Stacja zewnętrzna
    a. Czujnik temperatury i wilgotności na zewnątrz
    b. Czujnik światła
    c. Czujnik słońca na kominie
    d. Wejście załączonego alarmu
    e. Sterowanie oświetleniem zewnętrznym

    6. Podlewaczki ogródka:
    a. Zegar
    b. Elektrozawór krzewów za domem
    c. Elektrozawór drzew i krzewów porzeczek
    d. Elektrozawór podlewania trawnika

    Obecnie jestem w fazie projektu, będę na bieżąco przedstawiał tutaj postępy w projekcie i wykonaniu. Komentarze i udział w dyskusji - mile widziane

  • #2 25 Lut 2016 16:33
    emarcus
    Poziom 34  

    bicker7 napisał:
    Witam wszystkich
    Od dłuższego czasu chciałem wykonać sterownik, który będzie pełnił kontrolę nad domkiem letniskowym. Utworzyłem temat, aby podzielić się doświadczeniami przy tych pracach oraz uzyskać pomoc, podpowiedź w chwilach zwątpienia.



    Czy ta chwila już nadeszła, czy jest w krótce spodziewana?

    Do punktu 6. dołożyłbym dwa dodatkowe sensory/funkcje:
    - obserwacja wzrostu trawy i załączenie powiadomienia/alarmu
    - powiadomienie (SMS) o skoszonej trawie.

    W ogóle pominięto zagadnienie usuwania śniegu.
    Nie chcę tu juz wspominac o elektrowni wiatrowej, bardzo przydatynej..

    e marcus

  • #3 25 Lut 2016 17:32
    czasnagli
    Poziom 15  

    bicker7 pokaż kod, który napisałeś. Może coś z niego wykorzystam w swoim projekcie :)

  • #4 25 Lut 2016 18:49
    bgolab
    Poziom 22  

    Ciekawi mnie w jaki sposób dobrano zestaw czujników w kuchni są 2 zestwy czujników - podejrzewam, że generalnie będa wskazywały podobnie poza wyjatkowymi sytuacjami (np. gotowanie)

    Kotłownia. Może akurat część tych danych da sie wydobyć bezpośrednio z pieca np. jeśli to Vailant to ma interfejs eBUS.

    Zbyt wiele czujników to wyzwanie dla arduino jesli nie da się ich pogrupować używając magistral typu I2C czy 1-wire. Jeśli celem jest poznanie jak najwięcej różnych interfejsów (SPI, I2c, 1-Wire itd) to pewnie koncepcja z mnożeniem ilośći arduino jest ok.

    Generalnie dość ciekawy jest aspekt co z tą wiedzą z tylu czujników zrobimy np. we wspomnianej kuchni.

    Skoro juz będzie raportowanie SMS to może warto dodać sterowanie zdalne za pomoca SMS.

    Ciekawi mnie rozwoj i optymalizacja tego projektu - sam robiłem monitorowanie domu z powiadamianiem SMS. Na tym etapie zwykle jest duż pomysłów i część koncepcji pewnie zostanie zweryfikowana przez życie.

  • #5 26 Lut 2016 12:24
    bicker7
    Poziom 10  

    Witam wszystkich
    dziękuję za zainteresowanie, poniżej dalszy ciąg projektu.

    Założenia -> nie interesują mnie bajery i niepotrzebne gadżety, sterownik ma być funkcjonalny i w miarę możliwości niedrogi. Domek jak to na letniskowy przystało, latem jest bardziej użytkowany, zimą mniej - ale zimą chcę wiedzieć jakie tam panują warunki (szczególnie temperatury).
    Nie da się wszystkich funkcji zrealizować na jednej płytce, z uwagi na ilość czujników, a co za tym idzie połączenia kablowe. Wymyśliłem sobie to tak, że zrealizuję to na kilku płytkach które będą pełniły rolę sterowników lokalnych (tzn. np. w łazience będzie sterował wentylatorem, itp.). Z czasem będę się zastanawiał jak je połączyć z centralnym procesorem, którego rolą będzie zbieranie informacji i przesyłanie na sms/www. Nie wszędzie potrzebuję komunikację dwukierunkową, w wielu przypadkach wystarczy komunikacja jednokierunkowa i tu z pomocą może przyjdzie komunikacja bezprzewodowa np. RF433MHz. Ale nad połączeniem wszystkich płytek będę myślał później.

    Ad1. Studzienka - to studzienka w której jest podlicznik na moją działkę (mój i mogę sobie z nim robić co chcę). Z uwagi na wymianę licznika, kupiłem nowy i zaopatrzyłem go w czujnik temperatury 18B20
    Arduino - sterowanie funkcjami w domku na działce
    oraz nad oś wskaźnika poboru wody, czujnik optyczny odbiciowy TRCT5000
    Arduino - sterowanie funkcjami w domku na działce
    całość przytwierdzona klejem epoksydowym
    Arduino - sterowanie funkcjami w domku na działce
    Arduino - sterowanie funkcjami w domku na działce
    Czujnik temperatury, po to abym wiedział kiedy już czas zakręcić i spuścić na zimę wodę. Czujnik optyczny będzie informował sterownik o przepływie wody. Chcę mieć informację, że woda jest pobierana w chwili kiedy być nie powinna, co oznacza pękniętą rurę lub niekontrolowane załączenie zaworów do podlewania ogródka.




    Czujniki będą połączone z modułem, który przekształci sygnały na odpowiednie do podłączenia pod płytkę arduino.
    Tu wstępnie zaprojektowałem układ, w ciągu kilku dni mam zamiar to przetestować na wodomierzu podłączonym już do sieci wodociągowej. Podczas projektowania układu testowałem go na biurku.
    poniżej schemat:
    Arduino - sterowanie funkcjami w domku na działce
    opis punktów LSP:
    8,9 - zasilanie modułu
    1,2 - anoda, katoda diody nadawczej TRCT5000
    3,4 - emiter, kolektor fototranzystora TRCT5000
    10 - wyjście do płytki Arduino (impulsy z wodomierza)
    5,6,7 - odpowiednio: 3,1,2 nóżki czujnika 18B20
    11 - wyście do płytki Arduino (temperatura z wodomierza)
    Na wejściu układu (kolektor fototranzystora) miałem napięcie na poziomie 1,1V - 1,2V zależnie od ustawień łopatek wskaźnika poboru wody. To troszkę za mała różnica żeby dać od razu na komparator. W takim przypadku komparator czasami głupiał, postanowiłem dać na wejściu wzmacniacz napięcie - wzmocnienie około 2. na wyjściu wzmacniacza jest potencjał w zakresie od 2,3V - 2,5V, to już daje nam różnicę 0,2V i pozwala zwiększyć pętlę histerezy na komparatorze co w efekcie wykluczyło błędy. Na wyjściu układu (LSP10) mamy przebieg prostokątny, odpowiedni dla Arduino.

    Na chwilę obecną mam przygotowany programik, który będzie liczył impulsy. Jak się uda, w weekend podłączę układ na kilka dni i sprawdzę jego działanie. Obawiam się, że mogą być jakieś zakłócenia, które będą powodowały naliczanie impulsów oraz jestem ciekaw jak układ sobie poradzi, jeżeli woda popłynie na max. Jeżeli układ nie będzie gubił impulsów, to zrobię jeszcze dodatkowo licznik elektroniczny na wyświetlaczu. Ale to nie jest konieczne, najbardziej zależy mi na informacji o niekontrolowanym dłuższym poborze wody.
    Jeszcze może troszkę o programie. W fazie testów wyszło, że nie każdy impuls procek jest w stanie wyłapać, a jeżeli dodatkowo obciążymy go obróbką temperatury i komunikacją z inną płytą Arduino to może okazać się że będzie zupełnie głupiał. Wpadłem na pomysł przerwań, no i okazało się że Arduino obsługuje przerwania wewnętrzne i zewnętrzne. (google: "arduino obsługa przerwań" ). W programie wykorzystuję oczywiście przerwania zewnętrzne.
    poniżej kod:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    To tyle na dziś, w weekend zapnę układ - niech się testuje, a po weekendzie ruszam z projektem sterownika w kuchni.

  • #6 01 Mar 2016 10:23
    bicker7
    Poziom 10  

    Byłem dwukrotnie testować układ, za każdym razem zrywał się wiatr i padał deszcz ze śniegiem.
    Niestety, jeżeli czujniki oddalone są od układu o ok. 6m zakłócenia są nie do opanowania, nawet przewód ekranowany niewiele pomaga. Za drugim razem układ zamontowałem w studzience (kable do czujników około 1 m.) i tu już jest szansa na opanowanie zakłóceń. Muszę uzbroić układ w filtrację na zasilaniu i na wyjściu, jeżeli chodzi o filtry na wejściu to nie mam pomysłu, będą one strasznie tłumić sygnał - szczególnie przy większych przepływach wody. Przy większych przepływach, układ już gubi impulsy, więc nie nadaje on się na elektroniczny licznik wody.
    Może ktoś z Forumowiczów ma pomysł, jak można przerobić układ, aby działał bezbłędnie. Przypomnę, że na wejściu układu (kolektor fototranzystora) mam napięcie na poziomie 1,1V - 1,2V zależnie od ustawień łopatek wskaźnika poboru wody.

  • #7 01 Mar 2016 21:08
    bgolab
    Poziom 22  

    Nie wczytywałem się gdzie jest jaki czujnik.
    Jeśli zasilanie nie jest problemem to może droga radiowa - są tanie moduły typu FS1000A ale to oczywiście będzie wymagało kontrolera po stronie czujnika + dodatkowa komplikacja związana z kodowaniem informacji cz czyjnika.
    Podobnie przejście na RS485.

  • #8 01 Mar 2016 23:43
    373522
    Usunięty  
  • #9 01 Mar 2016 23:49
    bgolab
    Poziom 22  

    Elektronik ale już mocno zdegenerowany przez telekomunikacje;)
    Nie ma co mówic - prostsze rozwiązanie i szybkie do sprawdzenia.

    Dodano po 1 [minuty]:

    MAm na mysli propozycje Kolegi.

 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME