Domoticz jako domow...
 
Powiadomienia
Wyczyść wszystko

Domoticz jako domowy regulator temperatury

7 Wpisów
3 Użytkownicy
4 Reactions
7,147 Wyświetleń
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
Autor tematu
 

Publikując wpis https://www.smartnydom.pl/forum/domoticz/uniwersalny-termostat-z-histereza-na-bazie-domoticza/

wspomniałem , o termostacie , który pozwala na regulację temperatury na podstawie kilku czujników  ,w tym  temperatury zewnętrznej.

W związku z tym , że dopracowanie parametrów pracy tego termostatu wymaga czasu , zalecam cierpliwość i nie polecam zbyt częstych zmian parametrów.

Jak to wygląda i co można z tym zrobić

Poniżej fotka , na której widać co mamy do dyspozycji po instalacji

SVT 1

Reg- Pokojowy  to przełącznik , który tworzymy sobie sami a jego funkcja to włączanie i wyłączanie ogrzewania , czyli może to być dowolny moduł z obsługą przekaźnika np. sonoff z softem AFE  T0, T1, T2, T4.

SVT – Control  jak widać mamy możliwość całkowitego wyłączenia ogrzewania, pracy w trybie automatycznym , lub praca wymuszona .

SVT –Mode -ustawienia trybu komfort (normal) i ekonomicznego

SVT – Pause- ten przełącznik służy do zatrzymania ogrzewania w dowolnym momencie na dowolnie definiowany czas . Można to wykorzystać do wyłączenia ogrzewania na czas wietrzenia pomieszczeń, dłuższego otwarcia drzwi wejściowych itp.

Dalej to nasz czujnik – czujniki temperatury, Temperatura wyliczana przez termostat i dwa przełączniki do ustawienia temp komfortowej i ekonomicznej.

Ja na początek użyłem tylko  jednego czujnika , bo łatwiej zaobserwować zmiany parametrów.

Sama instalacja to znowu tak naprawdę kilka komend w terminalu i prosta konfiguracja wtyczki.

Łączymy się z serwerem przez SHH ( PUTTY) i przechodzimy do folderu „ DOMOTICZ/ PLUGINS"

cd domoticz/plugins

teraz tworzymy sobie katalog naszego termostatu o nazwie SVT ( nazwa może być dowolna)

mkdir SVT

teraz aktualizacja

sudo apt-get update

pobieramy – klonujemy repozytorium  wtyczki do naszego katalogu

git clone  https://github.com/999LV/SmartVirtualThermostat.git  SVT

Przechodzimy do katalogu naszego termostatu

cd SVT

Nadajemy mu uprawnienia

sudo chmod +x plugin.py

Restartujemy  serwer  domoticz

sudo /etc/init.d/domoticz.sh restart

Teraz łączymy  się z domoticzem przez www I wchodzimy w KONFIGURACJA- SPRZĘT

gdzie  dodajemy nowy sprzęt jak na foto poniżej


SVT 2

Dodajemy własną nazwę, zamiast localhost wpisujemy IP serwera domoticz, zmieniamy port jeżeli jest inny niż domyślny, wpisujemy nazwę i hasło użytkownika jeżeli mamy ustawione.

Kolejne pole to IDX naszych czujników wewnętrznych , jeżeli mamy ich więcej niż jeden to wpisujemy wszystkie podzielone przecinkami np. 10,14,21

Analogicznie robimy z czujnikami  temp zewnętrznej w kolejnym polu .

Trzecie pole uzupełniamy wartością IDX przełącznika- ów odpowiedzialnych za załączenie ogrzewania. Tu też można utworzyć sobie jeden lub kilka przełączników w zależności od potrzeb , IDX wpisujemy oddzielone przecinkami.

Kolejne okno Apply minimum heating per cycle określa zachowanie termostatu, gdy podano minimalny parametr ogrzewania na cykl.

Mamy do wyboru

only when heating required – uruchamia minimalne ogrzewanie tylko wtedy gdy nie została osiągnięta temperatura zadana.

Przydatne przy ogrzewaniu gdzie źródłem ciepła jest piec centralnego ogrzewania i nie posiadamy ogrzewania podłogowego.

Always – zawsze będzie stosowane minimalne ogrzewanie w każdym cyklu ogrzewania, niezależnie od tego, czy osiągnięta zostanie żądana temperatura. Jest to na przykład przydatne w systemach ogrzewania podłogowego o bardzo wysokiej bezwładności cieplnej, gdzie lepiej jest unikać zbytniego chłodzenia podłogi, nawet jeśli ogrzewanie nie jest faktycznie potrzebne.

Ostatnie pole wymaga najwięcej od użytkownika i tu trzeba sobie dobrać parametry do własnych potrzeb, na początek można zostawić fabryczne ustawienia , chociaż przy kotle na paliwa stałe np. pellet zalecam zmianę pierwszego parametru na min 60.

Paramerty to ciag cyfr podzielonych przecinkami gdzie każdy z nich decyduje o:

 

Pierwsza cyfra fabrycznie 30 - jest to czas w minutach między dwoma obliczeniami termostatu. Należy go ustawić w zależności od bezwładności cieplnej fizycznego pomieszczenia i systemu ogrzewania ( 30 zalecane dla ogrzewania elektrycznego)

Druga cyfra- jest to minimalny %, w którym przekaźnik musi być włączony w danym okresie obliczeniowym. Wartość może wynosić od 0 do 100.

Trzecia cyfra – opóźnienie w minutach aktywacji pauzy

Czwarta cyfra- opóźnienie dezaktywacji pauzy czas w minutach jaki musi upłynąć od wyłączenia przełącznika PAUZA do ponownego włączenia ogrzewania.

Piąta cyfra – Ilość minut na które zostanie właczone ogrzewanie w trybie wymuszonym przy użyciu przełącznika FORCED , po tym czasie system wróci do pracy AUTO

Jedna uwaga na koniec !

Czujniki wyznaczone do pracy z termostatem muszą być wydzielonymi czujnikami temperatury czyli np. DS.-18B20 , lub jeżeli używacie AFE z DHT ( wer T2 ) IDX temperatury musi być wysyłany oddzielnie od Wilgotności , w innym przypadku wewnętrzny czujnik będzie wywalał błąd, a zewnętrzny będzie ignorowany.

 
Dodane : 09/12/2018 1:23 pm
(@krzysztofch)
Wpisów: 489
Ekspert Donator 2K20 Zasłużony dla Forum, Donator 2K19
 

Hej isom wgralem twoj regulator temp.Poustawialem wszystko.  Do ogrzewania nic nie jest podlaczone.Dodalem tez czujnik zewnetrzny.  Narazie obserwuje jak to dziala. I tak sie zastanawiam jak ten termostat przelicza ta temperature. Wiesz moze wiecej cos o tym? 

 
Dodane : 12/12/2018 2:46 am
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
Autor tematu
 

@krzysztofch zacznijmy od tego, że nie jestem twórcą ani autorem tej wtyczki , bo gdyby tak było to pewnie już dawno dołączył bym do @adriana i razem z nim pisał nowe softy , a niestety moja wiedza programistyczna na to nie pozwala.

Co do samego regulatora , to wtyczka oparta jest na skrypcie, który tworzy zmienną ( znajdziesz ją w zakładce zmienne użytkownika ). Co określony czas ( cykl ) średnia temperatura wyliczona z czujników wew jest analizowana i na podstawie spadków/ wzrostów obliczana jest długość i częstotliwość okresów grzania . Czujnik zewnętrzny nie jest uwzględniany w obliczaniu średniej ale proporcjonalnie  jeżeli temp zew spada cykle grzania są częściej i odwrotnie.

Nie ma tu jak w przypadku prostych termostatów histerezy , tylko dłuższe lub krótsze cykle grzania w krótszych lub dłuższych odstępach czasowych.

Żeby wyciągnąć jakieś  wnioski ze zmian parametrów trzeba żeby termostat pracował w realnym ogrzewaniu , sam też na początku próbowałem tak jak Ty uruchamiać tylko przekaźnik ale mija się to z celem ponieważ cały algorytm skryptu robiony jest w trąbę przez ogrzewanie na które algorytm nie ma wpływu i np twoje ogrzewanie pracuje a skrypt o tym nie wie.

Jakiekolwiek zmiany najlepiej robić nie częściej niż co 3 dni ( tyle trwa tak zwane uczenie się przez regulator bezwładności twojego obiektu).

Na początku u mnie były momenty kiedy temperatura mocno przekraczała zadaną, lecz w miarę dopracowywania parametrów mam w tej chwili bardzo stabilny system i odchyłki   od zadanej są +- 0,4 stopnia.

 

 
Dodane : 12/12/2018 12:05 pm
adrian reacted
(@krzysztofch)
Wpisów: 489
Ekspert Donator 2K20 Zasłużony dla Forum, Donator 2K19
 

  Rozumie ze nie jestes autorem ,sorrki ,ale myslalem ze moze wiesz wiecej. Dla mnie  programowanie to moj narazie odlegly temat , wiec zadawalam sie gotowcami. Co to tego regulatora to fajnie ze go udostepniles. Poprobujemy zobaczymy. A  moze bedzie fajnie dzialac. Napisz po jakims czasie opinie czy jestes z niego zadowolony i czy dziala ok. 

 
Dodane : 12/12/2018 1:56 pm
(@jusik)
Wpisów: 69
Kontrybutor
 

Dodane przez: @isom

Jedna uwaga na koniec !

Czujniki wyznaczone do pracy z termostatem muszą być wydzielonymi czujnikami temperatury czyli np. DS.-18B20 , lub jeżeli używacie AFE z DHT ( wer T2 ) IDX temperatury musi być wysyłany oddzielnie od Wilgotności , w innym przypadku wewnętrzny czujnik będzie wywalał błąd, a zewnętrzny będzie ignorowany.

Z czego wynika ta uwaga, Domoticza czy SVT ? Co powoduje problem jeśli czujniki są wspólne ?

Zajrzałem na stronę Domoticz/SVT oraz github pluginu, nie ma tam tej informacji.

 
Dodane : 23/01/2023 2:14 pm
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
Autor tematu
 

@jusik Uwaga wynika z samej konstrukcji JSON dla cujników , ponieważ większość pluginów opiera się właśnie na json to albo by trzeba edytować pliki wtyczki , albo tak jak wspomniałem trzeba wydzielić samą temperaturę z zespolonego czujnika.

JSON dla samej temp to

/json.htm?type=command&param=udevice&idx=IDX&nvalue=0&svalue=TEMP

gdzie TEMP = wartość temperatury 

Dla zespolonego czujnika Hum/Temp JSON to

/json.htm?type=command&param=udevice&idx=IDX&nvalue=0&svalue=TEMP;HUM;HUM_STAT

TEMP = Temperature
HUM = Humidity (0-100 %)
HUM_STAT = Humidity status

 

 
Dodane : 23/01/2023 5:28 pm
(@jusik)
Wpisów: 69
Kontrybutor
 

Dzięki bardzo,

W domyśle "konstrukcji json dla czujników" w Domoticzu ?

Czy to może również wyjaśniać problem z czujnikami @kniazio w termostacie opentherm?

Dodał idx czujników wspólnych temperatura/wilgotność podłączonych po rf433, plugin (termostat) pobiera dane po json i sytuacja była taka właśnie jakby tego czujnika, czujników nie widział.

 
Dodane : 23/01/2023 5:51 pm
Udostępnij: