Mądre ogrzewanie z dwoma źródłami ciepła

W związku z rosnącymi cenami gazu oraz niedawnym montażem paneli fotowoltaicznych oraz klimatyzacji zastanawiam się nad wprowadzeniem mądrego systemu ogrzewania oczywiście przy użyciu HA.

Obecnie wygląda to u mnie tak że mam po jednym klimatyzatorze na piętro (każde piętro to osobne mieszkanie), klimatyzatory to Comfee zintegrowane z HA poprzez GitHub - georgezhao2010/midea_ac_lan: Auto-configure and then control your Midea M-Smart devices (Air-conditioners/AC control panels) via local area network. do tego piec gazowy Saunier Duval, który ma już parę lat (bez OpenTherm) sterowany do tej pory “głupim” sterownikiem Salus 091fl, piec ten zintegrowałem z HA przez ESP Home jak w tym przykładzie: Dumb Cheap Smart Thermostat - Share your Projects! - Home Assistant Community. Piec gazowy ogrzewa oba mieszkania bez możliwości ustawiania osobnej temperatury dla każdego z nich.

Obecnie chciałbym wszystko spiąć w mądre automatyzacje, które mam nadzieję nie tylko poprawią komfort mieszkania ale i zmniejszą zużycie gazu. W głowie mam kilka automatyzacji, tylko kompletnie nie wiem jak się za nie zabrać (czy korzystać z automatyzacji HA czy Node-RED - w obu przypadkach mam raczej skromne doświadczenie). Oto co chciałbym uzyskać:

  1. Chłodzenie - tutaj dosyć prosta sprawa, jeśli osoby z danego mieszkania są poza domem klima automatycznie ma się wyłączać, jeśli po min. godzinie przy temperaturze wewnętrznej pow. 26 stopni osoba z danego mieszkania wkroczy do strefy około 5 km od mieszkania klima ma się załączyć i schłodzić mieszkanie do 23 stopni

  2. Ogrzewanie: temperatura jak wszyscy są w domu 21, jak nie ma nikogo 18, a w nocy 19. Do tego chciałbym aby przy temperaturze zewnętrznej powyżej 5 stopni mieszkania ogrzewały klimatyzatory poniżej tej temperatury powinien załączać się piec gazowy.

  3. W przypadku kiedy nikogo nie ma w jednym mieszkaniu a temp zew jest poniżej 5 stopni chcę aby piec gazowy grzał do 18 stopni a w mieszkaniu gdzie są ludzie dogrzewała klima do 21.

  4. Dodatkowo w przypadku kiedy jest poniżej 5 stopni a jest słonecznie i panele produkują wystarczająca liczbę watów to gaz ma się wyłączyć i ogrzewanie niech się odbywa poprzez klimę.

Panele mam zintegrowane poprzez integrację Growatt. Odczyt temperatury wewnętrznej planuję pobrać z klimatyzatorów, zewnętrznej też, ale jeśli okażą się mało wiarygodne to zainwestuję w inne rozwiązanie.

Wiem, że HA może paść, zawiesić się, stracić połączenie itd. więc sterownik Salus zostaje, będzie ustawiony na 17 stopni i w razie W przejmie kontrolę nad piecem gazowym, nawet jak nikogo nie będzie w domu. Wszystko mam już podłączone i przetestowane i działa - teraz potrzebne są do tego automatyzacje.

Do tego chciałbym móc w miarę łatwo (najlepiej przez GUI) zmieniać temperatury wewnętrzne w różnych trybach (dom, poza domem, noc) temperaturę włączania gazu oraz moc potrzebną do odpalenia klimy w zimę.

Wiem że to trochę skomplikowany system ale prosiłbym o wskazówki jak za to się zabrać - za każdą pomoc będą bardzo wdzięczny!

