Hager EHZ auslesen

  • Billig, günstig, einfach: Auslesen Hager EHZ


    Hallo,


    ich habe eine PV Anlage mit Sunpower Wechselrichter (baugleich mit SMA) und 2 Hager EHZ. Ein Wirkstromzähler für den Strom vom Dach (Drehstrom Lieferzähler Hager EHZ361L5) und ein Zweirichtungszähler (Hager EHZ 351Z5) für Verkauf und Kauf von Strom.


    Ich hatte Interesse am Auslesen der Daten. Ich wollte die Zählerstände und die aktuelle Leistung Auslesen. Und das supergünstig.


    Ich habe also zunächst im Internet nach Material gesucht. Für mich alles viel zu teuer. Also habe ich mal selbst nachgedacht. Auf der Hager Homepage kann man die Datenblätter der Zähler herunterladen. Dort steht geschrieben, dass, wie jetzt bei allen Zählern nach neuer Norm, eine frei zugängliche Infrarotschnittstelle vorhanden ist. Der Zähler gibt also periodisch seine Daten über eine Infrarotsendediode aus. Je nach Protokoll (Klartext oder SML) mit 96007E1 oder 9600N81. Ich habe dann weiter recherchiert und einige Schaltungen mit Photodiode und Transimpedanzverstärkern gefunden. Auch die waren mir noch zu kompliziert.


    Einfacher wäre ein Fototransistor. Die sind jedoch nicht so schnell. Ein kurze Rechnung zeigt, das ein Bit bei 9600N81 ungefähr 104,2µs lang ist. Ich habe dann in meiner Schublade einen TEKT5400S (0,4€ bei Pollin) gefunden. Dieser hat eine Rise/Falltime von ungefähr 6µs. Im Vergleich zu 104µs Bitperiodendauer ist das schnell genug. Um sicher zu gehen, wollte ich relativ viel Strom fließen lassen, damit möglichst kurze Rise und Fall Times auftreten.


    Ich nahm also irgendein DC Netzteil mit 9V und habe den Pluspol mit dem Kollektor des Phototransistors verbunden. Denn Kollektor an einen 390Ohm Widerstand und diesen auf Masse. Das ganze sollte an eine Laptop RS232 angeschlossen werden. Dazu benötige ich eigentlich negative und positive Pegel. Die Laptopschnittstellen sind jedoch einigermaßen tolerant und erkennen auch 0V als logisch 1. Größere Spannung werden also logisch 0 gesehen. Damit ich sicher auf 0V unterkomme habe ich auch die Emitterschaltung gewählt. Wenn der Fototransistor nicht durchschaltet liegt dann am Emitter 0V an. Wenn er durchschaltet, dann liegen am Emitter (über dem Widerstand) UB-UCE Volt an. Die Laptopschnittstelle verträgt ja RS232 Spannungspegel, also wieder kein Problem.


    Ich dann den Fototransistor mit einem Stück Isolierband auf die Sendediode des EHZ geklebt und mir mit dem Oszilloskop das Ergebnis angesehen. Die Pegel waren super, es gab fast einen Rechteck, also völlig zufriedenstellend. Ich habe dann die eine 9 poligen Sub D Buchse genommen und 2 Kabel dran gelötet. GND an Masse meiner Schaltung und RX an den Emitter. Mit einem Freeware Terminalprogramm habe ich dann die Signale aufgezeichnet.


    Die Hardware hat weniger als 1€ gekostet und ist ultraeinfach und funktioniert hervorragend. Die Teile hatte ich zuhause rumliegen und in 5 Minuten zusammengelötet.


    Nun ging es an die Auswertung der Daten. Leider sendet der Hager keinen Klartext. Es wird das SML Protokoll verwendet. Alle Infos hierüber findet man im Internet (DLMS, SML, OBIS).


    Ich habe mir dann eine kleine VBA Applikation geschrieben. Mit 50 Zeilen Code kann man einen schönen Datenlogger basteln. Anschließend habe ich mir die Mühe gemacht und die Daten mit der Hand am Arm geparsed. Danach hatte ich ein Verständnis für die SML und habe noch einen primitiven Parser in VB geschrieben. Und oh Wunder: Ich sehe die Zählerstände und die aktuelle Leistung in einem Fenster im Laptop.


    Das ist schon mal ein guter Startpunkt. Die wesentlichen Probleme sind für mich gelöst. Jetzt denke ich noch über einen µC basierten Logger nach.


    Wichtig ist. Man muss wirklich nicht viel Geld ausgeben um an die Daten zu kommen.


    Über Kommentare würde ich mich freuen. Was habt Ihr für Erfahrungen?

  • Respekt vor dieser Leistung. Wir haben viele HAGER EHZ Zähler verbaut und wenn dein Projekt vollständig abgeschlossen ist, würde ich mich, wie vielleicht viele andere hier auch, über eine Selbstbauanleitung mit Materialauflistung sehr freuen.

    Gruß Jörg Wedler Elektroanlagen
    Ust.IdNr.: DE 157 507 696
    Elektromeister und freier Sachverständiger für Photovoltaikanlagen
    3,12 kWp in 2009, 51,84 kWp und 3,60 kWp in 2010, 1,375 kWp in 2016

    3,30 kWp in 2019

    Senec Lithium Speicher 2,5 kWh in 2017, 5,0 kWh in 2018, 7,5 kWh in 2019

  • hallo armin 63,


    ich habe ebenfalls einen digitalen einspeisezähler und zweirichtungszähler und habe schon überall gesucht diese beiden auszulesen und auszuwerten (auch hier im board), aber keine lösung gefunden. wie weit bis du dann mit deinem projekt? die hardware nachzubauen wäre für mich das leichteste (radio-und fernsehtechnikermeister) aber mit vb kenne ich mir nur mit hängen und würgen aus. es würde mich mal interessieren in wie weit dein system einsetzbar ist und was es kann.
    gruß aus köln
    norbert

  • @ Armin63
    Ich wäre an dem Code interessiert um das SML Protokoll zu dekodieren. Ich kann zwar die Daten per Hyperterminal auslesen, jedoch habe ich keinen Parser um diese irgendwie in ein lesbares Format zu bekommen. Kannst Du Deinen Parser mit mir/uns teilen???
    Danke!!!

  • Hallo,


    such mal nach meinen anderen Beiträgen. Dort habe ich für meinen Hager EHZ ein VB Programm geschrieben. Link ist beigefügt. Achtung. Dieser Code funktioniert derzeit nur bei meinem Hager EHZ.


    In einem anderen Beitrag habe ich für ein Forumsmitglied SML decodiert und festgestellt, dass dort 5 Byte unsigned integer verwendet wurde. Das wird von meinem Programm nicht berücksichtigt. Auch nicht SML_TIME und längere Octets als 14.


    Ich erhalte viele Anfragen nach SML Parsern. Es gibt aber meines Wissens nach nix fertiges in der public domain. Daher habe ich mir was selbst geschrieben. Man muß dazu aber vorher die SML Spezifikation durchlesen und verstehen. Fragen dazu kann ich gerne beantworten.


    Gruß


    Armin

  • @ Armin
    Kannst Du kurz erklären wie das VB Programm von Dir anzuwenden ist? Ich hab's ausprobiert aber leider weis ich nicht genau wie ich es bedienen soll.
    Danke!

  • Hallo,


    dies ist nur eine Quick Hack, der auch nur bei einem Hager funktionieren wird. Das Programm liest die Daten von der seriellen Schnittstelle mit der weiter oben abgebildeten Schaltung und zeigt die Rohdaten an. Dann werden diese geparsed und die Zählerstände und Leistung angezeigt.


    Was genau funktioniert denn nicht?


    Gruß


    Armin

  • Hallo armin63,


    ist das Netzteil nötig, oder könnte man eventuell DTR als Spannungsquelle nutzen?


    Viele Grüße,
    Sebastian


    PS: Meine Versuche mit dem IR-Tower von Lego Mindstorms sind bisher leider gescheitert.

  • @ wangnick
    Alternativ kannst Du die PC-Stromversorgung nehmen (Molex Stecker). Ich betreibe die Schaltung mit 5V bislang ohne Probleme.