76_SMAInverter.pm - Abfrage von SMA Wechselrichter

Begonnen von sct14675, 28 Juli 2016, 11:01:16

Vorheriges Thema - Nächstes Thema

MadMax

Hallo Jonas,

Das ist doch als BAT_PDC vorhanden oder meinst du jeweils ein eigefür laden und entladen?

Gruß
Max
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

NewRasPi

Hallo Ihr Spezialisten,
hoffentlich "passt" meine Frage hier.
Ich habe das Modul auch im Einsatz. Vielen Dank für die super Leistung.

Da ich zwei SMA Wechselrichter (und einen BYD HVS10.2 Speicher), einen STP10SE und einen SB6.0 habe, die Leistung aus beiden für das Überschussladen eines E-Auto verwenden möchte, verliere ich mich gerade in tausenden Forumsbeiträgen bei der Suche
nach einer Summenfunktion aus:userReadings

state {ReadingsVal("STP10Daten","SPOT_PDC",0) + ReadingsVal("SB6Daten","SPOT_PACTOT",0)}


Das List vom STP10:
Internals:
   DEF        crypt:0955427a790356004f 10.63.173.231:9522
   FUUID      XXXXXXX
   FVERSION   76_SMAInverter.pm:v2.23.5-s27705/2023-06-25
   HOST       <IP-Adresse>:9522
   INTERVAL   15
   INVCLASS   8009
   INVFWMAIN  3
   INVTYPE    19051
   LASTUPDATE 12.08.2023 / 12:53:35
   NAME       STP10Daten
   NR         323
   PASS       crypt:XYZYXZZXY
   STATE      6960 W 100 %
   TYPE       SMAInverter
   HELPER:
     AVERAGEBUF 6960,6970,6980,6980,7000,6980,7010,7050,7100,7140,6420,7150,7340,6940,5180,4490,7650,7650,7670,6790,2920,2150,2020,5980,7760,7670,7650,7650,7670,7640,7810,7360,5030,4460,4230,6550,6540,7490,6230,5990,7500,7600,7260,7440,5830,3280,4810,3670,6350,6950,6910,6870,6850,6790,6820,6820,6810,6820,6820,6740,6900,6990
     DEFAULT_TARGET_SERIAL 4xxxxxxx
     DEFAULT_TARGET_SUSYID 65535
     FAULTEDCYCLES 3
     INTERVAL   15
     MAXBYTES   300
     MYSERIALNUMBER 123321123
     MYSUSYID   233
     PACKAGE    main
     PKT_ID     32769
     VERSION    2.23.5
     firtRunDay 0
   READINGS:
     2023-08-12 12:53:35   BAT_CAPACITY    100
     2023-07-26 14:03:44   BAT_CYCLES      25
     2023-08-12 12:53:35   BAT_IDC         0
     2023-08-12 12:53:35   BAT_LOADTODAY   4256
     2023-08-12 12:53:35   BAT_LOADTOTAL   467404
     2023-08-12 12:53:35   BAT_PDC         0
     2023-08-12 12:53:35   BAT_RATED_CAPACITY 10200
     2023-08-12 12:53:35   BAT_TEMP        22
     2023-08-12 12:53:35   BAT_UDC         436.1
     2023-08-12 12:53:35   BAT_UNLOADTODAY 2805
     2023-08-12 12:53:35   BAT_UNLOADTOTAL 363982
     2023-08-12 12:53:35   ChargeStatus    100
     2023-08-12 12:53:35   INV_BACKRELAYRELAY offen
     2023-08-12 12:53:35   INV_CLASS       Hybrid-Wechselrichter
     2023-08-12 12:53:35   INV_FIRMWARE    3.2.22 R
     2023-08-12 12:53:35   INV_GRIDRELAY   geschlossen
     2023-08-12 12:53:35   INV_GeneralOperatingStatus Eingeschaltet
     2023-08-12 12:53:35   INV_OperatingStatus Netzparallelbetrieb
     2023-08-12 12:53:35   INV_PACMAX1     10000
     2023-08-12 12:53:35   INV_PACMAX2     0
     2023-08-12 12:53:35   INV_PACMAX3     0
     2023-08-12 12:53:35   INV_STATUS      Ok
     2023-08-12 12:53:35   INV_TYPE        STP10.0SE (SUNNY TRIPOWER 10.0 SE)
     2023-08-12 12:53:35   Meter_Grid_Consumation_PAC1 0
     2023-08-12 12:53:35   Meter_Grid_Consumation_PAC2 0
     2023-08-12 12:53:35   Meter_Grid_Consumation_PAC3 0
     2023-08-12 12:53:35   Meter_Grid_FeedIn_PAC1 2328
     2023-08-12 12:53:35   Meter_Grid_FeedIn_PAC2 2251
     2023-08-12 12:53:35   Meter_Grid_FeedIn_PAC3 5592
     2023-08-12 12:53:35   Meter_Power_Grid_Consumation 0
     2023-08-12 12:53:35   Meter_Power_Grid_FeedIn 10172
     2023-08-12 12:53:35   Meter_TOTAL_Consumation 566743
     2023-08-12 12:53:35   Meter_TOTAL_FeedIn 3239048
     2023-08-12 12:53:35   Meter_TOTAL_Grid_Consumation 566743
     2023-08-12 12:53:35   Meter_TOTAL_Grid_FeedIn 3239048
     2023-08-12 12:53:35   SPOT_Backup_IAC1 0.10
     2023-08-12 12:53:35   SPOT_Backup_IAC2 0.40
     2023-08-12 12:53:35   SPOT_Backup_IAC3 0.20
     2023-08-12 12:53:35   SPOT_Backup_PAC1 24
     2023-08-12 12:53:35   SPOT_Backup_PAC2 97
     2023-08-12 12:53:35   SPOT_Backup_PAC3 49
     2023-08-12 12:53:35   SPOT_CosPhi     1.000
     2023-08-12 12:53:35   SPOT_EPVTODAY   11567
     2023-08-12 12:53:35   SPOT_EPVTOTAL   2896889
     2023-08-12 12:53:35   SPOT_ETODAY     10358
     2023-08-12 12:53:35   SPOT_ETOTAL     2919914
     2023-08-12 12:53:35   SPOT_FEEDTM     0
     2023-08-12 12:53:35   SPOT_FREQ       49.99
     2023-08-12 12:53:35   SPOT_IAC1       9.50
     2023-08-12 12:53:35   SPOT_IAC2       9.50
     2023-08-12 12:53:35   SPOT_IAC3       9.50
     2023-08-12 12:53:35   SPOT_IDC1       10.224
     2023-08-12 12:53:35   SPOT_IDC2       10.231
     2023-08-12 12:53:35   SPOT_OPERTM     1193046.47
     2023-08-12 12:53:35   SPOT_PAC1       2321
     2023-08-12 12:53:35   SPOT_PAC2       2322
     2023-08-12 12:53:35   SPOT_PAC3       2321
     2023-08-12 12:53:35   SPOT_PACTOT     6960
     2023-08-12 12:53:35   SPOT_PDC        6960
     2023-08-12 12:53:35   SPOT_PDC1       1638
     2023-08-12 12:53:35   SPOT_PDC2       5514
     2023-08-12 12:53:35   SPOT_UAC1       242.7
     2023-08-12 12:53:35   SPOT_UAC1_2     420.300
     2023-08-12 12:53:35   SPOT_UAC2       241.7
     2023-08-12 12:53:35   SPOT_UAC2_3     418.600
     2023-08-12 12:53:35   SPOT_UAC3       243.2
     2023-08-12 12:53:35   SPOT_UAC3_1     421.200
     2023-08-12 12:53:35   SPOT_UDC1       160.2
     2023-08-12 12:53:35   SPOT_UDC2       538.9
     2023-08-12 12:53:35   SUSyID          440
     2023-08-12 12:53:35   Serialnumber    <seriennummer>
     2023-08-12 12:53:35   avg_power_lastminutes_05 6684
     2023-08-12 12:53:35   avg_power_lastminutes_10 6481
     2023-08-12 12:53:35   avg_power_lastminutes_15 6460
     2023-08-12 12:53:35   modulstate      normal
     2023-08-12 12:53:35   opertime_start  12.08.2023 05:25:59
     2023-08-12 12:53:35   opertime_stop   12.08.2023 21:23:12
     2023-08-12 12:53:35   state           6960
