Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
public:2r-stromzaehler [2025/05/28 07:27]
admin
public:2r-stromzaehler [2025/06/03 13:51] (aktuell)
admin
Zeile 1: Zeile 1:
 ===== MQTT 2R-Stromzähler (Zweirichtung) / Verbrauchsmessung eines Ferraris-Stromzählers ===== ===== MQTT 2R-Stromzähler (Zweirichtung) / Verbrauchsmessung eines Ferraris-Stromzählers =====
 +In einigen Haushalten findet sich noch ein Ferraris-Stromzählers,​ welcher bei verwendung eines Balkonkraftwerkes oder eine Mini-PV-Analage auch mal rückwärts laufen kann.\\
 +Dies führt in der Regel zu einer Verfälschung der Verbrauchsanzeige. Dieser 2R-Stromzähler hat zwei Sensoren und kann durch das intelligente Script erkennen, in welche Richtung der Zähler dreht.\\
 +Bitte beachten, dass hier ein anlaloges Zählwerk in eine digetale Anzeige mit Hilfe von IR-Sonsoren gewandelt wird. Es kann immer mal zu Abweichungen kommen. Bedeutet, dass man gelegntlich den Wert des Zählerstandes auch mal anpassen muss.\\
 +\\
 +\\
  
 {{:​public:​verdrathung.jpg?​400|}} {{:​public:​verdrathung.jpg?​400|}}
  
 +
 +=== Grundeinstellungen ===
 +Folgende Grundeinstellungen sind bereit bei Auslieferung vorgenommen.\\
 +**TelePeriod** = Intervall für das Senden von MQTT-Nachrichten\\
 +**CounterDebounce** = Zeit in Millisekunden,​ die vergehen müssen, um ein Prellen der Sensoren zu verhindern.\\
 +<​code>​
 +TelePeriod 60
 +CounterDebounce 600
 +</​code>​
  
 === Konsolen Script === === Konsolen Script ===
-In folgendem ​Script (Konsolen > Script konfigurieren) sind zwei Variablenwerte ​ggf. anzupassen.\\+In folgenden, auf dem Zähler bereits vorhandenen ​Script (Konsolen > Script konfigurieren) sind folgende ​Variablenwerte anzupassen.\\
 Und zwar die Zählerkonstante (zk), welche am Stromzähler aufgedruckt und mit der Einheit (U/kWh) angegegben ist und die Mindestumlaufzeit (mu) der Aluminium-Drehscheibe.\\ Und zwar die Zählerkonstante (zk), welche am Stromzähler aufgedruckt und mit der Einheit (U/kWh) angegegben ist und die Mindestumlaufzeit (mu) der Aluminium-Drehscheibe.\\
  
   - zk (Zählerkonstante)   - zk (Zählerkonstante)
   - mu (Mindest Umlaufzeit der Scheibe)   - mu (Mindest Umlaufzeit der Scheibe)
 +  - latitude ​
 +  - longitude
 \\ \\
-Für den Wert **mu** ​sind 10 Sekunden voreingestellt.\\ +Für **zk** ist standardmäßig ein Wert von 75 U/kWh hinterlegt. Bitte diesen Wert mit der Angabe auf dem eigenen Stromzähler abgleichen.\\ 
-Diesen ​Wert kann man erstmal ​beibehalten. ​Wenn man es genauer haben will, kann man einen oder mehrere ​hohe Verbraucher (Wasserkocher, ​Fön, etc.) einschalten und mit der Stoppuhr messen, ​wieviele ​Sekunden die Aluminium-Drehscheibe ​benötigt um eine Umdrehung ​zu erreichen.\\ +Für **mu** ​ist ein Standardwert von 10 Sekunden voreingestellt.\\ 
-Dieser Wert oder ggf. etwas weniger, ist für **mu** anzusetzen. :!: Nochmal kontrollieren, ob **CounterDebounce** noch passt.\\ +Für **latitude** Ist der Breitengrad des Standortes anzugeben.\\ 
-Dieser ​Wert ist mit verantwortlich für die Anzeige ​der aktuellen Leistung ​sowie der Entscheidung,​ ob der Zähler ​vorwärts oder rückwärts ​läuft.\\ +Für **longitude** Ist der Längengrad des Standortes anzugeben.\\ 
-Aber hier nochmal der Hinweis, dass der Wert erstmal bei **mu=10** belassen ​werden ​kann.\\+ 
 +\\ 
 +Der Wert für mu kann zunächst ​beibehalten ​werdenWer eine genauere Einstellung wünscht, kann einen oder mehrere ​starke ​Verbraucher (z. B. ​Wasserkocher, ​Föhn) einschalten und mit einer Stoppuhr messen, ​wie viele Sekunden die Aluminium-Drehscheibe ​für eine vollständige ​Umdrehung ​benötigt. Dieser ​gemessene ​Wert – oder etwas weniger ​– sollte dann als mu verwendet werden.\\ 
 +:!: Hinweis: Danach unbedingt prüfen, ob der Wert für CounterDebounce noch passend ist.\\ 
 +Der Wert **mu** beeinflusst maßgeblich ​die Berechnung ​der aktuellen Leistung ​und die Erkennung ​der Zählrichtung (vorwärts oder rückwärts)Dennoch kann der voreingestellte ​Wert mu = 10 für den Anfang problemlos verwendet ​werden.\\
  
 <​code>​ <​code>​
