NEWS
Stromverbrauch in Kommaschritten
-
Der Sensor hat 3 Werte
Count --> Zählt die Impulse bzw. Flanken (AN ist +1 und AUS +1)
Total --> Wieviel hat er insgesamt seit Start gezählt
Time --> UnwichtigAlle 60 Sekunden gibt er die Daten an iobroker weiter. Danach fängt "Count" wieder bei 0 an.
Total ändert sich, skript geht an, Count wird zur Arbeitsvariable addiert, wenn diese größer 6 ist, wird 0,03125 addiert in den Zähler geschrieben und Arbeitsvariable um 6 gemindert.
Arbeitsvariable in History
Total in Histroy
Count in Histroy
Ich bin nach dem Video von SchimmerMediaHD vorgegangen. Bei ihm scheint dieses Skript zu funktionieren. Vielleicht zählt bei mir der Ferrariszähler falsch, oder die Diode erfasst nicht alle Scheibenbewegungen?
-
@planetkeane sagte: Flanken (AN ist +1 und AUS +1)
Dann 2 pro Umdrehung, also Division durch 192.
@planetkeane sagte in Stromverbrauch in Kommaschritten:
Total in Histroy
Danke. Dann muss es mit "Total" als Trigger und diesem Blockly funktionieren:
Der Trigger "ist größerer als letztes" blendet einen Rücksprung auf 0 von "Total" aus.
@planetkeane sagte in Stromverbrauch in Kommaschritten:
Count in Histroy
Also liefert "Count" die Zahl der Impulse pro Minute.
Mit "Count" als Trigger würde das obere Blockly funktionieren.
-
@paul53 So wie ich das sehe, ist in meinem Blocky (erster Post) aber kein Fehler, oder?
Ich probiere deinen blocky nachher mal aus, denke aber es wird zum selben Ergebnis führen...
heute um 13Uhr den Zähler neu eingestellt und jetzt fast 0,8kW weniger im iobroker -
@planetkeane sagte: ist in meinem Blocky (erster Post) aber kein Fehler, oder?
Es wird auf "Total" getriggert, aber "Count" verwendet, was ein Problem sein kann.
Außerdem: Wenn Arbeitsvariable >= 192 ist, wird 192 abgezogen, aber der Wert von "Count" nicht addiert. Im Blockly darunter mit 6 passiert der Fehler natürlich öfter.Meine Empfehlung: Nimm folgende Variante, denn diese aktualisiert den Zählerstand jede Minute.
Wichtig: Auf "wurde aktualisiert" triggern!
-
@paul53 Du bist ein Genie! Das hat tatsächlich funktioniert. Sowohl mit deinem Blocky als auch mit der Info, dass ich bei meinem Blocky den Count nicht mehr addiere wenn Arbeitsvariable abgezogen wird. VIELEN DANK!
Was ich mir jetzt noch gedacht habe:
Wenn aus irgendwelchen Gründen auch immer das MQTT Protokoll den Server nicht erreicht, würde iobroker einige Count Änderungen nicht mitbekommen. Es wäre daher die "klügere" Variante, anstatt "Count" "Total" zu nehmen. So würde er den Zähler auch aufaddieren, wenn mal eine Verbindung für einige Änderungen nicht zustande kommen würde.Mein Problem hierbei ist jedoch: Total fängt bei Neustart wieder von vorne an. Genauso wenn irgendein Wert mal erreicht ist.
Beispiel:
Total = 100
->Stromausfall<-
Total = 0
Durch "Falls Objekt ist größer als letztes" würde er doch erst weiterzählen, wenn Total wieder über 100 wäre, oder? -
@planetkeane sagte Zähler auch aufaddieren, wenn mal eine Verbindung für einige Änderungen nicht zustande kommen würde.
Das stimmt.
@planetkeane sagte in Stromverbrauch in Kommaschritten:
Total fängt bei Neustart wieder von vorne an.
Deshalb bei dieser Version der Trigger auf "ist größer als letztes".
@planetkeane sagte in Stromverbrauch in Kommaschritten:
Durch "Falls Objekt ist größer als letztes" würde er doch erst weiterzählen, wenn Total wieder über 100 wäre, oder?
Nein. Beispiel 100 --> 1 --> 3. Die erste Differenz ist dann 2 (3 - 1). Es können nach dem Reset evtl. 1 oder 2 Impulse verschluckt werden.
-
@paul53 Vielen Dank für deine Hilfe! Du hast mir wirklich sehr geholfen
-
Eine Frage hätte ich noch:
Kann ich mich über Telegram benachrichtigen lassen, wenn Total länger als bspw. 5 Minuten nicht aktualisiert worden ist?
Finde unter Blocky nicht die richtigen Bausteine um dies zu realisieren -
@planetkeane Klar geht das, du startest einen timeout von 5 Minuten und guckst, ob der DP sich in der Zeit ändert, macht er das, setzt du den Timeout zurück, macht er es nicht, sendest du dir ein Telegram.
Mach dir aber einen Telegram-Reminder, sonst bekommst du alle Naselang eine Meldung wenn der DP sich nicht ändert und du es nicht "resetten" kannst. -
@planetkeane sagte: Telegram benachrichtigen lassen, wenn Total länger als bspw. 5 Minuten nicht aktualisiert worden ist?
Es muss auf "wurde aktualisiert" getriggert werden:
-
Nochmals danke
Ich habe heute morgen gesehen, dass der Zähler wieder eine kleine Abweichung hat.
Zähler ...8,80 kW
iobroker ...8,74 kWIrgendwie funktioniert das Impulsezählen nicht so richtig bei mir
-
Okay, ich denke ich hab den Fehler gefunden.
Ich musste den Delay etwas runtersetzen. Wenn tagsüber viel Strom verbraucht wurde, dann hat er statt 2 Impulsen nur einen gezählt, weil die Scheibe zu schnell gedreht hat.
Jetzt den ganzen Tag getestet und er zählt richtig