FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: Snocksman am 15 August 2024, 12:07:03

Titel: MQTT Power Limit für Hoymiles Inverter festlegen
Beitrag von: Snocksman am 15 August 2024, 12:07:03
Hallo zusammen,

ich tue mir gerade etwas schwer dabei eine (wahrscheinlich relativ einfache) Sache in FHEM / MQTT umzusetzen...

Ich habe eine Solaranlage, mit einem Hoymiles HMS-800W-2T Inverter... Die Daten des Inverters werden mit diesem Projekt (https://github.com/ohAnd/dtuGateway) in MQTT umgesetzt und an FHEM gesendet... Das funktioniert soweit auch.

Was ich nicht hin bekomme: Es besteht die Möglichkeit den Inverter zu limitieren, was ich aus FHEM heraus können möchte, aber leider bislang nicht hin bekomme...

Hier mal das Device in FHEM:
define Solaranlage_1 MQTT2_DEVICE dtuGateway_13254062
attr Solaranlage_1 readingList dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_grid_U/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv0_U/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv1_U/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_grid_I/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv0_I/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv1_I/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_grid_P/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv0_P/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv1_P/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_grid_dailyEnergy/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv0_dailyEnergy/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv1_dailyEnergy/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_grid_totalEnergy/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv0_totalEnergy/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_pv1_totalEnergy/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_inverter_Temp/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_inverter_PowerLimit/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_inverter_WifiRSSI/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_inverter_PowerLimit_Set/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:homeassistant/sensor/dtuGateway_13254062_time_stamp/config:.* { json2nameValue($EVENT) }\
dtuGateway_13254062:Solaranlage_1/grid/I:.* Grid_I\
dtuGateway_13254062:Solaranlage_1/grid/P:.* Grid_P\
dtuGateway_13254062:Solaranlage_1/grid/U:.* Grid_U\
dtuGateway_13254062:Solaranlage_1/grid/dailyEnergy:.* Grid_dailyEnergy\
dtuGateway_13254062:Solaranlage_1/grid/totalEnergy:.* Grid_totalEnergy\
dtuGateway_13254062:Solaranlage_1/inverter/PowerLimit:.* PowerLimit\
dtuGateway_13254062:Solaranlage_1/inverter/Temp:.* Temp\
dtuGateway_13254062:Solaranlage_1/inverter/WifiRSSI:.* WifiRSSI\
dtuGateway_13254062:Solaranlage_1/pv0/I:.* PV0_I\
dtuGateway_13254062:Solaranlage_1/pv0/P:.* PV0_P\
dtuGateway_13254062:Solaranlage_1/pv0/U:.* PV0_U\
dtuGateway_13254062:Solaranlage_1/pv0/dailyEnergy:.* PV0_dailyEnergy\
dtuGateway_13254062:Solaranlage_1/pv0/totalEnergy:.* PV0_totalEnergy\
dtuGateway_13254062:Solaranlage_1/pv1/I:.* PV1_I\
dtuGateway_13254062:Solaranlage_1/pv1/P:.* PV1_P\
dtuGateway_13254062:Solaranlage_1/pv1/U:.* PV1_U\
dtuGateway_13254062:Solaranlage_1/pv1/dailyEnergy:.* PV1_dailyEnergy\
dtuGateway_13254062:Solaranlage_1/pv1/totalEnergy:.* PV1_totalEnergy\
dtuGateway_13254062:Solaranlage_1/time/stamp:.* stamp
attr Solaranlage_1 room Solaranlage
attr Solaranlage_1 setList Power_Limit:slider,2.0,1,100.0,1 dtuGateway_13254062/inverter/PowerLimit_Set {"PowerLimit": $EVTPART1 }
attr Solaranlage_1 stateFormat Grid_P Watt
#   CFGFN     
#   CID        dtuGateway_13254062
#   DEF        dtuGateway_13254062
#   FUUID      66bceb46-f33f-e448-15a8-c280fbb9bad4bdfc
#   IODev      MQTT2_FHEM_Server
#   LASTInputDev MQTT2_FHEM_Server
#   MQTT2_FHEM_Server_CONN MQTT2_FHEM_Server_192.168.1.154_55620
#   MQTT2_FHEM_Server_MSGCNT 2662
#   MQTT2_FHEM_Server_TIME 2024-08-15 12:03:51
#   MSGCNT     2662
#   NAME       Solaranlage_1
#   NR         876
#   STATE      611.20 Watt
#   TYPE       MQTT2_DEVICE
#   eventCount 2708
#   OLDREADINGS:
#   READINGS:
#     2024-08-15 12:03:50   Grid_I          2.62
#     2024-08-15 12:03:50   Grid_P          611.20
#     2024-08-15 12:03:50   Grid_U          233.10
#     2024-08-15 12:03:50   Grid_dailyEnergy 1.192
#     2024-08-15 12:03:50   Grid_totalEnergy 24.688
#     2024-08-14 19:37:10   IODev           MQTT2_FHEM_Server
#     2024-08-15 12:03:51   PV0_I           7.68
#     2024-08-15 12:03:51   PV0_P           322.90
#     2024-08-15 12:03:51   PV0_U           42.00
#     2024-08-15 12:03:51   PV0_dailyEnergy 0.597
#     2024-08-15 12:03:51   PV0_totalEnergy 12.379
#     2024-08-15 12:03:51   PV1_I           7.66
#     2024-08-15 12:03:51   PV1_P           322.40
#     2024-08-15 12:03:51   PV1_U           42.00
#     2024-08-15 12:03:51   PV1_dailyEnergy 0.595
#     2024-08-15 12:03:51   PV1_totalEnergy 12.309
#     2024-08-15 12:03:50   PowerLimit      100
#     2024-08-15 12:03:50   Temp            37.40
#     2024-08-15 12:03:51   WifiRSSI        100
#     2024-08-15 11:28:28   device_class    timestamp
#     2024-08-15 11:28:28   device_configuration_url http://192.168.1.154
#     2024-08-15 11:28:28   device_hw_version 1.0
#     2024-08-15 11:28:28   device_identifiers dtuGateway_13254062
#     2024-08-15 11:28:28   device_manufacturer ohAnd
#     2024-08-15 11:28:28   device_model    dtuGateway ESP8266/ESP32
#     2024-08-15 11:28:28   device_name     HMS-xxxxW-2T (dtuGateway_13254062)
#     2024-08-15 11:28:28   device_sw_version 1.6.0009
#     2024-08-15 11:28:28   icon            mdi:car-speed-limiter
#     2024-08-15 11:28:28   name            Time stamp
#     2024-08-15 12:03:51   stamp           1723716231
#     2024-08-15 11:55:36   state           Power_Limit
#     2024-08-15 11:28:28   state_topic     Solaranlage_1/time/stamp
#     2024-08-14 19:37:42   subscriptions   Solaranlage_1/inverter/PowerLimit_Set
#     2024-08-15 11:28:28   unique_id       dtuGateway_13254062_time_stamp
#     2024-08-15 11:28:28   unit_of_measurement %
#     2024-08-15 11:28:28   value_template  {{ as_datetime(value) }}
#
setstate Solaranlage_1 611.20 Watt
setstate Solaranlage_1 2024-08-15 12:03:50 Grid_I 2.62
setstate Solaranlage_1 2024-08-15 12:03:50 Grid_P 611.20
setstate Solaranlage_1 2024-08-15 12:03:50 Grid_U 233.10
setstate Solaranlage_1 2024-08-15 12:03:50 Grid_dailyEnergy 1.192
setstate Solaranlage_1 2024-08-15 12:03:50 Grid_totalEnergy 24.688
setstate Solaranlage_1 2024-08-14 19:37:10 IODev MQTT2_FHEM_Server
setstate Solaranlage_1 2024-08-15 12:03:51 PV0_I 7.68
setstate Solaranlage_1 2024-08-15 12:03:51 PV0_P 322.90
setstate Solaranlage_1 2024-08-15 12:03:51 PV0_U 42.00
setstate Solaranlage_1 2024-08-15 12:03:51 PV0_dailyEnergy 0.597
setstate Solaranlage_1 2024-08-15 12:03:51 PV0_totalEnergy 12.379
setstate Solaranlage_1 2024-08-15 12:03:51 PV1_I 7.66
setstate Solaranlage_1 2024-08-15 12:03:51 PV1_P 322.40
setstate Solaranlage_1 2024-08-15 12:03:51 PV1_U 42.00
setstate Solaranlage_1 2024-08-15 12:03:51 PV1_dailyEnergy 0.595
setstate Solaranlage_1 2024-08-15 12:03:51 PV1_totalEnergy 12.309
setstate Solaranlage_1 2024-08-15 12:03:50 PowerLimit 100
setstate Solaranlage_1 2024-08-15 12:03:50 Temp 37.40
setstate Solaranlage_1 2024-08-15 12:03:51 WifiRSSI 100
setstate Solaranlage_1 2024-08-15 11:28:28 device_class timestamp
setstate Solaranlage_1 2024-08-15 11:28:28 device_configuration_url http://192.168.1.154
setstate Solaranlage_1 2024-08-15 11:28:28 device_hw_version 1.0
setstate Solaranlage_1 2024-08-15 11:28:28 device_identifiers dtuGateway_13254062
setstate Solaranlage_1 2024-08-15 11:28:28 device_manufacturer ohAnd
setstate Solaranlage_1 2024-08-15 11:28:28 device_model dtuGateway ESP8266/ESP32
setstate Solaranlage_1 2024-08-15 11:28:28 device_name HMS-xxxxW-2T (dtuGateway_13254062)
setstate Solaranlage_1 2024-08-15 11:28:28 device_sw_version 1.6.0009
setstate Solaranlage_1 2024-08-15 11:28:28 icon mdi:car-speed-limiter
setstate Solaranlage_1 2024-08-15 11:28:28 name Time stamp
setstate Solaranlage_1 2024-08-15 12:03:51 stamp 1723716231
setstate Solaranlage_1 2024-08-15 11:55:36 state Power_Limit
setstate Solaranlage_1 2024-08-15 11:28:28 state_topic Solaranlage_1/time/stamp
setstate Solaranlage_1 2024-08-14 19:37:42 subscriptions Solaranlage_1/inverter/PowerLimit_Set
setstate Solaranlage_1 2024-08-15 11:28:28 unique_id dtuGateway_13254062_time_stamp
setstate Solaranlage_1 2024-08-15 11:28:28 unit_of_measurement %
setstate Solaranlage_1 2024-08-15 11:28:28 value_template {{ as_datetime(value) }}


Und hier noch ein Absatz dazu in der Github Doku des MQTT Gateways: Link (https://github.com/ohAnd/dtuGateway?tab=readme-ov-file#mqtt-integration-configuration)

Wäre super, wenn mir jemand bei der Sache helfen könnte...
Titel: Aw: MQTT Power Limit für Hoymiles Inverter festlegen
Beitrag von: Snocksman am 15 August 2024, 14:56:53
Hey, ganz viel rumprobiert und schließlich doch selbst hinbekommen...  8)

Den SetList Eintrag musste ich wie folgt ändern: Power_Limit:slider,2.0,1,100.0,1 $DEVICETOPIC/inverter/PowerLimit_Set $EVTPART1

Dazu habe ich aber noch eine kleine Frage... Wenn ich den Slider auf z.B. 80% gestellt habe und dann mit einen Klick auf set das Gewünschte Power-Limit an den Inverter geschickt habe, springt der Slider wieder zurück auf den Anfangswert 2 (1 frisst der Inverter nicht, deswegen die 2). Gibt es eine Möglichkeit, dass der Slider auf dem zuletzt eingestellten Wert stehen bleibt ?
Titel: Aw: MQTT Power Limit für Hoymiles Inverter festlegen
Beitrag von: TomLee am 15 August 2024, 15:11:45
Hallo,

kommt denn ein Wert von dem Gateway zurück und wie sieht der genau aus, hat der evtl. Kommastellen ? Schau in welchem Reading und benenne den setter so oder falls Kommastellen zurückkommen konfiguriere den slider entsprechen.
Oder zeig halt mal ein List ...

Gruß Thomas
Titel: Aw: MQTT Power Limit für Hoymiles Inverter festlegen
Beitrag von: Snocksman am 15 August 2024, 15:17:36
OK, auch das habe ich gerade selbst hin bekommen... Ich wusste das alles mal, hab aber jetzt schon länger nichts MQTT-mäßiges an der Config selbst gemacht...

Entweder per jsonMap das Reading PowerLimit auf Power_Limit ändern, oder einfach (wie ich es jetzt gemacht habe) den Eintrag in der setList von Power_Limit auf PowerLimit ändern.