Zeile 27: Zeile 47:
 fl2=0 fl2=0
 rt="​unbekannt"​ rt="​unbekannt"​
 +ph="​unbekannt"​
 c1=0 c1=0
 c2=0 c2=0
Zeile 36: Zeile 57:
 c2tsold=0 c2tsold=0
 zk=75 zk=75
-mu=10+mu=12
 hr=0 hr=0
 dy=0 dy=0
Zeile 46: Zeile 67:
 >B >B
 =>​sensor53 l255 =>​sensor53 l255
 +latitude 50.0555
 +longitude 8.8008
  
 >F >F
 h1=zs-s1 h1=zs-s1
 e1=h1/​(2*zk) e1=h1/​(2*zk)
 +
 +if sunrise>​0 ​
 +   and sunset>​0 ​
 +   and time>​sunrise ​
 +   and time<​sunset
 +   then
 +     ​ph="​Tag"​
 +   else
 +     ​ph="​Nacht"​
 +     fl2=0
 +endif
  
 if fl1==1  ​ if fl1==1  ​
Zeile 67: Zeile 101:
 if c1!=c1old if c1!=c1old
    ​then ​    ​then ​
-    fl1=1 
     c1ts=upsecs     c1ts=upsecs
     if fl2==1     if fl2==1
 +       and time>​sunrise ​
 +       and time<​sunset
        then        then
         zs=zs-1         zs=zs-1
-        rt="​rückwärts"​+        rt="← rückwärts"​
         fl2=0         fl2=0
-        ​fl1=0+       ​else 
 +        ​fl1=1
    ​endif ​    ​endif ​
 endif endif
Zeile 81: Zeile 117:
 if c2!=c2old if c2!=c2old
    ​then ​    ​then ​
-    fl2=1 
     c2ts=upsecs     c2ts=upsecs
     if fl1==1     if fl1==1
        then        then
         zs=zs+1         zs=zs+1
-        rt="​vorwärts"​+        rt="​vorwärts ​"
         fl1=0         fl1=0
-        ​fl2=0+       ​else 
 +        ​fl2=1
     endif     endif
 endif endif
Zeile 94: Zeile 130:
  
 ' Aktuelle Leistung ' Aktuelle Leistung
-c1ts=upsecs +if c1>c1old  
-if c1>​c1old +   ​and ​upsecs>​(c1tsold+mu)
-   ​and ​c1ts>​(c1tsold+mu)+
    then    then
-   ​sec=c1ts-c1tsold +    c1ts=upsecs 
-   ​power=3600000/​(sec*zk) +    ​sec=c1ts-c1tsold 
-   ​c1tsold=c1ts+    if sec>0 
 +      then  
 +        ​power=3600000/​(sec*zk) 
 +      else  
 +        power=0 
 +    endif 
 +    ​c1tsold=c1ts
 endif endif
  
Zeile 118: Zeile 159:
 if chg[hr]>​0 if chg[hr]>​0
  and hr==0  and hr==0
 + and min==0 ​
 + and sec<2
   then   then
    s1=zs    s1=zs
    e3=e2    e3=e2
    e2=e1    e2=e1
 +   svars
 endif endif
  
Zeile 141: Zeile 185:
  
 >W >W
 +ZS: {m} %0zs%
 Zählerstand:​ {m} %total% kWh Zählerstand:​ {m} %total% kWh
 Richtung: {m} %rt% Richtung: {m} %rt%
Zeile 146: Zeile 191:
 Sensor L: {m} %0fl1% Sensor L: {m} %0fl1%
 Sensor R: {m} %0fl2% Sensor R: {m} %0fl2%
-============+Phase   : {m} %ph% 
 +=========
 Verbrauch: Verbrauch:
 Heute     : {m} %2e1% kWh Heute     : {m} %2e1% kWh

Navigation
Eigene Werkzeuge