NEWS
Solareinspeisung steuern
-
@paul53 said in Solareinspeisung steuern:
Ich meinte nicht den Datenpunkt-Namen, sondern den Bezeichner der Variable.
Ok - ich bin irgendwie noch nicht so tief drin in der Materie, sorry.
Auf alle Fälle vielen Dank für Deine Geduld und das Script!
-
@paul53 Bisher funktioniert das Script sehr gut, mir ist allerdings noch etwas aufgefallen, für das ich gerade eine Lösung suche:
Angenommen der Akku hat tagsüber die eingestellte Untergrenze wieder unterschritten und die Variable "maxLeistung" wurde auf 0 gesetzt. Später scheint dann wieder die Sonne und der Akku wird wieder geladen - allerdings nicht über die Schwelle von 30%. Wenn ich jetzt manuell die "WR max. Leistung" in der control-Section auf z.B. 600W stelle, um den Akku abends oder nachts leerzumachen, wird diese beim nächsten Schleifendurchlauf (also Änderung des SOC) wieder auf 0 gesetzt, weil die Variable ja auf 0 steht und nur beim Neustart des Scriptes aus der "WR max. Leistung" gelesen wird. Hier hilft aktuell nur ein anschließender Neustart des Scriptes, nachdem die Leistung manuell gesetzt wurde.
Da habe ich jetzt noch keine sinnvolle Lösung gefunden. -
@diet99 sagte: Da habe ich jetzt noch keine sinnvolle Lösung gefunden.
Ergänze das Skript durch Setzen der Variablen bei manueller Einstellung der max. Leistung.
"script.js.Skriptname" durch den tatsächlichen Namen des Skriptes ersetzen!
-
@paul53 Das habe ich jetzt nicht ganz verstanden. Kannst Du da bitte ein wenig weiter ausholen?
Was ist der "Kommentar des letzten Zustandes" und welches Script muß ich hier wählen? Das aktuelle, also das, in dem ich die Solareinspeisung steuere? -
@diet99 sagte: Was ist der "Kommentar des letzten Zustandes"
Der enthält bei Schreiben eines DP durch ein Skript den Skriptnamen.
@diet99 sagte in Solareinspeisung steuern:
welches Script muß ich hier wählen? Das aktuelle, also das, in dem ich die Solareinspeisung steuere?
Ja.
-
@paul53 Aaah - ich beginne zu verstehen. Jede Änderung am Datenpunkt, die NICHT durch Dein Script durchgeführt wurde, wird durch diese Abfrage erfaßt. Richtig?
Die Änderung mache ich allerdings derzeit nicht durch ein anderes Script, sondern meist manuell in der ioBroker-Browser-Oberfläche. Wird das dann auch korrekt verarbeitet?
-
@diet99 sagte: manuell in der ioBroker-Browser-Oberfläche. Wird das dann auch korrekt verarbeitet?
Ja. Bei anderen Ursachen als ein Skript enthält "Kommentar des letzten Zustandes" undefined, also ist die Bedingung erfüllt.
-
-
Ähm ... ich muß den Block wohl zwischenrein setzen, also als zweiten Block?
-
@diet99 sagte: ich muß den Block wohl zwischenrein setzen, also als zweiten Block?
Ja. Er triggert auf die "Einzustellende Ausgangsleistung". Packe ihn unter den SOC-Trigger.
-
@paul53 said in Solareinspeisung steuern:
Ja. Er triggert auf die "Einzustellende Ausgangsleistung". Packe ihn unter den SOC-Trigger.
Also quasi als ersten Block - noch vor meine 30%-Abfrage?
-
@diet99 sagte: noch vor meine 30%-Abfrage?
Nein, außerhalb des SOC-Triggers!
-
@paul53 said in Solareinspeisung steuern:
@diet99 sagte: noch vor meine 30%-Abfrage?
Nein, außerhalb des SOC-Triggers!
Dann kann ich doch aber nicht auf "Wert" abfragen, weil der vom Trigger kommt. Denkfehler?
-
@diet99 sagte: Denkfehler?
Diesen kompletten Block (inkl. Trigger) außerhalb des SOC-Triggers postieren!
Wert
enthält dann den Wert des DP "Einzustellende Ausgangsleistung". -
-
@diet99 sagte: jetzt hab ichs kapiert glaube ich.
Ja. Einen so geringen Wert wie 16 W wird man sicherlich nicht manuell einstellen.
-
Dazu habe ich jetzt aber doch nochmal eine Frage: die beiden Trigger werden ständig überwacht, und falls die Bedingung zutrifft, wird der jeweilige Trigger ausgelöst, richtig?
Der erste Block vor den beiden Triggern wird nur ein einziges Mal ausgeführt? -
@diet99 sagte: falls die Bedingung zutrifft, wird der jeweilige Trigger ausgelöst, richtig?
Richtig.
@diet99 sagte in Solareinspeisung steuern:
Der erste Block vor den beiden Triggern wird nur ein einziges Mal ausgeführt?
Ja, nur einmal bei Skriptstart.