ModbusAttr Wechselrichter Plenticore wirft dauernd Timeouts

Begonnen von MichaelO, 03 Dezember 2021, 14:13:22

Vorheriges Thema - Nächstes Thema

MichaelO

Moin,

ich habe mir vor einiger Zeit meine Plenticore als ModbusAttr in fhem eingebunden. Bisher mache ich mit den Daten noch nichts, da ständig derartige Timeouts im Log landen:

2021.12.03 06:07:36 3: Wechselrichter_1: Timeout waiting for a modbus response, read buffer empty,
request: id 71, read fc 3 h514, len 1, tid 243, master device Wechselrichter_1, reading Battery_actual_SOC (getUpdate for Battery_actual_SOC len 1), queued 47.87 secs ago, sent 2.00 secs ago
2021.12.03 06:07:38 3: Wechselrichter_2: Timeout waiting for a modbus response, read buffer empty,
request: id 71, read fc 3 h326, len 2, tid 229, master device Wechselrichter_2, reading Monthly_yield (getUpdate for Monthly_yield len 2), queued 30.01 secs ago, sent 2.04 secs ago
2021.12.03 06:07:38 3: Wechselrichter_1: Timeout waiting for a modbus response, read buffer empty,
request: id 71, read fc 3 h56, len 1, tid 172, master device Wechselrichter_1, reading Inverter_state (getUpdate for Inverter_state len 1), queued 39.92 secs ago, sent 2.03 secs ago
2021.12.03 06:07:40 3: Wechselrichter_2: Timeout waiting for a modbus response, read buffer empty,
request: id 71, read fc 3 h56, len 1, tid 166, master device Wechselrichter_2, reading Inverter_state (getUpdate for Inverter_state len 1), queued 22.03 secs ago, sent 2.00 secs ago


Davon dann seitenweise. Dann geht es wieder eine Zeit lang. Da die WR ansonsten in openWB keinerlei Verbindungsprobleme aufweisen, wollte ich nachfragen, ob auch andere mit Plenticore + fhem derartige Probleme haben? Oder habe ich vielleicht was falsch eingerichtet? Hier mal ein WR:

Internals:
   DEF        71 10 192.168.30.2:1502 TCP
   DeviceName 192.168.30.2:1502
   EXPECT     idle
   FD         25
   FUUID      5c93ad42-f33f-497e-7a62-88fe1871acc4dc66
   IODev      Wechselrichter_1
   Interval   10
   LASTOPEN   1638536587.41961
   MODBUSID   71
   MODE       master
   MODULEVERSION Modbus 4.4.02 - 31.3.2021
   NAME       Wechselrichter_1
   NOTIFYDEV  global
   NR         235
   NTFY_ORDER 50-Wechselrichter_1
   PARTIAL   
   PROTOCOL   TCP
   STATE      opened
   TCPConn    1
   TYPE       ModbusAttr
   devioLoglevel 3
   nextOpenDelay 60
   QUEUE:
   READ:
     BUFFER     
   READINGS:
     2021-12-03 14:12:05   Actual_batt_ch_disch_power -893
     2021-12-03 14:12:04   Battery_actual_SOC 99
     2021-12-03 14:12:03   Battery_temperature 16.90
     2021-12-03 14:12:04   Daily_yield     11.59
     2021-12-03 14:12:04   Inverter_Generation_power_actual -173
     2021-12-03 14:12:05   Inverter_State_natural FeedIn
     2021-12-03 14:12:02   Inverter_state  6
     2021-12-03 14:12:04   Monthly_yield   39.22
     2021-12-03 14:12:05   PV_power        795.94
     2021-12-03 14:12:03   Power_DC1       441.41
     2021-12-03 14:12:03   Power_DC2       354.53
     2021-12-03 14:12:03   Total_AC_active_power -171.00
     2021-12-03 14:12:03   Total_DC_Power  -96.91
     2021-12-03 14:12:03   Total_active_power -217.20
     2021-12-03 14:12:04   Total_yield     30965.14
     2021-12-03 14:12:03   Voltage_DC1     603.14
     2021-12-03 14:12:04   Voltage_DC2     494.16
     2021-12-03 14:12:04   Yearly_yield    10164.37
     2021-12-03 14:03:18   state           opened
   REMEMBER:
     lid        71
     lname      Wechselrichter_1
     lrecv      1638537125.01949
     lsend      1638537125.01361
   defptr:
     Wechselrichter_1 71
   gotReadings:
     Actual_batt_ch_disch_power -893
   lastRead:
     h100       1638537123.11354
     h172       1638537123.25853
     h214       1638537123.4211
     h252       1638537123.57604
     h260       1638537123.69121
     h266       1638537123.80533
     h270       1638537123.91956
     h276       1638537124.18522
     h320       1638537124.29992
     h322       1638537124.43741
     h324       1638537124.56321
     h326       1638537124.6795
     h514       1638537124.79214
     h56        1638537122.99695
     h575       1638537124.91194
     h582       1638537125.02567
Attributes:
   comment    Garage
   dev-type-Fl_R2-format %.2f
   dev-type-Fl_R2-len 2
   dev-type-Fl_R2-revRegs 1
   dev-type-Fl_R2-unpack f>
   dev-type-I_R1s-format %d
   dev-type-I_R1s-len 1
   dev-type-I_R1s-revRegs 1
   dev-type-I_R1s-unpack s>
   dev-type-I_R1u-format %d
   dev-type-I_R1u-len 1
   dev-type-I_R1u-revRegs 1
   dev-type-I_R1u-unpack S>
   dev-type-I_R2u-format %d
   dev-type-I_R2u-len 2
   dev-type-I_R2u-revRegs 1
   dev-type-I_R2u-unpack S>
   icon       sani_solar
   obj-h100-poll 1
   obj-h100-reading Total_DC_Power
   obj-h100-type Fl_R2
   obj-h172-poll 1
   obj-h172-reading Total_AC_active_power
   obj-h172-type Fl_R2
   obj-h214-poll 1
   obj-h214-reading Battery_temperature
   obj-h214-type Fl_R2
   obj-h252-poll 1
   obj-h252-reading Total_active_power
   obj-h252-type Fl_R2
   obj-h260-poll 1
   obj-h260-reading Power_DC1
   obj-h260-type Fl_R2
   obj-h266-poll 1
   obj-h266-reading Voltage_DC1
   obj-h266-type Fl_R2
   obj-h270-poll 1
   obj-h270-reading Power_DC2
   obj-h270-type Fl_R2
   obj-h276-poll 1
   obj-h276-reading Voltage_DC2
   obj-h276-type Fl_R2
   obj-h320-expr $val/1000
   obj-h320-poll 1
   obj-h320-reading Total_yield
   obj-h320-type Fl_R2
   obj-h322-expr $val/1000
   obj-h322-poll 1
   obj-h322-reading Daily_yield
   obj-h322-type Fl_R2
   obj-h324-expr $val/1000
   obj-h324-poll 1
   obj-h324-reading Yearly_yield
   obj-h324-type Fl_R2
   obj-h326-expr $val/1000
   obj-h326-poll 1
   obj-h326-reading Monthly_yield
   obj-h326-type Fl_R2
   obj-h514-poll 1
   obj-h514-reading Battery_actual_SOC
   obj-h514-type I-R1u
   obj-h56-poll 1
   obj-h56-reading Inverter_state
   obj-h56-type I_R1u
   obj-h575-poll 1
   obj-h575-reading Inverter_Generation_power_actual
   obj-h575-type I_R1s
   obj-h582-poll 1
   obj-h582-reading Actual_batt_ch_disch_power
   obj-h582-type I_R1s
   room       4.1_Energie
   sortUpdate 1
   userReadings PV_power {sprintf("%.2f",ReadingsVal($name,"Power_DC1",0)+ReadingsVal($name,"Power_DC2",0))},

Inverter_State_natural {my $Inverter_state_num = ReadingsVal($name,"Inverter_state",18);
if ($Inverter_state_num == 0) {return "Off"}
elsif ($Inverter_state_num == 1) {return "Init"}
elsif ($Inverter_state_num == 2) {return "IsoMeas"}
elsif ($Inverter_state_num == 3) {return "GridCheck"}
elsif ($Inverter_state_num == 4) {return "StartUp"}
elsif ($Inverter_state_num == 5) {return "-"}
elsif ($Inverter_state_num == 6) {return "FeedIn"}
elsif ($Inverter_state_num == 7) {return "Throttled"}
elsif ($Inverter_state_num == 8) {return "ExtSwitchOff"}
elsif ($Inverter_state_num == 9) {return "Update"}
elsif ($Inverter_state_num == 10) {return "Standby"}
elsif ($Inverter_state_num == 11) {return "GridSync"}
elsif ($Inverter_state_num == 12) {return "GridPreCheck"}
elsif ($Inverter_state_num == 13) {return "GridSwitchOff"}
elsif ($Inverter_state_num == 14) {return "Overheating"}
elsif ($Inverter_state_num == 15) {return "Shutdown"}
elsif ($Inverter_state_num == 16) {return "ImproperDcVoltage"}
elsif ($Inverter_state_num == 17) {return "ESB"}
else {return $Inverter_state_num}}
   userattr   dev-type-Fl_R1s-format dev-type-Fl_R1s-len dev-type-Fl_R1s-revRegs dev-type-Fl_R1s-unpack


Danke
Michael

ch.eick

Hallo Michael,
mit sowas kannst Du auch gerne in meinen Thread kommen Photovoltaik Eigenverbrauch,Bilanz,Prognose (Kostal Plenticore; KSEM; BYD HV)

Ich denke Dein Interval 10 dürfte etwas kurz sein bei der Menge an Daten vom Plenticore werden dann sicher nicht alle Register aktualisiert.

Interval 60 sollte reichen.

Plenticore Plus

Gruß
   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