[gelöst] ModbusAttr: Enum Liste, Status Wert zu Text

Begonnen von andi11, 21 Mai 2022, 08:24:10

Vorheriges Thema - Nächstes Thema

andi11

Hallo,
ich kann dank des Moduls jetzt erfolgreich meinen Solis RHI Hybridwechselrichter auslesen.
Ein kleiner Schönheitsfehler bleibt noch, ich würde gerne den Status in Klartext übersetzen:

attr BatterieWR obj-i33095-len 1
attr BatterieWR obj-i33095-poll 1
attr BatterieWR obj-i33095-reading Status
dabei entspricht:
0 =>Waiting
1 => Open Loop
2 => Soft start
.....


Gibts da eine clevere Alternative zu Userreading mit switch?

ch.eick

Zitat von: andi11 am 21 Mai 2022, 08:24:10
Hallo,
ich kann dank des Moduls jetzt erfolgreich meinen Solis RHI Hybridwechselrichter auslesen.
Ein kleiner Schönheitsfehler bleibt noch, ich würde gerne den Status in Klartext übersetzen:

attr BatterieWR obj-i33095-len 1
attr BatterieWR obj-i33095-poll 1
attr BatterieWR obj-i33095-reading Status
dabei entspricht:
0 =>Waiting
1 => Open Loop
2 => Soft start
.....


Gibts da eine clevere Alternative zu Userreading mit switch?
Hallo Andi,

hier mal eine Anregung aus der Definition meines WRs

obj-h104-format %s
obj-h104-map 0:Normal,8:Ruhe1,16:Ruhe2,32:Ausgleichsladung,64:Tiefentladeschutz
obj-h104-reading State_of_EM
obj-h104-revRegs 0
obj-h104-unpack N


VG
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

rudolfkoenig

Generisch kann man sowas auch mit eventMap machen: https://fhem.de/commandref_modular.html#eventMap
Vermulich sind die Modul-Attribute aber hier die bessere Loesung.

andi11

vielen Dank an euch beide, ich hab jetzt die Modullösung genommen. Beides ist deutlich besser als per Userreading:
attr BatterieWR obj-i33095-map 0:Waiting,1:OpenRun,2:Softrun,3:Generating,4100:OffGrid

Loetkolben

Hallo zusammen,
ich werde vermutlich von einem Solax-WR auf einen Solis-WR umsteigen, habe gerade einen zum Test angeschlossen.
Über den LAN-Stick läuft ModBus-TCP und ich bekomme auch schon so einiges an Readings.
So ein paar Sachen sind mir allerdings noch nicht so klar und daher die Frage ob mir jemand mal seine Attr-Liste zur Verfügung stellen könnte.
Einige Readings werden bei mir nicht automatisch aktulisiert, z.B. 'Actual power'.

Das oben mit dem Inverstatus hat schon geholfen :-)

Ein List von meinem Device (keine Ahnung ob da alle Atribute so sinnvoll mir eingestellt sind)
Internals:
   .AttrList  do_not_notify:1,0 IODev queueMax alignTime enableControlSet:0,1 enableSetInactive:0,1 nonPrioritizedSet:0,1 nonPrioritizedGet:0,1 sortUpdate:0,1 cacheUpdateHash:0,1 cacheParseInfo:0,1 propagateVerbose:0,1 connectionsRoom serverIdExpr scanDelay disable:0,1 event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading obj-[cdih][0-9]+-reading obj-[cdih][0-9]+-name obj-[cdih][0-9]+-min obj-[cdih][0-9]+-max obj-[cdih][0-9]+-hint obj-[cdih][0-9]+-map obj-[cdih][0-9]+-mapDefault obj-[cdih][0-9]+-rmapDefault obj-[cdih][0-9]+-set obj-[cdih][0-9]+-setexpr obj-[cdih][0-9]+-textArg obj-[cdih][0-9]+-revRegs obj-[cdih][0-9]+-bswapRegs obj-[cdih][0-9]+-len obj-[cdih][0-9]+-unpack obj-[cdih][0-9]+-decode obj-[cdih][0-9]+-encode obj-[cdih][0-9]+-expr obj-[cdih][0-9]+-ignoreExpr obj-[cdih][0-9]+-format obj-[cdih][0-9]+-type obj-[cdih][0-9]+-showGet obj-[cdih][0-9]+-allowWrite obj-[cdih][0-9]+-group obj-[cdih][0-9]+-poll obj-[cdih][0-9]+-polldelay obj-[cdih][0-9]+-overrideFCread obj-[cdih][0-9]+-overrideFCwrite dev-([cdih]-)?read dev-([cdih]-)?write dev-([cdih]-)?combine dev-([cdih]-)?allowShortResponses dev-([cdih]-)?addressErrCode dev-([cdih]-)?valueErrCode dev-([cdih]-)?notAllowedErrCode dev-([cdih]-)?defRevRegs dev-([cdih]-)?defBswapRegs dev-([cdih]-)?defLen dev-([cdih]-)?defUnpack dev-([cdih]-)?defDecode dev-([cdih]-)?defEncode dev-([cdih]-)?defExpr dev-([cdih]-)?defSet dev-([cdih]-)?defHint dev-([cdih]-)?defSetexpr dev-([cdih]-)?defIgnoreExpr dev-([cdih]-)?defFormat dev-([cdih]-)?defShowGet dev-([cdih]-)?defAllowWrite dev-([cdih]-)?defPoll dev-([cdih]-)?defPolldelay dev-h-brokenFC3 dev-d-brokenFC2 dev-c-brokenFC5 dev-type-[A-Za-z0-9_]+-unpack dev-type-[A-Za-z0-9_]+-len dev-type-[A-Za-z0-9_]+-encode dev-type-[A-Za-z0-9_]+-decode dev-type-[A-Za-z0-9_]+-revRegs dev-type-[A-Za-z0-9_]+-bswapRegs dev-type-[A-Za-z0-9_]+-format dev-type-[A-Za-z0-9_]+-expr dev-type-[A-Za-z0-9_]+-map dev-type-[A-Za-z0-9_]+-hint dev-type-[A-Za-z0-9_]+-set dev-timing-timeout dev-timing-serverTimeout dev-timing-serverTimeoutAbs dev-timing-sendDelay dev-timing-commDelay queueDelay queueMax queueTimeout busDelay clientSwitchDelay frameGap dropQueueDoubles:0,1 enableQueueLengthReading:0,1 retriesAfterTimeout profileInterval openTimeout nextOpenDelay nextOpenDelay2 maxTimeoutsToReconnect skipGarbage:0,1 requestDelay timeoutLogLevel:3,4 closeAfterResponse:0,1,2 silentReconnect:0,1
   .FhemMetaInternals 1
   .LastUpdate 1680510778.51184
   .TRIGGERTIME 1680510808.51184
   .getList   AC_output_type:noArg DC_input_type:noArg Active_power:noArg Active_power_1:noArg Total_DC_output_power:noArg Total_DC_output_power_1:noArg Total_energy:noArg Total_energy_1:noArg Energy_this_month:noArg Energy_this_month_1:noArg Total_Energy_last_month:noArg Total_Energy_last_month_1:noArg Total_Energy_today:noArg Total_Energy_last_day:noArg Energy_this_year:noArg Energy_last_year:noArg DC_voltage_1:noArg DC_current_1:noArg DC_voltage_2:noArg DC_current_2:noArg Working_Mode:noArg Inverter_temperature:noArg Grid_Frequency:noArg Inverter_status:noArg AC_NTC_Module_Temperature:noArg
   .setList   reconnect:noArg saveAsModule createAttrsFromParseInfo interval reread:noArg stop:noArg start:noArg close:noArg scanStop:noArg scanModbusObjects inactive active
   .updateSetGet 0
   DEF        1 30 192.168.100.162:8899 TCP
   DeviceName 192.168.100.162:8899
   EXPECT     idle
   FD         81
   FUUID      64280b2a-f33f-b9f5-8d51-e29c2df642927178
   FVERSION   98_ModbusAttr.pm:0.259630/2022-04-14
   IODev      Solis_ModBus
   Interval   30
   LASTOPEN   1680499442.89133
   MODBUSID   1
   MODE       master
   MODULEVERSION Modbus 4.4.14 - 30.1.2023
   NAME       Solis_ModBus
   NOTIFYDEV  global
   NR         1566
   NTFY_ORDER 50-Solis_ModBus
   PARTIAL   
   PROTOCOL   TCP
   STATE      opened
   TCPConn    1
   TYPE       ModbusAttr
   devioLoglevel 3
   eventCount 3788
   nextOpenDelay 60
   .attraggr:
   .attrminint:
   QUEUE:
   READ:
     BUFFER     
   READINGS:
     2023-04-03 10:33:01   AC_NTC_Module_Temperature 0.0
     2023-04-03 10:32:59   AC_output_type  0.0
     2023-04-03 10:32:59   Active_power    0.00 W
     2023-04-03 10:24:08   Active_power_1  250.00 W
     2023-04-03 09:26:16   DC_current_1    2.00 A
     2023-04-01 12:56:05   DC_current_2    0.10 A
     2023-04-03 10:24:08   DC_input_type   3.0
     2023-04-03 10:32:59   DC_voltage_1    64.80 V
     2023-04-03 10:32:59   DC_voltage_2    0.90 V
     2023-04-03 10:32:59   Energy_last_year 0.00 kW
     2023-04-03 10:32:59   Energy_this_month 0.00 kW
     2023-04-03 10:24:08   Energy_this_month_1 2.00 kW
     2023-04-03 10:32:59   Energy_this_year 0.00 kW
     2023-04-03 10:32:27   Grid_Frequency  50.00 Hz
     2023-04-03 10:23:40   Inverter_status Generating
     2023-04-03 10:33:00   Inverter_temperature 33.70 °C
     2023-04-03 10:32:59   Total_DC_output_power 0.00 W
     2023-04-03 10:24:08   Total_DC_output_power_1 284.00 W
     2023-04-03 10:24:08   Total_Energy_last_day 1.50 kwh
     2023-04-03 10:32:59   Total_Energy_last_month 0.00 kW
     2023-04-03 10:24:08   Total_Energy_last_month_1 2.00 kW
     2023-04-03 10:32:59   Total_Energy_today 0.30 kW
     2023-04-03 10:32:59   Total_energy    0.00 kW
     2023-04-03 10:24:08   Total_energy_1  4.00 kW
     2023-04-03 10:32:59   Working_Mode    3
     2023-04-03 07:24:02   state           opened
   REMEMBER:
     lid        1
     lname      Solis_ModBus
     lrecv      1680510781.50119
     lsend      1680510781.20961
   defptr:
     Solis_ModBus 1
   gotReadings:
     AC_NTC_Module_Temperature 0.0
   hmccu:
   lastRead:
     i3002      1680510779.5105
     i3003      1680510248.56209
     i3004      1680510779.51118
     i3005      1680510248.56252
     i3006      1680510779.51175
     i3007      1680510248.56292
     i3008      1680510779.51223
     i3009      1680510248.5633
     i3010      1680510779.51278
     i3011      1680510248.56368
     i3012      1680510779.51344
     i3013      1680510248.56406
     i3014      1680510779.51475
     i3015      1680510248.56485
     i3016      1680510779.51535
     i3018      1680510779.51583
     i3021      1680510779.51661
     i3022      1680506776.89368
     i3023      1680510779.51738
     i3040      1680510779.51787
     i3041      1680510780.50592
     i3042      1680510747.20048
     i3043      1680510220.86407
     i3092      1680510781.5022
