NEWS
S0 Schnittstelle (ESP8266) für Stromzähler Berechnung
-
@jumper sagte: von Eltako S0+ zum ESP D5
Und S0- ?
-
S0- hatte ich am anfang an GND(ESP32) damit hat es nicht funktioniert, wurden keine daten geliefert, erst wo nur S0+ an D5 angeschlossen war, also S0- ist grade niergendswo angeschlossen.
Ich habe eben die Werte nochmal verglichen, Iobroker/esp ist jetzt langsamer als der Zähler unten.
-
@jumper sagte: also S0- ist grade niergendswo angeschlossen.
Kein Wunder, dass er prellt. So kommen die Impulse über eine "Antenne".
Vorschlag:- S0+ an VCC (+3,3 V)
- S0- an D5
- Widerstand 4,7 kOhm zwischen D5 und GND
Ohne Widerstand geht es nicht, denn S0 ist "Open-Kollektor".
-
So habe es verändert, auf dem ersten blick scheint es zu passen.
Muss ich iwas im Script ändern? -
@jumper sagte: Muss ich iwas im Script ändern?
Wieder die Konstanten für 2000 Impulse/kWh verwenden.
-
soll ich den teil fürs debug löschen?
- ich hatte den Debounce Timer auf 3ms, 30ms, 60ms gehabt, jedes mal als ich den wert größer gemacht habe hat der esp langsamer gezählt, mittlerweile bin ich bei 100er schritten und es ist immer noch ein tick zu schnell
-
@jumper sagte: soll ich den teil fürs debug löschen?
Erst, wenn die Werte stimmen.
40 Impulse in einer Minute = 2400 pro Stunde entspricht 1,2 kW durchschnittliche Leistung. Kann das stimmen?
@jumper sagte in S0 Schnittstelle (ESP8266) für Stromzähler Berechnung:
Debounce Timer auf 3ms, 30ms, 60ms gehabt
Bei einer minimalen Impulsbreite von 30 ms würde ich ihn auf 20 ms einstellen.
-
1,2 kW Durchschnittliche Leistung kommt ungefähr hin halt +/-
beim 20ms zählt der esp immer noch ein tick schneller als der Zählerstand unten,
ich habe es für ne kurze zeit mit 2000ms ausprobiert und da hats fast hingehauen, gabs nur noch 0,01 unterschied zu dem Stromzähler unten.Jetzt beim 20ms wird der unterschied mit jeder Sekunde größer und größer
-
@jumper sagte: 2000ms ausprobiert und da hats fast hingehauen
Dann funktioniert es nur bei kleinen Leistungen; bei großen Leistungen werden Impulse "verschluckt".
-
@jumper sagte: wird der unterschied mit jeder Sekunde größer und größer
Der ESP liefert die Zahl der Impulse - nicht die der Flanken?
-
bin mir nicht sicher, ich habe jetzt die Debounce Time auf 2800ms und auf dem ersten blick scheint es zu passen bzw. was ich im objekte ablesen kann lese ich auch unten am Zähler selber ab, manchmal muss ich cä 10 sekunden warten bis die 2 werte wieder übereinstimmen... ich lasse den script übers Nacht mal laufen und vergleiche es morgen früh nochmal.
-
Moin, wie kann ich es überprüfen ob der ESP die Zahl der Impulse liefert oder die der Flanken,
ich hatte den script jetzt übers Nacht am laufen gehabt und innerhalb die ersten 1-2std. scheinte es zu passen aber anscheinend so bald sich der durchschnittliche vebrauch verändert hat stimmen die werte wieder nicht überein, da war wieder der Script schneller als der Zähler unten... Hättest du ne idee wie ich das richtig zum laufen kriegen könnte bzw. es verbessere?
LG. Jumper
Dankeschön für deine Unterstützung!
-
-
Die Goldene Frage für mich wäre, wo liegt der Fehler?
- am Script, am Zähler oder am Software einstellungen usw.
-
@jumper sagte: zustand mit "Debounce Time(mSec):3000"
3000 ms ist mit Sicherheit zu hoch.
@jumper sagte in S0 Schnittstelle (ESP8266) für Stromzähler Berechnung:
wo liegt der Fehler?
Der ESP liefert falsche Werte.
@jumper sagte in S0 Schnittstelle (ESP8266) für Stromzähler Berechnung:
am Zähler
Dazu müsste man sich die S0-Impulse am ESP-Eingang mit einem Oszillographen ansehen, ob sie ein sauberes Rechteck mit Low <0,8 V und High > 2,4 V sind.
-
Moin,
Laut Handbuch von meinem Zähler sollte der "Debounce Time" auf 30msec cä. eingesetzt werden.
Ich werde mir eine Oszillographen organisieren und die Tage sowie das Gerät da ist und Zeit habe den ESP
Eingang prüfen, sobald ich es überprüft habe werde ich mich nochmal melden.Ich bedanke mich Herzlich für deine tolle Unterstützung!
LG. Jumper
-
@jumper Nach meiner Erfahrung MUSS das Entprellen bzw. Auswerten der Flanken im ESP erfolgen. Alles andere ist nicht zielführend. Bei sehr hohem Verbrauch kann es Sinn machen, die Daten vor der Übertragung zu kumulieren, also nicht bei jedem Impuls zu senden. Am sichersten ist das Auslösen eines Interrupt über den GPIO Pin. Bei 2000 Impulsen / kWh und maximal rund 3000W aus einer Haushaltssteckdose können es bis zu 5 Impulse / Sekunde sein. Bleiben also nicht mal 200ms für die Auswertung, Entprellen sowie das Senden und Weiterverarbeiten. Pollen ist da nicht.
-
@andygr42 sagte: MUSS das Entprellen bzw. Auswerten der Flanken im ESP erfolgen.
Das passiert bereits.
@andygr42 sagte in S0 Schnittstelle (ESP8266) für Stromzähler Berechnung:
nicht bei jedem Impuls zu senden.
Es wird nur alle 10 s gesendet.
@andygr42 sagte in S0 Schnittstelle (ESP8266) für Stromzähler Berechnung:
maximal rund 3000W aus einer Haushaltssteckdose können es bis zu 5 Impulse / Sekunde sein.
@paul53 sagte in S0 Schnittstelle (ESP8266) für Stromzähler Berechnung:
Bei 2000 Impulsen/kWh beträgt die Maximal-Leistung 12 kW.
-
@jumper sagte in S0 Schnittstelle (ESP8266) für Stromzähler Berechnung:
die Impulse von der Stromzähler pro kWh beträgt "2000" falls ich deine frage/antwort richtig verstanden habe.
Was denn nun??? Hat mal irgendwer ins Datenblatt vom Eltako Zähler geschaut? Wechselstrom oder Drehstrom? Die Eltakos welche ich kenne haben 2000 Impulse / kWh bei Wechselstrom und 1000 oder 10 bei Drehstrom.
-
@andygr42 sagte: was soll entprellen im iobroker bringen?
Wo siehst Du "Entprellen" im Blockly? Das Entprellen erfolgt im ESP mit "Debounce Time".