ESPEasy PulseCounter -- Leistungszähler S0

Begonnen von sash.sc, 05 Februar 2017, 18:47:11

Vorheriges Thema - Nächstes Thema

sash.sc

Hallo zusammen.

Habe heute endlich meinen Leistungzähler mit S= Schnittstelle und nem WEMOS D1 mini mit EPSEasy in Betrieb genommen.
Dank des ESPEasy Moduls von dev0 funktioniert die Übertragung wunderbar.

Jetzt Habe ich da ein Paar Fragen.

Hier ein List mit den Readings.


IDENT      strom_WaMa
   INTERVAL   300
   IODev      espBridge
   LASTInputDev espBridge
   MSGCNT     481
   NAME       PowerWamDry
   NOTIFYDEV  global
   NR         389
   NTFY_ORDER 50-ESPEasy_strom_WaMa
   PORT       80
   STATE      Cou: 0.00 Tim: 689984.00 Tot: 8.00
   SUBTYPE    device
   TYPE       ESPEasy
   VERSION    0.81
   espBridge_MSGCNT 481
   espBridge_TIME 2017-02-05 18:41:01
   Readings:
     2017-02-05 18:41:01   Count           0.00
     2017-02-05 18:41:01   Time            689984.00
     2017-02-05 18:41:01   Total           8.00
     2017-02-05 18:40:32   presence        present
     2017-02-05 18:41:01   state           Cou: 0.00 Tim: 689984.00 Tot: 8.00
   Helper:
     fpc        1486304286
     Intat:
       1:
         FN         ESPEasy_statusRequest
         INTERVAL   302
         TRIGGERTIME 05.02.2017 18:45:34
     Received:
       Count      1486316461
       Time       1486316461
       Total      1486316461
Attributes:
   IODev      espBridge
   Interval   300
   group      ESPEasy Device
   presenceCheck 1
   readingSwitchText 1
   room       ESPEasy
   setState   3


COUNT:      Werden wahrscheinlich die aktuell gezählten Impulse sein, die gerade anliegen
TIME:          Welche Zeit ist das ????
TOTAL:        Gesamt gezählte Impule seit dem Start des WEMOS/ESp8622

Ich würde dies gerne direkt über die Formula des ESP im Device direkt gerne berechnen lassen.
Finde aber im Moment keinen Ansatz dafür.

Es sollte die gerade aktuelle Leistung, Gesamt verbrauchte Leistung berechnet werden !

Der benutzte S0 Zähler hat 1000 Impulse pro KWh.

Gruß
Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

Waldmensch

Ohne das Plugin zu kennen, ich würde sagen du stellst ein Delay von 60 ein und bekommst alle 60 Sekunden die Anzahl der Pulse. Daran kannst du über Dreisatz die kWh ausrechnen.


Gesendet von iPhone mit Tapatalk

Marlen

Hallo,

ich hab das auch so, allerdings kommt im espeasy nix an.
Das Wemos blinkt zwar, aber der Pulse Counter zählt nicht hoch!

Wie hast du den PulseCounter im ESPeasy eingerichtet?

Und wie angeschlossen, wobei, das Signal kommt ja scheinbar an!

LG
  Marlen

tpm88

Hallo Marlen,

bei mir laufen zwei S0-Zähler (Strom & Gas) als PulseCounter mit ESPeasy auf der Wemos 1wire-WLAN Bridge einwandfrei.

Gerne vergessen auf dem wemos unter Hardware - GPIO Boot States: entsprechenden GPIO Pin auf Input setzen.

Die Pulse Counter habe ich wie folgt eingerichtet:
Counter Type: Delta/Total/Time
Debounce Time (mSec): 1000
Mode Type: Falling

Siehe auch die Screenshots.



Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

tpm88

Zitat von: sash.sc am 05 Februar 2017, 18:47:11

COUNT:      Werden wahrscheinlich die aktuell gezählten Impulse sein, die gerade anliegen
TIME:          Welche Zeit ist das ????
TOTAL:        Gesamt gezählte Impule seit dem Start des WEMOS/ESp8622

Ich würde dies gerne direkt über die Formula des ESP im Device direkt gerne berechnen lassen.
Finde aber im Moment keinen Ansatz dafür.

Es sollte die gerade aktuelle Leistung, Gesamt verbrauchte Leistung berechnet werden !

Der benutzte S0 Zähler hat 1000 Impulse pro KWh.

Hallo Sascha,

TIME ist die Zeit in Millisekunden zwischen zwei Impulsen.

Ich berechne die momentane Leistung und den Zählerstand ( Gesamt KWh ) direkt im  ESP PulseCounter Device "S0_Strom" mit folgenden userReadings:


TotalKWh:Total.* monotonic { ReadingsVal("S0_Strom","Total",0)/120 },
currentPower:Time.* { 1000 * 3600 / ( 120 * ReadingsVal("S0_Strom","Time",20000) / 1000)}


Mein Zähler liefert 120 Impulse pro KWh, d.h. du mußt jeweis 120 durch 1000 ersetzen.

Stündliche, Tägliche, wöchentliche, monatliche und jährliche Statistiken liefert dann das Modul HourCounter ( siehe Wiki ) bzw. das Hilfsmodul HourCounter Utils ( siehe auch Wiki ). Das sieht dann z.B. so aus, wie unten im Sceenshot.

Gruß
Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

Marlen

Zitat von: tpm88 am 05 Dezember 2017, 15:55:51
Hallo Marlen,

bei mir laufen zwei S0-Zähler (Strom & Gas) als PulseCounter mit ESPeasy auf der Wemos 1wire-WLAN Bridge einwandfrei.

Gerne vergessen auf dem wemos unter Hardware - GPIO Boot States: entsprechenden GPIO Pin auf Input setzen.

Die Pulse Counter habe ich wie folgt eingerichtet:
Counter Type: Delta/Total/Time
Debounce Time (mSec): 1000
Mode Type: Falling

Siehe auch die Screenshots.

Hallo,

Hardwar auf Input setzen.....das hatte ich tatsächlich nicht!

Allerdings hat das nicht's gebracht!  :-\

Total count is not persistent! Das hat nicht's zu sagen?

Ganz komisch ist, das wenn ich GPIO15 auf Input setze und mein Kabel auf GPIO15 setze, blinkt der WEMOS nicht mal auf!

Bei dir blinkt der WEMOS aber auch!?

LG
  Marlen


tpm88

Zitat von: Marlen am 05 Dezember 2017, 21:55:05
Total count is not persistent! Das hat nicht's zu sagen?

Nein, das bedeutet nur, daß Total wieder bei 0 anfängt zu zählen, wenn der wemos neu gestartet wird.

Zitat
Ganz komisch ist, das wenn ich GPIO15 auf Input setze und mein Kabel auf GPIO15 setze, blinkt der WEMOS nicht mal auf!

Bei dir blinkt der WEMOS aber auch!?

Nein, mein WEMOS blinkt nicht  :D

Schau mal in die Spezifikation: https://wiki.wemos.cc/products:d1:d1_mini

Die interne LED des WEMOS hängt an D4/GPIO2. Dieser Pin hat auch einen integrierten 10k Pull-up. D8/GPIO15 hingegen hat einen integrierten Pull-10k down.

Hier nochmal der Verweis auf ein wenig Hintergrund zum Thema Pull-Up/Pull-Down: https://www.elektronik-kompendium.de/sites/raspberry-pi/2006051.htm

Nicht zufällig nutze ich die PINs D6/GPIO12 und D7 /GPIO13 für meine beiden S0-Counter. Diese haben laut WEMOS spec keine integrierten Pull-Up oder Pull-Down Widerstände. Ich nutze gemäß Empfehlung aus dem obigen Artikel externe Pull-Up Widerstände.
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

Marlen

Hi,

danke für den Link, sehr hilfreich!

Aber dann hätte es doch schon an D4 funktionieren müssen ( ohne ext. Pull Up)!?

Es geht mir nicht in den Kopf, warum es nicht funktioniert!!! Ich bin am verzweifeln!

Ich habe an der 1-Wire-Bridge 3 Relaisausgänge angeschlossen auf D5-7 das funktioniert super.
Und natürlich Temp-Sensoren, funktioniert auch super.

Nur an diesen einen Eingang-Signal scheitert es jetzt!?

Ich hab es gestern Abend/Nacht schon mal mit D0-D2 versucht, auch hier ist nicht's angekommen......

pink99panther

Gugst du hier!
Stromzähler S0 → ESP8266 mit ESPEasy → MQTT → FHEM

Ganz informativ für dich
Der Ausgang S0+ wird mit den 3,3V (VCC) des ESP verbunden.
Der S0- wird mit dem GPIO der als Zähleingang definiert wurde verbunden.
Außerdem wird ein Widerstand 1 bis 5 kOhm von diesem GPIO gegen GND angebracht.


LG
p99p

majorshark

@Marlen
Hast Du auf die Polung des S0 Anschlusses geachtet. Bei Stromzählern ist der S0 als Open Kollektor ausgeführt. Da ist es wichtig, dass die Polung stimmt.

@tpm88
Die GPIO's für PulseCounter unter Hardware auf input setzen habe ich bei mir noch nie gemacht. Funktionierte immer.
Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

Marlen

ZitatHast Du auf die Polung des S0 Anschlusses geachtet. Bei Stromzählern ist der S0 als Open Kollektor ausgeführt. Da ist es wichtig, dass die Polung stimmt.

Hmmm..... muss ich mal schauen, aber ich geh doch mit GND in den S0!
Und es geht ja auch nicht, wenn ich die Kabel die in den S0 gehen zusammenhalte.

LG
Marlen

tpm88

Zitat von: majorshark am 06 Dezember 2017, 08:50:19
Die GPIO's für PulseCounter unter Hardware auf input setzen habe ich bei mir noch nie gemacht. Funktionierte immer.

Ok. Hier hat es unlängst geholfen: https://forum.fhem.de/index.php/topic,78356.msg704027.html#msg704027
Die Gegenprobe habe ich tatsächlich auch nicht gemacht.

@Marlen: mir ist noch eingefallen, daß der/die PulseCounter im ESP-Easy Device auf der ersten Device Seite, d.h. lfd. Nr. 1-4 sein müssen. Ich mußte nämlich auch meine 1wire Temperatursensoren nach "hinten" sortieren. Ich weiß aber nicht mehr, ob sich ab Nr. 5 gar keine anlegen lassen oder sie einfach nicht funktionieren??

Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

Marlen

Zitat@Marlen: mir ist noch eingefallen, daß der/die PulseCounter im ESP-Easy Device auf der ersten Device Seite, d.h. lfd. Nr. 1-4 sein müssen. Ich mußte nämlich auch meine 1wire Temperatursensoren nach "hinten" sortieren. Ich weiß aber nicht mehr, ob sich ab Nr. 5 gar keine anlegen lassen oder sie einfach nicht funktionieren??

Ahhh.....meiner ist auch auf Seite 4 oder so......also Nr. 9 oder so.
Werde das heute Abend mal testen!

LG
  Marlen

Marlen

Hallo,

war tatsächlich so, scheinbar gehen Counter-Device nur auf der "1. Seite"

Danke @Tobias  :-*

Allerdings ist die Qaulität noch Verbesserungswürdig!
Hab mehr mehr Count's als auf den echten Zähler.

Ich hab ihn jetzt so angeschlossen:

GND --> S0 S0 --> GPIO15

Im ESP-Easy hab ich das Device so angelegt, siehe Screenshot

LG
  Marlen

tpm88

Na - das ist doch immerhin ein Fortschritt.

Bezüglich Beschaltung bist du aber ein wenig "beratungsresistent" ...

Zitat von: Marlen am 09 Dezember 2017, 21:42:03
Ich hab ihn jetzt so angeschlossen:

GND --> S0 S0 --> GPIO15

Warum ausgerechnet der GPIO15? Das ist beim wemos der einzige GPIO PIN mit einem internen "Pull-Down" Widerstand.

Pull-Up ist stabiler, was Störimpulse angeht. Versuche es es doch noch einmal mit einem externen Pull-Up ( NICHT an GPIO15 !) gemäss dem Schatbild im Anhang.



Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT