Autor Thema: 3x S0 Strommessung mit RPi und FHEM (per GPIO) ist manchmal ungenau  (Gelesen 5758 mal)

Offline efyzz

  • New Member
  • *
  • Beiträge: 37
Antw:3x S0 Strommessung mit RPi und FHEM (per GPIO) ist manchmal ungenau
« Antwort #15 am: 17 Februar 2018, 15:40:32 »
Mahlzeit,

wollte nochmal eine kleine Rückmeldung geben: Es gehen zwar fast keine Impulse mehr verloren, aber eben auch nur fast ... Gelegentlich rutscht dann doch nochmal einer durch.

Am besten wäre sicherlich ein eigener Mikrocontroller am Stromzähler der selbst zählt und zyklisch per Bus oder Funk an FHEM berichtet.

Damit wären wir wieder beim ArduCounter. Sollte mich wohl doch mal damit beschäftigen ...
Wäre dann natürlich sinnvoll, beide Aufgaben (Stromzähler per Lichtschranke auslesen und die ArduCounter-Funktion) in einem Arduino zu realisieren. Dafür muss ich mich natürlich in den ArduCounter-Code einarbeiten  ::)
Oder hat das schon mal jemand gemacht?
RaspberryPi3B, Jessie Lite
Homematic Funkmodul HM-MOD-RPI-PCB
------------------------------------------------------------------------
Ich bin kein Programmierer ... aber ich weiß, auf welcher Seite der Lötkolben heiß ist.

Offline crusader

  • Jr. Member
  • **
  • Beiträge: 87
Antw:3x S0 Strommessung mit RPi und FHEM (per GPIO) ist manchmal ungenau
« Antwort #16 am: 23 Februar 2018, 23:27:24 »
Wenn Du die Zählung unbedingt auf dem Raspi durchführen will, kannst Du es auch mit der pigpio-Library machen. Aufgrund der besonderen Arbeitsweise des pigpio-Dämons gehen dabei keine Impulse verloren.

Dazu den pigpiod installieren und beiliegendes Monitor-Programm starten (mit den einzulesenden S0-ports als Argument).

Das Programm generiert in FHEM events für das Device S0_<port>, die man z.B.mit einem DOIF abfangen und akkumulieren kann.

Gruß
crusader

 


Offline obb20a

  • New Member
  • *
  • Beiträge: 48
Das Programm generiert in FHEM events für das Device S0_<port>, die man z.B.mit einem DOIF abfangen und akkumulieren kann.


Vielen Dank für diesen Hinweîs, werde ich gerne ausprobieren. Müssen die S0_<port> devices dann als GPIO angelegt werden, oder wie erstelle ich das dann im FHEM?

Offline Skusi

  • Full Member
  • ***
  • Beiträge: 194
Ich werfe mal noch eine ganz andere Lösung ins Spiel:

Ich habe eine Wemos d1 genommen und mit EspEasy geflasht.
Per Counter Funktion zählt der nun die Impulse und sendet mir alle 60 sek das Ergebnis inc Pulsabstände (für Live Leistungs
Ermittlung) per Wlan an Fhem.

Läuft seit Monaten super. Damit wollte ich unter anderem bezwecken das Fhem nicht diese Flut an Pulsen verarbeiten muss die bei mir mit 1000 / kWh anfallen.
RPI2, NanoCul433 (a-culfw), NanoCul868 (a-culfw), JeeLink Clone (LaCrosse), Firmata  für FB Heizung,Wasser+Gas+Klingel+Lux, Somfy Rolladen, Pollin Steckd.,TX29DTH,ESPEasy an S0 Stromz., MAX Fensterkontakte, IButton, SonOff Tasmota, ESP LED Controler
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline crusader

  • Jr. Member
  • **
  • Beiträge: 87
Vielen Dank für diesen Hinweîs, werde ich gerne ausprobieren. Müssen die S0_<port> devices dann als GPIO angelegt werden, oder wie erstelle ich das dann im FHEM?

Nein, die Angabe der Ports erfolgt beim Aufruf des Python-Programms.
In FHEM fängst Du nur die generierten Events ab und akkumulierst einen Zähler.

Hier mal ein Beispiel mit einem einfachen notify:

define S0count.pig notify global:S0.* {my $a = ReadingsVal("S0count.pig","Counter",0) + $EVTPART1;;;; fhem("setreading S0count.pig Counter $a")}

Diese Vorgehensweise entlastet FHEM von der Zählung der Einzelpulse.
Allerdings frisst der pigpio-Dämom erhebliche CPU-Ressourcen (bei mir ca. 6%).

Gruß
crusader
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline Morgennebel

  • Hero Member
  • *****
  • Beiträge: 1130
  • Proud systemd-free zone
Antw:3x S0 Strommessung mit RPi und FHEM (per GPIO) ist manchmal ungenau
« Antwort #20 am: 08 September 2018, 14:03:22 »
Ich habe eine Wemos d1 genommen und mit EspEasy geflasht.
Per Counter Funktion zählt der nun die Impulse und sendet mir alle 60 sek das Ergebnis inc Pulsabstände (für Live Leistungs  Ermittlung) per Wlan an Fhem.

Solider Ansatz. Und sollte es kabelgebunden bleiben, nimm ein 1-Wire Zählermodul wie https://www.esera.de/produkte/1-wire-smart-home/1-wire-digital-eingang-1-wire-digital-ausgang/8/1-wire-dual-s0-zaehler-17mm?c=119 und les den Zählerstand via 1-Wire vom Pi aus.

Ciao, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: LattePanda x86 4/64GB
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT, vThings, Homematic, Luftsensor.info, ESP8266, ESERA

 

decade-submarginal