Darstellung Sonnenbatterie

Begonnen von dennis_n, 11 März 2021, 10:33:34

Vorheriges Thema - Nächstes Thema

yersinia

Zitat von: satprofi am 11 Mai 2024, 11:07:58Ich verstehe den Satz so, "wenn SOC nicht als % vorliegt", man es nicht setzen darf. In meinem Fall ist der Wert aber in Prozent, und ich muss es setzen. Fehler in Beschreibung?
Das kann durchaus sein, dafür müssten wir uns das mal genauer anschauen - wie definierst du folgende Parameter? Was wird an die Component übergeben - Wh, kWh, %?
soc
soc-unit
charge-discharge bzw charge und discharge
batmax
calc-bat-remain-time
calc-bat-remain-soc-not-percent

Wenn soc nicht als % vorliegt, muss zwingend calc-bat-remain-soc-not-percent gesetzt werden. Dieser Parameter definiert den maximalen Wert für die Berechnung: entweder auf 100(%) (Standard, calc-bat-remain-soc-not-percent nicht gesetzt) oder auf den batmax-Wert (calc-bat-remain-soc-not-percent gesetzt). Dies setzt natürlich auch voraus, dass alles in einer Einheit übergeben wird: batmax, soc (wenn nicht in %) sowie charge-discharge (oder charge und discharge) müssen alle in Wh oder kWh sein.
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

satprofi

unit-soc="%"
          unit-value="W"
          no-wb-in-home
    pvmax="7"
          batmax="28800"
          [soc]="PylonTech_mSOC:mSOC"
          [produce]="solarlog_totalpac:state"
          [wb-feed]="Wallbox:Watt"
          [feed]="SHRDZM_84F3EB1C394B:sensor_2.7.0_momentan_export"
          [receive]="SHRDZM_84F3EB1C394B:sensor_1.7.0_momentan_import"
  pv-forecast="0"
  [pv-prod-tdy]="SE7K:overview-energyDay"
  unit-sum="Wh"
  home-consume-tdy="0"
  [grid-consume-tdy]="SHRDZM_84F3EB1C394B:statGesamt_Bezug_kWhDay"
  [grid-feed-tdy]="SHRDZM_84F3EB1C394B:statGesamt_Einspeisung_kWhDay"
  flow-threshold="0.5"
  calc-bat-remain-time
  batstep="21,35,51,75,95"
  [charge-discharge]="PylonTech_Power:W"
  has-no-grid-feed
  [grid-charge]="PylonTech_Power:W"
  calc-bat-remain-soc-not-percent

gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

yersinia

das sieht für mich unstimmig aus:
pvmax="7"Du hast nur eine PV anlage von 7 Wp? Sollten es nicht eher 7 kWp also 7000
pvmax="7000"sein (du anscheinend alles als W(h) angibst)?

Dieser Parameter ist überflüssig, lass den weg. Zumal du das Reading mehrfach zuweist.
[grid-charge]="PylonTech_Power:W"Möglicherweise verursacht dies schon deine Berechnungsprobleme.

Welche Werte (Beispielhaft) werden hier angeliefert?
[soc]="PylonTech_mSOC:mSOC"
[charge-discharge]="PylonTech_Power:W"

Für die Berechnung definiert pvvis erst die basis:
socbasis = batmax ohne calc-bat-remain-soc-not-percent
socbasis = 100 mit calc-bat-remain-soc-not-percent
Die Berechnung erfolgt entsprechend dann
- fürs Entladen: (batmax * ([soc] / socbasis)) / Abs([charge-discharge])
- fürs Laden: (batmax * (1- ([soc] / socbasis))) / Abs([charge-discharge])

Diese Definition ist Sinnfrei und kannst du so weglassen:
pv-forecast="0"
home-consume-tdy="0"
Für diese Parameter kannst du Werte aus Readings übergeben, welche dann angezeigt werden.
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

satprofi

[soc]="PylonTech_mSOC:mSOC"
[charge-discharge]="PylonTech_Power:W"

soc %
Power W
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

yersinia

Zitat von: satprofi am 13 Mai 2024, 12:46:55[soc]="PylonTech_mSOC:mSOC"
[charge-discharge]="PylonTech_Power:W"

soc %
Power W
Sorry, das hilft mir null weiter. Um das nachvollziehen zu können sind numerische Werte der Readings hilfreich, nur so können wir die Berechnung nachnvollziehen und auf Sinnhaftigkeit überprüfen.
Zitat von: yersinia am 13 Mai 2024, 11:20:38Für die Berechnung definiert pvvis erst die basis:
socbasis = batmax ohne calc-bat-remain-soc-not-percent
socbasis = 100 mit calc-bat-remain-soc-not-percent
Die Berechnung erfolgt entsprechend dann
- fürs Entladen: (batmax * ([soc] / socbasis)) / Abs([charge-discharge])
- fürs Laden: (batmax * (1- ([soc] / socbasis))) / Abs([charge-discharge])
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

satprofi

Jetzt habe ich
Soc 86%
Power 800W
Errechnet werden 3,5h entladezeit.

Setze ich aber calc-bat-remain-soc-not-percent stimmt die zeit mit 35h
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

yersinia

Zitat von: satprofi am 13 Mai 2024, 19:38:38Soc 86%
Power 800W
Errechnet werden 3,5h entladezeit.
Dann lass uns mal nachrechnen:
Zitat von: yersinia am 13 Mai 2024, 11:20:38Für die Berechnung definiert pvvis erst die basis:
socbasis = batmax ohne calc-bat-remain-soc-not-percent
socbasis = 100 mit calc-bat-remain-soc-not-percent
Die Berechnung erfolgt entsprechend dann
- fürs Entladen: (batmax * ([soc] / socbasis)) / Abs([charge-discharge])
- fürs Laden: (batmax * (1- ([soc] / socbasis))) / Abs([charge-discharge])
batmax = 28800
socbasis = 100 (da soc in % vorliegt)
charge-discharge = 800 (Wert ist positiv -> Akku wird geladen)

Der Ent-/Ladewert ergibt sich aus
chargeval = charge + gridCharge - dischargecharge = 800
gridCharge = 0 (gibt es bei dir ja nicht)
discharge = 0 (da Wert positiv und geladen wird, ist discharge = 0)
=> chargeval = 800
batremaintime = (batmax * (1- ([soc] / socbasis))) / chargeval
batremaintime = (28800 * (1 - (86 / 100)) / 800
batremaintime = (28800 * (1 - 0,86) / 800
batremaintime = (28800 * 0,14) / 800
batremaintime = 4032 / 800
batremaintime = 5,04
In diesem Fall werden 5,04h Ladezeit berechnet.

Sieht für mich, von der Berechnung her, nicht falsch aus. Dass der so errechnete Wert nur ein (sehr sehr) grober Schätzwert ist sollte klar sein. Wie schon erwähnt, hast du auch
[grid-charge]="PylonTech_Power:W"gesetzt, was die 800W noch zusätzlich hinzurechnen würde. Dies könnte den Schiefstand schon verursachen. Kannst du diesen Parameter weglassen, du hast das Reading sowieso schon via
[charge-discharge]="PylonTech_Power:W"eingebunden. Mit der doppelten Einbindung (2 * 800 = 1600) errechne ich dann entsprechend 2,52h Ladezeit.

Bereinige deinen Code und lass die sinnfreien Parameter weg (ich hab die Reihenfolge etwas umsortiert, der Übersichthalber würde ich gruppieren oder alphabetisch sortieren):
pvmax="7000"
[produce]="solarlog_totalpac:state"
[pv-prod-tdy]="SE7K:overview-energyDay"
batmax="28800"
[soc]="PylonTech_mSOC:mSOC"
[charge-discharge]="PylonTech_Power:W"
batstep="21,35,51,75,95"
calc-bat-remain-time
[feed]="SHRDZM_84F3EB1C394B:sensor_2.7.0_momentan_export"
[receive]="SHRDZM_84F3EB1C394B:sensor_1.7.0_momentan_import"
[grid-consume-tdy]="SHRDZM_84F3EB1C394B:statGesamt_Bezug_kWhDay"
[grid-feed-tdy]="SHRDZM_84F3EB1C394B:statGesamt_Einspeisung_kWhDay"
[wb-feed]="Wallbox:Watt"
no-wb-in-home
has-no-grid-feed
unit-soc="%"
unit-value="W"
unit-sum="Wh"
flow-threshold="0.5"
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

satprofi

Zitat von: yersinia am 14 Mai 2024, 07:44:07
Zitat von: satprofi am 13 Mai 2024, 19:38:38Soc 86%
Power 800W
Errechnet werden 3,5h entladezeit.
Dann lass uns mal nachrechnen:
Zitat von: yersinia am 13 Mai 2024, 11:20:38Für die Berechnung definiert pvvis erst die basis:
socbasis = batmax ohne calc-bat-remain-soc-not-percent
socbasis = 100 mit calc-bat-remain-soc-not-percent
Die Berechnung erfolgt entsprechend dann
- fürs Entladen: (batmax * ([soc] / socbasis)) / Abs([charge-discharge])
- fürs Laden: (batmax * (1- ([soc] / socbasis))) / Abs([charge-discharge])
batmax = 28800
socbasis = 100 (da soc in % vorliegt)
charge-discharge = 800 (Wert ist positiv -> Akku wird geladen)

Der Ent-/Ladewert ergibt sich aus
chargeval = charge + gridCharge - dischargecharge = 800
gridCharge = 0 (gibt es bei dir ja nicht)
discharge = 0 (da Wert positiv und geladen wird, ist discharge = 0)
=> chargeval = 800
batremaintime = (batmax * (1- ([soc] / socbasis))) / chargeval
batremaintime = (28800 * (1 - (86 / 100)) / 800
batremaintime = (28800 * (1 - 0,86) / 800
batremaintime = (28800 * 0,14) / 800
batremaintime = 4032 / 800
batremaintime = 5,04
In diesem Fall werden 5,04h Ladezeit berechnet.

Sieht für mich, von der Berechnung her, nicht falsch aus. Dass der so errechnete Wert nur ein (sehr sehr) grober Schätzwert ist sollte klar sein. Wie schon erwähnt, hast du auch



Hallo.
Ich hatte bei Entladezeit den Fehler, nicht Ladezeit.

Habe jetzt deinen Code eingetragen, zumindest Entladezeit dürfte mal passen.

Danke
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

yersinia

Zitat von: satprofi am 14 Mai 2024, 09:38:52Ich hatte bei Entladezeit den Fehler, nicht Ladezeit.
Die Berechnungen sind sehr ähnlich und basieren auf den gleichen Readings (siehe auch #362). Du übergibst auch nur ein reading, es ist entweder charge (wenn wert positiv) oder discharge (wenn wert negativ); grid-charge gibt es bei dir nicht, da du nicht direkt aus dem Netz lädst (#333).

Zitat von: satprofi am 14 Mai 2024, 09:38:52Habe jetzt deinen Code eingetragen, zumindest Entladezeit dürfte mal passen.
Bitte beobachten und bei Entladung gegenprüfen.
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl