Termostat BEOK, Floureon, Hysen WI-FI Integrare in FHEM

BeOK Thermostat
BeOK Thermostat front

Odata cu venirea sezonului rece intra in scena centrala cu functia ei de incalzire, pentru a ne crea maximum de confort in casa. Pentru a ne bucura de confort dar totodata de a reduce consumul de energie este recomandata montarea unui termostat. In ultima perioada avem un aflux de termostate inteligente cu diferite protocoale de comunicare, insa cele mai frecvente sunt cele cu WI-FI.

In tutorialul de astazi vom integra un termostat extrem de accesibil de la BEOK in FHEM. Acesta vine in trei variante:

Termostatele de la Floureon si Hysen folosind acelasi modul Wi-Fi se vor putea integra la fel.

Pentru exemplificare in tutorialul de astazi am ales termostatul pentru centrale termice BeOk BOT-313WiFi, pe care il vom integra in serverul smart home FHEM. Celelalte termosate indiferent ca sunt pentru incalzirea in pardoseala cu agent termic sau electric, se vor putea integra la fel.

Termostat BEOK
Termostat BEOK

Pentru inceput va trebui ca termostatul sa fie montat corespunzator, conectat la reteaua electrica si centrala, integrat in reteaua locala. Acest lucru se va face conform cu manualul de utilizare al dispozitivului si folosind aplicatia specifica pentru Android sau iOS.

ATENTIE! penru montarea termostatului, conectarea acestuia la reteaua electrica si la centrala termica sau a incalzirii in pardoseala adresati-va personalului calificat in acest sens. Nerespectarea indicatiilor de pe manualul de utilizare al termostatului si al centralei termice sau a instalatiei de incalzire in pardoseala poate duce la distrugerea acestora.

Inainte de a face legaturile electrice decuplati sigurantele aferente din panoul electric si verificati cu un creion de tensiune!

Respectati schema de pe manualul de utilizare al ambelor dispozitive, termostat si centrala termica.

DHCP

De indata ce termostatul este inrolat in aplicatie si implicit conectat la router, in meniul acestuia vom putea identifica IP-ul si MAC-ul alocate. Aceste date ne vor fi necesare la integrarea in FHEM.

BEOK app BEOk BOT-313WiFi

Pentru ca urmeaza sa integram termostatul in serverul smart home, nu voi face o prezentare a aplicatiei acestuia, insa cateva setari in interiorul aplicatiei sunt totusi necesare. Si anume, temperatura maxima si minima acceptata si retinerea starii acestuia in caz de cadere de tensiune:

  • Room temp set max(svh): vom pune maxim 30 de grade
  • Room temp set min(svl): vom pune 5 grade
  • Room temp adjust – vom pune pe 0, urmand a putea controla aceasta valoare ulterior din FHEM
  • Antifreeze set(fre): Open
  • Power memory(pon): vom pune pe ON

Dependinte FHEM

Inainte de a defini termostatul in FHEM, avem nevoie sa instalam anumite dependinte. Acestea le vom instala din consola prin stabilirea unei legaturi SSH la Raspberry PI. Odata conectati la sistem prin SSH vom face un update de sistem:

sudo apt-get update && sudo apt-get upgrade -y

Dupa terminarea actualizarilor vom instala urmatoarele componente:

sudo apt-get install libcrypt-cbc-perl
sudo apt-get install libcrypt-rijndael-perl
sudo apt-get install libssl-dev
sudo cpan Crypt/OpenSSL/AES.pm     
     

In caz ca ultima comanda rezulta erori, putem folosi:

sudo apt-get install libnet-ssleay-perl 
sudo apt-get install libcrypt-ssleay-perl 
sudo apt-get install libio-socket-ssl-perl

Integrare termostat BEOK in FHEM

La finalul instalarii dependintelor putem defini termostatul in interfata web a FHEM. Definitia se va face de forma: define <name> BEOK <ip> [mac]

Ca de exemplu:

  • define Thermo 192.168.1.100 1A:2B:3C:4D:5E:6F

Desigur veti folosi IP-ul si MAC-ul aferente deviceului vostru asa cum le puteti regasi in interfata routerului, dupa cum am exemplificat mai sus.

BeOk BOT-313WiFi - FHEM
BeOk BOT-313WiFi - FHEM

Pentru a finaliza definitia vom atribui modelul folosit, si anume: attr Thermo model BEOK

BeOk BOT-313WiFi - FHEM

Dupa atribuire vom cere autorizarea si statusul termostatului prin: get Thermo auth si get Thermo status

BeOk BOT-313WiFi - FHEM

Iata panoul de control afisat in FHEM dupa integrare, unde avem posibilitatea de a regla temperatura dorita cu desired-temp sau de a alege modul manual sau automat. Inainte da a avansa cu setarile pentru termostat trebuie reglata histereza acestuia cu set Thermo dif 1.

Reglaje pentru termostat

Termostatul are integrat senzor de temperatura. Nu cel mai fidel, insa functional si avem nevoie de el pentru a activa sau dezactiva incalzirea. Daca aveti un termometru de referinta si observati ca avem deviatii de temperatura intre termometrul integrat in termostat si cel de referinta, aceasta se poate ajusta cu pasi de 0.5 Grade de la -5 pana la +5, folosind set Thermo room-temp-adj <valoare ajustare>, ca de exemplu: set Thermo room-temp-adj -1.5

Frumusetea vine in momentul cand deviatia fata de termometrul de referinta este dinamica, in sensul ca de reula la temperaturi in jur de 20°C diferenta este de 1°C, sa spunem, dar la temperaturi de 18°C diferenta este de 2°C, sau la temperaturi in aerul din camera de 22°C insa termostatul ofera o diferenta de peste 3°C. Pentru ca utilizam FHEM putem indrepta acest neajuns prin doua automatizari simple, conditia este ca termometrul de referinta sa fie integrat in sistem. Se poate folosi in termometru Xiaomi integrat pe Zigbee2MQTT, asa cum am aratat in acest tutorial.

Prima data vom atribui un userReadings (Reading definit de utilizator), prin care vom rotunji cu +0.5 valoarea de temperatura citita de termostat. Aceast atribut va adauga un reading nou denumit room_temp_RoundUP.

BeOk BOT-313WiFi
attr Thermo userReadings room_temp_RoundUP { int (ReadingsVal("Thermo","room-temp",0) + 0.5 ) }

Folositi denumirile alese de voi in sistem pentru termometrul de referinta.

In cazul meu TS_Living este senzorul de temperatura de referinta (Temperature Sensor _ Living), Thermo este definit termostatul BEOK.

Vom defini o automatizare care la fiecare minut sa seteze soom-temp-adj la 0, astfel incat sa putem calcula diferenta dintre termometrul de referinta si termometrul intern al termostatului.

define Thermo_set_adj_to_o at +*00:01:00 set Thermo room-temp-adj 0

Cu ajutorul modulului DOIF vom calcula diferenta dintre cele doua temperaturi:

define delta_tt DOIF ##
attr delta_tt state {([TS_Living:Temp_RoundUP]-[Thermo:room-temp])}

In final vom defini un nou DOIF care va ajusta valoarea room-temp-adj cu rezultatul delta_tt calculat anterior:

define Set_Temp_Thermo DOIF ([delta_tt] ne "0") (set Thermo room-temp-adj [delta_tt:state])

Mai avem o definitie de inserat si anume un nou DOIF care sa ceara statusul de la termostat in caz ca acesta pierde legatura cu sistemul:

define GET_Thermo DOIF ([Thermo] eq "error") (get Thermo status)
BeOk BOT-313WiFi - FHEM
Definitiile complete pentru ajustarea senzorului de temperatura BEOK

Practic de fiecare data cand diferenta dintre senzorul de referinta si senzorul termostatului se va modifica va actiona ca un trigger catre cele doua DOIF-uri, ultimul dintre ele regland aceasta diferenta, calculatia definitiei delta_tt tinzand catre 0.

Programare pe zile si ore

Pentru a realiza un program impartit pe zile si ore putem folosi modulul WeekdayTimer cu o astfel de definitie:

define Heating_Thermo WeekdayTimer Thermo en 12345|06:00|20.5 12345|07:30|18

Unde 1, 2, 3, 4, 5 sunt zilele saptamanii de luni pana vineri, 6 si 7 vor fi zilele de sambata si duminica, |HH:MM| reprezinta ora la care se va aplica temperatura dorita.

Important este ca la atributul commandTemplate sa fie ca in exemplul alaturat: set $NAME desired-temp $EVENT

Iata cat de simplu si rapid am reusit sa integram termostaul inteligent de la BEOK in fhem si mult mai usor reusim sa facem un program saptamanal, fata de aplicatia dedicata, dar mai presus de asta vom putea integra acest tip de termostate in diverse scene si automatizari functie de necesitati. In tutorialul urmator voi exemplifica cum putem realiza o automatizare pe baza acestui termostat si a doi sau mai multi senzori de temperatira plasati in camere diferite.

De Iulian Susnea

Pasionat de tehnologie, gadgeturi smart home si automatizari si am pornit la drum in crearea acestui site cu tutoriale pentru cele mai importante sisteme Smart Home ale momentului din dorinta de a-i ajuta pe cei la inceput de drum.

Lasă un comentariu

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *