NEWS
PV Produktion Startzeit loggen
-
Hallo,
ich möchte die Startzeit die mein Blockly ausgibt, nur beim ersten mal am Tag loggen. Bzw. an das Objekt ausgeben.
Wenn es weitere Starts am Tag geben sollte, sollen diese nicht weitergegeben werden. -
@mischu-0 sagte in PV Produktion Startzeit loggen:
die Startzeit die mein Blockly ausgibt
bitte zeigen
https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1
-
@mischu-0 ich habe ein Blockly welches mir morgens wenn die Solaranlagen starten eine Telegram Nachricht sendet. Mein Skript dazu ist inzwischen ziemlich komplex (um nicht zu sagen ein Monster), ich poste hier mal einen Teil davon (von einer Anlage, ohne Berechnung der Maximalwerte etc.) mit Kommentaren, ich hoffe das hilft:
Der Trigger geht auf einen Datenpunkt in welchen immer gerade die aktuelle Leistung zu sehen ist. Dieser wird alle 15 Sekunden aktualisiert:
Wenn es morgens losgeht mit der Produktion wird mir eine Meldung geschickt:
Der Trigger für den Start ist also das
- der vorherige Wert 0 war
- der jetzige Wert größer 0 ist
- Die Variable
SolarGestartetAB
noch auffalsch
steht - und es noch vor 12 Uhr Mittags ist
Ist das der Fall wird vom Start der Produktion ausgegangen. Die Variable
SolarGestartetAB
wird aufwahr
gesetzt.
Wichtig ist das man die VariableSolarGestartetAB
vorher, also außerhalb desFalls Objekte
Bausteins einmal auffalsch
setzt.
Die FunktionRunnungSystem
kannst du ignorieren, ich habe 4 Anlagen (eigentlich 6) und zähle damit wieviele davon schon laufen für die Steuerung meines Akkus.
Darunter schreibe ich mir die Startzeit einmal weg und versende die Telegram-MeldungDas Ladeende ermittle ich so (immer noch der gleiche
Falls Objekte
Aufruf auf die aktuelle Leistung:)
Die Bedingung für das Ladeende sind also
- vorheriger Wert war größer 0
- jetziger Wert ist 0
SolarGestartetAB
istwahr
- Aktuelle Uhrzeit ist nach 14:00 Uhr.
Der Rest berechnet die Laufzeit, den Ertrag etc. und schickt mir das als Telegram-Nachricht (mit einem eChart als Bild dazu)
Nein, die Eurobeträge stimmen nicht, bin ich noch nicht zu gekommen das mal raus zu nehmen.Wenn das läuft würde ich zusätzlich noch einbauen das er sich den Zustand von
SolarGestartetAB
in einem Datenpunkt merkt und beim Skriptstart wiederherstellt (damit du das Skript neu starten kannst ohne das es eine falsche Meldung gibt).So ein bis 2 mal im Jahr kommt meine Lösung an ihre Grenzen, nämlich wenn es nachmittags um 16:00 Uhr zum Beispiel so ein schweres Gewitter gibt das die Anlage die Produktion tatsächlich bis auf 0 runterfährt, eine Stunde später aber wieder produziert.
-
@mischu-0 sagte: Wenn es weitere Starts am Tag geben sollte, sollen diese nicht weitergegeben werden.
Dann setze
stop
nicht innerhalb des Triggers auf falsch, sondern z.B. zum Sonnenaufgang. -
@paul53
OK, kannst Du das genauer erläutern.
Kann man nicht irgendwie sagen, wenn er an einem Tag einmal gesendet hat, soll er nicht mehr.
Die Meldungen sollen trotzdem kommen. Nur eben einmal den Wert senden -
@mischu-0 sagte in PV Produktion Startzeit loggen:
Kann man nicht irgendwie sagen, wenn er an einem Tag einmal gesendet hat, soll er nicht mehr.
Natürlich
Sperrvariablegesendet
anlegen.
Diese beim Senden auf true und nachts wieder auf false.
Beim Senden dann prüfen ob sie false ist -
@homoran said in PV Produktion Startzeit loggen:
@mischu-0 sagte in PV Produktion Startzeit loggen:
Kann man nicht irgendwie sagen, wenn er an einem Tag einmal gesendet hat, soll er nicht mehr.
Natürlich
Sperrvariablegesendet
anlegen.
Diese beim Senden auf true und nachts wieder auf false.
Beim Senden dann prüfen ob sie false istGENAU sowas !
hast Du vielleicht ein Beispiel für mich ? (Vorlage, wie ich das einbaue in mein Blockly)
-
@homoran sagte: Sperrvariable
gesendet
anlegen.Die Sperrvariable
stop
macht genau das, wenn sie in der Nacht (oder zum SA) zurück gesetzt wird. Sie heißt nur anders. -
@paul53 aber dann wird auch der Wert nicht geschrieben, oder doch?
es soll nur die pushover Meldung unterdrückt werden -
@homoran sagte: nur die pushover Meldung unterdrückt werden
@mischu-0 sagte in PV Produktion Startzeit loggen:
nur beim ersten mal am Tag loggen. Bzw. an das Objekt ausgeben.
-
@paul53 dann soll er sich mal entscheiden
@mischu-0 sagte in PV Produktion Startzeit loggen:
Kann man nicht irgendwie sagen, wenn er an einem Tag einmal gesendet hat, soll er nicht mehr.
Die Meldungen sollen trotzdem kommen. Nur eben einmal den Wert senden -
darf man fragen wofür das gut ist, vielleicht kann ich was lernen oder das auch sinnvoll verwenden
Ansonsten schau in in den Grafana Chart für heute.
Da ging es gegen 6:38 los. -
@berndsolar13 sagte in PV Produktion Startzeit loggen:
Da ging es gegen 6:38 los.
wo wohnst du denn?
oder:
wie ist deine Anlage ausgerichtet?EDIT:
oder stimmt deine Zeitzone nicht? -
was genau meist du ?
Die PV Produktion geht los nach dem Sonnenaufgang.
Dach ist nach Süden ausgerichtet.
So gegen 6:30 beginnt der Wechselrichter einzuspeisen.
Um die Zeit so 50 Watt.
Ab 7 Uhr bin ich in der Regel "Autark" also dann werden 99,9% von der Sonne versorgt.Im Log der DTU für heute steht
04:51:08 04:51:08 1 Wechselrichter gestartet
5:13 waren es 5 Watt, da musste ich in Grafana schon weit rein zoomen
-
@berndsolar13 sagte in PV Produktion Startzeit loggen:
Die PV Produktion geht los nach dem Sonnenaufgang.
vorher geht kaum
@berndsolar13 sagte in PV Produktion Startzeit loggen:
So gegen 6:30 beginnt der Wechselrichter einzuspeisen.
bei mir 1h früher
@berndsolar13 sagte in PV Produktion Startzeit loggen:
Dach ist nach Süden ausgerichtet.
das passt, meins nach 130° = SO
-
Ja 5:30 kommt schon was, aber das ist kaum der Rede Wert.
Ab 6:30 gehts dann hoch.Aber noch mal die Frage, für was ist das wichtig ?
Hier mal so ein Verlauf, ab wann die Sonne reicht.
Bevor sich einer wundert, wegen 4.7kw, ich hab nur den "guten" Teil gezeigt -
@berndsolar13 sagte in PV Produktion Startzeit loggen:
Aber noch mal die Frage, für was ist das wichtig ?
ich brauch es gerade zur Überprüfung des MPPT. Hat sich aber erledigt. Es gab ein Firmware Update. Vorher hst er sich immer wieder für bis zu 10 Minuten aufgehängt.
Aber du musst den TE fragen