Głowica Termostatyczna Bluetooth

Masz pomysł na funkcjonalność lub koncepcję na rozwój projektu. Opisz wszystko tutaj.
tgaweda
Posty: 55
Rejestracja: pn lis 13, 2017 9:21 pm

pt paź 30, 2020 9:56 am

maciekelga pisze:
czw paź 29, 2020 7:25 pm
Odświeżę temat, czy komuś udało się zrobić odczyt/sterowanie głowicami z poziomu Supli? Lub chociaż ogarnął komunikację głowica->esp/arduino etc ?
eQ-3 z Raspberry i supla-virtual-device działa u mnie już miesiąc.
Awatar użytkownika
Robert Błaszczak
Posty: 1469
Rejestracja: sob gru 22, 2018 8:55 pm
Lokalizacja: Zielona Góra
Kontaktowanie:

pt paź 30, 2020 10:50 am

Może chciałoby Ci się zrobić jakiś szerszy opis / tutorial?
Pozdrawiam
Robert Błaszczak

Strona prywatna: https://www.blaszczak.pl
Jakość powietrza: https://robert.aqi.eco
tgaweda
Posty: 55
Rejestracja: pn lis 13, 2017 9:21 pm

pt paź 30, 2020 6:12 pm

Funkcjonalność zrealizowana przeze mnie jest dość prosta, ale to było moim celem w tym momencie.
Mogę z aplikacji supla ustawić termostat zamontowany na grzejniku na 19°C lub 22°C.



Sprzęt potrzebny do zmontowania całości to Raspberry i głowica eq-3 bluetooth.
Pierwsza pozycja, to w moim przypadku już posiadane RPi 4B a druga pozycja jest do kupienia na znanym portalu aukcyjnym https://allegro.pl/listing?string=eq-3%20bluetooth.

Od strony programowej używam: skryptu Heckie75, supla-virtual-device i node-RED.

Instalacja:
1.
https://github.com/Heckie75/eQ-3-radiator-thermostat

Kod: Zaznacz cały

git clone https://github.com/Heckie75/eQ-3-radiator-thermostat.git
2.
supla-virtual-device (opisane w linku https://github.com/lukbek/supla-virtual-device)

w pliku supla-virtual-device.cfg mam zdefiniowane dwa kanały

Kod: Zaznacz cały

[CHANNEL_11]
function=POWERSWITCH
command_on=python /home/pi/eQ-3/supla_19.py

[CHANNEL_12]
function=LIGHTSWITCH
command_on=python /home/pi/eQ-3/supla_22.py
POWERSWITCH / LIGHTSWITCH pozostałość po testach ;)

Na Raspbbery w folderze /home/pi/eQ-3/ mam stworzone dwa pliki:
supla_19.py o zawartości

Kod: Zaznacz cały

import requests
r =requests.get('http://192.168.1.100:1880/grzejnik?ustaw=19')
supla_20.py o zawartości

Kod: Zaznacz cały

import requests
r =requests.get('http://192.168.1.100:1880/grzejnik?ustaw=20')
3. w node-RED przy po mocy klocków zbudowane zależności do obsługi zapytań http://192.168.1.100:1880/grzejnik?ustaw=20 czy ?ustaw=19

Do zrobienia (w node-RED) jest jeszcze cykliczny odczyt temperatury ustawionej na termostacie i publikowanie jej do kanału

Kod: Zaznacz cały

[CHANNEL_X]
function=TEMPERATURE
file=/home/pi/temp_termo.txt
co pozwoli na pokazanie w aplikacji supla temperatury ustawionej na termostacie ręcznie.

Gdyby w supla-virtual-device dostępny był DIMMER to można byłoby ustawiać temperaturę z nieco większą dokładnością.
Załączniki
termostat.jpg
termostat.jpg (42.6 KiB) Przejrzano 159 razy
Awatar użytkownika
Robert Błaszczak
Posty: 1469
Rejestracja: sob gru 22, 2018 8:55 pm
Lokalizacja: Zielona Góra
Kontaktowanie:

pt paź 30, 2020 7:21 pm

@tgaweda, wielkie dzięki za ten opis.
Pozdrawiam
Robert Błaszczak

Strona prywatna: https://www.blaszczak.pl
Jakość powietrza: https://robert.aqi.eco
ODPOWIEDZ

Wróć do „Pomysły i koncepcje”