Wärmepumpe Modbus einbinden

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

klaus1
Beiträge: 99
Registriert: 11. Jan 2022 13:48
Answers: 0

Re: Wärmepumpe Modbus einbinden

Beitrag von klaus1 »

Damit gehts jetzt. erste Überprüfung entfernt:
if(Modbus_Energy_Waermepumpe.previousState(true) !== null)

Code: Alles auswählen

rule "DAY_ENERGY_WAERMEPUMPE"
when
    Item Modbus_Energy_Waermepumpe changed
then
    //if(Modbus_Energy_Waermepumpe.previousState(true) !== null) {
        val nTotal    = (Modbus_Energy_Waermepumpe.state as Number).floatValue
        val nHistoric = (Modbus_Energy_Waermepumpe.historicState(now.with(LocalTime.MIDNIGHT).minusHours(1)).state as Number).floatValue
        //logInfo("fronius","Total: {} Historisch: {} Tagesertrag: {}",nTotal,nHistoric,nTotal-nHistoric)
        Modbus_Energy_Waermepumpe_DAILY.postUpdate(nTotal - nHistoric)
    //}
end

klaus1
Beiträge: 99
Registriert: 11. Jan 2022 13:48
Answers: 0

Re: Wärmepumpe Modbus einbinden

Beitrag von klaus1 »

wie kann ich auf folgendes Register zugreifen:
charge_pilot_state 8092 1 r CP: 0 = A (warten),
1 = B (Fahrzeug erkannt),
2 = C (laden),
3 = D (laden mit Lüftung),
4 = E (kein Strom),
5 = F (Fehler)

mein Versuch:

Code: Alles auswählen

Bridge modbus:tcp:cfos2 "cfos eMobility Wallbox Zähler" [
    host="192.168.1.46", // IP der Modbus Schnittstelle
    port=4701,
    id=1
 ] {
     Bridge poller wallbox "Wallbox-Zähler" [
         start=8041,
         length=79,
         type="holding"
     ] {
         Thing data charge_pilot_state "Modbus_Wallbox_State_Thing" [readStart="8092", readValueType="int32" ]
     }
 }
als item:

Code: Alles auswählen

	Number Modbus_State_Wallbox "Modbus_State_Wallbox" {channel="modbus:data:cfos2:wallbox:charge_pilot_state:number"}
Liefert leider den merkwürdigen Wert: 65596

klaus1
Beiträge: 99
Registriert: 11. Jan 2022 13:48
Answers: 0

Re: Wärmepumpe Modbus einbinden

Beitrag von klaus1 »

int16 muss es natürlich lauten. dann klappts danke

Antworten