Hallo
nach einnigen Fehlschlägen ist es mir mit diesem Tool gelungen die Werte meiner WP anzuzeigen
https://wiki.fhem.de/wiki/DOIF/Automatisierung#Tages-.2C_Monats-_und_Jahresstatistik_f.C3.BCr_Strom-.2C_Gas-.2C_Wasserz.C3.A4hler_und_andere_Z.C3.A4hler
dazu habe ich mir diesen Code genommen:
Tages-, Monats- und Jahresstatistik für Strom-, Gas-, Wasserzähler und andere Zähler
Anforderung:
Zähler sollen durch Angabe des Devicenamens und Readings hinzugefügt werden können
Es soll der aktuelle Tages-, Monats- und Jahreswert festgehalten werden
Es soll der Wert des letzten Tages, Monats und Jahres festgehalten werden
Die Werte sollen automatich geloggt werden
Die Werte sollen im DOIF visualisiert werden können
Beispieldefinition im DOIF-Perlmodus
defmod di_counter_new DOIF subs {\
## Device Reading \
push (@{$_counter},["MQTT2_DVES_C58DCB","total_w"]);; ## Wasserzähler\
push (@{$_counter},["counter_rw","total_l"]);; ## Leitungswasser\
push (@{$_counter},["counter_rw","total_z"]);; ## Regenwasser\
push (@{$_counter},["MQTT2_DVES_C58DCB","total_pv"]);; ## Solarenergie\
push (@{$_counter},["MQTT2_DVES_C58DCB","total_c"]);; ## Bezugszähler\
Dann habe ich wohl einige Push... herausgenommen, noch nicht wissend was alles passiert ;-)
die ersten Zeilen sehen nun so aus:
subs {
## Device Reading
push (@{$_counter},["MQTT2_HeishaMon","WatthourTotal_1"]); ## WP_Zähler
sub midnight { ## Diese Funktion wird um Mitternacht ausgeführt
my ($device,$reading,$mday,$yday)=@_;
set_Reading("$device.$reading.day_counter",ReadingsVal($device, $reading,1));
ich habe also nur einen Push für WatthourTotal_1
ich würde nun gerne eine weiteres Reading einbauen, in etwas so
push (@{$_counter},["MQTT2_HeishaMon","Watt_1"]); ## WP_Zähler
wie geht das ohne mir alles wieder zu zerstören
das ist ein Reading welches mir den momentanen Verbrauch meiner WP anzeit
Damian deine Tools sind so genial 8) , wenn man das als dummy auch hingekommen könnte
Die push-Zeilen kannst du einfach löschen und neue einfügen. Es müssen aber Zählerreadings sein, die Energie/Verbrauch kontinuierlich hochzählen. Aktuelle Leistungsaufnahme ist an dieser Stelle falsch.
Die Visualisierung muss im Attribut uiTable individuell angepasst werden, man kann sich aber gut an den Beispielen orientieren.
Hier: https://wiki.fhem.de/wiki/DOIF/uiTable_Schnelleinstieg#Anzeige_eines_Werteverlaufs_und_des_aktuellen_Wertes_mit_Hilfe_der_SVG-Funktion_card
im letzten Beispiel "Beispieldefinition mit zusätzlichen Informationen" nutze ich Readings aus dem di_Counter (dort Energie) und lasse mir noch zusätzlich die aktuelle Leistung anzeigen.
wenn das alles so einfach wäre.
sitze schon Stunden dran
die meisten Werte bekomme ich schon mal in einer Gruppe angezeigt, nicht schön aber das kommt ja ev noch
was ich gerne noch anzeigen würde wäre der aktuelle Wert
hier die Zeile aus der Filelog
2022-11-27_18:01:58 MQTT2_HeishaMon Watt_1: 8
der Wert ist also da, nur bekomme ich den ums verrecken nicht angezeit, hätte es gerne in meinem Dashboard
define WP_aktueller_Verbrauch readingsGroup .*:MQTT2_HeishaMon.Watt_1
sehe den Wald vor Bäumen nicht mehr, oder Brett vorm Kopf
Zitat von: Franz Tenbrock am 27 November 2022, 18:08:35
wenn das alles so einfach wäre.
sitze schon Stunden dran
die meisten Werte bekomme ich schon mal in einer Gruppe angezeigt, nicht schön aber das kommt ja ev noch
was ich gerne noch anzeigen würde wäre der aktuelle Wert
hier die Zeile aus der Filelog
2022-11-27_18:01:58 MQTT2_HeishaMon Watt_1: 8
der Wert ist also da, nur bekomme ich den ums verrecken nicht angezeit, hätte es gerne in meinem Dashboard
define WP_aktueller_Verbrauch readingsGroup .*:MQTT2_HeishaMon.Watt_1
sehe den Wald vor Bäumen nicht mehr, oder Brett vorm Kopf
Wie möchtest du den aktuellen Leistungswert anzeigen?
eigentlicih egal, erst einmal nur das man den sieht
als SVG Grafik wird er schon angezeigt, aber nicht als einzelner Wert ZB in der Gruppe Verbrauch
Zitat von: Franz Tenbrock am 27 November 2022, 19:17:16
eigentlicih egal, erst einmal nur das man den sieht
als SVG Grafik wird er schon angezeigt, aber nicht als einzelner Wert ZB in der Gruppe Verbrauch
Also die aktuelle Leistung wird
nirgendwo innerhalb des di_counters errechnet, es geht nur um die Energie.
Hier habe ich mal aufgezeigt, wie man aktuelle Durchschnittsleistung aus einem Energiezähler errechnen kann:
https://forum.fhem.de/index.php/topic,97959.msg1225965.html#msg1225965
Hallo
der Wert muss nicht berechnet werden er existiert bereits als reading und erscheint auch im Filelog
Internals:
CID HeishaMon
DEF HeishaMon
FUUID 63823e8c-f33f-132e-893f-72ae412a57f4547b
IODev mqtt2s
LASTInputDev mqtt2s
MSGCNT 4178
NAME MQTT2_HeishaMon
NR 907
STATE ???
TYPE MQTT2_DEVICE
eventCount 4295
mqtt2s_CONN mqtt2s_192.168.10.53_62458
mqtt2s_MSGCNT 4178
mqtt2s_TIME 2022-11-27 19:48:56
OLDREADINGS:
2022-11-27 18:54:02 WatthourTotal_1 12999.00
READINGS:
2022-11-27 19:42:59 Buffer_Installed 0
2022-11-27 19:42:57 Buffer_Temp -78
2022-11-27 19:42:58 Bypass_Outlet_Temp -31
2022-11-27 19:42:58 Compressor_Current 0.0
2022-11-27 19:48:56 Compressor_Freq 0
2022-11-27 19:42:56 Cool_Delta 5
2022-11-27 19:42:57 Cool_Energy_Consumption 0
2022-11-27 19:42:57 Cool_Energy_Production 0
2022-11-27 19:42:59 Cool_To_Heat_Temp 10
2022-11-27 19:42:59 Cooling_Mode 0
2022-11-27 19:42:57 DHW_Energy_Consumption 0
2022-11-27 19:42:57 DHW_Energy_Production 0
2022-11-27 19:42:56 DHW_Heat_Delta -8
2022-11-27 19:42:59 DHW_Heater_Operations_Hours 0
2022-11-27 19:42:58 DHW_Heater_State 0
2022-11-27 19:42:57 DHW_Holiday_Shift_Temp -15
2022-11-27 19:42:59 DHW_Installed 0
2022-11-27 19:48:56 DHW_Target_Temp 52
2022-11-27 19:48:56 DHW_Temp -128
2022-11-27 19:42:57 Defrost_Temp -31
2022-11-27 19:42:57 Defrosting_State 0
2022-11-27 19:42:57 Discharge_Temp 9
2022-11-27 19:42:57 Error No error
2022-11-27 19:42:58 Eva_Outlet_Temp 10
2022-11-27 19:42:58 External_Heater_State 0
2022-11-27 19:42:58 Fan1_Motor_Speed 0
2022-11-27 19:42:58 Fan2_Motor_Speed 0
2022-11-27 19:48:56 Force_DHW_State 0
2022-11-27 19:42:58 Force_Heater_State 0
2022-11-27 19:42:56 Heat_Delta 3
2022-11-27 19:48:56 Heat_Energy_Consumption 0
2022-11-27 19:48:56 Heat_Energy_Production 0
2022-11-27 19:42:59 Heat_Pump_Model 20
2022-11-27 19:42:58 Heat_To_Cool_Temp 15
2022-11-27 19:42:59 Heater_Delay_Time 30
2022-11-27 19:42:58 Heater_On_Outdoor_Temp 0
2022-11-27 19:42:59 Heater_Start_Delta -4
2022-11-27 19:42:59 Heater_Stop_Delta -2
2022-11-27 19:42:58 Heating_Mode 0
2022-11-27 19:42:58 Heating_Off_Outdoor_Temp 35
2022-11-27 19:48:56 Heatpump_State 1
2022-11-27 19:42:58 High_Pressure 9.4
2022-11-27 19:42:56 Holiday_Mode_State 0
2022-11-27 18:34:37 IODev mqtt2s
2022-11-27 19:42:57 Inside_Pipe_Temp 22
2022-11-27 19:42:58 Internal_Heater_State 0
2022-11-27 19:42:58 Ipm_Temp 13
2022-11-27 19:48:55 LWT Online
2022-11-27 19:42:58 Low_Pressure 0
2022-11-27 19:42:57 Main_Hex_Outlet_Temp 28
2022-11-27 19:48:56 Main_Inlet_Temp 28
2022-11-27 19:48:56 Main_Outlet_Temp 27
2022-11-27 19:48:56 Main_Schedule_State 1
2022-11-27 19:48:56 Main_Target_Temp 35
2022-11-27 19:42:59 Max_Pump_Duty 150
2022-11-27 19:48:56 Operating_Mode_State 0
2022-11-27 19:48:56 Operations_Counter 165
2022-11-27 19:48:56 Operations_Hours 201
2022-11-27 19:42:56 Outside_Pipe_Temp 7
2022-11-27 19:48:56 Outside_Temp 8
2022-11-27 19:42:57 Pool_Temp -78
2022-11-27 19:42:56 Powerful_Mode_Time 0
2022-11-27 19:42:59 Pump_Duty 0
2022-11-27 19:48:56 Pump_Flow 0.13
2022-11-27 19:42:59 Pump_Flowrate_Mode 1
2022-11-27 19:42:58 Pump_Speed 0
2022-11-27 19:42:56 Quiet_Mode_Level 0
2022-11-27 19:48:56 Quiet_Mode_Schedule 0
2022-11-27 19:42:59 Room_Heater_Operations_Hours 0
2022-11-27 19:42:58 Room_Heater_State 0
2022-11-27 19:42:57 Room_Holiday_Shift_Temp -15
2022-11-27 19:42:57 Room_Thermostat_Temp 22
2022-11-27 19:42:59 Solar_Frost_Protection 5
2022-11-27 19:42:59 Solar_High_Limit 80
2022-11-27 19:42:59 Solar_Mode 0
2022-11-27 19:42:59 Solar_Off_Delta 5
2022-11-27 19:42:59 Solar_On_Delta 10
2022-11-27 19:42:57 Solar_Temp -78
2022-11-27 19:42:58 Sterilization_Max_Time 10
2022-11-27 19:42:58 Sterilization_State 0
2022-11-27 19:42:58 Sterilization_Temp 65
2022-11-27 19:42:56 ThreeWay_Valve_State 0
2022-11-27 19:47:35 Watt_1 8
2022-11-27 19:47:42 Watt_2 0
2022-11-27 04:25:22 Watth0m panas
2022-11-27 19:47:35 WatthourTotal_1 13007.00
2022-11-27 19:47:42 WatthourTotal_2 0.00
2022-11-27 19:47:35 Watthour_1 0.00
2022-11-27 19:47:42 Watthour_2 0.00
2022-11-27 19:42:58 Z1_Cool_Curve_Outside_High_Temp 30
2022-11-27 19:42:58 Z1_Cool_Curve_Outside_Low_Temp 20
2022-11-27 19:42:58 Z1_Cool_Curve_Target_High_Temp 15
2022-11-27 19:42:58 Z1_Cool_Curve_Target_Low_Temp 10
2022-11-27 19:42:57 Z1_Cool_Request_Temp 28
2022-11-27 19:42:57 Z1_Heat_Curve_Outside_High_Temp 15
2022-11-27 19:42:57 Z1_Heat_Curve_Outside_Low_Temp -1
2022-11-27 19:42:57 Z1_Heat_Curve_Target_High_Temp 37
2022-11-27 19:42:57 Z1_Heat_Curve_Target_Low_Temp 33
2022-11-27 19:42:57 Z1_Heat_Request_Temp 22
2022-11-27 19:42:58 Z1_Temp 22
2022-11-27 19:42:57 Z1_Water_Target_Temp 35
2022-11-27 19:42:57 Z1_Water_Temp -78
2022-11-27 19:42:59 Z2_Cool_Curve_Outside_High_Temp 30
2022-11-27 19:42:59 Z2_Cool_Curve_Outside_Low_Temp 20
2022-11-27 19:42:59 Z2_Cool_Curve_Target_High_Temp 15
2022-11-27 19:42:59 Z2_Cool_Curve_Target_Low_Temp 10
2022-11-27 19:42:57 Z2_Cool_Request_Temp 0
2022-11-27 19:42:59 Z2_Heat_Curve_Outside_High_Temp 15
2022-11-27 19:42:59 Z2_Heat_Curve_Outside_Low_Temp -5
2022-11-27 19:42:59 Z2_Heat_Curve_Target_High_Temp 55
2022-11-27 19:42:59 Z2_Heat_Curve_Target_Low_Temp 35
2022-11-27 19:42:57 Z2_Heat_Request_Temp 0
2022-11-27 19:42:58 Z2_Temp -128
2022-11-27 19:42:57 Z2_Water_Target_Temp 42
2022-11-27 19:42:57 Z2_Water_Temp -78
2022-11-27 19:42:59 Zones_State 0
2022-11-27 19:48:55 bad_crc_reads 0
2022-11-27 19:48:55 bad_header_reads 282
2022-11-27 19:47:56 data q�V�RIUYUUUUe)�����qq��������{x~yy�������{���������������=x�~||~UUU!xYe��4e���e����22��222�������a�a�0"yy��
2022-11-27 19:48:55 free_heap 27480
2022-11-27 19:48:55 free_memory 69
2022-11-27 19:48:55 good_reads 8074
2022-11-27 19:48:55 ip 192.168.10.53
2022-11-27 07:38:17 json2nameValueErrorText json2nameValue: no closing } found
2022-11-27 07:38:17 json2nameValueInput {"uptime":126849843,"voltage":3.42,"free memory":71,"free heap":28456,"wifi":98,"mqtt reconnects":371,"total reads":6334,"good reads":6328,"bad crc reads":0,0\panasonic_heat_pump/logSun Nov 27 06:38:17 2022 (126855326): Requesting new
2022-11-27 19:48:56 log Sun Nov 27 18:48:56 2022 (170693513): received TOP16 Heat_Energy_Consumption: 0
2022-11-27 19:48:55 mqtt_reconnects 497
2022-11-27 18:35:37 subscriptions panasonic_heat_pump/SendRawValue panasonic_heat_pump/commands/# panasonic_heat_pump/opentherm/#
2022-11-27 19:48:55 timeout_reads 4
2022-11-27 19:48:55 too_long_reads 1
2022-11-27 19:48:55 too_short_reads 1
2022-11-27 19:48:55 total_reads 8080
2022-11-27 19:48:55 uptime 170692953
2022-11-27 19:48:55 voltage 3.42
2022-11-27 19:48:55 wifi 100
Attributes:
eventMap WatthourTotal_1
readingList HeishaMon:panasonic_heat_pump/log:.* log
HeishaMon:panasonic_heat_pump/LWT:.* LWT
HeishaMon:panasonic_heat_pump/ip:.* ip
HeishaMon:panasonic_heat_pump/stats:.* { json2nameValue($EVENT) }
HeishaMon:panasonic_heat_pump/main/Main_Inlet_Temp:.* Main_Inlet_Temp
HeishaMon:panasonic_heat_pump/raw/data:.* data
HeishaMon:panasonic_heat_pump/s0/Watthour/2:.* Watthour_2
HeishaMon:panasonic_heat_pump/s0/WatthourTotal/2:.* WatthourTotal_2
HeishaMon:panasonic_heat_pump/s0/Watt/2:.* Watt_2
HeishaMon:panasonic_heat_pump/s0/Watthour/1:.* Watthour_1
HeishaMon:panasonic_heat_pump/s0/WatthourTotal/1:.* WatthourTotal_1
HeishaMon:panasonic_heat_pump/s0/Watt/1:.* Watt_1
HeishaMon:panasonic_heat_pump/main/Heatpump_State:.* Heatpump_State
HeishaMon:panasonic_heat_pump/main/Pump_Flow:.* Pump_Flow
HeishaMon:panasonic_heat_pump/main/Force_DHW_State:.* Force_DHW_State
HeishaMon:panasonic_heat_pump/main/Quiet_Mode_Schedule:.* Quiet_Mode_Schedule
HeishaMon:panasonic_heat_pump/main/Operating_Mode_State:.* Operating_Mode_State
HeishaMon:panasonic_heat_pump/main/Main_Outlet_Temp:.* Main_Outlet_Temp
HeishaMon:panasonic_heat_pump/main/Main_Target_Temp:.* Main_Target_Temp
HeishaMon:panasonic_heat_pump/main/Compressor_Freq:.* Compressor_Freq
HeishaMon:panasonic_heat_pump/main/DHW_Target_Temp:.* DHW_Target_Temp
HeishaMon:panasonic_heat_pump/main/DHW_Temp:.* DHW_Temp
HeishaMon:panasonic_heat_pump/main/Operations_Hours:.* Operations_Hours
HeishaMon:panasonic_heat_pump/main/Operations_Counter:.* Operations_Counter
HeishaMon:panasonic_heat_pump/main/Main_Schedule_State:.* Main_Schedule_State
HeishaMon:panasonic_heat_pump/main/Outside_Temp:.* Outside_Temp
HeishaMon:panasonic_heat_pump/main/Heat_Energy_Production:.* Heat_Energy_Production
HeishaMon:panasonic_heat_pump/main/Heat_Energy_Consumption:.* Heat_Energy_Consumption
HeishaMon:panasonic_heat_pump/main/Powerful_Mode_Time:.* Powerful_Mode_Time
HeishaMon:panasonic_heat_pump/main/Quiet_Mode_Level:.* Quiet_Mode_Level
HeishaMon:panasonic_heat_pump/main/Holiday_Mode_State:.* Holiday_Mode_State
HeishaMon:panasonic_heat_pump/main/ThreeWay_Valve_State:.* ThreeWay_Valve_State
HeishaMon:panasonic_heat_pump/main/Outside_Pipe_Temp:.* Outside_Pipe_Temp
HeishaMon:panasonic_heat_pump/main/DHW_Heat_Delta:.* DHW_Heat_Delta
HeishaMon:panasonic_heat_pump/main/Heat_Delta:.* Heat_Delta
HeishaMon:panasonic_heat_pump/main/Cool_Delta:.* Cool_Delta
HeishaMon:panasonic_heat_pump/main/DHW_Holiday_Shift_Temp:.* DHW_Holiday_Shift_Temp
HeishaMon:panasonic_heat_pump/main/Defrosting_State:.* Defrosting_State
HeishaMon:panasonic_heat_pump/main/Z1_Heat_Request_Temp:.* Z1_Heat_Request_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Cool_Request_Temp:.* Z1_Cool_Request_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Heat_Curve_Target_High_Temp:.* Z1_Heat_Curve_Target_High_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Heat_Curve_Target_Low_Temp:.* Z1_Heat_Curve_Target_Low_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Heat_Curve_Outside_High_Temp:.* Z1_Heat_Curve_Outside_High_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Heat_Curve_Outside_Low_Temp:.* Z1_Heat_Curve_Outside_Low_Temp
HeishaMon:panasonic_heat_pump/main/Room_Thermostat_Temp:.* Room_Thermostat_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Heat_Request_Temp:.* Z2_Heat_Request_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Cool_Request_Temp:.* Z2_Cool_Request_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Water_Temp:.* Z1_Water_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Water_Temp:.* Z2_Water_Temp
HeishaMon:panasonic_heat_pump/main/Cool_Energy_Production:.* Cool_Energy_Production
HeishaMon:panasonic_heat_pump/main/Cool_Energy_Consumption:.* Cool_Energy_Consumption
HeishaMon:panasonic_heat_pump/main/DHW_Energy_Production:.* DHW_Energy_Production
HeishaMon:panasonic_heat_pump/main/DHW_Energy_Consumption:.* DHW_Energy_Consumption
HeishaMon:panasonic_heat_pump/main/Z1_Water_Target_Temp:.* Z1_Water_Target_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Water_Target_Temp:.* Z2_Water_Target_Temp
HeishaMon:panasonic_heat_pump/main/Error:.* Error
HeishaMon:panasonic_heat_pump/main/Room_Holiday_Shift_Temp:.* Room_Holiday_Shift_Temp
HeishaMon:panasonic_heat_pump/main/Buffer_Temp:.* Buffer_Temp
HeishaMon:panasonic_heat_pump/main/Solar_Temp:.* Solar_Temp
HeishaMon:panasonic_heat_pump/main/Pool_Temp:.* Pool_Temp
HeishaMon:panasonic_heat_pump/main/Main_Hex_Outlet_Temp:.* Main_Hex_Outlet_Temp
HeishaMon:panasonic_heat_pump/main/Discharge_Temp:.* Discharge_Temp
HeishaMon:panasonic_heat_pump/main/Inside_Pipe_Temp:.* Inside_Pipe_Temp
HeishaMon:panasonic_heat_pump/main/Defrost_Temp:.* Defrost_Temp
HeishaMon:panasonic_heat_pump/main/Eva_Outlet_Temp:.* Eva_Outlet_Temp
HeishaMon:panasonic_heat_pump/main/Bypass_Outlet_Temp:.* Bypass_Outlet_Temp
HeishaMon:panasonic_heat_pump/main/Ipm_Temp:.* Ipm_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Temp:.* Z1_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Temp:.* Z2_Temp
HeishaMon:panasonic_heat_pump/main/DHW_Heater_State:.* DHW_Heater_State
HeishaMon:panasonic_heat_pump/main/Room_Heater_State:.* Room_Heater_State
HeishaMon:panasonic_heat_pump/main/Internal_Heater_State:.* Internal_Heater_State
HeishaMon:panasonic_heat_pump/main/External_Heater_State:.* External_Heater_State
HeishaMon:panasonic_heat_pump/main/Fan1_Motor_Speed:.* Fan1_Motor_Speed
HeishaMon:panasonic_heat_pump/main/Fan2_Motor_Speed:.* Fan2_Motor_Speed
HeishaMon:panasonic_heat_pump/main/High_Pressure:.* High_Pressure
HeishaMon:panasonic_heat_pump/main/Pump_Speed:.* Pump_Speed
HeishaMon:panasonic_heat_pump/main/Low_Pressure:.* Low_Pressure
HeishaMon:panasonic_heat_pump/main/Compressor_Current:.* Compressor_Current
HeishaMon:panasonic_heat_pump/main/Force_Heater_State:.* Force_Heater_State
HeishaMon:panasonic_heat_pump/main/Sterilization_State:.* Sterilization_State
HeishaMon:panasonic_heat_pump/main/Sterilization_Temp:.* Sterilization_Temp
HeishaMon:panasonic_heat_pump/main/Sterilization_Max_Time:.* Sterilization_Max_Time
HeishaMon:panasonic_heat_pump/main/Z1_Cool_Curve_Target_High_Temp:.* Z1_Cool_Curve_Target_High_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Cool_Curve_Target_Low_Temp:.* Z1_Cool_Curve_Target_Low_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Cool_Curve_Outside_High_Temp:.* Z1_Cool_Curve_Outside_High_Temp
HeishaMon:panasonic_heat_pump/main/Z1_Cool_Curve_Outside_Low_Temp:.* Z1_Cool_Curve_Outside_Low_Temp
HeishaMon:panasonic_heat_pump/main/Heating_Mode:.* Heating_Mode
HeishaMon:panasonic_heat_pump/main/Heating_Off_Outdoor_Temp:.* Heating_Off_Outdoor_Temp
HeishaMon:panasonic_heat_pump/main/Heater_On_Outdoor_Temp:.* Heater_On_Outdoor_Temp
HeishaMon:panasonic_heat_pump/main/Heat_To_Cool_Temp:.* Heat_To_Cool_Temp
HeishaMon:panasonic_heat_pump/main/Cool_To_Heat_Temp:.* Cool_To_Heat_Temp
HeishaMon:panasonic_heat_pump/main/Cooling_Mode:.* Cooling_Mode
HeishaMon:panasonic_heat_pump/main/Z2_Heat_Curve_Target_High_Temp:.* Z2_Heat_Curve_Target_High_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Heat_Curve_Target_Low_Temp:.* Z2_Heat_Curve_Target_Low_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Heat_Curve_Outside_High_Temp:.* Z2_Heat_Curve_Outside_High_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Heat_Curve_Outside_Low_Temp:.* Z2_Heat_Curve_Outside_Low_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Cool_Curve_Target_High_Temp:.* Z2_Cool_Curve_Target_High_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Cool_Curve_Target_Low_Temp:.* Z2_Cool_Curve_Target_Low_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Cool_Curve_Outside_High_Temp:.* Z2_Cool_Curve_Outside_High_Temp
HeishaMon:panasonic_heat_pump/main/Z2_Cool_Curve_Outside_Low_Temp:.* Z2_Cool_Curve_Outside_Low_Temp
HeishaMon:panasonic_heat_pump/main/Room_Heater_Operations_Hours:.* Room_Heater_Operations_Hours
HeishaMon:panasonic_heat_pump/main/DHW_Heater_Operations_Hours:.* DHW_Heater_Operations_Hours
HeishaMon:panasonic_heat_pump/main/Heat_Pump_Model:.* Heat_Pump_Model
HeishaMon:panasonic_heat_pump/main/Pump_Duty:.* Pump_Duty
HeishaMon:panasonic_heat_pump/main/Zones_State:.* Zones_State
HeishaMon:panasonic_heat_pump/main/Max_Pump_Duty:.* Max_Pump_Duty
HeishaMon:panasonic_heat_pump/main/Heater_Delay_Time:.* Heater_Delay_Time
HeishaMon:panasonic_heat_pump/main/Heater_Start_Delta:.* Heater_Start_Delta
HeishaMon:panasonic_heat_pump/main/Heater_Stop_Delta:.* Heater_Stop_Delta
HeishaMon:panasonic_heat_pump/main/Buffer_Installed:.* Buffer_Installed
HeishaMon:panasonic_heat_pump/main/DHW_Installed:.* DHW_Installed
HeishaMon:panasonic_heat_pump/main/Solar_Mode:.* Solar_Mode
HeishaMon:panasonic_heat_pump/main/Solar_On_Delta:.* Solar_On_Delta
HeishaMon:panasonic_heat_pump/main/Solar_Off_Delta:.* Solar_Off_Delta
HeishaMon:panasonic_heat_pump/main/Solar_Frost_Protection:.* Solar_Frost_Protection
HeishaMon:panasonic_heat_pump/main/Solar_High_Limit:.* Solar_High_Limit
HeishaMon:panasonic_heat_pump/main/Pump_Flowrate_Mode:.* Pump_Flowrate_Mode
room MQTT2_DEVICE,Verbrauch
das hier ist ein Ausschnitt von dem list oben:
2022-11-27 19:47:35 Watt_1 8
2022-11-27 19:47:42 Watt_2 0
2022-11-27 04:25:22 Watth0m panas
2022-11-27 19:47:35 WatthourTotal_1 13007.00
2022-11-27 19:47:42 WatthourTotal_2 0.00
2022-11-27 19:47:35 Watthour_1 0.00
2022-11-27 19:47:42 Watthour_2 0.00
es geht nur darum wie kann ich den in der Gruppe Verbrauch anzeigen so wie die anderen Werte die von deinem Tool mitgeschrieben werden, das ist ja ein Wert der auch nicht aufsummiert werden muss
mehr nicht
so nun habe ich es
die Schreibweise war halt falsch, im Wiki die Beispiele durchgeackert
define WP_now readingsGroup MQTT2_HeishaMon.*:Watt_1
so funktioniert es nun .*:
wenn man wüsste was das genau bedeutet :P
egal !
cool wäre auch wenn der Wert vom aktuellen Tag so lange grün angezeit wird wie er unter dem Vortag liegt
sicher auch ganz easy
jetzt muss ich erst mal sehen wie ich über FHEM der WP sagen kann was sie zu tun hat.
ich habe die Readings ja nun alle einzeln ausgewertet,
da es nun klappt werde ich wohl alles in einem define zusammenfassen
Zitat von: Franz Tenbrock am 27 November 2022, 21:56:05
ich habe die Readings ja nun alle einzeln ausgewertet,
da es nun klappt werde ich wohl alles in einem define zusammenfassen
OK. Da haben wir uns missverstanden, ich dachte, du wolltest es auch über die card-Funktion visualisieren, so wie in meinem Wiki-Beitrag.
die Card Funktion ist cool
aber eins nach dem anderen,
muss in der Woche erst einmal Brötchen verdienen
Hallo
nachdem ich nun wieder mal was in der Pause gelesen habe wird mir noch nicht ganz klar wie ich das definieren muss, die Command Ref Sprache ist leider immer noch eine holprige Fremdsprache für mich
ev kann es mit ja jemand erläutern
ich habe diese Definition aus dem Wiki
define wzTemperaturenRG readingsGroup Aussen:,<Temperatur>,temperature,<Luftfeuchte>,humidity Wohnzimmer:,<Temperatur>,temperature,<Luftfeuchte>,humidity Kasten_E_Geraete:,<Temperatur>,temperature,<Luftfeuchte>,humidity
das würde ich dann so auflösen:
define wzTemperaturenRG readingsGroup Zeilentitel:,Zeilenwert1,Reading1,Zeilenwert2,Reading2, Zeilentitel2:,Zeilenwert21,Reading21,Zeilenwert22,Reading22, Zeilentitel3:,Zeilenwert31,Reading31,Zeilenwert32,Reading32
und während ich das hier schreibe fällt mit der Doppelpunkt auf, der steht hinter dem Zeilentitel, was danach kommt ist Bezeichnung und Wert
Sorry, ich lass es trotzdem mal stehen für andere dummys ::)
dann will ich das heute abend mal probieren zu definieren.
Zitat von: Franz Tenbrock am 28 November 2022, 15:38:12
Hallo
nachdem ich nun wieder mal was in der Pause gelesen habe wird mir noch nicht ganz klar wie ich das definieren muss, die Command Ref Sprache ist leider immer noch eine holprige Fremdsprache für mich
ev kann es mit ja jemand erläutern
ich habe diese Definition aus dem Wiki
define wzTemperaturenRG readingsGroup Aussen:,<Temperatur>,temperature,<Luftfeuchte>,humidity Wohnzimmer:,<Temperatur>,temperature,<Luftfeuchte>,humidity Kasten_E_Geraete:,<Temperatur>,temperature,<Luftfeuchte>,humidity
das würde ich dann so auflösen:
define wzTemperaturenRG readingsGroup Zeilentitel:,Zeilenwert1,Reading1,Zeilenwert2,Reading2, Zeilentitel2:,Zeilenwert21,Reading21,Zeilenwert22,Reading22, Zeilentitel3:,Zeilenwert31,Reading31,Zeilenwert32,Reading32
und während ich das hier schreibe fällt mit der Doppelpunkt auf, der steht hinter dem Zeilentitel, was danach kommt ist Bezeichnung und Wert
Sorry, ich lass es trotzdem mal stehen für andere dummys ::)
dann will ich das heute abend mal probieren zu definieren.
Readingsgroup ist eine andere Baustelle. Ich würde im entsprechenden Unterforum fragen. Ich persönlich benutze Readingsgroup nicht, daher kann ich nicht helfen.
du hast ja was besseres ;D
werde ich mir auch noch anschauen !
für andere die auch so begriffsstutig sind wie ich
hier für dummys
wenn man es einmal verstanden hat dann geht es
die Sortierung ist noch nicht richtig, aber das ist das kleinste Problem, einfach Bezeichungen ändern und anders sortieren, mache ich später noch ;)
da ich mit der Command Ref echt so meine Probleme hatte wie das alles zu verstehen ist hier mal der gesamte Code aus der fhem.cfg
define WP_Gesamt readingsGroup MQTT2_HeishaMon.*:,<aktueller_Wert:>,Watt_1,\
di_counter_new:,<heute:>,MQTT2_HeishaMon.WatthourTotal_1.day\
di_counter_new:,<gestern:>,MQTT2_HeishaMon.WatthourTotal_1.day_counter\
di_counter_new:,<vorgestern:>,MQTT2_HeishaMon.WatthourTotal_1.last_day\
di_counter_new:,<Monat:>,MQTT2_HeishaMon.WatthourTotal_1.month_counter\
di_counter_new:,<Vor_Monat:>,MQTT2_HeishaMon.WatthourTotal_1.last_month\
di_counter_new:,<akt_Monat:>,MQTT2_HeishaMon.WatthourTotal_1.month_counter\
di_counter_new:,<Jahr:>,MQTT2_HeishaMon.WatthourTotal_1.last_counter
setuuid WP_Gesamt 6384d326-f33f-132e-a30a-7ef8a8912fc51214
attr WP_Gesamt mapping  
attr WP_Gesamt room A_Test
anbei auch ein paar Bilder wie es in fhem bei der Definition aussieht.
gar nicht so schwer wenn man es einmal gemacht hat
jetzt muss ich noch verstehen wie man die Anzeige in KWh umrechnet und anzeigt und dann würde ich gerne die Anzeigewerte grün und rot darstellen, heutige Werte grün so lange wie ich nicht mehr als gestern verbraucht habe..
ggf probiere ich aber auch die Cards vorher aus 8)
und das ändern der Vorwerte klappt nun auch:
setreading di_counter_new MQTT2_HeishaMon.WatthourTotal_1.last_counter 2009532.5
wird doch
nächster Schritt
und wieder was gelernt
setzen der readings :
setreading di_counter_new MQTT2_HeishaMon.WatthourTotal_1.last_counter 219000
Umrechnung in KWh leider noch ohneFormatierung auf 2 Stellen (alles schon probier ?! )
attr valueFormat {(my $NewValue = $VALUE / 1000)}
und mit
attr valueSuffix ..KWh
dann wollen wir mal schauen ob ich das mit den cards auch schaffe
das ging ja rucki zucki
keine Ahnung ob das stimmt, wird sich dann die Tage zeigen,
aber so ganz verkehrt sieht es nicht aus
8)
und da ich immer noch ganz gerne in der FHEM.cfg rum schreibe, hat hier ja auch wieder geklappt der code (Damians abgewandelter Code für meine Panasonic WP mit Heishamon ) für alle
####################################################################################
############# di_counter_new
####################################################################################
define di_counter_new DOIF subs {\
## Device Reading \
push (@{$_counter},["MQTT2_HeishaMon","WatthourTotal_1"]);; ## WP_Zähler\
push (@{$_counter},["MQTT2_HeishaMon","Watt_1"]);; ## WP_Zähler akut \
\
sub midnight { ## Diese Funktion wird um Mitternacht ausgeführt\
my ($device,$reading,$mday,$yday)=@_;;\
set_Reading("$device.$reading.day_counter",ReadingsVal($device, $reading,1));; \
set_Reading("$device.$reading.last_day",get_Reading("$device.$reading.day",0),1);;\
set_Reading("$device.$reading.day",0,1);;\
set_Reading ("$device.$reading.month",int((ReadingsVal($device, $reading,0)-(get_Reading("$device.$reading.month_counter",0)))*1000)/1000,1);;\
set_Reading ("$device.$reading.year",int((ReadingsVal($device, $reading,0)-(get_Reading("$device.$reading.year_counter",0)))*1000)/1000,1);;\
\
if ($mday == 1) {\
set_Reading("$device.$reading.month_counter",ReadingsVal($device, $reading,0));;\
set_Reading("$device.$reading.last_month",get_Reading("$device.$reading.month",0),1);;\
set_Reading("$device.$reading.month",0,1);;\
}\
if ($yday == 1) {\
set_Reading("$device.$reading.year_counter",ReadingsVal($device, $reading,0));;\
set_Reading("$device.$reading.last_year",get_Reading("$device.$reading.year",0),1);;\
set_Reading("$device.$reading.year",0,1);;\
}\
}\
\
sub init_readings {\
my ($device,$reading)=@_;;\
if (get_Reading("$device.$reading.day_counter","") eq "") { ## Initialisierung der Readings\
## aktuellen Zählerstand initialisieren\
set_Reading("$device.$reading.last_counter",ReadingsVal($device, $reading,0));;\
set_Reading("$device.$reading.day_counter",ReadingsVal($device, $reading,0));; \
set_Reading("$device.$reading.month_counter",ReadingsVal($device, $reading,0));;\
set_Reading("$device.$reading.year_counter",ReadingsVal($device, $reading,0));;\
\
set_Reading ("$device.$reading.day",0);; ## aktueller Tagesverbrauch\
set_Reading ("$device.$reading.month",0);; ## aktueller Monatsverbrauch\
set_Reading ("$device.$reading.year",0);; ## aktueller Jahresverbrauch\
set_Reading ("$device.$reading.last_day",0);; ## Verbrauch des letzten Tages\
set_Reading ("$device.$reading.last_month",0);; ## Verbrauch des letzten Monats\
set_Reading ("$device.$reading.last_year",0);; ## Verbrauch des letzten Jahres\
## Log definieren\
fhem ("defmod log.counter.$device.$reading FileLog ./log/counter.$device.$reading.log $SELF:$device.$reading.(last_(day|month|year)|(day|month)_counter):.*");;\
fhem ("attr log.counter.$device.$reading room Filelogs");;\
## Tasmota-Zähler setzen: set MQTT2_FHEM_Server publish cmnd/tasmota_C58DCB/Counter1 <Zählerstand>\
}\
\
}\
} ## Ende subs-Block\
\
mid {[00:01];; ## Sicherung der Daten um Mitternacht\
for (my $i=0;;$i<@{$_counter};;$i++) { ## Für jeden Zähler wird die Funktion midnight aufgerufen\
midnight($_counter[$i][0],$_counter[$i][1],$mday,$yday);;\
}\
}\
\
init { ## initialisierung aller Readings\
for (my $i=0;;$i<@{$_counter};;$i++) {## Für jeden Zähler werden Readings über die Funktion init_readings initialisiert\
init_readings($_counter[$i][0],$_counter[$i][1]);;\
}\
}\
\
DEF TPL_stat (\
day_count_$1_$2 { ## bei einem Event des Zählers, wird der tägliche, monatliche und jährliche Verbrauch im jeweiligen Reading festgehalten\
## $1 Zählerdevice, $2 Zählerreading\
\
my $diff = int(([$1:$2,0]-(get_Reading("$1.$2.last_counter",0)))*1000)/1000;;\
##if ($diff < 0 and get_Reading("$1.$2.last_counter",0) > 0 or $diff > 0 and get_Reading("$1.$2.last_counter",0) < 0) { ## Wenn der Zähler zurückgesetzt wurde, dann Zählerstände zurückrechnen\
## set_Reading("$1.$2.day_counter",-(get_Reading("$1.$2.day",0)));;\
## set_Reading("$1.$2.month_counter",-(get_Reading("$1.$2.month",0)));;\
## set_Reading("$1.$2.year_counter",-(get_Reading("$1.$2.year",0)));;\
## } else {\
set_Reading ("$1.$2.last_counter",[$1:$2,0]);;\
set_Reading ("$1.$2.day",int(([$1:$2,0]-(get_Reading("$1.$2.day_counter",0)))*1000)/1000,1);;\
set_Reading ("$1.$2.month",int(([$1:$2,0]-(get_Reading("$1.$2.month_counter",0)))*1000)/1000,1);;\
set_Reading ("$1.$2.year",int(([$1:$2,0]-(get_Reading("$1.$2.year_counter",0)))*1000)/1000,1);;\
}\
##}\
)\
\
\
\
## Pro Zähler wird über eine FOR-Schleife ein day_count_<Device>_<Reading>-Block generiert\
FOR(@{$_counter},TPL_stat($1$1,$1$2)) ## $1$1 entspricht dem Device, $1$2 entspricht dem Reading
setuuid di_counter_new 638280e4-f33f-132e-6f6c-3dd45d996808d19e
attr di_counter_new room A_Test
########################### Cards ######################
attr di_counter_new uiTable {package ui_Table;;$ANIMATE=0} ## Optionale Visualisierung der Energie-Verbräuche/-Produktion im DOIF-Device\
card([[di_counter_new:MQTT2_HeishaMon.WatthourTotal_1:col1w],[di_counter_new:MQTT2_HeishaMon.WatthourTotal_1:col1w]],"Elektrizität Tagesverlauf in KWh",undef,-10,25,0,90,["Ertrag","Bezug"],undef,"1","130,1,1,0,1,,200","0,0,0,0,2")|\
card([[di_counter_new:MQTT2_HeishaMon.WatthourTotal_1.last_day:col4w],[di_counter_new:MQTT2_HeishaMon.WatthourTotal_1.last_day:col4w]],"Elektrizität in kWh pro Tag",undef,-10,25,0,90,["Ertrag","Bezug"],undef,"1","130,1,1,0,1,0,180","0,0,0,0,2")|\
card([[di_counter_new:MQTT2_HeishaMon.WatthourTotal_1.last_month:col365d],[di_counter_new:MQTT2_HeishaMon.WatthourTotal_1.last_month:col365d]],"Elektrizität in kWh pro Monat",undef,-200,400,0,90,["Ertrag","Bezug"],undef,"0","130,1,1,0,1,0,180","0,0,0,0,2")\
#######################################################################################
################## WP Readingsgroup
#######################################################################################
define WP_Gesamt readingsGroup MQTT2_HeishaMon.*:,<aktueller_Wert:>,Watt_1,\
di_counter_new:,<heute:>,MQTT2_HeishaMon.WatthourTotal_1.day\
di_counter_new:,<gestern:>,MQTT2_HeishaMon.WatthourTotal_1.last_day\
di_counter_new:,<vorgestern:>,MQTT2_HeishaMon.WatthourTotal_1.day_counter\
di_counter_new:,<Monat:>,MQTT2_HeishaMon.WatthourTotal_1.month_counter\
di_counter_new:,<Vor_Monat:>,MQTT2_HeishaMon.WatthourTotal_1.last_month\
di_counter_new:,<Jahr:>,MQTT2_HeishaMon.WatthourTotal_1.last_counter
setuuid WP_Gesamt 6384d326-f33f-132e-a30a-7ef8a8912fc51214
attr WP_Gesamt group Wärmepumpe
attr WP_Gesamt mapping  
attr WP_Gesamt room A_Test
attr WP_Gesamt valueFormat {(my $NewValue = $VALUE / 1000)}
attr WP_Gesamt valueStyle style="text-align:right"
attr WP_Gesamt valueSuffix ..KWh
Bild vergessen