Attributes:
   DbLogExclude .*
   alias      Solis_ModBus
   comment    https://community.openenergymonitor.org/t/solis-s6-pv-inverter-and-rs485-modbus/20507/23?u=pvhotwater

   dev-h-combine 10
   dev-h-defLen 2
   dev-h-defShowGet 1
   dev-h-defUnpack f>
   dev-h-read 3
   dev-h-write 16
   dev-i-combine 40
   dev-i-defFormat %.1f
   dev-i-defLen 2
   dev-i-defPoll 1
   dev-i-defShowGet 1
   dev-i-defUnpack f>
   dev-i-read 4
   dev-timing-commDelay 0.7
   dev-timing-sendDelay 0.7
   dev-timing-timeout 2
   group      Solar
   icon       sani_solar
   obj-i3002-name AC output type
   obj-i3002-polldelay x1
   obj-i3002-reading AC_output_type
   obj-i3002-unpack n
   obj-i3003-name DC input type
   obj-i3003-polldelay x1
   obj-i3003-reading DC_input_type
   obj-i3003-unpack n
   obj-i3004-format %.2f W
   obj-i3004-name Active power
   obj-i3004-polldelay x1
   obj-i3004-reading Active_power
   obj-i3004-unpack n
   obj-i3005-format %.2f W
   obj-i3005-name Active power 1
   obj-i3005-polldelay x1
   obj-i3005-reading Active_power_1
   obj-i3005-unpack n
   obj-i3006-format %.2f W
   obj-i3006-name Total DC output power
   obj-i3006-polldelay x1
   obj-i3006-reading Total_DC_output_power
   obj-i3006-unpack n
   obj-i3007-format %.2f W
   obj-i3007-name Total DC output power 1
   obj-i3007-polldelay x1
   obj-i3007-reading Total_DC_output_power_1
   obj-i3007-unpack n
   obj-i3008-format %.2f kW
   obj-i3008-name Total energy
   obj-i3008-polldelay x1
   obj-i3008-reading Total_energy
   obj-i3008-unpack n
   obj-i3009-format %.2f kW
   obj-i3009-name Total energy 1
   obj-i3009-polldelay x1
   obj-i3009-reading Total_energy_1
   obj-i3009-unpack n
   obj-i3010-format %.2f kW
   obj-i3010-name Energy this month
   obj-i3010-polldelay x1
   obj-i3010-reading Energy_this_month
   obj-i3010-unpack n
   obj-i3011-format %.2f kW
   obj-i3011-name Energy this month 1
   obj-i3011-polldelay x1
   obj-i3011-reading Energy_this_month_1
   obj-i3011-unpack n
   obj-i3012-format %.2f kW
   obj-i3012-name Total Energy last month
   obj-i3012-polldelay x1
   obj-i3012-reading Total_Energy_last_month
   obj-i3012-unpack n
   obj-i3013-format %.2f kW
   obj-i3013-name Total Energy last month 1
   obj-i3013-polldelay x1
   obj-i3013-reading Total_Energy_last_month_1
   obj-i3013-unpack n
   obj-i3014-expr $val/10
   obj-i3014-format %.2f kW
   obj-i3014-name Total Energy today
   obj-i3014-polldelay x1
   obj-i3014-reading Total_Energy_today
   obj-i3014-unpack n
   obj-i3015-expr $val/10
   obj-i3015-format %.2f kwh
   obj-i3015-name Total Energy last day
   obj-i3015-polldelay x1
   obj-i3015-reading Total_Energy_last_day
   obj-i3015-unpack n
   obj-i3016-format %.2f kW
   obj-i3016-len 2
   obj-i3016-name Energy this year
   obj-i3016-polldelay x1
   obj-i3016-reading Energy_this_year
   obj-i3016-unpack n
   obj-i3018-format %.2f kW
   obj-i3018-len 2
   obj-i3018-name Energy last year
   obj-i3018-polldelay x1
   obj-i3018-reading Energy_last_year
   obj-i3018-unpack n
   obj-i3021-expr $val/10
   obj-i3021-format %.2f V
   obj-i3021-name DC voltage 1
   obj-i3021-polldelay x1
   obj-i3021-reading DC_voltage_1
   obj-i3021-unpack n
   obj-i3022-expr $val/10
   obj-i3022-format %.2f A
   obj-i3022-name DC current 1
   obj-i3022-polldelay x1
   obj-i3022-reading DC_current_1
   obj-i3022-unpack n
   obj-i3023-expr $val/10
   obj-i3023-format %.2f V
   obj-i3023-name DC voltage 2
   obj-i3023-polldelay x1
   obj-i3023-reading DC_voltage_2
   obj-i3023-unpack n
   obj-i3024-expr $val/10
   obj-i3024-format %.2f A
   obj-i3024-name DC current 2
   obj-i3024-polldelay x1
   obj-i3024-reading DC_current_2
   obj-i3024-unpack n
   obj-i3040-format %.0f
   obj-i3040-name Working Mode
   obj-i3040-polldelay x1
   obj-i3040-reading Working_Mode
   obj-i3040-unpack n
   obj-i3041-expr $val/10
   obj-i3041-format %.2f °C
   obj-i3041-name Inverter temperature
   obj-i3041-polldelay x1
   obj-i3041-reading Inverter_temperature
   obj-i3041-unpack n
   obj-i3042-expr $val/100
   obj-i3042-format %.2f Hz
   obj-i3042-name Grid Frequency
   obj-i3042-polldelay x1
   obj-i3042-reading Grid_Frequency
   obj-i3042-unpack n
   obj-i3043-format %s
   obj-i3043-len 1
   obj-i3043-map 0:Waiting,1:OpenRun,2:Softrun,3:Generating,4100:OffGrid
   obj-i3043-name Inverter status
   obj-i3043-poll 1
   obj-i3043-polldelay x1
   obj-i3043-reading Inverter_status
   obj-i3043-revRegs 0
   obj-i3043-unpack N
   obj-i3092-name AC NTC (IGBT) Module Temperature
   obj-i3092-polldelay x1
   obj-i3092-reading AC_NTC_Module_Temperature
   obj-i3092-unpack n
   room       Solar
1x Pi3, 1x Pi4, CUL V3, miniCUL433+868, IKEA-Steckdosen, sonoff, shelly1, Conbee II, div. Zigbee-Leuchten, Alexa, Homematic, Tablet UI

andi11

hier für meinen Solis RHI, per RS485 angebunden.

define BatterieWR ModbusAttr 1 passive
attr BatterieWR DbLogExclude .*
attr BatterieWR DbLogInclude (DCPower|stat.*|ErzeugungLastMonth|InverterTemperature|BatteryCapacity)
attr BatterieWR comment 33149 BatteryPower kann nicht gelesen werden, also wird es aus Spannung, Strom und Richtung berechnet.\
Es wird öfter umständlich das Vorzeichen berechnet, da es nicht bei allen Parametern mitgeliefert wird
attr BatterieWR dev-i-defPoll 0
attr BatterieWR dev-i-defShowGet 1
attr BatterieWR dev-timing-commDelay 0.4
attr BatterieWR enableControlSet 1
attr BatterieWR group Wechselrichter
attr BatterieWR obj-i33029-len 2
attr BatterieWR obj-i33029-poll 1
attr BatterieWR obj-i33029-reading InverterGenerationTotalIn
attr BatterieWR obj-i33029-unpack N
attr BatterieWR obj-i33035-expr $val*0.1
attr BatterieWR obj-i33035-len 1
attr BatterieWR obj-i33035-poll 1
attr BatterieWR obj-i33035-reading InverterGenerationToday
attr BatterieWR obj-i33057-expr $val/1000
attr BatterieWR obj-i33057-len 2
attr BatterieWR obj-i33057-poll 1
attr BatterieWR obj-i33057-reading DCPower
attr BatterieWR obj-i33057-unpack N
attr BatterieWR obj-i33093-expr $val*0.1
attr BatterieWR obj-i33093-len 1
attr BatterieWR obj-i33093-reading InverterTemperature
attr BatterieWR obj-i33095-len 1
attr BatterieWR obj-i33095-map 0:Waiting,1:OpenRun,2:Softrun,3:Generating,4100:OffGrid
attr BatterieWR obj-i33095-poll 1
attr BatterieWR obj-i33095-reading Status
attr BatterieWR obj-i33133-expr $val*0.1
attr BatterieWR obj-i33133-len 1
attr BatterieWR obj-i33133-reading BatteryVoltage
attr BatterieWR obj-i33134-expr $val*0.1
attr BatterieWR obj-i33134-len 1
attr BatterieWR obj-i33134-reading BatteryCurrent
attr BatterieWR obj-i33135-len 1
attr BatterieWR obj-i33135-poll 1
attr BatterieWR obj-i33135-reading BatteryCurrentDirection
attr BatterieWR obj-i33135-showGet 1
attr BatterieWR obj-i33139-len 1
attr BatterieWR obj-i33139-poll 1
attr BatterieWR obj-i33139-reading BatteryCapacity
attr BatterieWR obj-i33141-expr $val*0.01
attr BatterieWR obj-i33141-len 1
attr BatterieWR obj-i33141-poll 1
attr BatterieWR obj-i33141-reading BatteryVoltageBMS
attr BatterieWR obj-i33141-unpack n
attr BatterieWR obj-i33142-expr $val*0.1
attr BatterieWR obj-i33142-len 1
attr BatterieWR obj-i33142-poll 1
attr BatterieWR obj-i33142-reading BatteryCurrentBMS
attr BatterieWR obj-i33142-unpack s>
attr BatterieWR obj-i33161-len 2
attr BatterieWR obj-i33161-poll 1
attr BatterieWR obj-i33161-reading BatteryChargeTotalIn
attr BatterieWR obj-i33161-unpack N
attr BatterieWR obj-i33163-expr $val*0.1
attr BatterieWR obj-i33163-len 1
attr BatterieWR obj-i33163-poll 1
attr BatterieWR obj-i33163-reading BatteryChargeToday
attr BatterieWR obj-i33165-len 2
attr BatterieWR obj-i33165-poll 1
attr BatterieWR obj-i33165-reading BatteryDischargeTotalIn
attr BatterieWR obj-i33165-unpack N
attr BatterieWR obj-i33167-expr $val*0.1
attr BatterieWR obj-i33167-len 1
attr BatterieWR obj-i33167-poll 1
attr BatterieWR obj-i33167-reading BatteryDischargeToday
attr BatterieWR obj-i33251-expr $val*0.1
attr BatterieWR obj-i33251-len 1
attr BatterieWR obj-i33251-reading MeterVoltageA
attr BatterieWR obj-i33252-expr $val*0.01
attr BatterieWR obj-i33252-len 1
attr BatterieWR obj-i33252-reading MeterCurrentAin
attr BatterieWR obj-i33253-expr $val*0.1
attr BatterieWR obj-i33253-len 1
attr BatterieWR obj-i33253-reading MeterVoltageB
attr BatterieWR obj-i33254-expr $val*0.01
attr BatterieWR obj-i33254-len 1
attr BatterieWR obj-i33254-reading MeterCurrentBin
attr BatterieWR obj-i33255-expr $val*0.1
attr BatterieWR obj-i33255-len 1
attr BatterieWR obj-i33255-reading MeterVoltageC
attr BatterieWR obj-i33256-expr $val*0.01
attr BatterieWR obj-i33256-len 1
attr BatterieWR obj-i33256-reading MeterCurrentCin
attr BatterieWR obj-i33257-expr $val*0.001
attr BatterieWR obj-i33257-len 2
attr BatterieWR obj-i33257-reading MeterActivePowerA
attr BatterieWR obj-i33257-unpack l>
attr BatterieWR obj-i33259-expr $val*0.001
attr BatterieWR obj-i33259-len 2
attr BatterieWR obj-i33259-reading MeterActivePowerB
attr BatterieWR obj-i33259-unpack l>
attr BatterieWR obj-i33261-expr $val*0.001
attr BatterieWR obj-i33261-len 2
attr BatterieWR obj-i33261-reading MeterActivePowerC
attr BatterieWR obj-i33261-unpack l>
attr BatterieWR room Technik_PV
attr BatterieWR stateFormat DCPower kW Erzeugung InverterGenerationToday kWh heute BatteryCapacity% Batterie BatteryPower BatteryPowerBMS kW Batterieleistung Status
attr BatterieWR userReadings ForecastAktMonth:statInverterGenerationTotal.* {calcmonthusageSplit($name,"statInverterGenerationTotal",5)},\
BatteryPower:BatteryCurrentDirection.* {sprintf("%.3f",ReadingsNum($name,"BatteryVoltage",0)*ReadingsNum($name,"BatteryCurrent",0)*(ReadingsNum($name,"BatteryCurrentDirection",0)<=0?1:-1)/1000)},\
BatteryPowerBMS:BatteryCurrentBMS.* {sprintf("%.3f",ReadingsNum($name,"BatteryVoltageBMS",0)*ReadingsNum($name,"BatteryCurrentBMS",0)*(ReadingsNum($name,"BatteryCurrentDirection",0)<=0?1:-1)/1000)},\
InverterGenerationTotal:InverterGenerationToday.*  {my $var=ReadingsNum($name,"InverterGenerationTotalHelp",0)+ReadingsNum($name,"InverterGenerationToday",0);;;;return ( $var>=ReadingsNum($name,"InverterGenerationTotal",0)?$var:ReadingsNum($name,"InverterGenerationTotal",0))},\
BatteryChargeTotal:BatteryChargeToday.*  {my $vara=ReadingsNum($name,"BatteryChargeTotalHelp",0)+ReadingsNum($name,"BatteryChargeToday",0);;;;  $vara>=ReadingsNum($name,"BatteryChargeTotal",0)?$vara:ReadingsNum($name,"BatteryChargeTotal",0)},\
BatteryDischargeTotal:BatteryDischargeToday.*  {my $varb=ReadingsNum($name,"BatteryDischargeTotalHelp",0)+ReadingsNum($name,"BatteryDischargeToday",0);;;;  $varb>=ReadingsNum($name,"BatteryDischargeTotal",0)?$varb:ReadingsNum($name,"BatteryDischargeTotal",0)},\
MeterCurrentA:MeterActivePowerA.* {ReadingsNum($name,"MeterCurrentAin",0)*(ReadingsNum($name,"MeterActivePowerA",0)>0?1:-1)},\
MeterCurrentB:MeterActivePowerB.* {ReadingsNum($name,"MeterCurrentBin",0)*(ReadingsNum($name,"MeterActivePowerB",0)>0?1:-1)},\
MeterCurrentC:MeterActivePowerC.* {ReadingsNum($name,"MeterCurrentCin",0)*(ReadingsNum($name,"MeterActivePowerC",0)>0?1:-1)}\

#   DEF        1 passive
#   FUUID      6287ae83-f33f-ae17-6df4-762760f54d114cca
#   IODev      ModbusLine
#   MODBUSID   1
#   MODE       passive
#   MODULEVERSION Modbus 4.4.14 - 30.1.2023
#   NAME       BatterieWR
#   NOTIFYDEV  global
#   NR         407
#   NTFY_ORDER 50-BatterieWR
#   PROTOCOL   RTU
#   STATE      0 kW Erzeugung 18 kWh heute 76% Batterie -0.286 -0.244 kW Batterieleistung Generating
#   TYPE       ModbusAttr
#   eventCount 203
#   Helper:
#     DBLOG:
#       BatteryCapacity:
#         logdb:
#           TIME       1680631155.30811
#           VALUE      76
#       DCPower:
#         logdb:
#           TIME       1680631153.48186
#           VALUE      0
#       InverterTemperature:
#         logdb:
#           TIME       1680631154.11038
#           VALUE      32.3
#       statBatteryChargeTotal:
#         logdb:
#           TIME       1680631156.55988
#           VALUE      Hour: 0.0 Day: 7.4 Month: 23.4 Year: 391.7
#       statBatteryDischargeTotal:
#         logdb:
#           TIME       1680631156.55988
#           VALUE      Hour: 1.0 Day: 7.3 Month: 24.5 Year: 497.4
#       statInverterGenerationTotal:
#         logdb:
#           TIME       1680631156.55988
#           VALUE      Hour: 0.0 Day: 21.0 Month: 53.3 Year: 731.6
#   READINGS:
#     2023-04-04 19:59:15   BatteryCapacity 76
#     2023-04-04 19:59:15   BatteryChargeToday 7.8
#     2023-04-04 19:59:15   BatteryChargeTotal 1371.8
#     2023-04-04 00:07:00   BatteryChargeTotalHelp 1364
#     2023-04-04 19:59:15   BatteryChargeTotalIn 1372
#     2023-04-04 19:59:15   BatteryCurrent  5.7
#     2023-04-04 19:59:15   BatteryCurrentBMS 4.9
#     2023-04-04 19:59:15   BatteryCurrentDirection 1
#     2023-04-04 19:59:15   BatteryDischargeToday 7
#     2023-04-04 19:59:15   BatteryDischargeTotal 1811
#     2023-04-04 00:07:00   BatteryDischargeTotalHelp 1804
#     2023-04-04 19:59:15   BatteryDischargeTotalIn 1811
#     2023-04-04 19:59:15   BatteryPower    -0.286
#     2023-04-04 19:59:15   BatteryPowerBMS -0.244
#     2023-04-04 19:59:15   BatteryVoltage  50.2
#     2023-04-04 19:59:15   BatteryVoltageBMS 49.81
#     2023-04-04 19:59:13   DCPower         0
#     2023-04-04 19:59:16   ForecastAktMonth 334
#     2023-04-04 19:59:12   InverterGenerationToday 18
#     2023-04-04 19:59:12   InverterGenerationTotal 4266.1
#     2023-04-04 00:07:00   InverterGenerationTotalHelp 4245
#     2023-04-04 19:59:12   InverterGenerationTotalIn 4263
#     2023-04-04 19:59:14   InverterTemperature 32.3
#     2023-04-04 19:59:16   MeterActivePowerA -0.031
#     2023-04-04 19:59:16   MeterActivePowerB 0.072
#     2023-04-04 19:59:16   MeterActivePowerC -0.041
#     2023-04-04 19:59:16   MeterCurrentA   -0.49
#     2023-04-04 19:59:16   MeterCurrentAin 0.49
#     2023-04-04 19:59:16   MeterCurrentB   0.32
#     2023-04-04 19:59:16   MeterCurrentBin 0.32
#     2023-04-04 19:59:16   MeterCurrentC   -0.34
#     2023-04-04 19:59:16   MeterCurrentCin 0.34
#     2023-04-04 19:59:16   MeterVoltageA   238.6
#     2023-04-04 19:59:16   MeterVoltageB   237.4
#     2023-04-04 19:59:16   MeterVoltageC   239
#     2023-04-04 19:59:14   Status          Generating
#     2023-02-11 09:08:56   Test            323
#     2023-04-04 19:59:16   statBatteryChargeTotal Hour: 0.0 Day: 7.4 Month: 23.4 Year: 391.7
#     2023-04-04 18:59:55   statBatteryChargeTotalLast Hour: 0.2 Day: 7.1 Month: 179.4 Year: 972.1 (since: 2022-05-22 )
#     2023-04-04 19:59:16   statBatteryDischargeTotal Hour: 1.0 Day: 7.3 Month: 24.5 Year: 497.4
#     2023-04-04 18:59:55   statBatteryDischargeTotalLast Hour: 0.7 Day: 2.6 Month: 215.9 Year: 1296.6 (since: 2022-05-22 )
#     2023-04-04 19:59:16   statInverterGenerationTotal Hour: 0.0 Day: 21.0 Month: 53.3 Year: 731.6
#     2023-04-04 18:59:55   statInverterGenerationTotalLast Hour: 0.0 Day: 21.1 Month: 349.2 Year: 3475.4 (since: 2022-05-22 )
#     2023-04-04 19:30:08   state           opened
#   REMEMBER:
#     lrecv      1680631162.2451
#   gotReadings:
#   helper:
#     _98_statistics STATISTICS_STROMVERBRAUCH
#   lastRead:
#     i33029     1680631152.73707
#     i33035     1680631152.73805
#     i33057     1680631153.44234
#     i33093     1680631154.05522
#     i33095     1680631154.05564
#     i33133     1680631155.29723
#     i33134     1680631155.29751
#     i33135     1680631155.29769
#     i33139     1680631155.29787
#     i33141     1680631155.29811
#     i33142     1680631155.29835
#     i33161     1680631155.88971
#     i33163     1680631155.89064
#     i33165     1680631155.89122
#     i33167     1680631155.89199
#     i33251     1680631156.53244
#     i33252     1680631156.53315
#     i33253     1680631156.53385
#     i33254     1680631156.53454
#     i33255     1680631156.53522
#     i33256     1680631156.5359
#     i33257     1680631156.5366
#     i33259     1680631156.53729
#     i33261     1680631156.53797
#
setstate BatterieWR 0 kW Erzeugung 18 kWh heute 76% Batterie -0.286 -0.244 kW Batterieleistung Generating
setstate BatterieWR 2023-04-04 19:59:15 BatteryCapacity 76
setstate BatterieWR 2023-04-04 19:59:15 BatteryChargeToday 7.8
setstate BatterieWR 2023-04-04 19:59:15 BatteryChargeTotal 1371.8
setstate BatterieWR 2023-04-04 00:07:00 BatteryChargeTotalHelp 1364
setstate BatterieWR 2023-04-04 19:59:15 BatteryChargeTotalIn 1372
setstate BatterieWR 2023-04-04 19:59:15 BatteryCurrent 5.7
setstate BatterieWR 2023-04-04 19:59:15 BatteryCurrentBMS 4.9
setstate BatterieWR 2023-04-04 19:59:15 BatteryCurrentDirection 1
setstate BatterieWR 2023-04-04 19:59:15 BatteryDischargeToday 7
setstate BatterieWR 2023-04-04 19:59:15 BatteryDischargeTotal 1811
setstate BatterieWR 2023-04-04 00:07:00 BatteryDischargeTotalHelp 1804
setstate BatterieWR 2023-04-04 19:59:15 BatteryDischargeTotalIn 1811
setstate BatterieWR 2023-04-04 19:59:15 BatteryPower -0.286
setstate BatterieWR 2023-04-04 19:59:15 BatteryPowerBMS -0.244
setstate BatterieWR 2023-04-04 19:59:15 BatteryVoltage 50.2
setstate BatterieWR 2023-04-04 19:59:15 BatteryVoltageBMS 49.81
setstate BatterieWR 2023-04-04 19:59:13 DCPower 0
setstate BatterieWR 2023-04-04 19:59:16 ForecastAktMonth 334
setstate BatterieWR 2023-04-04 19:59:12 InverterGenerationToday 18
setstate BatterieWR 2023-04-04 19:59:12 InverterGenerationTotal 4266.1
setstate BatterieWR 2023-04-04 00:07:00 InverterGenerationTotalHelp 4245
setstate BatterieWR 2023-04-04 19:59:12 InverterGenerationTotalIn 4263
setstate BatterieWR 2023-04-04 19:59:14 InverterTemperature 32.3
setstate BatterieWR 2023-04-04 19:59:16 MeterActivePowerA -0.031
setstate BatterieWR 2023-04-04 19:59:16 MeterActivePowerB 0.072
setstate BatterieWR 2023-04-04 19:59:16 MeterActivePowerC -0.041
setstate BatterieWR 2023-04-04 19:59:16 MeterCurrentA -0.49
setstate BatterieWR 2023-04-04 19:59:16 MeterCurrentAin 0.49
setstate BatterieWR 2023-04-04 19:59:16 MeterCurrentB 0.32
setstate BatterieWR 2023-04-04 19:59:16 MeterCurrentBin 0.32
setstate BatterieWR 2023-04-04 19:59:16 MeterCurrentC -0.34
setstate BatterieWR 2023-04-04 19:59:16 MeterCurrentCin 0.34
setstate BatterieWR 2023-04-04 19:59:16 MeterVoltageA 238.6
setstate BatterieWR 2023-04-04 19:59:16 MeterVoltageB 237.4
setstate BatterieWR 2023-04-04 19:59:16 MeterVoltageC 239
setstate BatterieWR 2023-04-04 19:59:14 Status Generating
setstate BatterieWR 2023-02-11 09:08:56 Test 323
setstate BatterieWR 2023-04-04 19:59:16 statBatteryChargeTotal Hour: 0.0 Day: 7.4 Month: 23.4 Year: 391.7
setstate BatterieWR 2023-04-04 18:59:55 statBatteryChargeTotalLast Hour: 0.2 Day: 7.1 Month: 179.4 Year: 972.1 (since: 2022-05-22 )
setstate BatterieWR 2023-04-04 19:59:16 statBatteryDischargeTotal Hour: 1.0 Day: 7.3 Month: 24.5 Year: 497.4
setstate BatterieWR 2023-04-04 18:59:55 statBatteryDischargeTotalLast Hour: 0.7 Day: 2.6 Month: 215.9 Year: 1296.6 (since: 2022-05-22 )
setstate BatterieWR 2023-04-04 19:59:16 statInverterGenerationTotal Hour: 0.0 Day: 21.0 Month: 53.3 Year: 731.6
setstate BatterieWR 2023-04-04 18:59:55 statInverterGenerationTotalLast Hour: 0.0 Day: 21.1 Month: 349.2 Year: 3475.4 (since: 2022-05-22 )
setstate BatterieWR 2023-04-04 19:30:08 state opened