Smartmeter / Stromzähler auslesen mit poweropti der Fa. powerfox per HTTP GET

Begonnen von hecky456, 18 November 2020, 08:01:59

Vorheriges Thema - Nächstes Thema

hecky456

Hallo liebe FHME Community,

hat sich jemand von euch schon einmal mit dem Gerät poweropti der Fa. powerfox beschäftigt? Damit kann man Smartmeter auslesen und die Verbrauchsdaten / Kosten über eine APP abrufen. Es gibt eine User API die es über HTTP GET Abfragen erlaubt die Messdaten abzuholen. Leider laufen die Daten dann zwar über die "Cloud" aber für aktuell 70€ bzw. regulär 80€ wäre das dochmal einen Blick wert oder was meint ihr?
Leider bin ich technisch vermutlich nicht fit genug für eine Umsetzung aber falls ihr zuversichtlich seid, dass das möglich wäre, würde ich mir das Teil ggf. zulegen und mich zum Testen bereit erklären. Über ein HTTPMOD müssten die Daten doch ggf.auslesbar sein oder?

Die Doku zur API gibts hier:
https://www.powerfox.energy/wp-content/uploads/2020/05/powerfox-Kunden-API.pdf

Vielen Dank vorab und viele Grüße
Felix

gvzdus

Hi, wenn Dein Raspberry in der Nähe des Zählers hängt, also in "USB-Nähe", kaufe Dir doch einfach für ca. 25 Euro einen Lesekopf. Dann konfigurierst Du das OBIS-Modul in FHEM und hast ganz ohne Cloud die Werte sekundengenau auf der heimischen Kiste.

Live die Werte von meinem Raspi - hier allerdings noch zusätzlich mit 93_InfluxDB an eine InfluxDB mit Grafana angebunden:

Im Bild oben: Mieser Tag (schlechte Solarproduktion wegen Nebel). Im Bild unten alle 3 Phasen und das Netto. Zu erkennen ist der Rythmus der Waschmaschine ...


hecky456

Hi,

vielen Dank für deine Antwort. An das Thema hatte ich mich bisher nicht ran getraut und bis letzte Woche stand der FHEM Server (Proxmox) noch drei Räume neben dem Stromzähler. Hatte da mal über eine Lösung mit einem ESP und ser2net nachgedacht (habe bereits verschiede CUL über einen Raspi an FHEM angebunden) aber aufgrund mangelder Zeit und der Komplexität erstmal hinten angestellt. Nun steht der Server tatsächlich direkt neben dem Stromzähler und ich könnte den Lesekopf direkt per USB an FHEM anschließen. Welchen Lesekopf meinst du da für 25€? Habe bisher nur den von Weidmann für 45€ gefunden (was aber auch noch okay wäre).

Welche Anforderungen gibt es denn da an den Stromzähler? (Es handelt sich um einen mMe4.0 von EMH-Metering)
- Meiner hat eine "optische Datenschnittstelle, die in Anlehnung an die IEC 62056-21 ausgeführt ist. Die Datenschnittstelle ist für den Endkunden über eine optische Info-/MSB-Schnittstelle auf der  Zählervorderseite zugänglich".
- "D0-Schnittstelle"
- "Als Kommunikationsprotokoll wird SML verwendet. Die Baudrate beträgt 9600 Baud."
- "Halterung wird in die kombinierte optische Schnittstelle eingesteckt um handelsübliche optische Kommunikationsköpfe nach DIN EN 62056-21 über der DSS zu arretieren."
- Die OBIS-T-Kennzahlen habe ich in der Anleitung gefunden. So wie ich es verstanden habe benötige ich diese oder?

Vielen Dank vorab und viele Grüße

Schotty

Hi hecky456,

du kannst dir einen solchen Auslesekopf auch leicht selber basteln, im Grunde reichen ein Fototransistor und ein Widerstand. Ich persönlich habe die Kombi SFH309FA mit nem ca 2K Widerstand am GPIO14 eines NodeMCU angeschlossen, auf dem Tasmota läuft. Die Werte lasse ich per MQTT an FHEM schicken. 
Wichtig ist dabei nur, dass der Transistor direkt vor der Diode des Zählers sitzt und möglichst kein Fremdlicht abbekommt.

Den Fototransistor habe ich mit der Spitze in das Loch von einem ringförmigen Neodymmagneten gesteckt, den wiederum in ein kleines Holzstückchen eingelassen und den Transistor durchgesteckt und mit Heißkleber fixiert. So kann man den 'Kopf' ganz praktisch ausrichten oder auch mal abnehmen. Das auf dem Holzstückchen (s. Fotos) ist dann noch eine kleine Platine für den Widerstand und die Verkabelung, alles in einem Schrumpfschlauch versteckt. Die kleinen Löcher sind für die Nüpsies, die bei meinem Zähler noch an der Vorderseite sind, so kann auch nichts verrutschen.

So sieht das Skript bei Tasmota für meinen Zähler aus:

>D
>B
=>sensor53 r
>M 1
+1,14,s,0,9600,Strom
1,77070100010800ff@1000,Gesamt,kWh,gesamt,0
1,77070100100700ff@1,Momentan,W,momentan,0
#


Allerdings brauchst du evtl noch einen Pincode für den Stromzähler, damit dir auch der Momentverbrauch etc angezeigt wird (war zumindest bei mir so, EasyMeter Q3M, ansonsten wurde nur der Gesamtverbrauch angezeigt), den erfährst du aber i.d.R. bei deinem Stromversorger.

Ein paar Seiten dazu:
https://www.msxfaq.de/sonst/bastelbude/smartmeter_d0_sml.htm
https://forum.creationx.de/forum/index.php?thread/1095-d0-z%C3%A4hler-sml-auslesen-mit-tasmota/&pageNo=1
http://developer.mysmartgrid.de/doku.php?id=optoreader

Im Anhang noch Bilder von der Tasmota-Seite und vom 'Lesekopf'. Vielleicht hilft es dir ja irgendwie oder ermuntert dich zum Eigenbau.. ;)

EDIT: Ich verwende die Tasmota/nodeMCU-Lösung mit MQTT, da mein Zähler nicht in der Nähe des FHEM-Servers steht. Je nach Serverhardware könntest du die Bastelei aber sicherlich auch direkt anschließen und dann das erwähnte OBIS-Modul nutzen.. 

Gruß
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

gvzdus

Ich meine diesen hier:
https://www.ebay.de/itm/USB-IR-Infrarot-Lese-Schreibkopf-Stromzahler-Smart-Meter-/274567116266

Mit Herrn Bayha habe ich auch telefoniert über die Idee, das direkt mit einem ESP8266 zu verbinden. Seine größten Bedenken sind, dass außerhalb des Bastelbereichs damit eine richtige Zertifizierung nötig wäre, die leicht 100.000 Euro Kosten erreicht ("auch, wenn das in Deutschland der eine oder andere gerne vergisst").

Denke daran, dass dieser Lesekopf ohne USB-Kabel kommt!
Und mache Dir keinen Kopf: Ein EMH-Meter hatte ich auch, das klappt mit dem OBIS-Modul in FHEM auf Anhieb.

Besorge Dir ggf. halt schon einmal die PIN für Deinen Zähler beim Meßbetreiber, falls noch nicht freigegeben!

hecky456

Danke ihr beiden!
@Schotty: Habe hier noch einen NodeMCU und zwei TEKT5400S rumliegen. Die müsste ich doch nach folgendem Link auch an den NodeMCU GPIO14 anschließen können oder was meinst du?
https://wiki.volkszaehler.org/howto/simpler_ir_leser
Bei deinem Code in Tasmota, was genau hat es mit diesen beiden Zeilen auf sich?
1,77070100010800ff@1000,Gesamt,kWh,gesamt,0
1,77070100100700ff@1,Momentan,W,momentan,0
Sind das die OBIS-T-Kennzahlen?

@gvzdus: Danke für den Link! Hatte mittlerweile Kontakt mit einem vom Volkszähler Projekt, der bekommt Ende der Woche vermutlich wieder Bausätze die er dann für ca. 17€ (glaube ich) verkaufen würde.

Würde es glaube ich über Weihnachten erstmal mit dem nodeMCU und der TEKT5400S probieren. MQTT Server habe ich eh am laufen. Wenn das klappt kann ich mir ja noch ein Gehäuse drucken. Hab eins auf thingiverse gefunden. Muss dazu aber erstmal meinen Drucker wieder flott machen...

Den PIN für meinen EHZ habe ich schon eingegeben, der sollte den vollen Datensatz liefern.

Nochmal vielen Dank für eure Unterstützung!!

gvzdus

Hi, ich habe in der Richtung noch ein bissel weitergeforscht, und mein Wissen hier zusammengetragen:
https://wiki.fhem.de/wiki/Stromzähler_auslesen

Wenn Du nicht löten willst und USB hast, nimm die 25 Euro-Kiste (USB) von "o_electronics_o" auf Ebay (Herr Bayha) plus ein USB-Kabel. Ranstecken und hoffentlich fertig.

gvzdus

Ähm, die Antwort zur Tasmota-Frage kann ich Dir auch sagen:
Es sind die Mappings: Welche SML-Sequenz soll zu welchem MQTT-Reading führen?

Dokumentation mit vielen Beispielen ist hier:
https://tasmota.github.io/docs/Smart-Meter-Interface/

Schotty

Zitat von: hecky456 am 15 Dezember 2020, 14:44:15
@Schotty: Habe hier noch einen NodeMCU und zwei TEKT5400S rumliegen. Die müsste ich doch nach folgendem Link auch an den NodeMCU GPIO14 anschließen können oder was meinst du?

Klar, einfach ausprobieren, ist ja schnell zusammengeklöppelt  :)
Ich hatte damals nur nichts passendes vorrätig und den TEKT hatte ich bei dem Versender, bei dem ich eh bestellen musste/wollte, nicht im Sortiment entdeckt.

Zum Rest hat gvzdus ja schon was geschrieben..

Viel Erfolg und halt' uns auf dem Laufenden ;)
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

gvzdus

Ich habe vorgestern den poweropti bestellt und heute erfolgreich getestet und mal vorübergehend als Ersatz für meinen "normalen" USB-IR-Lesekopf eingebunden. Dokumentation hier:

https://wiki.fhem.de/wiki/Poweropti

Ist schon nett gemacht, in Sachen Benutzerfreundlichkeit und "Wie vermeiden wir Hilfeanrufe?" wirklich gut durchdacht. Wer die Cloudfunktionen des Herstellers nicht braucht, ist aber natürlich mit einem "einfachen" USB/TTL/Fotodioden-Lesekopf billiger und auch noch zeitnäher als das 10-Sekunden-Update-Intervall des poweropti bedient. Ist aber eine gute Empfehlung für die Leute, die sich für die eigenen Lösungen in Sachen Stromverbrauch interessieren, und die man sonst mit "Du, ich mach' kein Windows - davon habe ich keine Ahnung - nur so was, das sich Unix nennt" abwimmelt.

Schotty

@hecky456: Bei dem Link zur Tasmota-Seite von gvzdus ist übrigens auch ein Beispiel für einen EMH-Zähler zu finden: https://tasmota.github.io/docs/Smart-Meter-Interface/#emh-ed300l-sml
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/

hecky456

Hallo zusammen,

bitte entschuldigt das späte Update...

@gvzdus: Deshalb liebe ich FHEM so!!! Vielen Dank für deinen Einsatz, einfach spitze! Dann werde ich so ein Teil mal für meinen Schwiegervater besorgen...

Hatte mir vor Weihnachten noch zwei Leseköpfe von einem Kollegen aus dem VZ-Projekt bestellt (den Kontakt kann ich auf Wusch gerne hestellen). Waren 32€ für beide zusammen inkl. Versand (15€ für eine TTL-Version bei der noch die Diode und der Phototransistor eingelötet werden musste und 17€ für eine fertige USB-Version).
Bis die Köpfe da waren, hatte ich es noch kurz mit der TEKT und dem nodemcu mit Tasmota getestet und das lief auch einigermaßen. Allerdings hat das mit dem Momentanverbrauch nur bei kleinen Leistungen funktioniert (vielleicht wegen dem 1k Pullup, sehr seltsam) und die Befestigung war sehr frickelig. Hab dann nicht länger getestet da ich die Leseköpfe schon bestellt hatte.

Die Einbindung der Leseköpfe in FHEM war nach dem Durchreichen des USB-Device an meinen Proxmox-Container eigentlich kinderleicht. Eigentlich, weil ich leider (vermutlich aus früheren Versuchen von etwas anderem) noch ein Device definiert hatte, das auch auf dieses USB-Device zugeriffen hat. Zwei FHEM-Devices die auf ein USB-Gerät zugreifen wollen geht nun mal leider eher schwierig. Nachdem ich das raus hatte war es kein Problem mehr. Hab die TTL-Variante aktuell testweise über einen USB-Seriell-Wandler angeschlossen, werde ihn aber wohl demnächst mal über ser2net und einen NodeMcu einbinden damit ich keine USB-Leitung mehr zum Zähler brauche (Server zieht vermutlich nach den Renovierungsarbeiten wieder weg vom Zählerschrank).

Vielen Dank jedenfalls für eure Unterstützung!

Gruß Felix

gvzdus

Moin, aus "Schwiegervater" schließe ich: Da steht kein Raspi o.ä.?
Der poweropti ist wohl die anwenderfreundlichste Lösung - wenn allerdings ein Raspi vor Ort steht, würde ich einen USB-Lesekopf empfehlen, weil einfach die zeitliche Auflösung besser ist.

hecky456

Hey,
aktuell steht da noch kein Raspi o.Ä.. Aber ggf. soll bald FHEM auf einem QNAP NAS als Container laufen daher würde ich gerne kompatibel bleiben.
Die zeitliche Auflösung ist nicht so relevant, es geht in erster Linie um den Ertrag der PV-Anlage.

Aber nochmal vielen Dank für eure Unterstützung!
Gruß Felix

gvzdus

Für die Summenbildung ist der poweropti ausreichend: Also z.B. Zählerstände am WR auslesen, Zählerstände am Stromzähler auslesen und dann berechnen, wie viel erzeugt wurde, wieviel Eigenverbrauch und wieviel Einspeisung.

Wenn es aber um das Steuern von Verbrauchern geht, oder eine "Feedback-Lampe", die signalisiert, wieviel Überschuss gerade da ist: dann wäre mir die Latenz im poweropti zu hoch.