Modbus Rekuperator ...
 
Powiadomienia
Wyczyść wszystko

openHAB Modbus Rekuperator Thesslagreen

3 Wpisów
1 Użytkownicy
0 Reactions
388 Wyświetleń
(@laren0)
Wpisów: 55
Kontrybutor
Autor tematu
 

Dziś rozpocząłem prace nad podpięciem rekuperatora do OH. Chciałem się zapytać czy ktoś może już coś takiego robił i może się podzielić jakąś wiedzą?

Podpięcie wygląda tak że w malinę mam wpięty konwerter USB-RS485 i 2 przewodami wpięty jestem w gniazdo 10 rekuperatora piny 1 i 2. Konfiguracje wykonuje w plikach i na chwilę obecną jest jeszcze biednie ale z czasem chce to bardziej rozbudować:

obraz 2024 03 13 003638428

Temat tych urządzeń dla HomeAssistanta jest dość okiełznany ale nigdzie nic nie widzę dla OpenHaba

Po rekuperatorze myślę powalczyć o falownik od PV też po modbusie w OH 

 

 
Dodane : 13/03/2024 12:45 am
(@laren0)
Wpisów: 55
Kontrybutor
Autor tematu
 

Trochę poprawiłem i wzbogaciłem stronę na sitemapie do takiego stanu

sitemap

Ale jest kilka problemów do rozwiązania i potrzebuje pomocy:

1. W sitemapie chciałbym zrobić aby przycisk "Prędkość MANUAL" wyświetlał się tylko przy aktywnej opcji MANUAL a znikał w pozycji AUTO i aby w pozycji AUTO pojawiał się przełącznik LATO/ZIMA a nie wyświetlał się w pozycji MANUAL na samym dole wycinek sitemapy

2. Nie potrawie ogarnąć tego od strony "Semantic Model" ponieważ w sitemapie prosto się mapuje różne rzeczy tutaj jest trudniej i chciałbym to zrozumieć jak powinno się to robić a chciałbym uzyskać takie same przyciski jako opcje wyboru jak np. ON/OFF , LATO/ZIMA, abym mógł to mieć w karcie urządzenia poniżej wycinek jak ona obecnie wygląda:

model1
model2

3. Zauważyłem że w "Sementic Model" zawsze wszystko ustawiane jest alfabetycznie po nazwie z komórki nazwa Itemu - label i pytanie czy można mieć nad tym inną kontrole aby ustawić sobie wszystko jak się chce a nie alfabetycznie?

SITEMAP

	Group item=RekuOnOff label="AirPack4 400V" icon="airpack4v" valuecolor=[1="green", 0="#777777"] {
		Frame label="Stany"  {
			Switch item=RekuOnOff label="Stan[]" mappings=[0="OFF", 1="ON"]
			Switch item=RekuMode label="Wybór trybu[]" mappings=[0="Auto", 1="Manual"]
			Setpoint item=RekuFlowRateManual minValue=10 maxValue=100 step=10
			Switch item=RekuSpecialMode label="Funkcja[]" mappings=[0="OFF", 7="Wietrzenie", 10="Otwarte okna", 11="Pusty dom"]
			Switch item=RekuSeasonMode label="Pora roku[]" mappings=[0="Lato", 1="Zima"]
		}
		Frame label="Parametry"  {
			Default item=RekuTempCzerpnia
			Default item=RekuTempzaFPX
			Default item=RekuTempNawiew
			Default item=RekuStrumienNawiew
			Default item=RekuProcentNawiew
			Default item=RekuTempWywiew
			Default item=RekuStrumienWywiew
			Default item=RekuProcentWywiew
			Default item=RekuTempOtoczenia
			//Switch item=RekuBypass label="Bypass[]" mappings=[0="AKTYWNY", 1="NIEAKTYWNY"] 
			//Setpoint item=RekuBypassActivateTemp minValue=10 maxValue=40 step=1
			Default item=RekuBypassStatus valuecolor=[0="#003e80", 1="#c0c0c0"]
		}
	}

ITEMS

Group  gReku                "Rekuperator"                            <airpack4v>          (gGarage)         ["Equipment"]
//Włączenie-Wyłaczenie
Number RekuOnOff    "Stan [MAP(rekuonoff.map):%s]"   <airpack4v>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4387:RekuOnOff:number" }
//Tryby pracy
Number RekuMode    "Wybór trybu [MAP(rekumode.map):%s]"   <airpack4v>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4208_4210:RekuMode:number" }
Number RekuSeasonMode    "Pora roku [%s]"   <season>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4208_4210:RekuSeasonMode:number" }
Number RekuSpecialMode    "Funkcja [%s]"   <fan>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4224:RekuSpecialMode:number" }
//Ustawienie prędkości
Number RekuFlowRateManual    "Prędkość MANUAL [%.0f %%]"   <fan>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4208_4210:RekuFlowRateManual:number", widget="oh-stepper-card" [min="10",max="100",step="10"], listWidget="oh-stepper-item" [min="10",max="100",step="10"] }
Number RekuStatusCF         "Status CF [MAP(rekuCF.map):%s]"   <fan>       (gReku)              ["Status", "None"]    { channel="modbus:data:thesslagreen:AirPack4_271_273:RekuStatusCF:number" }
Number RekuProcentNawiew    "Nawiew prędkość [%.0f %%]"   <fan>       (gReku)              ["Status", "None"]    { channel="modbus:data:thesslagreen:AirPack4_271_273:RekuProcentNawiew:number" }
Number RekuProcentWywiew    "Wywiew prędkość [%.0f %%]"   <fan>       (gReku)              ["Status", "None"]    { channel="modbus:data:thesslagreen:AirPack4_271_273:RekuProcentWywiew:number" }
//Parametry
Number:Temperature RekuTempCzerpnia         "Czerpnia [%.1f °C]"                <temperature>       (gReku)              ["Measurement", "None"]    { channel="modbus:data:thesslagreen:AirPack4_16_22:RekuTempCzerpnia:number" [ profile="modbus:gainOffset", gain="0.1 °C", pre-gain-offset="0" ] }
Number:Temperature RekuTempNawiew           "Nawiew [%.1f °C]"                  <temperature>       (gReku)              ["Measurement", "None"]    { channel="modbus:data:thesslagreen:AirPack4_16_22:RekuTempNawiew:number" [ profile="modbus:gainOffset", gain="0.1 °C", pre-gain-offset="0" ] }
Number:Temperature RekuTempWywiew           "Wywiew [%.1f °C]"                  <temperature>       (gReku)              ["Measurement", "None"]    { channel="modbus:data:thesslagreen:AirPack4_16_22:RekuTempWywiew:number" [ profile="modbus:gainOffset", gain="0.1 °C", pre-gain-offset="0" ] }
Number:Temperature RekuTempzaFPX        "Temperatura za FPX [%.1f °C]"      <temperature>       (gReku)              ["Measurement", "None"]    { channel="modbus:data:thesslagreen:AirPack4_16_22:RekuTempZaFPX:number" [ profile="modbus:gainOffset", gain="0.1 °C", pre-gain-offset="0" ] }
Number:Temperature RekuTempOtoczenia    "Temperatura otoczenia [%.1f °C]"   <temperature>       (gReku)              ["Measurement", "Temperature"]    { channel="modbus:data:thesslagreen:AirPack4_16_22:RekuTempOtoczenia:number" [ profile="modbus:gainOffset", gain="0.1 °C", pre-gain-offset="0" ] }
Number RekuStrumienNawiew           "Nawiew strumień [%.1f m3/h]" <fan> (gReku) ["Status", "None"]   { channel="modbus:data:thesslagreen:AirPack4_256_257:RekuStrumienNawiew:number" }
Number RekuStrumienWywiew           "Wywiew strumień [%.1f m3/h]" <fan> (gReku) ["Status", "None"]   { channel="modbus:data:thesslagreen:AirPack4_256_257:RekuStrumienWywiew:number" }
Number RekuBypass    "Bypass [MAP(rekubypassonoff.map):%s]"   <airpack4v>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4320_4330:RekuBypass:switch" }
//Number RekuBypassActivateTemp    "Bypass temperatura aktywacji [%.0f °C]"   <fan>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4320_4330:RekuBypassActivateTemp:number", widget="oh-stepper-card" [min="10",max="40",step="1"], listWidget="oh-stepper-item" [min="10",max="40",step="1"] }
Number RekuBypassStatus    "Bypass status[MAP(rekubypass.map):%s]"   <airpack4v>       (gReku)              ["Status", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4320_4330:RekuBypassStatus:number" }
 
Dodane : 16/03/2024 12:42 am
(@laren0)
Wpisów: 55
Kontrybutor
Autor tematu
 

Widzę że ciężko nikt nic nie wrzuci aby człowieka naprowadzić ale udało mi się 2 z 3 punktów rozwiązać

1. Pojawianie się tego co chce wtedy gdy chce w sitemapie - ogarnąłem 

2. Ten punkt jeszcze nie ogarnięty ponieważ niby zrobiłem transformacje ale OH gdzieś raz czyta poprawnie w jednym miejscu w drugim nie. Stworzyłem do przycisków widgeta który ma sterować itemem "Number" i wysyłać informacje w postaci 0,7,10,11. I 7,10,11 działa ok ale w przypadku wybrania przycisku z 0 openhab wyrzuca błąd w logach i nie wysyła tej wartości. Pod sitemapą jest ok w modelu już nie.

3. Ustawianie kolejności innej niż alfabetyczna - można to zrobić z poziomu modelu przez dodanie widget order i podania liczby porządkowej można roić liczby z wartościami np 1.1; 1.2;2;2.6;8

obraz 2024 03 21 000535000

lub wygodniej jak ktoś robi tylko na plikach przed dodanie tego w danym itemie:

Number RekuOnOff    "Stan [MAP(rekuonoff.map):%s]"   <airpack4v>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4387:RekuOnOff:number", widgetOrder="1" }
//Tryby pracy
Number RekuMode    "Wybór trybu [MAP(rekumode.map):%s]"   <airpack4v>       (gReku)              ["Control", "None"]    { channel="modbus:data:thesslagreen:AirPack4_4208_4210:RekuMode:number", widgetOrder="2" }

 

 
Dodane : 21/03/2024 12:08 am
Udostępnij: