Leistungsprognose für Wechselrichter

Begonnen von ch.eick, 18 Januar 2021, 08:35:46

Vorheriges Thema - Nächstes Thema

DS_Starter

#1755
Zitat
Wie nenne ich es..... das "Zeitfenster" welches die Planung vorsieht (ich bemerke bei mir ausschließlich immer nur 60 Minuten Zeitfenster), liesse sich das eventuell (zukünftig?) erweitern / beeinflussen?
Geht jetzt schon , Schlüssel mintime setzen.

Zitat
Auf Basis der Prognose machen meine vom Modul geplanten Start-Zeitpunkte durchaus Sinn, enden aber nach Ablauf der 60 Minuten. Und dann wäre der restliche Nachmittag trotz massiv PV-Überschusses ungenutzt.
Mit mintime=240 z.B. endet ein Zyklus nach 4 Stunden.
Im Extremfall setzt man notafter=10, mintime=600. Dann beginnt der geplante Zeitraum nicht nach 10 Uhr mit einer mindest Planungszeit von 10 Stunden. Über die Schlüssel swoncond, swoffcond, interruptable kann man noch das Schaltverhalten zur Laufzeit beeinflussen, also es muß PV Überschuß da sein, die Raumtemp. soll zwischen X und Y Grad gehalten werden (d.h. in den Grenzen erfolgt das Schalten der E-Heizung) und solche Sachen.

Damit nutzt man den ganzen (Sonnen)Tag. Ich habe einen Heizlüfter, mit dem ich den PV-Überschuß "verheize".
Der Consumer sieht so aus:


Shelly.shellyplug3 icon=scene_microwave_oven type=heater power=1700 mode=can notbefore=09 mintime=600
on=on off=off etotal=relay_0_energy_Wh:Wh pcurr=relay_0_power:W
auto=automatic
interruptable=eg.wz.wandthermostat:diff-temp:[0-9]\.[0-9]:0.2
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Dracolein

#1756
Achso.
mintime war für mich der Parameter, den der Consumer nach einer Aktivierung mindestens nonstop durchläuft.

Noch eine Frage zusätzlich:
Wie reagiert das Modul auf "externe" Schaltvorgänge der Consumer? Also beispielsweise wird die Schaltsteckdose zur Zeit XY vom Modul nach Plan aktiviert und während der Laufzeit über ein unabhängiges DOIF oder meinetwegen über einen Schalter abgeschaltet. Versucht das Modul dann diesen Consumer wieder zu aktivieren bei nächster Gelegenheit ?

Nochwas (sorry  ;D )
Worin besteht der Unterschied zwischen swcondoff und interruptable mit Bezug auf Unterbrechnungen? Ich hätte beispielsweise die Abhängigkeit zu einem Wandthermostat aus Deinem Beispiel an den Parameter swcondoff gekoppelt, da ich "interruptable" so verstand, dass hier grundsätzlich entschieden wird, ob überhaupt zwischendrin abgeschaltet werden darf. (Waschmaschinenzyklus muss durchlaufen, Heizlüfter könnte an- und abschalten)
Vermutlich ist swcondoff = abgeschaltet für restlichen Tag ?
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

DS_Starter

#1757
Zitat
Noch eine Frage zusätzlich:
Wie reagiert das Modul auf "externe" Schaltvorgänge der Consumer? Also beispielsweise wird die Schaltsteckdose zur Zeit XY vom Modul nach Plan aktiviert und während der Laufzeit über ein unabhängiges DOIF oder meinetwegen über einen Schalter abgeschaltet. Versucht das Modul dann diesen Consumer wieder zu aktivieren bei nächster Gelegenheit ?
Ähmm ... das müßte ich nochmal verifizieren, aber es müßte so sein dass erst wenn das Modul von sich ausschaltet und danach wieder einschalten will dieser Vorgang auch ausgeführt wird.

ZitatWorin besteht der Unterschied zwischen swcondoff und interruptable mit Bezug auf Unterbrechnungen?
swcondoff  beendet den gestarteten Zyklus, d.h. der Consumer bleibt dann aus bis neu geplant wird.
interruptable ist eine temporäre Unterbrechung und der Consumer wird fortgesetzt wenn die Bedingungen wieder passen bis geplantes Ende.
Es gibt ja verschiedene Modus für interruptable wie in der Commandref beschrieben.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

Im contrib liegt eine neue V.
Neu ist:

* das Attr solCastPercentile ist entfernt
* zum manuellen Setzen von SolCast API Percentilen für jede Stunde gibt es jetzt die Setter pvSolCastPercentile_XX
* kleinere Fixes

LG
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Hauswart

#1759
Die aktuelle Version scheint einen Fehler zu haben:
ZitatToday_Hour12_GridConsumption 217 Wh 2022-10-14 11:58:52
Today_Hour12_GridFeedIn 0 Wh 2022-10-14 11:58:52
Today_Hour12_PVforecast 110 Wh 2022-10-14 11:58:52
Today_Hour12_PVreal 200 Wh 2022-10-14 11:58:52
Today_Hour13_GridConsumption 409 Wh 2022-10-14 12:59:32
Today_Hour13_GridFeedIn 0 Wh 2022-10-14 12:59:32
Today_Hour13_PVforecast 96 Wh 2022-10-14 12:59:32
Today_Hour13_PVreal 0 Wh 2022-10-14 12:59:32

Es wurde aber auch in der Stunde 13 produziert (wenn auch nicht viel)....




Edit für die Stunde 14 habe ich wieder Daten für PVreal...
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

DS_Starter

Kann ich nicht bestätigen, sieht bei mir völlig i.O. aus.
Schau dir den Input (Reading für etotal) von deinem Wechselrichter an. Das etotal ist ein stetig aufsteigender Zähler aus dem die Stundendifferenz berechnet wird. Sollte die Diff 0 oder negativ sein, erscheint 0 im Reading Today_HourXX_PVreal.
Möglicherweise gibt es da ein Problem. Wurde evtl. dein WR-Modul upgedated ?
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Dracolein

Mal ganz zwischendurch: großes Lob an DS_Starter für die ausführliche Durchführung durch das Modul in FHEM. Habe grade von DWD auf solCast gewechselt und wurde hervorragend automatisch mittels dynamischer Hinweise und Beispiele hindurchgeführt. Große Klasse, das habe ich so noch nie anderweitig gesehen.
Sogar das "set xxx plantconfiguration check" als finale Zusammenfassung ist äusserst hilfreich und... komplex  ;D

Bin gespannt auf die Vorhersagen der kommenden Tage
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

dk3572

Zitat von: DS_Starter am 15 April 2022, 10:52:25
Hi,

@Dieter, ich habe die Implementierung von Max leicht verändert übernommen -> siehe #1361  (Attribute)

Die Restlaufzeit wird aus dem Schlüssel mintime im Consumer Attribut, der Startzeit und damit der erwarteten Endezeit ermittelt.
Den aktuellen Wert sieht man mit "get ... valConsumerMaster" -> Schlüssel remainTime.

Die Berechnung kann aber nur dann durchgeführt werden wenn dem Modul die Schaltung der Verbraucher erlaubt wird, d.h. wenn in dem Consumer Attribut die Schlüssel on und off gesetzt sind.

schöne Ostern !

LG,
Heiko

Hallo Heiko,

ich möchte gerne noch mal das Thema aufgreifen, da es mir bis jetzt immer noch nicht gelungen ist, die Restlaufzeit der Verbraucher anzuzeigen.
Zur Erinnerung, ich möchte nur die Restlaufzeit in der Grafik sehen. Das Modul soll auf keinen Fall die Schaltsteckdose, an der der Verbraucher hängt, schalten.

Wie muss ich was genau konfigurieren?

Danke dir im Voraus und schönes Wochenende schon mal.

VG Dieter

   FUUID      5fd65ec0-f33f-cd72-ba56-13a41f24f97a012f
   FVERSION   76_SolarForecast.pm:v0.69.0-s21735/2020-04-20 TESTING
   HISTFILE   last write time: 11:10:01 File: ./FHEM/FhemUtils/PVH_SolarForecast_SolarForecast
   MODE       Automatic - next Cycletime: 11:14:42
   MODEL      SolCastAPI
   NAME       SolarForecast
   NOTIFYDEV  TP_Waschmaschine,TP_Trockner,Spuelmaschine,DWD,SMA_Wechselrichter,SMA_Zaehler,SMA_Wechselrichter_Bat
   NR         437
   NTFY_ORDER 50-SolarForecast
   STATE      updated
   TYPE       SolarForecast
   eventCount 44854
   HELPER:
     FW         WEB
     INITCONTOTAL 3593127.5
     INITFEEDTOTAL 11929129
     PACKAGE    FHEM::SolarForecast
     SPGDETAIL 
     SPGDEV     SolarForecast
     SPGROOM   
     VERSION    0.69.0
     VERSION_API unused
     VERSION_CTZ 1.0.0
     VERSION_ErrCodes unused
     VERSION_SMUtils 1.24.1
   OLDREADINGS:
   READINGS:
     2022-10-16 23:59:59   AllPVforecastsToEvent 0 Wh
     2022-10-15 11:14:12   Current_AutarkyRate 4 %
     2022-10-15 11:14:12   Current_BatCharge 0 %
     2022-10-15 11:14:12   Current_Consumption 613 W
     2022-10-15 11:14:12   Current_GridConsumption 586 W
     2022-10-15 11:14:12   Current_GridFeedIn 0 W
     2022-10-15 11:14:12   Current_PV      682 W
     2022-10-15 11:14:12   Current_PowerBatIn 655 W
     2022-10-15 11:14:12   Current_PowerBatOut 0 W
     2022-10-15 11:14:12   Current_SelfConsumption 27 W
     2022-10-15 11:14:12   Current_SelfConsumptionRate 4 %
     2022-10-15 11:00:00   LastHourGridconsumptionReal 68 Wh
     2022-10-15 11:00:00   LastHourPVforecast 877 Wh
     2022-10-15 11:00:00   LastHourPVreal  800 Wh
     2022-10-15 11:14:12   NextHours_Sum01_PVforecast 1199 Wh
     2022-10-15 11:14:12   NextHours_Sum02_PVforecast 2302 Wh
     2022-10-15 11:14:12   NextHours_Sum03_PVforecast 3258 Wh
     2022-10-15 11:14:12   NextHours_Sum04_ConsumptionForecast 1045 Wh
     2022-10-15 11:14:12   NextHours_Sum04_PVforecast 4103 Wh
     2022-10-15 11:14:12   RestOfDayConsumptionForecast 3661 Wh
     2022-10-15 11:14:12   RestOfDayPVforecast 5213 Wh
     2022-10-15 00:59:55   Today_Hour01_BatIn 0 Wh
     2022-10-15 00:59:55   Today_Hour01_BatOut 0 Wh
     2022-10-15 00:59:55   Today_Hour01_GridConsumption 275 Wh
     2022-10-15 00:59:55   Today_Hour01_GridFeedIn 0 Wh
     2022-10-15 00:59:55   Today_Hour01_PVreal 0 Wh
     2022-10-15 01:59:55   Today_Hour02_BatIn 0 Wh
     2022-10-15 01:59:55   Today_Hour02_BatOut 0 Wh
     2022-10-15 01:59:55   Today_Hour02_GridConsumption 329 Wh
     2022-10-15 01:59:55   Today_Hour02_GridFeedIn 0 Wh
     2022-10-15 01:59:55   Today_Hour02_PVreal 0 Wh
     2022-10-15 02:59:30   Today_Hour03_BatIn 0 Wh
     2022-10-15 02:59:30   Today_Hour03_BatOut 0 Wh
     2022-10-15 02:59:30   Today_Hour03_GridConsumption 258 Wh
     2022-10-15 02:59:30   Today_Hour03_GridFeedIn 0 Wh
     2022-10-15 02:59:30   Today_Hour03_PVreal 0 Wh
     2022-10-15 03:59:35   Today_Hour04_BatIn 0 Wh
     2022-10-15 03:59:35   Today_Hour04_BatOut 0 Wh
     2022-10-15 03:59:35   Today_Hour04_GridConsumption 276 Wh
     2022-10-15 03:59:35   Today_Hour04_GridFeedIn 0 Wh
     2022-10-15 03:59:35   Today_Hour04_PVreal 0 Wh
     2022-10-15 04:59:40   Today_Hour05_BatIn 0 Wh
     2022-10-15 04:59:40   Today_Hour05_BatOut 0 Wh
     2022-10-15 04:59:40   Today_Hour05_GridConsumption 275 Wh
     2022-10-15 04:59:40   Today_Hour05_GridFeedIn 0 Wh
     2022-10-15 04:59:40   Today_Hour05_PVreal 0 Wh
     2022-10-15 05:59:44   Today_Hour06_BatIn 0 Wh
     2022-10-15 05:59:44   Today_Hour06_BatOut 0 Wh
     2022-10-15 05:59:44   Today_Hour06_GridConsumption 290 Wh
     2022-10-15 05:59:44   Today_Hour06_GridFeedIn 0 Wh
     2022-10-15 05:59:44   Today_Hour06_PVreal 0 Wh
     2022-10-15 06:59:50   Today_Hour07_BatIn 0 Wh
     2022-10-15 06:59:50   Today_Hour07_BatOut 0 Wh
     2022-10-15 06:59:50   Today_Hour07_GridConsumption 357 Wh
     2022-10-15 06:59:50   Today_Hour07_GridFeedIn 0 Wh
     2022-10-15 06:59:50   Today_Hour07_PVreal 0 Wh
     2022-10-15 07:59:55   Today_Hour08_BatIn 0 Wh
     2022-10-15 07:59:55   Today_Hour08_BatOut 0 Wh
     2022-10-15 07:59:55   Today_Hour08_GridConsumption 336 Wh
     2022-10-15 07:59:55   Today_Hour08_GridFeedIn 0 Wh
     2022-10-15 07:59:55   Today_Hour08_PVforecast 2 Wh
     2022-10-15 07:59:55   Today_Hour08_PVreal 0 Wh
     2022-10-15 08:59:30   Today_Hour09_BatIn 0 Wh
     2022-10-15 08:59:30   Today_Hour09_BatOut 0 Wh
     2022-10-15 08:59:30   Today_Hour09_GridConsumption 405 Wh
     2022-10-15 08:59:30   Today_Hour09_GridFeedIn 0 Wh
     2022-10-15 08:59:30   Today_Hour09_PVforecast 71 Wh
     2022-10-15 08:59:30   Today_Hour09_PVreal 35 Wh
     2022-10-15 09:59:35   Today_Hour10_BatIn 0 Wh
     2022-10-15 09:59:35   Today_Hour10_BatOut 0 Wh
     2022-10-15 09:59:35   Today_Hour10_GridConsumption 161 Wh
     2022-10-15 09:59:35   Today_Hour10_GridFeedIn 1 Wh
     2022-10-15 09:59:35   Today_Hour10_PVforecast 419 Wh
     2022-10-15 09:59:35   Today_Hour10_PVreal 305 Wh
     2022-10-15 10:59:41   Today_Hour11_BatIn 237 Wh
     2022-10-15 10:59:41   Today_Hour11_BatOut 0 Wh
     2022-10-15 10:59:41   Today_Hour11_GridConsumption 68 Wh
     2022-10-15 10:59:41   Today_Hour11_GridFeedIn 14 Wh
     2022-10-15 10:59:41   Today_Hour11_PVforecast 877 Wh
     2022-10-15 10:59:41   Today_Hour11_PVreal 800 Wh
     2022-10-15 11:14:12   Today_Hour12_BatIn 109 Wh
     2022-10-15 11:14:12   Today_Hour12_BatOut 19 Wh
     2022-10-15 11:14:12   Today_Hour12_GridConsumption 360 Wh
     2022-10-15 11:14:12   Today_Hour12_GridFeedIn 0 Wh
     2022-10-15 11:14:12   Today_Hour12_PVforecast 1218 Wh
     2022-10-15 11:14:12   Today_Hour12_PVreal 148 Wh
     2022-10-15 11:14:12   Today_Hour13_PVforecast 1144 Wh
     2022-10-15 11:14:12   Today_Hour14_PVforecast 978 Wh
     2022-10-15 11:14:12   Today_Hour15_PVforecast 890 Wh
     2022-10-15 11:14:12   Today_Hour16_PVforecast 712 Wh
     2022-10-15 11:14:12   Today_Hour17_PVforecast 425 Wh
     2022-10-15 11:14:12   Today_Hour18_PVforecast 137 Wh
     2022-10-15 11:14:12   Today_Hour19_PVforecast 14 Wh
     2022-10-15 11:14:12   Today_MaxPVforecast 1218 Wh
     2022-10-15 11:14:12   Today_MaxPVforecastTime 2022-10-15 11:00:00
     2022-10-15 11:14:12   Today_PVforecast 6887 Wh
     2022-10-15 11:14:12   Today_PVreal    1282 Wh
     2022-10-15 11:14:12   Today_SunRise   07:43
     2022-10-15 11:14:12   Today_SunSet    18:38
     2022-10-15 11:14:12   Tomorrow_ConsumptionForecast 8256 Wh
     2022-10-15 11:14:12   Tomorrow_PVforecast 6251 Wh
     2022-10-15 11:14:12   Tomorrow_SunRise 07:44
     2022-10-15 11:14:12   Tomorrow_SunSet 18:36
     2022-10-15 11:14:12   consumer01      name='Waschmaschine' state='on' planningstate='planned'
     2022-10-15 11:14:12   consumer01_currentPower 0 W
     2022-10-15 11:14:12   consumer01_planned_start 15.10.2022 10:00:00
     2022-10-15 11:14:12   consumer01_planned_stop 15.10.2022 12:00:00
     2022-10-15 11:14:12   consumer02      name='Trockner' state='on' planningstate='planned'
     2022-10-15 11:14:12   consumer02_currentPower 0 W
     2022-10-15 11:14:12   consumer02_planned_start 15.10.2022 10:00:00
     2022-10-15 11:14:12   consumer02_planned_stop 15.10.2022 11:00:00
     2022-10-15 11:14:12   consumer03      name='Spülmaschine' state='on' planningstate='planned'
     2022-10-15 11:14:12   consumer03_currentPower 48 W
     2022-10-15 11:14:12   consumer03_planned_start 15.10.2022 10:00:00
     2022-10-15 11:14:12   consumer03_planned_stop 15.10.2022 12:00:00
     2021-05-28 06:46:39   currentBatteryDev SMA_Wechselrichter_Bat pin=power_in:W pout=power_out:W intotal=bat_loadtoday:kWh outtotal=etoday:kWh charge=chargestatus
     2021-04-19 11:41:42   currentForecastDev DWD
     2022-05-17 13:13:21   currentInverterDev SMA_Wechselrichter pv=total_pac_fc:kW etotal=etotal_fc:kWh capacity=6000
     2021-04-06 19:24:25   currentMeterDev SMA_Zaehler gcon=gcon:W contotal=contotal:kWh gfeedin=gfeedin:W feedtotal=feedtotal:kWh
     2022-10-11 07:46:07   currentRadiationDev SolCast-API
     2021-04-10 08:24:00   energyH4Trigger 1on=2000 1off=1700 2on=4000 2off=3700 3on=6000 3off=5700
     2022-10-15 08:43:59   energyH4Trigger_1 on
     2022-10-15 09:14:31   energyH4Trigger_2 on
     2022-10-12 14:30:52   energyH4Trigger_3 off
     2021-01-27 19:08:53   inverterStrings Süddach
     2020-12-13 19:39:52   moduleArea      32
     2021-01-27 19:07:57   moduleDirection Süddach=S
     2021-01-27 19:10:15   modulePeakString Süddach=6.175
     2022-10-11 07:58:43   moduleRoofTops  Süddach=PV64846
     2021-01-27 19:11:29   moduleTiltAngle Süddach=45
     2022-10-15 11:14:12   nextCycletime   11:14:42
     2022-10-15 11:02:13   nextSolCastCall nach 15.10.2022 11:14:31
     2021-05-31 07:05:33   powerTrigger    1on=1500 1off=1000 2on=3000 2off=2500 3on=5500 3off=5000
     2022-10-15 00:00:24   powerTrigger_1  off
     2022-10-15 00:00:24   powerTrigger_2  off
     2022-10-15 00:00:24   powerTrigger_3  off
     2022-10-15 11:14:12   pvCorrectionFactor_Auto on
     2022-10-15 09:00:00   pvSolCastPercentile_09 50 (automatic - old percentile: 50)
     2022-10-15 09:00:00   pvSolCastPercentile_09_autocalc done
     2022-10-15 10:00:05   pvSolCastPercentile_10 50 (automatic - old percentile: 50)
     2022-10-15 10:00:05   pvSolCastPercentile_10_autocalc done
     2022-10-15 11:00:11   pvSolCastPercentile_11 50 (automatic - old percentile: 50)
     2022-10-15 11:00:11   pvSolCastPercentile_11_autocalc done
     2022-10-15 11:14:12   state           updated
Attributes:
   Css        .flowg.text { stroke: none; fill: gray; font-size: 45px; }
.flowg.sun_active { stroke: orange; fill: orange; }
.flowg.sun_inactive { stroke: gray; fill: gray; }
.flowg.bat25 { stroke: red; fill: red; }
.flowg.bat50 { stroke: yellow; fill: yellow; }
.flowg.bat75 { stroke: green; fill: green; }
.flowg.grid_color1 { fill: green; }
.flowg.grid_color2 { fill: red; }
.flowg.grid_color3 { fill: gray; }
.flowg.inactive_in { stroke: gray; stroke-dashoffset: 20; stroke-dasharray: 10; opacity: 0.2; }
.flowg.inactive_out { stroke: gray; stroke-dashoffset: 20; stroke-dasharray: 10; opacity: 0.2; }
.flowg.active_in { stroke: red; stroke-dashoffset: 20; stroke-dasharray: 10; opacity: 0.8; animation: dash 0.5s linear; animation-iteration-count: infinite; }
.flowg.active_out { stroke: yellow; stroke-dashoffset: 20; stroke-dasharray: 10; opacity: 0.8; animation: dash 0.5s linear; animation-iteration-count: infinite; }
   DbLogExclude .*
   Wh_kWh     Wh
   alias      Solar Vorhersage
   autoRefresh 120
   autoRefreshFW WEB
   beam1Color 0033FF
   beam1Content pvForecast
   beam2Color 149600
   beam2Content pvReal
   cloudFactorDamping 0
   consumer01 TP_Waschmaschine icon=scene_washing_machine@orange type=washingmachine mode=can power=2500 pcurr=power:W etotal=total:kWh:3 mintime=120 on=on off=off auto=auto_SolarForecast notbefore=08 notafter=20
   consumer02 TP_Trockner icon=scene_clothes_dryer@orange type=dryer mode=can power=2500 pcurr=power:W etotal=total:kWh:3 mintime=60 on=on off=off auto=auto_SolarForecast notbefore=08 notafter=20
   consumer03 Spuelmaschine icon=scene_dishwasher@orange type=dishwasher mode=can power=2500 pcurr=ENERGY_Power:W etotal=ENERGY_Today:kWh:3 mintime=120 on=on off=off auto=auto_SolarForecast notbefore=08 notafter=20
   consumerAdviceIcon clock@green
   consumerLegend icon_bottom
   flowGraphicAnimate 1
   flowGraphicShowConsumerDummy 0
   flowGraphicSize 450
   forcePageRefresh 1
   graphicSelect both
   historyHour -12
   hourCount  32
   interval   30
   layoutType double
   optimizeSolCastAPIreqInterval 1
   rainFactorDamping 0
   room       Photovoltaik
   sameWeekdaysForConsfc 1
   showDiff   no
   showNight  0


   CID        DVES_2EF549
   DEF        DVES_2EF549
   FUUID      6092bc02-f33f-cd72-867e-e1ac1734d10b65f4
   FVERSION   10_MQTT2_DEVICE.pm:0.258890/2022-03-27
   IODev      MQTT2_Server
   LASTInputDev MQTT2_Server
   MQTT2_Server_CONN MQTT2_Server_192.168.178.77_55815
   MQTT2_Server_MSGCNT 8136
   MQTT2_Server_TIME 2022-10-15 11:22:08
   MSGCNT     8136
   NAME       Spuelmaschine
   NR         483
   STATE      1:on
2:on
   TYPE       MQTT2_DEVICE
   eventCount 494
   JSONMAP:
     Channel_0  0
     Channel_1  0
     Channel_2  0
     Channel_3  0
     Channel_4  0
     Color      0
     Dimmer     0
     HSBColor   0
     POWER1     0
     POWER2     0
     POWER3     0
     POWER4     0
   READINGS:
     2021-05-07 20:49:13   BASE            55
     2021-05-07 20:49:13   DeviceName      Spuelmaschine
     2022-10-15 11:22:08   ENERGY_ApparentPower 60
     2022-10-15 11:22:08   ENERGY_Current  0.279
     2022-10-15 11:22:08   ENERGY_Factor   0.78
     2022-10-15 11:22:02   ENERGY_Period   1
     2022-10-15 11:22:08   ENERGY_Power    47
     2022-10-15 11:22:08   ENERGY_ReactivePower 38
     2022-10-15 11:22:08   ENERGY_Today    0.580
     2022-10-15 11:22:08   ENERGY_Total    95.107
     2022-10-15 11:22:08   ENERGY_TotalStartTime 2021-05-05T15:34:42
     2022-10-15 11:22:08   ENERGY_Voltage  217
     2022-10-15 11:22:08   ENERGY_Yesterday 0.000
     2021-05-07 20:49:13   Emulation       0
     2021-05-07 20:49:13   FLAG            0
     2021-05-07 20:49:13   FriendlyName1   Spuelmaschine
     2021-05-07 20:49:13   FriendlyName2   
     2021-05-07 20:49:13   FriendlyName3   
     2021-05-07 20:49:13   FriendlyName4   
     2021-05-07 20:49:13   FriendlyName5   
     2021-05-07 20:49:13   FriendlyName6   
     2021-05-07 20:49:13   FriendlyName7   
     2021-05-07 20:49:13   FriendlyName8   
     2021-05-07 11:19:30   GPIO            Not supported
     2021-05-07 20:49:13   GPIO_1          0
     2021-05-07 20:49:13   GPIO_10         320
     2021-05-07 20:49:13   GPIO_11         224
     2021-05-07 20:49:13   GPIO_12         0
     2021-05-07 20:49:13   GPIO_13         0
     2021-05-07 20:49:13   GPIO_14         0
     2021-05-07 20:49:13   GPIO_2          321
     2021-05-07 20:49:13   GPIO_3          0
     2021-05-07 20:49:13   GPIO_4          32
     2021-05-07 20:49:13   GPIO_5          2720
     2021-05-07 20:49:13   GPIO_6          2656
     2021-05-07 20:49:13   GPIO_7          0
     2021-05-07 20:49:13   GPIO_8          0
     2021-05-07 20:49:13   GPIO_9          2624
     2022-10-15 11:22:02   Heap            28
     2022-10-12 17:10:00   IODev           MQTT2_Server
     2022-07-25 17:30:08   Info1_FallbackTopic cmnd/DVES_2EF549_fb/
     2022-07-25 17:30:08   Info1_GroupTopic cmnd/tasmotas/
     2022-07-25 17:30:08   Info1_Module    Gosund SP1 v23
     2022-07-25 17:30:08   Info1_Version   9.4.0.3(tasmota)
     2022-07-25 17:30:08   Info2_Hostname  tasmota_2EF549-5449
     2022-07-25 17:30:08   Info2_IPAddress 192.168.178.77
     2022-07-25 17:30:08   Info2_WebServerMode Admin
     2022-07-25 17:30:08   Info3_RestartReason Power On
     2022-10-13 14:36:57   LWT             Online
     2022-10-15 11:22:02   LoadAvg         19
     2021-05-07 20:49:13   Module_0        Gosund SP1 v23
     2021-05-07 11:19:30   Module_55       Gosund SP1 v23
     2022-10-15 11:22:02   MqttCount       68
     2021-05-07 20:49:13   NAME            Gosund SP1 v23
     2022-10-15 11:22:02   POWER           ON
     2021-05-07 13:38:05   PowerDelta1     10
     2021-05-07 20:49:13   SetOption3      ON
     2022-10-15 11:22:02   Sleep           50
     2022-10-15 11:22:02   SleepMode       Dynamic
     2022-10-15 11:22:08   Time            2022-10-15T11:22:08
     2021-05-05 20:55:42   Timezone        99
     2022-10-15 11:22:02   Uptime          81T17:52:01
     2022-10-15 11:22:02   UptimeSec       7062721
     2021-05-07 20:49:13   WebPassword     ****
     2022-10-15 11:22:02   Wifi_AP         1
     2022-10-15 11:22:02   Wifi_BSSId      38:10:D5:0E:36:13
     2022-10-15 11:22:02   Wifi_Channel    6
     2022-10-15 11:22:02   Wifi_Downtime   0T00:01:28
     2022-10-15 11:22:02   Wifi_LinkCount  18
     2022-10-15 11:22:02   Wifi_RSSI       64
     2022-10-15 11:22:02   Wifi_SSId       DK-Wlan
     2022-10-15 11:22:02   Wifi_Signal     -68
     2021-05-05 20:50:34   attrTemplateVersion 20200522 or prior
     2022-04-19 14:32:18   auto_SolarForecast 0
     2022-10-15 10:28:15   running         on
     2022-10-15 11:22:08   statENERGY_Current Hour: -7.831 Day: 0.279 Month: 0.279 Year: 0.279
     2022-10-15 10:59:55   statENERGY_CurrentLast Hour: 8.110 Day: 0.000 Month: 0.000 Year: 0.000 (since: 2021-05-12 )
     2022-10-15 11:22:08   statENERGY_Power Hour: -1716 Day: 47 Month: 47 Year: 47
     2022-10-15 10:59:55   statENERGY_PowerLast Hour: 1763 Day: 0 Month: 0 Year: 0 (since: 2021-05-12 )
     2021-05-11 13:20:45   statStateDay    on: 13:20:50 on_Count: 1
     2021-05-10 23:59:55   statStateDayLast on: 24:00:00 on_Count: 1
     2021-05-11 13:20:45   statStateMonth  on: 3d 16:37:17 on_Count: 1 (since: 2021-05-07_20:43:28)
     2021-05-11 13:20:45   statStateYear   on: 3d 16:37:17 on_Count: 1 (since: 2021-05-07_20:43:28)
     2022-04-19 14:31:29   state           on
     2021-05-08 16:14:43   subscriptions   cmnd/DVES_2EF549_fb/# cmnd/tasmota_2EF549/# cmnd/tasmotas/#
   helper:
     _98_statistics Statistik
Attributes:
   DbLogExclude .*
   alias      Spülmaschine
   auto_SF    0
   autocreate 0
   comment    NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/cmnd/tasmota_2EF549/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
   devStateIcon 1.on:rc_GREEN:off 1.off:rc_RED:on 2.on:general_an@green 2.off:general_aus
   event-min-interval ENERGY_Current:900,ENERGY_Power:900
   event-on-change-reading running,state,POWER,ENERGY_Current,ENERGY_Today,ENERGY_Total,ENERGY_Power,ENERGY_Voltage:5
   group      Schalten
   icon       scene_dishwasher
   jsonMap    POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 HSBColor:0 Color:0
   model      tasmota_basic_state_power1
   readingList tele/tasmota_2EF549/LWT:.* LWT
  tele/tasmota_2EF549/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
  tele/tasmota_2EF549/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
  tele/tasmota_2EF549/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }
  tele/tasmota_2EF549/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
  stat/tasmota_2EF549/POWER1:.* state
  stat/tasmota_2EF549/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
   room       Küche
   setList    off:noArg    cmnd/tasmota_2EF549/POWER1 0
  on:noArg     cmnd/tasmota_2EF549/POWER1 1
  toggle:noArg cmnd/tasmota_2EF549/POWER1 2
  setOtaUrl:textField cmnd/tasmota_2EF549/OtaUrl $EVTPART1
  upgrade:noArg   cmnd/tasmota_2EF549/upgrade 1
   stateFormat 1:state
2:running
   userattr   auto_SF:0,1
   webCmd     on:off

DS_Starter

Hallo Dieter,
Zitat
...
Das Modul soll auf keinen Fall die Schaltsteckdose, an der der Verbraucher hängt, schalten.
...

Ich hatte es doch in dem Zitat schon geschrieben.
Wenn du dem Modul die Schaltung nicht erlaubst, dann wirst du auch die Restlaufzeit zur Zeit nicht angezeigt bekommen.
Die entsprechenden Status kann das Modul dann nicht verwalten.
Auch das Ausschalten kann dann nicht vorgenommen werden. Allein schon aus diesem Grund wäre die Anzeige der Restlaufzeit
hinfällig weil sie nicht stimmen würde.

Vielleicht habe ich noch eine Idee dazu, bis jetzt ist mir nichts eingefallen was auch hinreichend fehlerunanfallig wäre.

LG
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

#1764
Hallo zusammen,

weil das Thema  Performance zuletzt etwas thematisiert wurde habe ich eine Zeitmessung für die Verarbeitung der abgerufenden API Daten und die Zentralschleife im Modul eingebaut.

Wenn ihr "get ... valCurrent" aufruft findet ihr die folgenden Schlüssel:


runTimeAPIResponseProc => 0.6067
runTimeCycleSummary => 0.7728


Die Angabe von runTimeAPIResponseProc  zeigt die Zeitdauer der Verarbeitung der empfangenen API Daten an (der letzte Empfang lt. "SolCast:..." im Grafikheader).
Der Key  runTimeCycleSummary  ist die Schleifenzeit die ein Durchlauf (interval) verbraucht.
Alles in Sekunden.

Ich habe ein paar Studien gemacht. Die allermeiste Zeit wird durch die Readinggenerierung bzw. Eventgenerierung verbraucht.
Allein das setzen von


event-on-change-reading .*


bringt ca. 0,2 Sekunden.


runTimeAPIResponseProc => 0.6067
runTimeCycleSummary => 0.5474


Ich werde mal schauen ob ich im Programm diesbezüglich noch etwas optimieren kann ohne die Funktionalität zu beeinträchtigen.

Liegt im contrib.

Nebenbei .... heute ist ziemliche Bewölkung und die SolCast API in Verbindung mit der automatischen Percentile-Nachführung scheint sich zu bewähren (Screenshot).

LG
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

#1765
Ich habe das Modul so abgeändert dass generell nur noch Events erstellt werden wenn deren Wert sich ändert (bis auf wenige Ausnahmen).
Bis jetzt habe ich keine negativen Auswirkungen auf die Funktion erkennen können.
Meldet euch falls ihr andere Beobachtungen macht.

Die V liegt im contrib.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Dracolein

Zitat
pvCorrectionFactor_Auto on | off

Schaltet die automatische Vorhersagekorrektur ein/aus. Die Wirkungsweise unterscheidet sich zwischen dem Model DWD und dem Model SolCastAPI.

Model SolCastAPI:
Eine eingeschaltete Autokorrektur ermittelt am Ende jeder relevanten Stunde durch Vergleich von PV Prognose und realer Erzeugung das beste Percentil (10-90). Bevor man die Autokorrektur eingeschaltet, ist die Prognose mit folgenden Schritten zu optimieren:

definiere im RoofTop-Editor der SolCast API den efficiency factor entsprechend dem Alter der Anlage.
Bei einer 8 Jahre alten Anlage wäre er 84 (100 - (8 x 2%)).
nach Sonnenuntergang wird das Reading Today_PVdeviation erstellt, welches die Abweichung zwischen Prognose und realer PV Erzeugung in Prozent darstellt.
entsprechend der Abweichung passe den efficiency factor in Schritten an bis ein Optimum, d.h. die kleinste Tagesabweichung gefunden ist
Das Reading Today_PVdeviation sehe ich nicht bei mir.
pvCorrectionFactor_Auto ist noch off.
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

DS_Starter

Das Reading Today_PVdeviation  ist unabhängig von  pvCorrectionFactor_Auto.
Du hast die aktuelle Version ?
Wenn ja, schau bitte ob es bei dir das Reading Today_SunSet gibt.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

Habe die Readinggenerierung wieder auf das vorherige Verfahren zurück gesetzt.
Die Timestamps der Readings änderten sich in bestimmten Fällen nicht mehr. Das verwirrt unter Umständen.

Die Verwendung von event-on-change-reading ist günstiger. Das Zeitverhalten unterscheidet sich nicht zu meiner gemachten Änderung.
Den plantConfiguration check habe ich entsprechend ergänzt um darauf hinzuweisen dass  event-on-change-reading verwendet werden sollte um die Performance zu optimieren.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Dracolein

Version: grade aktualisiert: 76_SolarForecast.pm:v0.70.3-s21735/2020-04-20 TESTING

Die tabellarische Darstellung des checkPlantConfigs zeigt grüne Punkt-Icons wenn alles "fullfilled" ist.
In der ersten Zeile "Common Settings" steht bei mir n der Spalte "State" kein grüner Punkt, sondern der Text "message_info" (jedoch Result: fullfilled)

Reading Today_Sunset ist vorhanden (18:36)
Reading Today_PVdeviation sehe ich weiterhin nicht
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;