NEWS
Blockly Hilfe, PV-Leistung
-
Gehe jetzt mal davon aus, dass einer der beiden ausgewählten Variablen nicht die richtige ist, oder das PV_VorGesamt mit einem falschen Wert gefüllt/berechnet wird. Seh ich das so richtig? `
Laut Script läuft das schon richtig.Der ganze innere Teil wird erst ausgeführt wenn PV_VorGesamt > 0 ist.
Das ist spätestens beim 2. Tag der Fall.
Ein Teil Deiner Variablen wird ja auch befüllt.
Irgend etwas stimmt nicht mit den Variablen.
Bekommt Du im Log Fehler angezeigt?
Ändere doch bitte mal den Typ der Variablen.
Wenn die über Blockly erstellt werden haben Variablen immer den Typ "gemischt"
Einfach unter Objekte die Variablen auswählen und den Bleistift anklicken.
Dort änderst Du dann "gemischt" auf "Zahl".
Dann schreibst Du überall da wo "null" steht eine 0 rein.
Dann die Blöcke mit denen die Variablen erstellt werden löschen oder deaktivieren.
Und dann wieder abwarten
Grüße
-
so, die Änderungen habe ich gemacht. Die Blöcke, die die Variablen schreiben, habe ich gelöscht.
Im Log steht nix, allerdings wird der Log auch nicht bis 0 Uhr zurück angezeigt, sondern nur für nen paar Stunden. Da steht dann aber nichts von dem Skript drin. Wird das noch wo anders länger fristig gespeichert, das ich das mal nach schauen kann?
mfg
-
-
wenn ich das unter putty eingebe kommt:
-bash: /opt/iobroker/log: Ist ein Verzeichnis
-
Wird das noch wo anders länger fristig gespeichert, das ich das mal nach schauen kann? `
im Ordner iobroker\log stehen die letzten Tage. -
Habe jetzt mal, zum testen, die Zeit auf jede Minute geändert. Da tut sich was, PV_VorTag bekommt jetzt einen Wert, der sich auch wieder neu ändert.
Ändere das jetzt zurück, auf die vorherige Zeit und warte ab. Werd ich dann ja heute Nacht sehen, was passiert.
Mfg
-
kann ich denn noch anders an den Log Ordner ran?
Schon mal sorry, dass ich so doof frage :oops:
mfg
-
Versuch mal das freeware Programm WinSCP
-
dann mach doch mal:
cd /opt/iobroker/log dir
Dann kopierst du dir den Namen des letzten Tageslogs und gibst ein
sudo nano TagesLog
wobei TagesLog der Dateiname ist.
Anderer Weg wäre über filezilla/winscp.
Gruß
Rainer
-
Ok, werd das mal versuchen, kann nur etwas dauern.
Mfg
-
Hi,
ich würde anstelle nano eher z.b. so in das log schauen:
cat iobroker.2017-11-12.log |grep java
das "java" am Ende ersetzt du durch das was du suchen willst.
Wenn du "java" nimmst kommt alles mit "javascript" raus.
Macht es vielleicht etwas übersichtlicher auf der Konsole.
Anstelle von WinSCP nutze ich immer Filezilla.
Gruß
Mirko
-
Nabend
So, leider wieder das gleiche wie die letzten Tage. Keine Änderung. Habe mal nen Auszug aus dem Log angefügt, hoffe ist das richtige. Denke das vom Javascript ist das richtige. Zwischen 00:00 Uhr und 00:30 Uhr gibt es keinen keinen Eintrag. Habe auch die anderen Tage mal durch geschaut, da steht nirgends etwas, was auf das besagt Skript hinweißt. Da steht immer nur die LowBat Ausgabe und mein Tinten Status meines Druckers.
-
Mal ne Frage, wo soll denn der log-Eintrag aus dem Script herkommen, da steht doch gar nichts von loggen. Möglicherweise würde eine Umstellung auf "debug" diese Infos bringen, hat das schon einer irgendwo eingestellt?
Kann es sein, dass die Ausführungen in der falls-Klammer so zeitnah erfolgen, dass die Einträge PV_VorTag und PV-VorGesamt zeitgleich geschrieben werden? Wie ist denn die Ausführung genau, ich habe eine ähnliches Script und habe eine Verzögerung von wenigen hundert Millisekunden um sicher zu gehen, dass da nichts gleichzeitig geschrieben wird. :?:
Enrico
-
Mal ne Frage, wo soll denn der log-Eintrag aus dem Script herkommen, da steht doch gar nichts von loggen. Möglicherweise würde eine Umstellung auf "debug" diese Infos bringen, hat das schon einer irgendwo eingestellt? `
Es sollte geprüft werden, ob Systemfehler vorliegen, falsche Variablen Type usw.Kann es sein, dass die Ausführungen in der falls-Klammer so zeitnah erfolgen, dass die Einträge PV_VorTag und PV-VorGesamt zeitgleich geschrieben werden? Wie ist denn die Ausführung genau, ich habe eine ähnliches Script und habe eine Verzögerung von wenigen hundert Millisekunden um sicher zu gehen, dass da nichts gleichzeitig geschrieben wird. :?: `
Das wäre auch noch eine Möglichkeit.
Zumal der Test von Steffi81 am Tag ja funktioniert hatte.
Könnte sein, dass sein ioBroker um 00:01 Uhr mit diversen anderen Sachen beschäftigt ist.
Man könnte es auch mal um 00:05 Uhr versuchen.
Das mit den Verzögerungen ist so eine Sache.
1. "Steuere ID01 mit 5 Verzögerung 10 Sek"
2. "Steuere ID02 mit Wert von ID01 + 100"
Die Verzögerung bei 1. unterbricht NICHT das Programm.
Es wird also zuerst Zeile 2. ausgeführt und 10 Sek. später Zeile 1.
Wenn wir bei Programmstart davon ausgehen, dass ID01 = 0 ist.
Wird ID02 nie den Wert 105 bekommen.
Grüße
-
Guten Morgen
Habe Enricos Idee mal versucht in den Skript umzusetzten und etwas abgeändert.. Den Bezugspunkt für den Gesamtwert habe ich aber geändert, der Wert ändert sich schneller als mein PV
Durch die Verzögerung ändert sich tatsächlich der Wert von VorTag. Wäre das mit der Zeitverzögerung an der richtigen Stelle, oder war das eher Zufall, dass das geklappt hat? Hatte da ja letztens schon was ausprobiert, klappt ja auch erst, dann nicht mehr.
Habe da mal nen paar Screenshots beigepackt.
-
Stell doch wieder um auf die alte Auslösezeit und dann wieder warten bis morgen, bist du ja schon gewöhnt!
Enrico
-
Habe es jetzt mal auf 00:10 Uhr geändert. Vielleicht hat Rantanplan ja recht und mehrere Sachen laufen zusätzlich noch um 00:01 Uhr.
Ja, habe das warten als neues Hobby für mich entdeckt :lol:
mfg
-
Guten Morgen
So, es scheint zu klappen. VorTag wurde geschrieben. Das kommt auch hin, der Wert.
Muss jetzt nur mal schauen, Woche war vorm umschreiben "0", weil ja neu Woche angefangen hat. Da müsste ja eigentlich auch jeden Tag der Wert vom VorTag dann reingeschrieben werden der sich dann ja bis zum WE addiert, oder? Da wurde dann auch nen Wert rein geschrieben, nur ist der um einiges höher als der vom VorTag.
Das kann jetzt aber auch mit dem ganzen hin und her probieren zu tun haben, werde das mal beobachten. Wenn das dann weiter nicht stimmt, muss ich nochmal im Skript schauen.
Werde berichten
Mfg
-
So, es scheint zu klappen. VorTag wurde geschrieben. Das kommt auch hin, der Wert. `
Hast Du jetzt die Triggerzeit geändert, den Timeout gesetzt oder beides?Das kann jetzt aber auch mit dem ganzen hin und her probieren zu tun haben, werde das mal beobachten. `
Gehe ich auch von aus.
@Steffi81:Werde berichten
`
Wir warten auch :lol:Grüße
-
Hallo,
ich habe sowas mal für meine Homematic-Zähler und EM1000 FS20 Zähler in Javascript geschrieben:
http://forum.iobroker.net/viewtopic.php?f=21&t=2262
Die größte Herausforderung bestand darin zu erkennen, wenn die Geräte nach dem Abschalten oder Stromausfall/Abziehen von Steckdose
den fortlaufenden Zähler zurückgesetzt haben. Daher habe ich einen Virtuellen Zähler (Backup) mitlaufen lassen.
Bei mir läuft das Skript noch, fast fehlerfrei. 8-)
Da dein Zählerstand immer wächst und sich nie zurücksetzt, ist die ganz Sache viel leichter. Im geposteten Skript sind ein paar Trigger für die Umschalt-/Speicherzeiten (Tag, Woche,Monat und Jahr sind klar, Quartal muss man etwas basteln).
Es wird mit jeder Änderung des Zählers ein Differenz zu den bisherigen Zählerständen von Jahr, Quartal, Monat, Woche, Tag (theoretisch auch Stunde oder gar Minute möglich) gebildet.
Schau mal rein.
Gruß
Pix