NEWS
Logik-Block in Abhängigkeit von Trigger-Parameter
-
Hallo allseits,
für einen PV-Speicher "Simulator" an dem ich rumbastle habe ich folgendes Script erstellt um damit das Laden des PV-Speichers zu simulieren (ist noch nicht fertig):
Jetzt folgende Frage:
Wenn ich im Trigger den Parameter "wurde geändert" (Ich vermute der steuert, dass der Trigger bei jeder Änderung des Objektes auslöst?) auf den Parameter "ist gleich oder größer als letztes" (Ich vermute der steuert, dass der Trigger nur dann auslöst, wenn der geänderte Wert größer oder gleich dem vorherigen Wert ist?) ändere
der äussere "falls" Block mit der markierten Prüfung entfallen kann?
Das Objekt "VirtZaehlerEinspeisungTag" setzte ich jede Nacht auf den Wert = "0", damit würde ich negative Werte produzieren. Deshalb die Prüfung "VarEinspeisungAktuell" >= "VirtZaehlerEinspeisungTag"?Vielen Dank im Voraus
DatzerF -
@datzerf sagte in Logik-Block in Abhängigkeit von Trigger-Parameter:
der äussere "falls" Block mit der markierten Prüfung entfallen kann?
nein!
Du vergleichst im ersten FALLS zwei verschiedenen Datenpunkte, der Trigger jedoch nur die letzten Werte des selben DatenpunktsOder ich verstehe nicht was du meinst
Wie oft ändert sich denn der Wert von VirtZaehlerEinspeisungTag
-
Hallo @homoran,
ich habe eine PV-Anlage mit Eigenverbrauchsregelung auf dem Dach, nur noch keinen Speicher.....
Das Objekt "VirtZaehlerEinspeisungTag" ermittle ich aus der Differenz aus des PV-Zählers und des Einspeise-Zählers. Das Objekt ändert sich also immer dann wenn die PV mehr produziert als aktuell im Haus Strom verbraucht wird. Das Objekt summiert die Einspeisung über den Tag und wird um 23:59 Uhr auf 0 zurückgestellt.
Das Objekt "VarEinspeisungAktuell" enthält die kWh die lt. Einspeisezähler zuletzt eingespeist wurden, nicht den Zählerstand des Einspeisezählers. Der Wert wird überschrieben und nicht summiert.Zweck des Scriptes ist, Strom der produziert und eingespeist wird bis zu einer definierten Speicherkapazität (Objekt "PVSpeicherNutzinhalt") in einen virtuellen Speicher zu laden.
Wenn also 0.1 kWh eingespeist werden dann will ich die in den Speicher laden sofern der Speicher nicht voll ist.
Werden die 0.1 kWh in den Speicher geladen, dann erfolgt natürlich keine Einspeisung, deshalb reduziere ich die Summe im Objekt "VirtZaehlerEinspeisungTag" um diesen Wert.Die eigentliche Frage ist,
führt eine Änderung von "wurde geändert" zu "ist gleich oder größer als letztes" dazu dass der Trigger nur dann ausgelöst wird, wenn der geänderte Wert der Objekt ID nicht nur geändert sondern gleich oder eben größer sein muss?Beim schreiben der Antwort ist mir aufgefallen, dass das Script an sich einen Logik Fehler hat und so auf Grund der Prüfung im äusseren Block nur einmal zutrifft.