Opomiarowanie domu - pomiary temperatury i odczyty liczników magistralą 1-wire


Przy okazji obracania się w tematyce budowlanej często słyszymy o inteligentym domu. Tak naprawdę na dzień dzisiejszy cała ta inteligencja sprowadza się do instalacji elektrycznej którą można sterować, pomiarów zużycia prądu, temperatury i podobnych. Oferowane rozwiązania mają jedną wspólną cechę - są bardzo drogie.
Stosunkowo niedużym kosztem można jednak uzyskać niektóre funkcje inteligentnego budynku. W moim przypadku skupiłem się na funkcjach pomiarowych.
Opomiarowanie swojego domu oparłem o serię urządzeń na magistrali 1-wire. Wybór takiego a nie innego rozwiązania był podyktowany przede wszystkim niedużym kosztem.

Potrzebne elementy:

magistrala 1-wire i podłączenie

Konwerter magistrali 1-wire/USB na DS2490 (MP00200A) Na zdjęciach widać konwerter magistrali 1-wire (MP00200A) oraz jej rozszycie na łaczówkach uziemiających Krone. Na łączówkach mam podane (patrząc od góry):
- na pierwszej +12V z domowej instalacji 12V (przez bezpiecznik 0,5A),
- na drugiej +5V (z konwertera),
- na trzeciej DQ (linia danych z konwertera),
- na czwartej masa.


Rozszycie magistrali 1-wire na łączówkach Krone Podłączenie do modułów z Hobby-Board:
                              pin  sygnał  stosowany u mnie kolor
         __        __           1 - masa - biały pomarańcz
        |  ||||||||  |          2 - +5V  - niebieski
        |  1      8  |          3 - masa - ekran
        |            |          4 - DQ   - zielony
        |            |          5 - masa - biały zielony
        |            |          6 - 
        |____________|          7 - +12V - biały niebieski
             |  |               8 - masa - pomarańcz
             |  |
Magistralę 1-wire poprowadziłem w formie gwiazdy. Z centralnego punktu (konwertera) do czujników wychodzą przewody. Na zdjęciu po lewej widać taki centralny punkt zrobiony na łączówkach Krone (mała ilość przewodów wynika z tego, że zdjęcie zostało zrobione w początkowej fazie uruchamiania!). W większości przypadków każdy przewód kończy się pojedyńczym czujnikiem. Jest jednak kilka "girland" - gdzie na takim przewodzie jest umieszczona seria czujników. Tak mam np. zrobione czujniki do pomiaru temperatur gruntu na różnych głebokościach.
Z uwagi na dużą liczbę czujników zdecydowałem się rozbić je na dwie magistrale (każda jest na osobnym konwerterze). Jedną przeznaczyłem do czujników podłączonych wewnątrz domu, na drugiej podłączone są czujniki montowane na zewnątrz.
Niestety z jednym czujnikiem wystąpiły problemy - jest to pomiar napięcia i prądu z panela słonecznego. Często występowały błędy przy próbie odczytu. Spowodowane było to tym, że zarówno ASUS, konwertery jak i panel miały wspólne masy. Odkładający się na przewodzie spadek napięcia powodował problemy z odczytem 1-wire. Problem rozwiązałem umieszczając drugi serwerek ASUS-a na strychu i przełączając na niego lokalne czujniki.
Czyli w sumie mam w tej chwili czynne dwa serwery ASUS-a z łącznie trzema konwerterami.

Pomiar temperatury

Temperaturę mierzymy bezpośrednio za pomocą układu DS18B20. Mierzę temperaturę w pomieszczeniach, na dworze, temperatury gruntu, zasilania i powrót CO.


Zadalny pomiar zużycia mediów:

Odczyty liczników robie przez zainstalowanie licznika (podlicznika) posiadającego wbudowany generator impulsów (wyjście S0). Impulsy te można następnie zliczać układem DS2423 (niestety nie produkowany) lub układem BAE910 (nie testowałem).
Jest możliwość softwarowej emulacji DS2423 na procesorze AVR ( lokalna kopia).
U mnie impulsy odczytuje układem DS2423 którego kupiłem zmontowanego w module z Hobby-Boards. Moduł ten odrobinę przerobiłem wstawiając (zamiast bateri) kondensator 1F/5.5V, dokładając do diody która była w szeregu z baterią opornik (równolegle) 1kOhm (ma zapewnić ładowanie kondensatora). Dodatkowo wlutowałem nie 5-cio a 6-cio pinowe złącze. Ostatni pin wystaje poza płytkę i ma wlutowaną diodę BAT85 w kierunku pinu opisanego "5V". Podaje tam zasilanie 5V z magistrali (aby odciążyć linię danych). W ten sposób kondensator jest ładowany zarówno z magistrali danych jak i dodatkowej z zasilaniem poprzez 1kOhm opornik. W razie zaniku zasilania licznik pracuje przez parę godzin normalnie (zlicza impulsy, nie gubi stanu). Zamiast kondensatora 1F można zastosować jak największy kondensator tantalowy.
Tutaj zobaczysz wykresy jakie można uzyskać

Jeśli coś jest niejasnego, masz jakieś pytania lub przydatne informacje to napisz do mnie.

Zbiór różnych przydatnych informacji technicznych - kabelkologie
icon IPv4 Jeśli masz jakieś pytania odezwij się do mnie na forum Tomkii (opomiarowanie, meteo i inne tematy)
Ostatnia modyfikacja: 2012-07-29