Ankündigung

Einklappen
Keine Ankündigung bisher.

Welches Plugin für EMH (eHZ EW8E2A): SML/SMLx/DLMS/Easymeter?

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

  • Postmichel
    antwortet
    Hallo...
    ja...
    Code:
    2021-03-21 18:59:53 ERROR lib.plugin Plugin 'easymeter' class name 'easymeter' defined in metadata, but not found in plugin code
    2021-03-21 18:59:53 ERROR lib.plugin Plugin 'easymeter' initialization failed, plugin not loaded
    dabei steht in der plugin.yaml:
    Code:
    easymeter:
        plugin_name: easymeter
    Zuletzt geändert von bmx; 02.04.2021, 08:28.

    Einen Kommentar schreiben:


  • Morg
    antwortet
    Zitat von Postmichel Beitrag anzeigen
    Was beim EasyMeter komisch ist. Es taucht in der GUI in der Konfiguration auf, aber nicht in der Liste der Plugins.
    Möglicherweise gibt es einen Fehler beim Laden. Hast du mal ins Logfile geschaut?

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Wenn Du etwas in der GUI umkonfiguriert hast, mußt Du SHNG schon neu starten, sonst geht da nichts.

    Schau mal was sich ergibt, wenn Du
    Code:
    python3 dlms.py -s 9600 /dev/dlms0
    auf der Kommandozeile eingibst

    Einen Kommentar schreiben:


  • jaykay
    antwortet
    Hi,

    jetzt bin ich mal am Rechner und konnte nachsehen wie es bei mir läuft.
    Ich musste im Plugin die Parameter für die Serielle Schnittstelle anpassen:
    Code:
    parity=serial.PARITY_NONE --> PARITY_EVEN
    plugins/easymeter/__init__.py

    Code:
    [COLOR=#d4d4d4]ser = serial.Serial([/COLOR]
    [COLOR=#9cdcfe]port[/COLOR][COLOR=#d4d4d4]=curr_port,[/COLOR]
    [COLOR=#9cdcfe]timeout[/COLOR][COLOR=#d4d4d4]=[/COLOR][COLOR=#b5cea8]2[/COLOR][COLOR=#d4d4d4],[/COLOR]
    [COLOR=#9cdcfe]baudrate[/COLOR][COLOR=#d4d4d4]=[/COLOR][COLOR=#b5cea8]9600[/COLOR][COLOR=#d4d4d4],[/COLOR]
    [COLOR=#9cdcfe]bytesize[/COLOR][COLOR=#d4d4d4]=serial.SEVENBITS,[/COLOR]
    [COLOR=#9cdcfe]parity[/COLOR][COLOR=#d4d4d4]=serial.[MARKIEREN][B]PARITY_EVEN[/B][/MARKIEREN],[/COLOR]
    [COLOR=#9cdcfe]stopbits[/COLOR][COLOR=#d4d4d4]=serial.STOPBITS_ONE)[/COLOR]

    plugin.yaml
    Code:
    easymeter:
        class_name: easymeter
        class_path: plugins.easymeter

    Dann noch ein passendes Item anlegen:

    Code:
    Strom:
          Zaehler:
               name: Stromzählerstand
               type: num
               easymeter_code: 1-0:1.8.1*255
               device: /dev/ttyUSB0
    Gruß
    JayKay
    Zuletzt geändert von bmx; 22.03.2021, 08:37. Grund: Tippfehler korrigiert und [CODE] ... [/CODE] gesetzt statt [PHP]

    Einen Kommentar schreiben:


  • Postmichel
    antwortet
    Hallo,
    Danke für den Vorschlag:

    Code:
    This is DLMS Plugin running in standalone mode
    ==============================================
    Time to open serial port /dev/ttyUSB0: 1.33 ms
    Writing request message b'/?!\r\n' to serial port '/dev/ttyUSB0'
    Time to send first request to smartmeter: 895.98 µs
    Leider hängt er dann..

    Was beim EasyMeter komisch ist. Es taucht in der GUI in der Konfiguration auf, aber nicht in der Liste der Plugins.
    Zuletzt geändert von bmx; 02.04.2021, 08:28.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Im Normalfall sollte die Baudrate auf 300 voreingestellt sein. Das Plugin versucht dann mit 300 Baud eine Verbindung aufzubauen. In dieser Geschwindigkeit wird dann die erste Zeile gelesen und nach Spezifikation dann umgeschaltet.
    Geh' doch mal auf eine Kommandozeile, wechsel in /usr/local/smarthome/plugins/dlms und starte dann

    Code:
    python3 dlms.py /dev/dlms0
    bzw. statt /dev/dlms0 deine serielle Schnittstelle

    Einen Kommentar schreiben:


  • Postmichel
    antwortet
    Zuletzt hatte ich einfach mal die Vorgabe aus der Plugin.yaml auskommentiert.
    Jetzt habe ich es über die gui mal gemacht. Die plugin.yaml sagt (enabled musste ich aber erst auf true setzen?):

    Code:
    dlms:[INDENT]plugin_name: dlms
    plugin_enabled: true
    serialport: /dev/ttyUSB0
    baudrate: '9600'
    timeout: '10'
    use_checksum: false[/INDENT]
    Fehlermeldung:
    Code:
    2021-03-21 17:22:50 ERROR plugins.dlms no results from smartmeter query received
    Item:
    Code:
    Strom:[INDENT]Haus:[/INDENT][INDENT=2]Energie:[/INDENT][INDENT=3]type: num
    sqlite: true
    dlms_obis_code:
        - '1-0:1.8.1*255'
        - 0
        - 'Value'
        - 'num'[/INDENT]
    Zuletzt geändert von bmx; 22.03.2021, 11:53.

    Einen Kommentar schreiben:


  • jaykay
    antwortet
    Ups, sorry. War beim falschen Plugin ist bei mir schon eine Weile her das ich das eingerichtet habe. Ich nutze das easymeter Plugin mit na musste dort die Schnittstellen Parameter ändern.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Hast Du das Plugin über die Admin Gui eingebunden und einfach mal ohne alles ausprobiert? Gibt es eine Rückmeldung zur letzten Auslesung über das Webinterface?

    Einen Kommentar schreiben:


  • Postmichel
    antwortet
    Hallo,
    ja, ich habe mittlerweile das DLMS Plugin gefunden. DANKE!
    Ich hänge noch an der richtigen Konfiguration. Insbesondere hängt es an den Parametern für die serielle Schnittstelle.
    Wenn jemand eine Beispielkonfiguration hat wäre ich dankbar.
    Gruß

    Michael

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Zitat von Postmichel Beitrag anzeigen
    ich habe einen alten Zähler von EMH (eHZ EW8E2A).
    Folgendes kann ich mit Minicom an der USB Schnittstelle mit den Parametern 9600 7E1 lesen:
    Code:
    /EMH5----eHZ-E0018E
    1-0:0.0.0*255(100005391999)
    1-0:1.8.1*255(051461.1908)
    1-0:96.5.5*255(80)
    0-0:96.1.255*255(0000708333)
    !
    Falsches Plugin. Du benötigst das DLMS Plugin.

    Einen Kommentar schreiben:


  • jaykay
    antwortet
    Ja, im Plugin sind andere Wert Hardgecoded:
    plugins/sml/__init__.py

    ...
    self.serialport, 9600, serial.EIGHTBITS, serial.PARITY_NONE, serial.STOPBITS_ONE, timeout=0)
    ...

    Das musst Du anpassen...

    Einen Kommentar schreiben:


  • Welches Plugin für EMH (eHZ EW8E2A): SML/SMLx/DLMS/Easymeter?

    Hallo,

    ich habe einen alten Zähler von EMH (eHZ EW8E2A).
    Folgendes kann ich mit Minicom an der USB Schnittstelle mit den Parametern 9600 7E1 lesen:
    Code:
    /EMH5----eHZ-E0018E
    1-0:0.0.0*255(100005391999)
    1-0:1.8.1*255(051461.1908)
    1-0:96.5.5*255(80)
    0-0:96.1.255*255(0000708333)
    !
    Meine items sind:
    Code:
    Strom:[INDENT]Haus:[/INDENT][INDENT=2]Total:
        type: num
        sml_obis: 1-0:1.8.1*255
        sqlite: yes[/INDENT][INDENT=2]Nummer:
        type: num
        sml_obis: 1-0:0.0.0*255[/INDENT][INDENT=2]Kunde:
        type: num
        sml_obis: 0-0:96.1.255*255[/INDENT]
    Mehr geht halt nicht.
    Leider werden die Werte nicht gelesen.
    Ist das sml plugin ist zu komplex für diese einfache Aufgabe?
    Kann es an den Schnittstellenparametern liegen?
    Mit freundlichem Gruß

    Michael
    Zuletzt geändert von bmx; 22.03.2021, 13:42.
Lädt...
X