Wenn du die daten mitm datenbank plugin abspeicherst, kannst das später auswerten
Ankündigung
Einklappen
Keine Ankündigung bisher.
Support Thread für DLMS Plugin
Einklappen
X
-
Zitat von bmx Beitrag anzeigenIch fürchte das das Easymeter hier etwas vom Pfad abweicht und stumpf Protokoll Mode D nutzt mit 9600 Baud Da muß ich wohl noch was ändern am Plugin.
Du kannst aber das alte Plugin weiternutzen und mußt nicht umstellen.
Das easymeter Plugin funktioniert nicht mehr und das DLMS Plugin hört hier auf zu lesen:
Code:/usr/local/smarthome/plugins/dlms# python3 dlms.py -s 9600 /dev/ttyUSB0 This is DLMS Plugin running in standalone mode ============================================== Time to open serial port /dev/ttyUSB0: 3.56 ms Writing request message b'/?!\r\n' to serial port '/dev/ttyUSB0' Time to send first request to smartmeter: 356.20 µs Time to receive an answer: 6.64 ms Request Message was echoed, need to read the identification message Time to get first identification message from smartmeter: 1.69 s Identification Message is b'/ESY5Q3DA1004 V3.04\r\n' The manufacturer for ESY is EasyMeter GmbH (out of 1300 given manufacturers) Baudrate id is '5' thus Protocol Mode is C and max Baudrate available is 9600 Bd Using protocol mode C, send acknowledge b'\x06050\r\n' and tell smartmeter to switch to 9600 Baud Reading OBIS data from smartmeter
Danke und Gruß
Kommentar
-
bmx Ich habe es gerade noch mal mit dem aktuellen develop Stand des plugins getestet, damit sieht es wie folgt aus:
Code:/usr/local/smarthome/plugins/dlms# python3 dlms.py -s 9600 /dev/ttyUSB0 This is DLMS Plugin running in standalone mode ============================================== Config='{'serialport': '/dev/ttyUSB0', 'device': '', 'querycode': '?', 'speed': 9600, 'timeout': 3.0, 'onlylisten': False, 'use_checksum': True}' Time to open serial port /dev/ttyUSB0: 3.28 ms Writing request message b'/?!\r\n' to serial port '/dev/ttyUSB0' Time to send first request to smartmeter: 371.93 µs start to read data from serial device finished reading data from serial device after 2 bytes Time to receive an answer: 8.75 ms Request Message was not equal to response, treating as identification message Time to get first identification message from smartmeter: 132.08 µs Identification Message is b'j\n' malformed identification message: 'b'j\n'', abort query No results from query, maybe a problem with the serial port '/dev/ttyUSB0' given ==============================================
Henning
Kommentar
-
Das Gerät arbeitet im "rückwirkungsfreien Betrieb, da nur sendend"
Es nützt also nix da was hinzusenden. Probiere mal zusätzlich den Parameter '-l' dazu zu nehmen. Dadurch hört das Plugin nur was das Gerät so von sich gibt.
Siehe Datenblatt zum Q3DZuletzt geändert von bmx; 10.12.2021, 21:08. Grund: Datenblatt ergänzt, Zitat zum Rückwirkungsfreien Betrieb
Kommentar
-
bmx Anbei das Ergebnis vom Test mit dem zusätzlichen Parameter "-l":
Code:/usr/local/smarthome/plugins/dlms# python3 dlms.py -l -s 9600 /dev/ttyUSB0 This is DLMS Plugin running in standalone mode ============================================== Config='{'serialport': '/dev/ttyUSB0', 'device': '', 'querycode': '?', 'speed': 9600, 'timeout': 3.0, 'onlylisten': True, 'use_checksum': True}' Time to open serial port /dev/ttyUSB0: 68.43 ms start to read data from serial device finished reading data from serial device after 21 bytes Identification Message is b'/ESY5Q3DA1004 V3.04\r\n' The manufacturer for ESY is unknown (out of 0 given manufacturers) Baudrate id is '5' thus Protocol Mode is C and max Baudrate available is 9600 Bd Can not change Baudrate in listening only mode Reading OBIS data from smartmeter start to read data from serial device finished reading data from serial device after 233 bytes Time for reading OBIS data: 1.37 s Whole communication with smartmeter took 1.44 s Acknowledge echoed from smartmeter trying now to calculate a checksum STX not found in response='0xd 0xa 0x31 0x2d 0x30 0x3a 0x30 0x2e 0x30 0x2e...' Traceback (most recent call last): File "dlms.py", line 480, in <module> result = query(config) File "dlms.py", line 397, in query logger.warning("ETX not found in response='...{}'".format(' '.join(hex(i) for i in response[-11]))) TypeError: 'int' object is not iterable
Gruß,
Henning
Kommentar
-
Sorry für OT.
Lässt sich mit diesem Plugin unter Verwendung eines
https://mysmartshop.de/products/usb-...hreib-lesekopf
ein solcher Stromzähler
https://shop.voltaris.de/530-thickbo...lh00d5a5q2.jpg
auslesen?
Kommentar
-
Im Datenblatt eHZ Generation K findet sich:
Der Zähler verfügt über 2 optische Datenschnittstellen, die in Anlehnung
an die IEC 62056-21 ausgeführt sind.
Auf der Vorderseite befindet sich eine unidirektionale Schnittstelle
(INFO-Schnittstelle), die dem Endkunden zugänglich ist und per Konfi-
guration freigegeben wird.
Auf der Rückseite befindet sich eine bidirektionale D0-Schnittstelle, die
durch eine Betriebsplombe schützbar ist und dem MSB als Kommunika-
tionsschnittstelle dient.
Auf beiden Schnittstellen wird ein identischer Datensatz ausgegeben,
der durch den MSB konfigurierbar ist.
Als Kommunikationsprotokoll wird SML verwendet. Die Baudrate
beträgt 9600 Baud fest....
Wenn's bei Dir dann funktioniert dann bitte ich um ein Posting in diesem Thread hier
Kommentar
-
Danke
Zitat von bmx Beitrag anzeigeneHZ Generation K
Der oder ein ähnlicher Lesekopf ist aber der richtige?
Kommentar
-
Hallo,
ich kämpfe auch mit dem Plugin.
Mein Zähler sendet zyklisch daten welche ich auch mitCode:python3 dlms.py /dev/ttyUSB0 -c -l -s 9600
Code:$ python3 dlms.py /dev/ttyUSB0 -c -l -s 9600 This is DLMS Plugin running in standalone mode ============================================== Config='{'serialport': '/dev/ttyUSB0', 'device': '', 'querycode': '?', 'speed': 9600, 'baudrate_fix': True, 'timeout': 3.0, 'onlylisten': True, 'use_checksum': False}' Time to open serial port /dev/ttyUSB0: 6.45 ms start to read data from serial device finished reading data from serial device after 674 bytes The manufacturer for LOG is unknown (out of 0 given manufacturers) Time for reading OBIS data: 2.00 s Whole communication with smartmeter took 2.01 s Acknowledge echoed from smartmeter checksum calculation skipped parsing OBIS codes took 865.70 µs the whole query took 2.01 s, suggested cycle thus is at least 12.01 s These are the results of the query ============================================== LOG5LK13BE803039 1-0:96.1.0*255(001LOG0065267445) 1-0:1.8.0*255(009337.7198*kWh) 1-0:2.8.0*255(000000.0000*kWh) 1-0:16.7.0*255(000668*W) 1-0:32.7.0*255(234.3*V) 1-0:52.7.0*255(235.0*V) 1-0:72.7.0*255(234.8*V) 1-0:31.7.0*255(001.96*A) 1-0:51.7.0*255(000.68*A) 1-0:71.7.0*255(000.99*A) 1-0:81.7.1*255(119*deg) 1-0:81.7.2*255(238*deg) 1-0:81.7.4*255(035*deg) 1-0:81.7.15*255(040*deg) 1-0:81.7.26*255(042*deg) 1-0:14.7.0*255(50.0*Hz) 1-0:1.8.0*96(00018.2*kWh) 1-0:1.8.0*97(00146.5*kWh) 1-0:1.8.0*98(00527.2*kWh) 1-0:1.8.0*99(05024.0*kWh) 1-0:1.8.0*100(09337.7*kWh) 1-0:0.2.0*255(ver.03,432F,20170504) 1-0:96.90.2*255(0F66) 1-0:97.97.0*255(00000000 ==============================================
Code:dlms: plugin_name: dlms serialport: /dev/ttyUSB0 baudrate: '9600' instance: '1' only_listen: true baudrate_fix: true use_checksum: false
hat jemand eine Idee wo der Fehler liegen soll?
Grüße und vielen Dank vorabZuletzt geändert von bmx; 19.01.2022, 10:53.
Kommentar
-
Hallo,
Danke für die schnelle Rückmeldung. Den/das Kauderwelsch finde ich auf der DLMS seite der Instanz in SmarthomeNG.
Parallel greift nichts auf die Schnittstelle zu.
Meine Erwartungshaltung war dahingehend das das was in der Konsole ausgegeben wird ein zu eins dem Entspricht was dann im Webfrontend auftaucht. kannst du das bestätigen oder liege ich da schon falsch?Zuletzt geändert von Tiffi; 18.01.2022, 17:28.
Kommentar
Kommentar