Attributes:
   detail-level 2
   event-on-change-reading STATE
   fp_Lageplan 233,989,1,PV-STP10 BattSpeicher,
   icon       measure_photovoltaic_inst@green
   interval   15
   readEnergyMeter-data 1
   room       8.3_PV-Info,Strom
   stateFormat state W ChargeStatus %
   target-serial <seriennummer>
   target-susyid 440

Das List vom SMA SB6.0
Internals:
   DEF        crypt:xvxvxyvxycfd
   FUUID      645f39ad-f33f-71b0-1f35-a57813ed5174efa9
   FVERSION   76_SMAInverter.pm:v2.23.5-s27705/2023-06-25
   HOST       <IP-Adresse>
   INTERVAL   15
   INVCLASS   8001
   INVFWMAIN  4
   INVTYPE    9405
   LASTUPDATE 12.08.2023 / 12:57:54
   NAME       SB6Daten
   NR         324
   PASS       crypt:xxxxxYYYYYxxxxx
   STATE      3780 W
   TYPE       SMAInverter
   HELPER:
     AVERAGEBUF 3780,3743,3751,3736,3729,3701,3703,3697,3693,3687,3680,3682,3678,3688,3683,3695,3688,3709,3711,3723,3730,3738,3748,3748,3781,3796,3839,3840,3587,3870,3504,4104,1601,4062,4106,3964,2703,1813,1232,1178,1163,4218,4125,4112,4119,4124,4107,4163,4154,3229,2642,2101,2842,3950,3914,4219,2401,3728,4069,3946,3871,3418
     DEFAULT_TARGET_SERIAL YYYYYYYYYY
     DEFAULT_TARGET_SUSYID 65535
     FAULTEDCYCLES 3
     INTERVAL   15
     MAXBYTES   300
     MYSERIALNUMBER 123321123
     MYSUSYID   233
     PACKAGE    main
     PKT_ID     32769
     VERSION    2.23.5
     firtRunDay 0
   READINGS:
     2023-08-12 12:57:54   INV_CLASS       Solar-Wechselrichter
     2023-08-12 12:57:54   INV_FIRMWARE    4.0.75 R
     2023-08-12 12:57:54   INV_GRIDRELAY   geschlossen
     2023-08-12 12:57:54   INV_GeneralOperatingStatus Eingeschaltet
     2023-08-12 12:57:54   INV_PACMAX1     6000
     2023-08-12 12:57:54   INV_PACMAX2     0
     2023-08-12 12:57:54   INV_PACMAX3     0
     2023-08-12 12:57:54   INV_STATUS      Ok
     2023-08-12 12:57:54   INV_TYPE        SB6.0-1AV-41 (Sunny Boy 6.0 AV-41)
     2023-08-12 12:57:54   Meter_Grid_Consumation_PAC1 0
     2023-08-12 12:57:54   Meter_Grid_Consumation_PAC2 0
     2023-08-12 12:57:54   Meter_Grid_Consumation_PAC3 0
     2023-08-12 12:57:54   Meter_Grid_FeedIn_PAC1 2448
     2023-08-12 12:57:54   Meter_Grid_FeedIn_PAC2 2031
     2023-08-12 12:57:54   Meter_Grid_FeedIn_PAC3 5852
     2023-08-12 12:57:54   Meter_Power_Grid_Consumation 0
     2023-08-12 12:57:54   Meter_Power_Grid_FeedIn 10332
     2023-08-12 12:57:54   Meter_TOTAL_Consumation 566743
     2023-08-12 12:57:54   Meter_TOTAL_FeedIn 3239793
     2023-08-12 12:57:54   Meter_TOTAL_Grid_Consumation 566743
     2023-08-12 12:57:54   Meter_TOTAL_Grid_FeedIn 3239793
     2023-08-12 12:57:54   SPOT_CosPhi     1.000
     2023-08-12 12:57:54   SPOT_ETODAY     7917
     2023-08-12 12:57:54   SPOT_ETOTAL     1789295
     2023-08-12 12:57:54   SPOT_FEEDTM     1101.56
     2023-08-12 12:57:54   SPOT_FREQ       49.98
     2023-08-12 12:57:54   SPOT_IAC3       15.46
     2023-08-12 12:57:54   SPOT_IDC1       5.955
     2023-08-12 12:57:54   SPOT_IDC2       11.029
     2023-08-12 12:57:54   SPOT_OPERTM     1140.8
     2023-08-12 12:57:54   SPOT_PAC3       3780
     2023-08-12 12:57:54   SPOT_PACTOT     3780
     2023-08-12 12:57:54   SPOT_PDC1       983
     2023-08-12 12:57:54   SPOT_PDC2       2963
     2023-08-12 12:57:54   SPOT_UAC3       244.74
     2023-08-12 12:57:54   SPOT_UDC1       165.16
     2023-08-12 12:57:54   SPOT_UDC2       268.74
     2023-08-12 12:57:54   SUSyID          409
     2023-08-12 12:57:54   Serialnumber    vvvvvvvvXXXXX
     2023-08-12 12:57:54   avg_power_lastminutes_05 3708
     2023-08-12 12:57:54   avg_power_lastminutes_10 3445
     2023-08-12 12:57:54   avg_power_lastminutes_15 3529
     2023-08-12 12:57:54   modulstate      normal
     2023-08-12 12:57:54   opertime_start  12.08.2023 05:25:59
     2023-08-12 12:57:54   opertime_stop   12.08.2023 21:23:12
     2023-08-12 12:57:54   state           3780
Attributes:
   detail-level 2
   event-on-change-reading STATE
   fp_Lageplan 315,992,1,PV-ErzeugungSB6,
   icon       measure_photovoltaic_inst@green
   interval   15
   readEnergyMeter-data 1
   room       8.3_PV-Info,Strom
   stateFormat state W
   target-serial SSSSSSSSSSS
   target-susyid 409

"Kann der Raspberry Pi nicht einfach zwei Zahlen addieren?
Ich habe jetzt gefühlt alle Beiträge bis zum Jahr 2013 zurück versucht zu verstehen. Ich kann das wohl nicht, das es aus Zufall mal rechnet, dann aber die Zahl nicht mehr nach ca. 15 - 30 sek wieder aktualisiert.

Das DOIF ist wohl das mächtigste Werkzeug dafür. Aber es ist für einen Handwerker nicht gerade leicht zu verstehen.
Internals:
   DEF        ([STP10Daten:SPOT_PDC] eq ">1") 
(set_fhem  ([+00:00:15]) {ReadingsVal("STP10Daten","SPOT_PDC",0) + ReadingsVal("SB6Daten","SPOT_PACTOT",0)})
DOELSE ((set_fhem([+00:00:15])(([STP10Daten:SPOT_PDC],"0") + [SB6Daten:SPOT_PACTOT],"0")))
   FUUID      64b91c81-f33f-71b0-7338-df3a164acc23a48b
   MODEL      FHEM
   NAME       Wechselrichter_Modbus
   NOTIFYDEV  STP10Daten,global
   NR         336
   NTFY_ORDER 50-Wechselrichter_Modbus
   STATE      0
   TYPE       DOIF
   VERSION    27740 2023-07-10 09:31:11
   eventCount 301
   Helper:
     DBLOG:
       state:
         logdb:
           TIME       1691792392.01721
           VALUE      0
   READINGS:
     2023-08-11 19:08:18   Wirkleistung3   1080
     2023-08-11 19:27:33   cmd             2
     2023-08-11 19:27:33   cmd_event       Wechselrichter_Modbus
     2023-08-11 19:27:33   cmd_nr          2
     2023-08-11 19:27:33   error           set_fhem([+00:00:15])((870,"0") + 442,"0"): Unknown command set_fhem([+00:00:15])((870,"0"), try help.
     2023-08-12 00:19:52   last_cmd        1312
     2023-08-12 00:19:52   mode            disabled
     2023-08-12 00:19:52   state           0
   Regex:
     accu:
     bar:
     barAvg:
     collect:
     cond:
       STP10Daten:
         0:
           SPOT_PDC   ^STP10Daten$:^SPOT_PDC:
   attr:
     cmdState:
     repeatcmd:
     wait:
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'STP10Daten','SPOT_PDC') eq ">1"
   do:
     0:
       0          set_fhem  ([+00:00:15]) {ReadingsVal("STP10Daten","SPOT_PDC",0) + ReadingsVal("SB6Daten","SPOT_PACTOT",0)}
     1:
       0          (set_fhem([+00:00:15])(([STP10Daten:SPOT_PDC],"0") + [SB6Daten:SPOT_PACTOT],"0"))
   helper:
     NOTIFYDEV  STP10Daten,global
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   
     timerevent
     timerevents
     timereventsState
     triggerDev
   readings:
     all         STP10Daten:SPOT_PDC
   uiState:
   uiTable:
Attributes:
   disable    0
   do         always
   event-on-change-reading .*
   intervall  30
   room       8.3_PV-Info,Strom
   selftrigger all
   userReadings state {ReadingsVal("STP10Daten","SPOT_PDC",0) + ReadingsVal("SB6Daten","SPOT_PACTOT",0)}
   userattr   intervall

Das zu verstehen habe ich aufgegeben. Vielleicht kann einer der Profis dazu einen Hinweis geben.
Die Überschuß Laden Funktion von:
https://forum.fhem.de/index.php?topic=128894.msg1281602#msg1281602funktioniert klasse, wenn die korrekten Werte vorliegen.
Bestimmt haben doch auch andere Forumteilnehmer mehr als einen Wechselrichter.
Vielen Dank für jede Hilfe
(P.S. für @Damian oder @Otto ist das bestimmt ein leichtes zwei Zahlen aus unterschiedlichen Device im Interval
zusammen zu rechnen).
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

Sebulba2k

Hallo Max,

Den BAT_PDC hab ich schon vermutet, allerdings steh ich etwas auf dem Schlauch, wie ich die Negativwerte am besten anzeigen soll...
Besser wären eigene für Laden und Entladen, welche dann nur positive Wattzahlen anzeigen würden.

Wenn ich in der Weboberfläche vom Wechselrichter auf Kanal-Ansicht gehe, haben die folgende Bezeichnungen:
BatChrg.CurBatCha   =  Momentane Batterieladung
BatDsch.CurBatDsch  =  Momentane Batterieentladung

Gruß Jonas

MadMax

Zitat von: NewRasPi am 12 August 2023, 13:09:05Hallo Ihr Spezialisten,
hoffentlich "passt" meine Frage hier.
Ich habe das Modul auch im Einsatz. Vielen Dank für die super Leistung.

Da ich zwei SMA Wechselrichter (und einen BYD HVS10.2 Speicher), einen STP10SE und einen SB6.0 habe, die Leistung aus beiden für das Überschussladen eines E-Auto verwenden möchte, verliere ich mich gerade in tausenden Forumsbeiträgen bei der Suche
nach einer Summenfunktion aus:userReadings

state {ReadingsVal("STP10Daten","SPOT_PDC",0) + ReadingsVal("SB6Daten","SPOT_PACTOT",0)}


Probiere es mal mit ReadingsNum.

Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

MadMax

Zitat von: Sebulba2k am 12 August 2023, 15:34:11Hallo Max,

Den BAT_PDC hab ich schon vermutet, allerdings steh ich etwas auf dem Schlauch, wie ich die Negativwerte am besten anzeigen soll...
Besser wären eigene für Laden und Entladen, welche dann nur positive Wattzahlen anzeigen würden.

Wenn ich in der Weboberfläche vom Wechselrichter auf Kanal-Ansicht gehe, haben die folgende Bezeichnungen:
BatChrg.CurBatCha   =  Momentane Batterieladung
BatDsch.CurBatDsch  =  Momentane Batterieentladung

Gruß Jonas

Kann ich mit Einbauen.
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

NewRasPi

Zitat von: MadMax am 12 August 2023, 15:49:53
Zitat von: NewRasPi am 12 August 2023, 13:09:05Hallo Ihr Spezialisten,
hoffentlich "passt" meine Frage hier.
Ich habe das Modul auch im Einsatz. Vielen Dank für die super Leistung.

Da ich zwei SMA Wechselrichter (und einen BYD HVS10.2 Speicher), einen STP10SE und einen SB6.0 habe, die Leistung aus beiden für das Überschussladen eines E-Auto verwenden möchte, verliere ich mich gerade in tausenden Forumsbeiträgen bei der Suche
nach einer Summenfunktion aus:userReadings

state {ReadingsVal("STP10Daten","SPOT_PDC",0) + ReadingsVal("SB6Daten","SPOT_PACTOT",0)}


Probiere es mal mit ReadingsNum.


Das ändert noch nichts an dem Auslösen. Wenn ich jetzt "set Wechselrichter_Modbus checkall" anklicke, rechnet er neu und zeigt auch die Summe an.
Dannach legt sich das DOIF aber wieder schlafen. Die Bedingung cmd1 war ja erfüllt und ist abgearbeitet.
Beim Reading steht dann: cmd2

Internals:
   DEF        ([STP10Daten:SPOT_PDC] eq ">1") 
(set_fhem  ([+00:00:14]),(set Wechselrichter_Modbus checkall), {ReadingsNum("STP10Daten","SPOT_PDC",0) + ReadingsNum("SB6Daten","SPOT_PACTOT",0)})
DOELSE ()
   FUUID      64b91c81-f33f-71b0-7338-df3a164acc23a48b
   MODEL      FHEM
   NAME       Wechselrichter_Modbus
   NOTIFYDEV  STP10Daten,global
   NR         336
   NTFY_ORDER 50-Wechselrichter_Modbus
   STATE      11546
   TYPE       DOIF
   VERSION    27740 2023-07-10 09:31:11
   eventCount 336
   Helper:
     DBLOG:
       state:
         logdb:
           TIME       1691850983.84017
           VALUE      11546
   READINGS:
     2023-08-11 19:08:18   Wirkleistung3   1080
     2023-08-12 16:36:23   cmd             2
     2023-08-12 16:36:23   cmd_event       Wechselrichter_Modbus
     2023-08-12 16:36:23   cmd_nr          2
     2023-08-12 16:32:53   mode            enabled
     2023-08-12 16:36:23   state           11546
   Regex:
     accu:
     bar:
     barAvg:
     collect:
     cond:
       STP10Daten:
         0:
           SPOT_PDC   ^STP10Daten$:^SPOT_PDC:
   attr:
     cmdState:
     repeatcmd:
     wait:
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'STP10Daten','SPOT_PDC') eq ">1"
   do:
     0:
       0          set_fhem  ([+00:00:14]),(set Wechselrichter_Modbus checkall), {ReadingsNum("STP10Daten","SPOT_PDC",0) + ReadingsNum("SB6Daten","SPOT_PACTOT",0)}
     1:
       0         
   helper:
     NOTIFYDEV  STP10Daten,global
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   
     timerevent
     timerevents
     timereventsState
     triggerDev
     DOIF_eventa:
       cmd_nr: 2
       cmd: 2
       cmd_event: Wechselrichter_Modbus
       cmd_2
     DOIF_eventas:
       cmd_nr: 2
       cmd: 2
       cmd_event: Wechselrichter_Modbus
       state: cmd_2
   readings:
     all         STP10Daten:SPOT_PDC
   uiState:
   uiTable:
Attributes:
   checkall   all
   disable    0
   do         always
   event-on-change-reading .*
   interval   30
   room       8.3_PV-Info,Strom
   selftrigger all
   userReadings state {ReadingsNum("STP10Daten","SPOT_PDC",0) + ReadingsNum("SB6Daten","SPOT_PACTOT",0)}
   userattr   interval

Wie kann ich den jetzt alle 15 Sekunden wieder aufwecken?
Mit dem [+00:00:15] klappt es bisher nicht.
Mit dem userattr interval 
und dann attr interval 30 leider auch nicht.

Vielen Dank für jeden Hinweis.
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

FHEMAN

#1506
Ich denke, der Bedingungsteil sollte anders lauten und beide WR einbeziehen. Den Ausführungsteil könntest du sicher auch vereinfachen. (Falls das checkall notwendig ist, würde ich ein sleep 5 dazwischen setzen.) Z. B.

([STP10Daten:SPOT_PDC] ne "0" || [SB6Daten:SPOT_PACTOT] ne "0")  ({
fhem("setreading Wechselrichter_Modbus SUM ". (ReadingsNum("STP10Daten","SPOT_PDC",0) + ReadingsNum("SB6Daten","SPOT_PACTOT",0)))})
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

NewRasPi

Zitat von: FHEMAN am 12 August 2023, 21:11:27Ich denke, der Bedingungsteil sollte anders lauten und beide WR einbeziehen. Den Ausführungsteil könntest du sicher auch vereinfachen. (Falls das checkall notwendig ist, würde ich ein sleep 5 dazwischen setzen.) Z. B.

([STP10Daten:SPOT_PDC] ne "0" || [SB6Daten:SPOT_PACTOT] ne "0")  ({
fhem("setreading Wechselrichter_Modbus SUM ". (ReadingsNum("STP10Daten","SPOT_PDC",0) + ReadingsNum("SB6Daten","SPOT_PACTOT",0)))})

Hallo @FHEMAN
vielen Dank für Deinen Code. Leider kann ich das jetzt wo keine Leistung mehr von den Wechselrichtern mehr kommt, nicht testen. Es kommen jetzt aber schon mal keine Fehlermeldungen mehr im Event monitor.
Der Zeitstempel und der state bleibt aber auf den ersten "set Wechselrichter_Modbus checkall" und cmd2 stehen.
Hilft das weiter?
Warum gibt es bei diesen DOIF kein Attribut "interval" mehr? (als userattr interval tut sich irgend wie auch nix)
Die Suche geht noch weiter für mich.
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

NewRasPi

Vielen vielen Dank
die Abfrage der Summe aus zwei Wechselrichter Leistungen funktioniert.
Hier ist das List davon:
Internals:
   CFGFN     
   DEF        ([STP10Daten:SPOT_PDC] ne "0" || [SB6Daten:SPOT_PACTOT] ne "0")  ({
fhem("setreading Wechselrichter_Modbus SUM ". (ReadingsNum("STP10Daten","SPOT_PDC",0) + ReadingsNum("SB6Daten","SPOT_PACTOT",0)))})
   FUUID      64d7c4da-f33f-71b0-d2da-2b7c49a6111bab8c
   MODEL      FHEM
   NAME       Wechselrichter_Modbus
   NOTIFYDEV  STP10Daten,SB6Daten,global,Wechselrichter_Modbus
   NR         174556
   NTFY_ORDER 50-Wechselrichter_Modbus
   STATE      2671
   TYPE       DOIF
   VERSION    27740 2023-07-10 09:31:11
   eventCount 4860
   Helper:
     DBLOG:
       state:
         logdb:
           TIME       1691915524.94504
           VALUE      2671
   READINGS:
     2023-08-13 10:32:04   SUM             2671
     2023-08-13 10:32:04   cmd             1
     2023-08-13 10:32:04   cmd_event       Wechselrichter_Modbus
     2023-08-13 10:32:04   cmd_nr          1
     2023-08-12 21:28:28   mode            enabled
     2023-08-13 10:32:04   state           2671
     2023-08-13 10:32:04   wait_timer      13.08.2023 10:32:34 cmd_1 Wechselrichter_Modbus
   Regex:
     STATE:
       Wechselrichter_Modbus:
         STATE:
           SUM        ^Wechselrichter_Modbus$:^SUM:
     accu:
     bar:
     barAvg:
     collect:
     cond:
       SB6Daten:
         0:
           SPOT_PACTOT ^SB6Daten$:^SPOT_PACTOT:
       STP10Daten:
         0:
           SPOT_PDC   ^STP10Daten$:^SPOT_PDC:
   attr:
     cmdState:
     repeatcmd:
       30
     wait:
       0:
         10
       1:
         10
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'STP10Daten','SPOT_PDC') ne "0" || ::ReadingValDoIf($hash,'SB6Daten','SPOT_PACTOT') ne "0"
   do:
     0:
       0          { fhem("setreading Wechselrichter_Modbus SUM ". (ReadingsNum("STP10Daten","SPOT_PDC",0) + ReadingsNum("SB6Daten","SPOT_PACTOT",0)))}
     1:
   helper:
     NOTIFYDEV  STP10Daten,SB6Daten,global,Wechselrichter_Modbus
     event     
     globalinit 1
     last_timer 0
     sleepdevice Wechselrichter_Modbus
     sleepsubtimer 0
     sleeptimer 0
     timerdev   
     timerevent
     timerevents
     timereventsState
     triggerDev
     triggerEvents
     triggerEventsState
   readings:
     all         STP10Daten:SPOT_PDC SB6Daten:SPOT_PACTOT
   uiState:
   uiTable:
Attributes:
   do         always
   repeatcmd  30
   room       8.3_PV-Info,Strom
   state      [Wechselrichter_Modbus:SUM]
   wait       10:10

Zwei "Auffälligkeiten":
1. Wenn ich das Attribut wait 10:10 lösche, geht das wiederholen nach "repeatcmd 30" Sekunden nicht mehr.
   (im Event monitor)
2. Bei manchen DOIF gibt es das Attribut repeadcmd im Auswahlmenue gar nicht. (event. nur wenns kein DOELSE gibt)
Wie soll man das nur verstehen. :-)

Jetzt rechnet es auf jeden Fall und ich kann damit die Photovoltaik- Überschuß- Ladung meines E-Auto mit der
(Universal-) Wallbox laden.
Herzlichsten Dank für die Hilfe.
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

FHEMAN

Hi NewRasPi, schön, dass es klappt. Ich denke, wait und repeatcmd brauchst Du nicht mehr, denn (nur) bei jeder Aktualisierung eines der beiden Werte wird die Summe berechnet.
Die Aktualisierung wiederum steuerst Du in den Speedwire Devices.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

elo

Hi, bei NewRasPi sehe ich Daten im Reading, die bei mir nicht kommen.
Also habe ich das Modul von 2.21.x auf den aktuellen Stand gebracht und den datail-level auf 2 gesetzt.

Diese 3 Readings werden mir aber trotzdem nicht angezeigt.

BAT_CAPACITY
BAT_CYCLES
INV_FIRMWARE

Batterie ist eine HVS 7.7 mit SMA STP8SE, alle haben die aktuelle Firmware.

fhem> list PV89_SMAI 
Internals:
   DEF        crypt:xxxx xxx.xxx.xxx.xxx
   FUUID      5f778a86-f33f-969e-53dd-6ad8bdfb6f0c9d3d
   FVERSION   76_SMAInverter.pm:v2.23.5-s27705/2023-06-25
   HOST       xxx.xxx.xxx.xxx
   INTERVAL   manual
   INVCLASS   8009
   INVFWMAIN  0
   INVTYPE    19050
   LASTUPDATE 17.08.2023 / 11:59:38
   NAME       PV89_SMAI
   NR         319
   PASS       crypt:xxxx
   STATE      1340 W
   TYPE       SMAInverter
   eventCount 80
   HELPER:
     AVERAGEBUF 1340,1306,1269,1262,1235,1227,1199,1191,1162,1165,1126,1115,1089,1062,1053,1055,1021
     DEFAULT_TARGET_SERIAL 4294967295
     DEFAULT_TARGET_SUSYID 65535
     FAULTEDCYCLES 0
     INTERVAL   60
     MAXBYTES   300
     MYSERIALNUMBER 123321123
     MYSUSYID   233
     PACKAGE    main
     PKT_ID     32769
     VERSION    2.23.5
     firtRunDay 0
   READINGS:
     2023-08-17 11:59:38   BAT_IDC         2.822
     2023-08-17 11:51:22   BAT_LOADTODAY   0
     2023-08-17 11:59:38   BAT_LOADTOTAL   63827
     2023-08-17 11:59:38   BAT_PDC         860
     2023-08-17 11:59:38   BAT_TEMP        22
     2023-08-17 11:59:38   BAT_UDC         304.7
     2023-08-17 11:59:38   BAT_UNLOADTODAY 144
     2023-08-17 11:59:38   BAT_UNLOADTOTAL 43240
     2023-08-17 11:59:38   ChargeStatus    4
     2023-08-17 11:59:38   INV_BACKRELAYRELAY Open
     2023-08-17 11:59:38   INV_CLASS       Hybrid Inverters
     2023-08-17 11:59:38   INV_GRIDRELAY   Closed
     2023-08-17 11:59:38   INV_GeneralOperatingStatus activated
     2023-08-17 11:59:38   INV_OperatingStatus parallel grid operation
     2023-08-17 11:59:38   INV_PACMAX1     8000
     2023-08-17 11:59:38   INV_PACMAX2     0
     2023-08-17 11:59:38   INV_PACMAX3     0
     2023-08-17 11:59:38   INV_STATUS      Ok
     2023-08-17 11:59:38   INV_TYPE        STP8.0SE (SUNNY TRIPOWER 8.0 SE)
     2023-08-17 11:59:38   SPOT_Backup_IAC1 0.00
     2023-08-17 11:59:38   SPOT_Backup_IAC2 0.00
     2023-08-17 11:59:38   SPOT_Backup_IAC3 0.10
     2023-08-17 11:59:38   SPOT_Backup_PAC1 0
     2023-08-17 11:59:38   SPOT_Backup_PAC2 0
     2023-08-17 11:59:38   SPOT_Backup_PAC3 23
     2023-08-17 11:59:38   SPOT_CosPhi     0.000
     2023-08-17 11:59:38   SPOT_EPVTODAY   167
     2023-08-17 11:59:38   SPOT_EPVTOTAL   5901024
     2023-08-17 11:59:38   SPOT_ETODAY     4602
     2023-08-17 11:59:38   SPOT_ETOTAL     5886381
     2023-08-17 11:59:38   SPOT_FEEDTM     0
     2023-08-17 11:59:38   SPOT_FREQ       50
     2023-08-17 11:59:38   SPOT_IAC1       3.20
     2023-08-17 11:59:38   SPOT_IAC2       3.20
     2023-08-17 11:59:38   SPOT_IAC3       3.20
     2023-08-17 11:59:38   SPOT_IDC1       1.58
     2023-08-17 11:59:38   SPOT_IDC2       1.607
     2023-08-17 11:59:38   SPOT_OPERTM     0
     2023-08-17 11:59:38   SPOT_PAC1       744
     2023-08-17 11:59:38   SPOT_PAC2       731
     2023-08-17 11:59:38   SPOT_PAC3       736
     2023-08-17 11:59:38   SPOT_PACTOT     2200
     2023-08-17 11:59:38   SPOT_PDC        1340
     2023-08-17 11:59:38   SPOT_PDC1       665
     2023-08-17 11:59:38   SPOT_PDC2       709
     2023-08-17 11:59:38   SPOT_UAC1       236.5
     2023-08-17 11:59:38   SPOT_UAC1_2     409.600
     2023-08-17 11:59:38   SPOT_UAC2       233.6
     2023-08-17 11:59:38   SPOT_UAC2_3     404.500
     2023-08-17 11:59:38   SPOT_UAC3       233.5
     2023-08-17 11:59:38   SPOT_UAC3_1     404.400
     2023-08-17 11:59:38   SPOT_UDC1       423.8
     2023-08-17 11:59:38   SPOT_UDC2       446.1
     2023-08-17 11:59:38   SUSyID          440
     2023-08-17 11:59:38   Serialnumber    xxxx
     2023-08-17 11:59:38   Summe_Direktverbrauch 2189
     2023-08-17 11:59:38   Summe_Gesamtverbrauch 2189
     2023-08-17 11:59:38   avg_power_lastminutes_05 1273
     2023-08-17 11:59:38   avg_power_lastminutes_10 1225
     2023-08-17 11:59:38   avg_power_lastminutes_15 1178
     2023-08-17 11:59:38   modulstate      normal
     2023-08-17 11:59:38   opertime_start  17.08.2023 05:21:05
     2023-08-17 11:59:38   opertime_stop   17.08.2023 21:26:43
     2023-08-17 11:59:38   state           1340

Ideen hierzu?
--
Raspi + FHEM 5.8 + HM-MOD-PCB + HM-LAN + HM-LC_Bl1PBU-FM + HM-LC-BL1-FM + HM-PB-2-WM + HM-LC-SW1-FM + HM-TC-IT-WM-W-EU + HM-CC-RT-DN

elo

...und plötzlich waren alle Werte da. :-)

Danke für das tolle Modul!
--
Raspi + FHEM 5.8 + HM-MOD-PCB + HM-LAN + HM-LC_Bl1PBU-FM + HM-LC-BL1-FM + HM-PB-2-WM + HM-LC-SW1-FM + HM-TC-IT-WM-W-EU + HM-CC-RT-DN

MadMax

Manche Werte werden nicht Zyklisch abgefragt sondern nur alle 100 Abfragen. Dazu gehört die Firmware und einige Werte die sich nur sehr selten verändern.

Gruß
Max
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

FHEMAN

Zitat von: MadMax am 18 Mai 2023, 10:46:09Den 3. MPP habe ich schon vorbereitet aber konnte noch nicht testen.
Das werde ich jetzt aber soweit mal scharf schalten das du testen kannst.

Gruß
Max
Kann bitte ein Tripower X Besitzer mal sagen, ob das Auslesen der einzelnen 3 Strings (DC) funktioniert?
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

MadMax

Hallo,

im Anhang eine SMAInverter version in der bei den SMA STP x.x SE Wechselrichtern die Aktuelle Lade- und Entladeleistug ausgelesen wird und nicht über den Batteriestrom un der BAtteriespannung berechnet wird.

Gerne testen, wenn alles klatt wir die eingecheckt.

Gruß
Max
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax