Siconia T210-D Smart Meter Stromzähler auslesen

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • NCom
    antwortet
    Ich verwende die Schnittstelle zum auslesen von meinem EVN

    Dazu muss eine Mail and smartmeter@netz-noe.at mit den Daten angefordert werden

    ----------------------
    Sehr geehrte Damen und Herren,

    ich benötige für meinen KAIFA MA309 (000000000) SmartMeter die Freischaltung der MBUS Kundenschnittstelle
    und den Schlüsselcode.


    Kundennummer: 000000000
    Vertragskonto: 000000000
    Zählernummer: 000000000

    Vielen Dank​
    ----------------------

    Dann die Daten in das WebInterface eintragen.
    Zuletzt geändert von NCom; 06.08.2023, 11:20.

    Einen Kommentar schreiben:


  • pessletz
    antwortet
    ok - der zähler ist in der liste drin
    ich werde mir das bestellen

    gibt es eine hilfe für das einrichten am Miniserver ?
    was ist noch zu beachten ?

    danke für aufklärung

    Einen Kommentar schreiben:


  • Loxtom577
    kommentierte 's Antwort


    Ob der Kaifa geht weiß ich leider nicht.

  • pessletz
    antwortet
    Zitat von Dodekaeder
    Für alle die nicht basteln wollen oder können: Ich habe vor zwei Wochen das Smartmeter-Modul von SHRDZM an einem T210-D erfolgreich installiert. Die Kommunikation mit dem Miniserver (Gen. 1) erfolgt über WLAN und einen virtuellen HTTP-Eingang. Leider unterstützt der Zähler der Netz NOE keine Spannungsversorgung über die Kundenschnittstelle, folglich ist ein externes Netzteil erforderlich.
    wo gibt es das zu kaufen ?
    geht das auch für den Kaifa MA309 ?
    danke für weitere infos

    Einen Kommentar schreiben:


  • rainmaker
    antwortet
    Damit ichs nicht vergesse und wer Mikes Homepage nicht findet, wo ich das auch zur Veröffentlichung bereitgestellt habe und DOCH wer basteln will:
    hier Schalt-Print-Bestückungsplan und Ansicht von meinem low-budget Wandler...

    Optokoppler tuts ziemlich jeder andere auch, ich hatte den zuerst in die Finger bekommen aus der "Optokoppler-Lade" - ist unkritisch.

    (Und wer sich nicht sicher ist, kann noch eine Kontroll-LED und eine Verpolungsschutzdiode einbauen, das haben wir zumindest bei der Prototypenfertigung in China so gemacht - Resultat (mit Western-Buchse und Platz für eine Schraubklemmbuchse zum Nachrüstern wer will) auf Mikes Homepage).
    Bastelfrei geht auch, es sind noch ein paar übrig und können bei Mike bezogen werden ;-)
    Angehängte Dateien
    Zuletzt geändert von rainmaker; 27.03.2023, 14:44.

    Einen Kommentar schreiben:


  • Dodekaeder
    antwortet
    Für alle die nicht basteln wollen oder können: Ich habe vor zwei Wochen das Smartmeter-Modul von SHRDZM an einem T210-D erfolgreich installiert. Die Kommunikation mit dem Miniserver (Gen. 1) erfolgt über WLAN und einen virtuellen HTTP-Eingang. Leider unterstützt der Zähler der Netz NOE keine Spannungsversorgung über die Kundenschnittstelle, folglich ist ein externes Netzteil erforderlich.
    Zuletzt geändert von Dodekaeder; 27.03.2023, 14:17.

    Einen Kommentar schreiben:


  • rainmaker
    antwortet
    Dazu müsste ich mich in MQTT erst mal einlesen :-)

    mein ganzer Zirkus ist langsam über viele Jahre gewachsen und hat den Vorteil, daß ich weiß was wo wie funktioniert.
    D.h. ich sammle mit diversen Methoden alle möglichen zu erfassenden Daten zusammen, die alle dann in einer ramdisk am Pi landen und aus dem Pool aktueller Daten nehmen sich dann die div. Programme - für jeden Zweck ein eigenens Codestück - das was sie brauchen.
    So steuere ich z.b. ein per USB ansprechbares Ladegerät zum Laden eines Solarakkus um Überschußstrom vorab selber einzulagern.
    Ich wüßte nicht wie ich MQTT dazu bringe mir die Ladeleistung meines Ladegerätes abhängig von der aktuellen Einspeiseleistung zu steuern.
    Und das rauszufinden... puh...

    Außerdem intersiert mich die Historie aktuell nicht wirklich, aber evtl. MQTT... mal sehn.
    Da ich einen Pi3 als Ersatz für einen Hotspot-Router (2 WLANs) vorbereitet habe, und der dann Zeit für anderes hat und ne SSD spendiert bekam und..... könnte es sein, daß....
    Zuletzt geändert von rainmaker; 28.02.2023, 14:00.

    Einen Kommentar schreiben:


  • Noschvie
    antwortet
    Gratulation!
    Warum sendest du die Werte nicht über MQTT weiter ?

    Einen Kommentar schreiben:


  • rainmaker
    antwortet
    So, alles auf Anfang: Reserve Pi-0 - neues Image, alle Module installiert, diesmal ohne Probleme. Seriellen Adapter geprüft - ~30V = high, ~24V = low. Uart aktiviert - per Minicom geprüft, Daten rauschen rein alle 5s....

    Script: key rein, port angepasst, gestartet:

    sudo python3 EVN.py
    Illegal instruction


    Das kuriose: wenn ich das Modul: from cryptography.hazmat.primitives.ciphers.aead import AESGCM rauskommentiere, funktioniert das Ganze plötzlich!

    Wenn ich es jetzt noch hinbekomme mit meinen nicht vorhandenen Programmierkenntnissen, daß ein Datensatz immer in die gleiche Datei (überschrieben) wird, aus der ich die weiteren Aktionen dann ableite, bin ich "glücklich".

    Was ich aber beitragen kann zum Thema "MBus-Interface": Mein primitiv-Interface funktioniert:

    Falls es wen interessiert zeichne ich dazu gerne einen "Schaltplan":

    Stückliste - MBus Seite
    Z-Diode 24V
    WIderstand 1kOhm
    Optokoppler TIL11 (war der erste aus der Lade :-)

    Stückliste - RPi Seite
    Widerstand 4k7

    also ganze 4 Bauteile:
    angeschlossen an +3,3V (GPIO-1), Masse (GPIO-6, Rx (GPIO-10)

    so sieht der Prototyp aus (seid gnädig, der Endaufbau wird "schöner" - und ohne Testpfosten)
    Klicke auf die Grafik für eine vergrößerte Ansicht  Name: grafik.png Ansichten: 0 Größe: 393,8 KB ID: 380915

    Das Ergebnis das da rauskommt damit ist in etwa dann:

    Wirkenergie+: 848985Wh
    Wirkenergie-: 2471810Wh
    Momentanleistung+: 113W
    Momentanleistung-: 1491W
    Spannung L1: 237.5V
    Spannung L2: 236.60000000000002V
    Spannung L3: 237.60000000000002V
    Strom L1: 0.39A
    Strom L2: 0.2A
    Strom L3: 6.36A
    Leistungsfaktor: -0.993
    Momentanleistung: -1378W



    KLAPPT!




    Zuletzt geändert von rainmaker; 28.02.2023, 13:19.

    Einen Kommentar schreiben:


  • rainmaker
    antwortet
    ein "ls" gibt mir 285 bytes als Filegröße, bzw 568 bytes für 2 Intervalle - wobei ich nciht sagen kann, wie gut mein "serial_read" script taugt.

    sieht so aus - ver-Hex't... (mit eigenem Programmfragment ausgelesen)
    00000000: 0a0a 6801 0168 53c3 bf00 0167 c39b 0853 ..h..hS....g...S
    00000010: 4147 5905 c3a8 3931 c281 c3b8 2000 3437 AGY...91.... .47
    00000020: 3979 62c2 9ec3 822a 1864 c28d 30c2 bb7e 9yb....*.d..0..~
    00000030: c2a6 1337 c2a4 c2ad 0528 524c 2c17 7fc2 ...7.....(RL,...
    00000040: 80c3 9e0f 0078 c3bb c3bb 1c2b c397 c2a9 .....x.....+....
    00000050: c2ba c3ad c392 08c2 85c3 977c 7c01 65c2 ...........||.e.
    00000060: 8078 6832 4009 c2ab 2ac3 b4c2 a4c3 952f .xh2@...*....../
    00000070: 0701 31c3 8f3d c2bd 0cc3 92c2 bdc2 9cc3 ..1..=..........
    00000080: 9fc3 8bc2 ad79 c382 c2a6 c296 c3b7 c2b2 .....y..........
    00000090: 441e 1cc3 b9c3 8b4f 03c3 b5c2 84c3 8872 D......O.......r
    000000a0: c38d 0973 c385 c38e 2625 2d2b 21c2 9861 ...s....&%-+!..a
    000000b0: 18c3 adc2 99c2 8760 c290 5040 c2ae 4ec2 .......`..P@..N.
    000000c0: b06e 28c2 936a 7326 6bc2 8042 0cc3 bc45 .n(..js&k..B...E
    000000d0: c294 c29d c294 c3a5 c38f 44c3 8cc2 9b79 ..........D....y
    000000e0: c39f 74c2 973e c3a3 c293 c388 237d 1158 ..t..>......#}.X
    000000f0: c2bc c397 0070 c384 c39c 3f18 c397 c293 .....p....?.....
    00000100: c2b7 c381 c3af c3bf c3a1 c29f c3b6 3267 ..............2g
    00000110: 61c3 a872 546a 0ec3 83c2 9936 5a47 08c3 a..rTj.....6ZG..
    00000120: a7c2 ab1f 1031 c29e c396 c2b4 c294 c294 .....1..........
    00000130: 62c2 965c 47c3 bac3 8a0d c3b3 c29c 7d2a b..\G.........}*
    00000140: c398 c399 5113 c39d c385 54c2 97c3 90c2 ....Q.....T.....
    00000150: 947d c28d c383 15c2 ac54 4cc2 a75a 5cc2 .}.......TL..Z\.
    00000160: 917e 43c3 9555 c2b3 c2b4 51c2 90c3 a4c2 .~C..U....Q.....
    00000170: 8ac2 a57d 652a c398 c385 3cc2 a4c3 a403 ...}e*....<.....
    00000180: 69c2 8616 680d 0d68 53c3 bf11 0167 c2ad i...h..hS....g..
    00000190: 3ec3 ab3d c390 c2b4 c3bc c39e 3c16 0a >..=........<..



    das 0a0a am Anfang find ich irritierend, das "68 01 01 68" hat zumindest Ähnlichkeit mit einem "MBus start", wird aber als
    if (daten == '' or daten[0:8] != "68010168"):
    print ("Invalid Start Bytes... waiting")


    von Mike als "invalid" bewertet - und ein "16" gegen Ende als MBus stop finde ich auch nicht wirklich.


    Ob das interface wirklich ok ist... tja
    ich hab das aus dem vermtulich bekannten Projekt adaptiert, also, was rot umrandet ist .... wobei der Transistor Q1 durch eine Z_Diode mit 24V ersetzt wurde. D.h. zusammen mit der Prüf LED D1 etc. ist der Optokoppler jetzt bei >30V aktiv - also high und bei <24V ist es auf dunkel "0"... - der Optokoppler invertiert das dann theoretisch (heißt, LED leuchtet, Transistor schaltet durch, womit "Rx" gegen Masse geht, also dann "0" ist - auf dem Schaltbild zumindest. Ich habe den Transistor im Optokoppler aber gegen den Widerstand getauscht - somit kommt jetzt ein "high" bei ~30V und ein low bei ~ 24V... (nochmals am Labortisch geprüft)


    ​​​ Klicke auf die Grafik für eine vergrößerte Ansicht  Name: grafik.png Ansichten: 0 Größe: 119,5 KB ID: 380833


    Nur: es scheitert ja schon an den Vorraussetzungen irgendwie:
    Wenn ich Mike Liste von https://www.michaelreitbauer.at/sage...art-meter-evn/ durchgehe

    sudo apt install python3 idle3 # installiert Python3
    sudo pip3 install gurux-dlms # library für die Übersetzung in eine XML
    sudo pip3 install beautifulsoup4 # library beautifulsoup4
    sudo pip3 install paho-mqtt # library für die MQTT Verbindung
    sudo pip3 install lxml # library für XML Parser
    sudo apt-get install libxslt-dev # library für XML Parser
    sudo apt install python3-pycryptodome # library für die Entschlüsselung
    sudo pip3 install pyserial # library für die Seriele Schnittstelle
    sudo pip3 install cryptography # library für die Entschlüsselung​

    scheiter ich 2x:

    sudo pip3 install lxml
    Collecting lxml
    Using cached https://files.pythonhosted.org/packa...1d3d8451768589 996b65dec1/lxml-4.9.2.tar.gz
    Complete output from command python setup.py egg_info:
    Building lxml version 4.9.2.
    Building without Cython.
    Error: Please make sure the libxml2 and libxslt development packages are installed.
    ----------------------------------------
    Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-xbng_m9t/lxml/


    ​(libxml2 and libxslt​ liefern ähnliche Fehlermeldungen beim Versuch sie zu intallieren

    root@HPi0:/home/pi/MBus# sudo pip3 install libxml2
    Collecting libxml2
    Could not find a version that satisfies the requirement libxml2 (from versions: )
    No matching distribution found for libxml2
    root@HPi0:/home/pi/MBus# sudo pip3 install libxslt
    Collecting libxslt
    Could not find a version that satisfies the requirement libxslt (from versions: )
    No matching distribution found for libxslt





    ​$ sudo apt install python3-pycryptodome
    Paketlisten werden gelesen... Fertig
    Abhängigkeitsbaum wird aufgebaut.
    Statusinformationen werden eingelesen.... Fertig
    E: Paket python3-pycryptodome kann nicht gefunden werden.


    ​wobei der Programmaufruf mit:
    File "EVN.py", line 3, in <module>
    from cryptography.hazmat.primitives.ciphers.aead import AESGCM
    ImportError: No module named 'cryptography.hazmat.primitives.ciphers.aead'


    ​scheitert, wobei das "cryptography" Modul vorhanden ist - keine Fehlermeldungen beim Installieren...)

    d.h. ich scheitere in erster Linie an Programmabhöngigkeiten fürchte ich....
    Angehängte Dateien
    Zuletzt geändert von rainmaker; 28.02.2023, 10:21. Grund: Prüfung des Interfaces

    Einen Kommentar schreiben:


  • Noschvie
    kommentierte 's Antwort
    Hatte mal eine Python Version am LoxBerry laufen, basierend auf der Version von Mike. Den werde ich ausgraben und nachsehen ob ich das noch finde.

    Dein M-Bus Modul ist ok ? Wieviele Bytes werden in welchem Intervall empfangen ? Unabhängig von der Entschlüsselung

  • rainmaker
    antwortet
    Hi!
    nachdem ich seit Jahren an dem Thema hier verzweifle und mich mit Krücken behelfe um meinen EVM-Smartmeter in den Griff zu kriegen (Webcam für Stromrichtung, Impuls-LED stoppen für "Watt" - war ich super häppy hier auf eine "einfache" Lösung zu stoßen, nachdem meine Versuche gescheitert sind bisher.

    Mein "MBus" Adapter ist Eigenbau - auf Basis bekannter Projekte, ich habe es reduziert auf einen im wesentlichen Optokoppler auf die Rx/Tx UART Pins meines bisherigen RPi-Zero, bei dem mich nur stört, daß permanent eine "1" (~30V) anliegt in den Pausen - nur soweit kom ich gar nicht, um zu erkennen, ob das ein Problem ergibt.

    Mein Programmierkenntnisse sind aber eher unterirdisch und außer "binärem Datenmüll" hab ich nichts lesen können, war das schon schwer genug :-) - immerhin es kommt was :-)

    Also hab ich mir das Script von greenMike geladen, Key eingetragen (den hab ich schon vorab im März 21 bekommen), angeschaut, nicht viel verstanden, MQTT brauch ich nicht, wäre froh, einen dekodierten Text zu kriegen, aber:

    alles was ich bekomme ist (test.py ist eine Kopie des Original Scriptes zum darin rumdoktorn notfalls):

    pi@HPi0: $ python3 test.py
    Traceback (most recent call last):
    File "test.py", line 3, in <module>
    from cryptography.hazmat.primitives.ciphers.aead import AESGCM
    ImportError: No module named 'cryptography.hazmat.primitives.ciphers.aead'


    anscheinend braucht es Zusatzmodule, also:

    python3 -m pip install cryptography.hazmat.primitives.ciphers.aead
    Collecting cryptography.hazmat.primitives.ciphers.aead
    Could not find a version that satisfies the requirement cryptography.hazmat.pr imitives.ciphers.aead (from versions: )
    No matching distribution found for cryptography.hazmat.primitives.ciphers.aead


    ich bin anscheinend zu blöd, um nur die Basics für das Script zu erschaffen....

    Weiß wer Rat?


    Einen Kommentar schreiben:


  • Noschvie
    kommentierte 's Antwort
    ESP32 mit Tasmota V12.4.0 und diesem M-Bus Adapter (https://www.mikroe.com/m-bus-slave-click), Tasmota "self compiled" mit Script und SML Support

    Have you looked for this feature in other issues and in the docs? yes Is your feature request related to a problem? Please describe. not related to a problem Describe the solution you'd like I woul...


    Das Script für EVN SmartMeter kann ich gerne zur Verfügung stellen.

  • bausi2k
    kommentierte 's Antwort
    Kannst du mehr details dazu geben?

  • Noschvie
    kommentierte 's Antwort
    Habe es nun geschafft, die beiden SmartMeter der EVN mit der aktuellen Tasmota Version auszulesen. Über MQTT geht's an den MS und in die GUI. Der Langzeit-Test läuft nun...
Lädt...