Po zainstalowaniu 3 tygodnie temu jednofazowych liczników energii firmy F&F Pabianice zacząłem przyglądać się temu kiedy i przez co mój dom zużywa dom. Liczniki te zamontowałem na każdej z faz, wyjścia impulsowe podpiąłem do sterownika PLC. Przy pomocy prostych wykresów na wizualizacji i tabeli danych udało mi się wyłapać najbardziej energochłonne urządzenia.
Nie sądzę, że koszt liczników zwróci się w przeciągu kilku miesięcy. Chciałem jednak uzyskać wgląd w to, kiedy mój dom konsumuje prąd i czy wskazania licznika EnergiPro znacząco odbiegać będą od sumy wskazań moich liczników wewnętrznych. Chcę też mieć możliwość przeanalizowania zachowań domowników i energochłonności typowych urządzeń. Dziś nie potrzebuję wczytywać się w reklamy energooszczędnych żarówek – wieczorne włączenie kilku świateł o mocy 100W winduje wykresy zużycia; efekt zamontowania żarówek nowej generacji jest widoczny jak na dłoni. Mam też matematyczną podstawę do wyliczenia kosztów wieczornej iluminacji pokoi, mogę więc pochylić się nad rozważeniem instalacji czujników ruchu, wyłączników czasowych itd.
(Aktualizajca 05.01.2013)
Poniżej przedstawiam wykresy z 2 dni stycznia:
Oto zwyczajny dzień. Budzimy się dość wcześnie i zaczynamy dzień od podgrzania wody na herbatę/mlego dla dzieci itd. Widać wyraźny skok zużycia. Potem jest okres południa - drugiego śniadani i lunchu. Następnie ok godziny 16:00 zaczyna się przygotowywanie obiadu. Widać też, jak stopniowo rośnie zużycie we wszystkich fazach - robi się ciemno i zapalamy światła. Wieczorem pojawia się jeszcze pieczenie w piekarniku.
To jednak niewiele informacji. Zastanawiająca jest zielona 'piła' w godzinach nocnych, a także linia fioletowa, która wykazuje zużycie prądu przez całą dobę. W poszukiwaniach odpowiedzi pomógł mi wykres z dnia, gdy nie było nas w domu:
Jest inna skala i lepiej widać. Krótkie poszukiwanie odbiorników na poszczególnych fazach dało następujące odpowiedzi:
Jeszcze parę słów o programowaniu.
VAR ENERGY1_DURATION :DWORD; (*przechowuje odstępy między impulsami*) ENERGY1_TIME :TIME; (*przechowuje czas ostatniego impulsu*) ENERGY1_CONSUM :REAL; (*zużycie w W*) ENERGY1_TRIGGER :R_TRIG; (*sygnalizator impulsu*) END_VAR VAR RETAIN PERSISTENT ENERGYCOUNTER1 :DWORD; (*zlicza impulsy*) END_VAR * * * * * ENERGY1_TRIGGER(CLK:=IN1); (*impuls z licznika podpięty jest pod IN1*) IF ENERGY1_TRIGGER.Q THEN ENERGYCOUNTER1:=ENERGYCOUNTER1+1; ENERGY1_DURATION:=TIME_TO_DWORD(TIME()-ENERGY1_TIME); ENERGY1_TIME:=TIME(); ENERGY1_CONSUM:=3600000/(ENERGY1_DURATION); END_IF;
Aby skonfigurować wykres należy:
- wykres 'bar display': Configure-->Variable/Scale-->Variable: PLC_PRG.ENERGY1_CONSUM
- wykres liniowy: Configure-->Trend-->Choose variable-->Add....