Jeśli masz już urządzenia zintegrowane i możesz je włączyć i wyłączyć z HA,to teraz musisz np na podstawie GPS z telefonów albo połączenia z wifi dostać informacje czy w domu czy poza później utworzyć strefę w której klimy będą się załączać jak ktoś będzie wracał do domu .Rozumiem że czujniki temp.juz masz. .Jeśli nie to polecam Xiaomi mija2 małe białe z wyświetlaczem i pomiarem wilgotności integracja po bluetooth,jeśli masz malinę to wbudowany moduł i najnowszy HA i integracja bluetooth to ogarną chyba. U mnie brak bluetooth więc integracja po OpenMQTTGateway_ESP32_BLE
U siebie grzeję w taki sam sposób dwie klimy po sztuce na piętro i gaz.Pv 9.2kWp.Tyle że mam podpiwniczenie które też jest ogrzewane, Więc mam tak zautomatyzowane że rano od godziny 5.10 załącza się piec gazowy który grzeję cały dom,pracuję do godziny 7.15 w tym czasie już się dom ogrzeje łącznie z podpiwniczeniem.Godziny pracy kotła i temp.ogarnia mi jego sterownik,zazwyczaj pracuję na krzywej grzewczej.Kociol oczywiście zintegrowany i nastawy mogę zmienić z poziomu HA lub aplikacji Bosch jeśli jest potrzeba.Miałem jeszcze zainwestować w głowice zigbee ale w moim przypadku to chyba nieopłacalne,tych grzejników trochę jest :grinning:
O 7.15 załączają się klimy i w zależności od temp zew.i temp w pomieszczeniach lokalizacji mieszkańców pracują lub nie z ustawiona w automatyzacji temp chyba 24C. klima na dole działa ogólnie od ustawionego czasu i temp zew i wew,a góra jeszcze od lokalizacji .Taka praca klim jest do 16.00 . Później znowu załącza się gaz ,chodzi o to by dogrzać piwnicę.O 20 znowu włączają się. Klimy. 23.30 się wyłączają i podtrzymanie w obniżonej temp nocnej.przejmuje kocioł, gdy nie ma dużych mrozów to sporadycznie się załączy .Nie znam obsługi NR więc automatyzację mam zrobione w HA.Jest to kilka automatyzacj.Czasami wcześniej niż 20.00 włączam klimy ręcznie (tzn głosowo przez google home “włącz ogrzewanie”)mogę je też tak i wyłączyć czy przestawić temp lub nadmuch.Mam też ustawione powiadomienie że np.wyszedlem z pracy więc klimy start wtedy wiem że klimy ruszyły
.A chyba w tym roku jak gaz będzie bardzo drogi to trochę zmienię godziny pracy kotła i podtrzymanie na noc przejmą klimy.Mam jeszcze kopciucha i jak dadzą 3000 to też go tego roku wykorzystam . Temp. jakie utrzymuję to w dzień 23C, noc 21,5.C Ogrzewam tak ponad 210m2 Średnio ocieplony dom,rachunek za gaz tego roku CO, CWU, i jedna kuchenka to 1350zł,prąd tylko opłaty stałe,więc nienajgorzej.

Mam już śledzenie obecności przez tel komórkowe (GPS - bo nie wiem jak zrobić wykrywanie że jest się w domu poprzez zalogowanie do sieci WiFi)

Ogólnie to masz bardzo fajne rozwiązanie, mógłbyś podać przykłady swoich automatyzacji? Może nakieruje mnie to na właściwe tory. No i jak u Ciebie ze stabilnością działania? Nie masz problemów z chwilowymi brakami w połączeniu np. z czujnikiem temperatury a jeśli są to jak się zabezpieczasz przed błędami w działaniu systemu przy takich brakach połączenia?

Nie wiem czy ktoś Ci zbuduję tą automatyzacje, bardzo dużo pracy trzeba by na to poświęcic ponieważ chcesz spełnić dużo różnych warunków jednocześnie. Mogę ci jednak podpowiedzieć jak możesz zacząć, gdyż ja mam pompę ciepła i piec zgazowujący drzewo z buforem ciepła (na razie jeszcze w etapie montażu). Wcześniej miałem kocioł górnego spalania i tak miałem zrobioną automatyzacje, że najpierw grzał mi kocioł a jak się wychłodziło, to dogrzewanie przejmowała pompa ciepła. Na wzór mogę Ci podesłać obrazowo moją automatyzacje, a jak chcesz to podzielę się flow, ale raczej będzie zawierał błędy, gdyż nowy po zmianach jest jeszcze nie przetestowany. Poprzednio ze starym kotłem dopieszczałem prawie przez rok, zanim doszedłem do perfekcji jaką chciałem uzyskać.

@luki25 ciekawie to masz zrobione. Co prawda ja w bloku, więc nie mam potrzeby takiego rozwiązania :slight_smile: A możesz mi powiedzieć co masz w funkcji “Miesiac xxx” gdzie dzielisz na zimę lekką, ciężką i lato? Po prostu jako funkcja sprawdzająca jak jest miesiąc czy co?

nie znalazłem noda, w którym mogę zaznaczyć wybane miesiące, więc napisałem funkcje i albo jest właściwy miesiąc albo nie i nie puszcza dalej flow

Może cron+?

Nie oczekuję, że ktoś mi zbuduje automatyzację, zresztą nawet i tak wolę samemu ją zbudować bo czegoś przy okazji się nauczę :wink: tylko kurcze nie wiem jak ruszyć, trochę mnie to na razie przerasta (zresztą całe HA zajęło mi trochę aby wiedział co i jak - dopiero za drugim podejściem przekonałem się do HA).

Najgorsze jest to że nie wiem do końca czy od razu zaczynać próby w Node-RED z którym do tej pory miałem szczątkową styczność, czy jednak iść w automatyzacje w HA. Może jakby ktoś wytłumaczył mi jak zrobić automatyzację z chłodzeniem - o taką:

Chłodzenie - tutaj dosyć prosta sprawa, jeśli osoby z danego mieszkania są poza domem klima automatycznie ma się wyłączać, jeśli po min. godzinie przy temperaturze wewnętrznej pow. 26 stopni osoba z danego mieszkania wkroczy do strefy około 5 km od mieszkania klima ma się załączyć i schłodzić mieszkanie do 23 stopni

To dalej będzie mi już łatwiej ruszyć do przodu i ogarnąć resztę :wink:

https://flows.nodered.org/node/node-red-contrib-simpletime

Screenshot - 09.08.2022 , 20_07_54

1 polubienie

Jeśli masz czas i juz jakieś doswiadczenie to lepiej isc w NR,bardzo duże możliwości programowania.Sam nam zamiar zacząć jakis kurs NR ale zimą będzie wiecej czasu.
Szczerze mówiąc to i automatyzacje w HA robie i nie wiem czy dobrze, bo taką sytuację jak opisujesz zrobiłbym w dwóch automatyzacjach a może można prościej w jednej nie wiem.

Mozesz stworzyc grupę z np family i juz bedzie lepiej ,mozesz też tworzyć skrypty np.klima chłodzenie włącz

 - service: climate.turn_on
    target:
      entity_id: climate.1ebdb9c3
    data: {}
  - service: climate.set_hvac_mode
    data:
      hvac_mode: cool
    target:
      entity_id: climate.1ebdb9c3
  - service: climate.set_temperature
    target:
      entity_id: climate.1ebdb9c3
    data:
      temperature: 22
  - service: climate.set_fan_mode
    target:
      entity_id: climate.1ebdb9c3
    data:
      fan_mode: medium low
mode: single
alias: gora klima chłodzenie
icon: mdi:air-conditioner

i urzywać w automatyzacji podajac tylko skrypt a nie za kazdym razem podawac wszystkie potrzebne encje.

alias: właczenie klimy strefa
description: ''
trigger:
  - platform: numeric_state
    entity_id: sensor.salon_temp_temp_5
    for:
      hours: 1
      minutes: 0
      seconds: 0
    above: '25.9'
condition:
  - condition: zone
    entity_id: person.andzo
    zone: zone.sterowanie_bramy
  - condition: or
    conditions:
      - condition: zone
        entity_id: person.justyna
        zone: zone.sterowanie_bramy
