Hi,
nach einer etwas schwierigen Einrichtung des Stromlesers stieß ich auf ein nerviges Problem:
Wenn ich die Werte über MQTT abgefragt habe (sowohl MQTT-Explorer als auch NodeRED), kamen sie nicht alle paar Sekunden neu rein sondern erst ziemlich genau nach 5 Minuten.
Für die Abfrage aktueller Verbrauchswerte nicht brauchbar! Was läuft da schief?
Alle anderen Geräte, die ich über MQTT abfrage, senden alle paar Sekunden!
Stromzähler: ISKRA MT 691
Ich hatte erst das Script von Stromleser-Webseite für meinen Zähler und danach noch eins von Github, das zwar zusätzlich auch die Phasen L1-3 ausgibt, aber auch keine Besserung brachte. Weiterhin Aktualisierung alle 5 Minuten.
In der WebUI vom Stromleser (Tasmota) werden die Werte sofort aktualisiert also alle paar Sekunden. Hier noch ein paar Screenshots.
Unter Configuration-> Logging → gibt es den Parameter „Telemetry Period“ .
Im Auslieferungszustand steht dieser Wert auf 300. Das wären dann 5 Minuten.
Hey, vielen Dank für deine Nachricht!
Es klingt so, als ob der Übertragungsintervall deines Stromlesers derzeit auf 5 Minuten eingestellt ist, was zu den langen Wartezeiten führt. Hier sind zwei Methoden, die du ausprobieren kannst, um die Übertragungszeit zu verkürzen und die Werte sofort zu erhalten:
Sofortige Übertragung bei jeder Leistungsänderung:
Um eine sofortige Übertragung bei jeder Leistungsänderung zu ermöglichen, ändere die folgende Zeile im Skript:
Ändere von:
1,77070100100700ff@1,actual power,W,Power,0
Zu:
1,77070100100700ff@1,actual power,W,Power,18
Die drei Dezimalstellen plus 16 sorgen dafür, dass die Daten sofort übermittelt werden, sobald sich die Leistung ändert (manchmal sogar mehrere Male pro Minute).
Einstellen des Übertragungsintervalls über Konsolenbefehle:
Alternativ kannst du das Übertragungsintervall manuell einstellen, indem du folgende Konsolenbefehle eingibst:
Gib den Befehl ein:
savedata 1
Setze das Übertragungsintervall (z.B. auf 30 Sekunden):
TelePeriod 30 # Anpassbar in Sekunden, von 10 bis 3600, Standardwert = 300
Speicher die Einstellung mit:
savedata 0
Mit diesen Befehlen kannst du den Übertragungsintervall auf deine Bedürfnisse anpassen.
Ich hoffe, das hilft dir weiter! Wenn du noch weitere Fragen hast oder es weiterhin Probleme gibt, melde dich gerne jederzeit bei uns!
Liebe Grüße aus Stuttgart,
Ash vom Team Stromleser.
D
B
=>sensor53 r
M 1
+1,3,s,0,9600,MT691
1,77070100010800ff@1000,Total Consumed,kWh,Total_in,3
1,77070100100700ff@1,Current Consumption,W,Power_cur,18
1,77070100240700ff@1,Current Consumption P1,W,Power_p1,18
1,77070100380700ff@1,Current Consumption P2,W,Power_p2,18
1,770701004c0700ff@1,Current Consumption P3,W,Power_p3,18
1,77070100020800ff@1000,Total Delivered,kWh,Total_out,3
Hab den Wert von 0 auf 18 geändert.
Jetzt werden Daten fast in Echtzeit (Millisekunden-Takt) aktualisiert.
Der Debug im NodeRed kommt gar nicht mehr hinterher…
Das dürfte die Datenbank wohl über die Jahre zum Überlaufen bringen…
Welchen Wert müsste ich dort eintragen, damit es alle 2 Sekunden übertragen wird?