action:
  - service: script.turn_on
    data: {}
    target:
      entity_id: script.gora_klima_chlodzenie
alias: chłodzenie wylaczenie
description: ''
trigger:
  - platform: state
    entity_id:
      - group.family
    from: home
    to: not home
condition: []
action:
  - service: climate.turn_off
    data: {}
    target:
      device_id: 20a84fd6c558531d53a1c67453dcd985
mode: single

Może jakoś tak,nie sprawdzłem czy dział ,niech ktoś z większym doświadczeniem poprawi jesli żle.Też się dopiero uczę,

proszę bardzo, chociaż zaczynam się pochylać się nad nodem simple time, dużo fajnych danych wypluwa
flows(2).json (991 bajtów)

No więc zacząłem zabawę w Node-RED, na razie idzie powoli ale do przodu :smiley: Ustawiłem automatyzację do klimatyzacji i wszystko działa prawie idealnie :wink: Poniżej screen i w załączeniu flow:

klima.json (8,2 KB)

Mam teraz pytanie, jak ustawić aby mógł zmieniać temperaturę włączenia klimy poprzez GUI Home Assistant, obecnie musze wchodzić w Temperatura dół lub góra i tam ręcznie zmieniać wartość, chcę to robić w GUI HA (najlepiej w ten sam sposób jak w karcie termostat).

Drugie pytanie, to jak ustawić tolerancję? Chcę np. aby klima się uruchamiała przy 27.5 stopnia a wyłączała przy 26.5 stopnia - oczywiście przy temperaturze ustawionej na 27 stopni.

@luki25 ja co prawda mieszkam w bloku i nie mam aż tak skomplikowanego systemu ogrzewania, jak tu prezentowane (dwa różne), ale teraz podczas przerabiania, zaczynam badać możliwości cron plus i powiem, że ten nod ma coraz większe możliwości w moich oczach :slight_smile:
image
Każdy wypust może mieć skonfigurowany inny tryb pracy, w zakresie ograniczonym do danego dnia, miesiąca itd. Całkiem fajne rozwiązanie.

Inna sprawa, to zaczynam się też zastanawiać nad użyciem kontekstu we flow w zakresie globalnym. Bo np. pomiary temperatury mogę wykorzystywać w komunikatach w innym flow, ale przede wszystkim w ogrzewaniu, wiec puszczenie tej wartości w globalny kontekst w cały NR pozwoli chyba na optymalny dostep do tej danej.

@Aleksej pomocnik input_number w HA, którego potem spokojnie odczytujesz w NR. Tam zmieniasz wartość a tu automatyka reaguje na ustawienie.

O input_numer wiem, nawet skonfigurowałem i działa…ale nawet jak zrobię jakąś w miarę fajną kartę aby tym sterować to jednak w porównaniu z kartą thermostat jest słabo. W tej drugiej mam info i sterowanie ze wszystkim co potrzebuję. Małe porównanie:

karta1
karta2

Chcę mieć jak w tej dolnej wersji :wink:

Co ciekawe, kombinowałem trochę w node-red i jak biorę encję climate z klimy dół i robię complete debug to w wierszu data.attributes.temperature ‘wypluwa’ temperaturę zadaną na termostacie, tylko nie wiem jak to ‘pchnąć’ dalej.

Edycja:
Znalazłem, dodałem funkcję change i dałem set msg.payload na msg.data.attributes.temperature - działa jak należy!

Edycja2:

No więc powoli i do przodu, poniżej daję dwa flowy jeden dla klimatyzacji, drugi dla grzania na dole…na razie tyle zrobiłem, proszę o ewentualne uwagi, jako że są to moje pierwsze próby z node-red to na pewno o czymś zapomniałem lub można coś zrobić lepiej. Tak czy inaczej to nauka node-red jest super, coraz więcej rozumiem i fajnie to wszystko można zautomatyzować.

Teraz zastanawiam się jak ogarnąć ten temat: “W przypadku kiedy nikogo nie ma w jednym mieszkaniu a temp zew jest poniżej 5 stopni chcę aby piec gazowy grzał do 18 stopni a w mieszkaniu gdzie są ludzie dogrzewała klima do 21.”

klima.json (10,1 KB)
grzanie.json (21,2 KB)

Witaj @Aleksej,

Myślę, że będę mógł Ci choć trochę pomóc, bo mam za sobą integrację paneli PV, pieca gazowego, 11 grzejników, nawilżaczy, filtrów powietrza i czterech splitów AC, czyli wszystkiego, co (poza żoną :slight_smile: ) tworzy pożądany klimat w domu.
Całość pracuje u mnie w domu pod kontrolą HA, algorytmy popełniłem w Node-Red (sprawdzają wiele warunków jednocześnie), całość dość mocno (może nawet przesadnie) sparametryzowałem, a każde z pomieszczeń ma własną logikę ogrzewania/chłodzenia/nawilżania/osuszania/oczyszczania.

O automatyzacjach natywnych HA możesz jednak raczej zapomnieć, nie ogarną Ci one tego, co chcesz zbudować. A NR jest naprawdę banalnie prostym środowiskiem do ogarnięcia w kilka godzin, nawet z detalami. Poza tym jest na tym Forum sporo naprawdę mądrych ludzi, którzy chętnie wesprą Cię swoimi radami tak, jak mnie zawsze wspierali :slight_smile:

W moim domu ogrzewanie przełącza się automatycznie w jeden z kilku trybów (zimowy, przejściowy, letni, chwilowo poza domem, wakacyjny, awaryjny) w zależności o temperatur zewnętrznych, obecności domowników lub ręcznego wyboru.
W zależności od aury za oknem, ogrzewanie może być z pieca (same grzejniki lub grzejniki + bojler na CWU) lub ze splitów AC, które w lecie zmieniają funkcję na chłodzenie. Ogrzewanie CWU odbywa się z pieca gazowego (zimą i w porze przejściowej) lub grzałką elektryczną (w lecie).
Doświadczalnie ustaliłem bowiem, że w lecie znacznie bardziej opłaca się CWU ogrzewać prądem niż gazem (przy założeniu, że temperatura w bojlerze nie przekracza 42 st.C, a z wody tej (bojler 120 l) korzystają nie więcej niż 3 osoby).

Nie da się tu napisać wszystkiego od razu, bo jest tego naprawdę sporo.

Na początek przejrzyj poniższe automatyzacje (dotyczą tylko automatyki pieca CO, ogrzewanie poszczególnych pomieszczeń zrobiłem na osobnych grafach NR), jeśli chcesz zapytać o cokolwiek, pytaj śmiało, postaram się odpowiedzieć w najdrobniejszych szczegółach.


I chyba najważniesze: od czasu uruchomienia automatyzacji moje rachunki za gaz spadły o ponad połowę. Aż trudno uwierzyć! :slight_smile: Nie wiem, czy w Twoim wypadku byłoby podobnie, ale na pewno zaoszczędziłbyś sporo.

PS: W ramach uzupełnienia tego postu postanowiłem dodać jeszcze jako przykład logikę sterowania klimatem w jednym z moich pomieszczeń:

A tutaj widzisz okienko interfejsu, w którym ustawiam wszystkie możliwe parametry klimatu w tym pomieszczeniu:

@Krzysztonek - Twoje rozwiązanie to są lata świetlne przed tym co ja chcę osiągnąć. Z racji braku smart zaworów czy czujników otwarcia okien na razie nie będę potrzebował aż takich skomplikowanych rozwiązań. Jak już pisałem, na razie zrobiłem dwa flow - jeden dla kilmy na górze i dole:

klima.json (11,5 KB)

Drugi dla ogrzewania na dole:

grzanie.json (20,2 KB)

Ogólnie jeśli chodzi o klimę to jestem zadowolony z działania i nic tu specjalnie na razie nie będę zmieniał.

Natomiast jeśli chodzi o ogrzewanie to chcę dodać warunek taki, na dole jesteśmy w domu, natomiast góra jest pusta, chcę aby w przypadku załączenia pieca gazowego (temp zewnętrzna poniżej 5 stopni) dogrzał on górę do temperatury zadanej - 3 stopnie (np. zadane 21 to dogrzać do 18) natomiast dół powinien być dogrzany do temperatury zadanej (np. 21) przez klimę bez udziału pieca gazowego. Analogicznie w przypadku gdy ktoś jest na górze a dół jest pusty. W sumie na razie tego mi brakuje i nie wiem jak się za to zabrać. Reszta warunków które opisałem w pierwszym poście została już spełniona.

Za wszelką pomoc będę wdzięczny.

Wygląda na to, że poniższa automatyzacja zrobi to, o czym piszesz. Spójrz:

Kroki:

  1. Sprawdzasz, czy temp. zewnętrzna spada poniżej 5 st.
  2. Jeśli tak, to załączasz piec. Jeśli nie, to nic się nie dzieje.
  3. Odczytujesz ustawienie temperatury docelowej i tę wartość zapamiętujesz w zmiennej (np. msg.temp_docelowa = entity state)
  4. Sprawdzasz obecność na górze.

Jeśli ktoś jest, to:

  1. Ustawiasz temperaturę równą zapamiętanej właśnie temperaturze docelowej (wartość zmiennej msg.temp_docelowa)

W przeciwnym wypadku:
5. Wywołujesz funkcję dekrementującą temperaturę docelową o 3 stopnie i wykonujesz krok 6 aby ustawić na górze tę obnizoną temperaturę.
7. Musisz jakoś odciąć pracujący już na rzecz góry piec i 8. ustawić na klimatyzacji na dole temperaturę docelową.

Zwróć uwagę, że obniżona funkcją 5 temperatura docelowa to inna zmienna, niż temperatura docelowa z kroku 8 pomimo tej samej nazwy zmiennej, ponieważ każda zmienna porusza się po ściśle określonej trasie. Zmienna obliczona w kroku 5 w żaden sposób nie wraca ani magicznie nie przenika na trasę kroku 7 i 8.

Martwi mnie co innego, czy dobrze zrozumiałem Twój zamysł. Skoro górę ogrzewasz wyłącznie piecem podczas ogrzewania dołu wyłącznie klimatyzacją (lub odwrotnie), to nie istnieje stan, w którym piec jest wyłączony (o ile temp. zewnętrzna spada poniżej 5 st.C). Wobec tego, wg mnie, musisz mieć zawór smart separujący górę od dołu (patrz krok 7)… Wszak sam piszesz, że:

chcę aby w przypadku załączenia pieca gazowego (…) dół powinien być dogrzany do temperatury zadanej (np. 21) przez klimę bez udziału pieca gazowego

Nie mam pomysłu jak to zrobić bez fizycznej separacji obiegów CO. Chyba, że zainstalujesz smart głowice na wszystkich grzejnikach i stworzysz ich dwie grupy: glowice_dol oraz glowice_gora, ale to znacząco wpłynie na koszt całego przedsięwzięcia (zależnie od ilości głowic smart)…

Dzięki wielkie na nakierowanie, pewnie w weekend znowu usiądę i postaram się dokończyć automatyzację.

Może trochę się źle wyraziłem, w momencie jak kogoś nie ma na jednym z pięter przy temp zew poniżej 5 stopni chcę dogrzać całość do powiedzmy 18 stopni piecem, natomiast już na jednym piętrze użyć klimatyzacji do dogrzania do zadanej temp (np. 21)

To wszystko wyjaśnia :slight_smile:
Wobec tego wystarczy, że pominiesz krok 7 między krokiem 4 i 8.

Czyli powinno być tak:

Logicznie ma to sens. Czy to jest to, o co Ci chodziło?

Ustawienia parametrów w nodach typu call-service (2, 6 i 8) musisz samemu ogarnąć, ponieważ zależne są od konkretnych integracji i urządzeń, jakie masz zainstalowane (poczytaj dokumentacje użytych integracji).

Czy przy tej automatyzacji mozesz sterować ręcznie klimami,np temperatura dól nie jest spełniony a ty chcesz właczyć chłodzenie