Benutzer-Werkzeuge

Webseiten-Werkzeuge


hardware:channels:meters:power:edl-ehz:elster_as1440

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
hardware:channels:meters:power:edl-ehz:elster_as1440 [2016/05/04 14:28] – Ergänzung AS3000 ronny_whardware:channels:meters:power:edl-ehz:elster_as1440 [2022/04/21 20:21] (aktuell) – daemon, logfile und port jau
Zeile 1: Zeile 1:
 ====== Elster AS1440 ====== ====== Elster AS1440 ======
-Der Elster AS1440 kann nach DIN EN 62056-21 über die IR-Schnittstelle ausgelesen werden. +Der Elster AS1440 kann nach DIN EN 62056-21 über die IR-Schnittstelle ausgelesen werden. Energiezähler werden vom Hersteller auf Wunsch der Messstellenbetreiber kundenspezifisch konfiguriert, daher kann es zu unterschiedlichen Ausgaben kommen
-Mit einem Elster A1350 ist ein Auslesen, wie hier beschriebenauch möglich+===== Hardware ===== 
-Wahrscheinlich geht es auch mit anderen Zählern der Firma Elster, bitte bei erfolgreichen Versuchen das Wiki entsprechend ergänzen.+Über die Frontschnittstelle kann mittels [[hardware:controllers:ir-schreib-lesekopf|IR-Schreib-Lesekopf]] bei [[hardware:controllers:ir-schreib-lesekopf#Grundlagen|300bd7E1]] kommuniziert werden.\\ 
 +Der Zähler muss erst mittels Initiaslisierungssequenz "/?!" angesprochen werden bevor er sendet.  
 +<note important>Bei einigen AS1440hat der VNB ein Passwort gesetzt. Häufig ist das die Identifikationsnummer. Dann sieht die Anforderungssequenz so aus: 
 +''/?<Identifikationsnummer oder Passwort>!<CR/LF>''.\\ 
 +Die Identifikationsnummer kann am Gerätedisplay im Menü unter 0.0.0 angezeigt werden. Führende Nullen können ignoriert werden. Ein Passwort gibt der VNB in der Regel auf Anfrage heraus</note>
  
-===== Hardware ===== 
-Man benötigt den [[hardware:controllers:ir-schreib-lesekopf|IR-Schreib-Lesekopf]], da der Zähler erst angesprochen werden muss, bevor er sendet.  
-Je nachdem woran man den IR-Kopf anschließen will, braucht man die [[hardware:controllers:ir-schreib-lesekopf-usb-ausgang|USB-Version]], [[hardware:controllers:ir-schreib-lesekopf-rs232-ausgang|RS232-Version]] oder die [[hardware:controllers:ir-schreib-lesekopf-ttl-ausgang|TTL-Version]]. 
-===== Test ===== 
-Zum Testen habe ich [[http://www.der-hammer.info/terminal/|hterm]] verwendet.\\ 
-Einzustellen sind:\\ 
-Port: bei Windows:verwendeter COM-Anschluss des USB-Adapters, bei Linux z.B. /dev/ttyUSB0\\ 
-Baud: 300\\ 
-Data: 7\\ 
-Stop: 1\\ 
-Parity: Even\\ 
-Bei "input control": Send on Enter auf "CR-LF"\\ 
-Auf "Connect" klicken, dann im Eingabefeld "/?!" (ohne Anführungszeichen) eingeben und Enter drücken. Wenn im Feld "received data" was erscheint, funktioniert die Kommunikation prinzipiell. 
-<note important>Der AS1440 sendet erst auf Anfrage Daten. Die Anfragesequenz ist normalerweise:" /?! <CR/LF>". 
-Bei einigen AS1440hat der VNB ein Passwort gesetzt. Häufig ist das die Identifikationsnummer. Dann sieht die Anforderungssequenz so aus:\\ 
-" /?<Identifikationsnummer oder Passwort>! <CR/LF> ".\\ Die Identifikationsnummer kann am Gerätedisplay im Menü unter 0.0.0 angezeigt werden. Führende Nullen können ignoriert werden. Ein Passwort gibt der VNB in der Regel auf Anfrage heraus. 
-Die Baudrate ist 300bd und das Frameformat 7E1.</note> 
 ===== Kommunikation ===== ===== Kommunikation =====
 Zu Anfang erwartet der Zähler Kommunikation mit 300 baud, 7 Datenbits, 1 Stopbit, Parität even. Jeder Befehl muss mit CR&LF abgeschlossen werden. Wenn die Kommunikation läuft, kann man auf höhere Datenraten umstellen, s.u.\\ Zu Anfang erwartet der Zähler Kommunikation mit 300 baud, 7 Datenbits, 1 Stopbit, Parität even. Jeder Befehl muss mit CR&LF abgeschlossen werden. Wenn die Kommunikation läuft, kann man auf höhere Datenraten umstellen, s.u.\\
-Die Schnittstelle wird aktiviert, indem man den code "/?!\r\nsendet (hex 2F 3F 21 0D 0A). Der Zähler antwortet sofort mit+Die Schnittstelle wird aktiviert, indem man den code ''/?!\r\n'' sendet (hex 2F 3F 21 0D 0A). Der Zähler antwortet sofort mit
 <code>/AAAB\@nnnnnnnnnnnnnn</code> <code>/AAAB\@nnnnnnnnnnnnnn</code>
 wobei:\\ wobei:\\
 AAA = "ELS"\\ AAA = "ELS"\\
 B gibt die maximale Baudrate an, bei IR-Kommunikation ist der Wert 5, d.h. max. 9600 Baud\\ B gibt die maximale Baudrate an, bei IR-Kommunikation ist der Wert 5, d.h. max. 9600 Baud\\
-"\@bedeutet, dass der Zähler R5, W5 und R6-Befehle unterstützt (s.u.)\\+''\@'' bedeutet, dass der Zähler R5, W5 und R6-Befehle unterstützt (s.u.)\\
 nnnnnnnnnnnnnn bezeichnet die 14-stellige Geräte-ID.\\ nnnnnnnnnnnnnn bezeichnet die 14-stellige Geräte-ID.\\
-Wenn innerhalb von 1,5s keine weiteren Befehle gesendet werden, gibt der Zähler die aktuellen Messwerte aus und meldet sich ab. Weitere Kommunikation ist erst möglich, wenn man wieder die Eröffnungs-Sequenz "/?!sendet.\\+Wenn innerhalb von 1,5s keine weiteren Befehle gesendet werden, gibt der Zähler die aktuellen Messwerte aus und meldet sich ab. Weitere Kommunikation ist erst möglich, wenn man wieder die Eröffnungs-Sequenz ''/?!\r\n'' sendet.\\
 Um direkt weiter kommunizieren zu können, muss die Antwort des Zählers bestätigt werden mit:\\ Um direkt weiter kommunizieren zu können, muss die Antwort des Zählers bestätigt werden mit:\\
 <code><ACK>0ZY<CR><LF> (hex 06 30 zz yy 0D 0A)</code> <code><ACK>0ZY<CR><LF> (hex 06 30 zz yy 0D 0A)</code>
Zeile 36: Zeile 23:
 also z.B. <code><ACK>051<CR><LF> (hex 06 30 35 31 0D 0A)</code> um Daten mit 9600 Baud auszulesen.\\ also z.B. <code><ACK>051<CR><LF> (hex 06 30 35 31 0D 0A)</code> um Daten mit 9600 Baud auszulesen.\\
 Wenn der Zähler die Botschaft akzeptiert, antwortet er mit <code><ACK><CR><LF> (hex 06 0D 0A)</code> Wenn die Datenrate geändert wurde, muss man das natürlich berücksichtigen, also z.B. bei hterm auf 9600 Baud umstellen.\\ Wenn der Zähler die Botschaft akzeptiert, antwortet er mit <code><ACK><CR><LF> (hex 06 0D 0A)</code> Wenn die Datenrate geändert wurde, muss man das natürlich berücksichtigen, also z.B. bei hterm auf 9600 Baud umstellen.\\
-Jetzt kann man mit dem Zähler kommunizieren, s. Befehle. Wenn für ca. 6s keine weiteren Befehle gesendet werden, beendet der Zähler die Kommunikation mit der Sequenz <code><SOH>B0<ETX><BCC><CR><LF> (hex 01 42 30 03 71 0D 0A)</code> Dieselbe Sequenz kann jederzeit auch gesendet werden, um die Kommunikation zu beenden.+Jetzt kann man mit dem Zähler kommunizieren, s. Befehle. Wenn für ca. 6s keine weiteren Befehle gesendet werden, beendet der Zähler die Kommunikation mit der Sequenz <code><SOH>B0<ETX><BCC><CR><LF> (hex 01 42 30 03 71 0D 0A)</code> Dieselbe Sequenz kann jederzeit auch gesendet werden, um die Kommunikation zu beenden.\\ 
 + 
 +Alternativ kann die Kommunikation statt mit ''/?!\r\n'' manchmal auch mit ''/2!\r\n'' (hex 2F 32 21 0D 0A) angestoßen werden. Der Zähler antwortet dann direkt, ohne Baudratenumschaltung, mit der Liste der Aktualwerte. 
 + 
 +===== Beispielkonfiguration ===== 
 +Eine exemplarische vzlogger.conf: 
 +<code base vzlogger.conf> 
 +
 +"retry": 0, 
 +"verbosity": 15, 
 +"log": "/var/log/vzlogger/vzlogger.log", 
 +"local":
 +    "enabled": false, 
 +    "port": 8081, 
 +    "index": true, 
 +    "timeout": 0, 
 +    "buffer":
 +    }, 
 +"meters":
 +        { 
 +        "enabled": true, 
 +        "allowskip": false, 
 +        "interval": -1, 
 +        "aggtime": -1, 
 +        "aggfixedinterval": false, 
 +        "channels":
 +                { 
 +                "uuid": "6836dd20-00d5-11e0-bab1-856ed5f959ae", 
 +                "identifier": "1-1:1.7.0", 
 +                "api": "volkszaehler", 
 +                "middleware": "http://localhost/middleware.php", 
 +                "aggmode": "none", 
 +                "duplicates":
 +                } 
 +            ], 
 +        "protocol": "d0", 
 +        "device": "/dev/lesekopf0", 
 +        "dump_file": "", 
 +        "pullseq": "2F3F210D0A", 
 +        "ackseq": "auto", 
 +        "baudrate": 300, 
 +        "baudrate_read": 9600, 
 +        "baudrate_change_delay": 500, 
 +        "parity": "7e1", 
 +        "read_timeout": 100 
 +        } 
 +    ] 
 +
 +</code>
  
 ===== Befehle ===== ===== Befehle =====
Zeile 67: Zeile 102:
 <code><SOH>R5<STX>2.7.0()<ETX><BCC> (01 52 35 02 32 2e 37 2e 30 28 29 03 52)</code> <code><SOH>R5<STX>2.7.0()<ETX><BCC> (01 52 35 02 32 2e 37 2e 30 28 29 03 52)</code>
  
-===== AS3000 ===== +===== Test mittels HTerm ===== 
-{{:hardware:channels:meters:power:as3000.jpg?200|}} +Zum Testen unter Windows kann [[http://www.der-hammer.info/terminal/|hterm]] verwendet werden.\\ 
- +Einzustellen sind:\\ 
-Beim AS3000 ist der Ablauf ähnlichNach der Aktivierungssequenz, der Zählerantwort mit der maximalen Baudrate und der anschließenden Bestätigung der Baudrate und des Modus, sendet der Zähler eine Reihe aktueller und historischer Zählerstände, in etwa so (gekürzt): +Portbei Windows:verwendeter COM-Anschluss des USB-Adapters, bei Linux z.B/dev/ttyUSB0\\ 
- +Baud300\\ 
-0.0.1(09080744)\\ +Data7\\ 
-1.8.1(00002288.481*kWh)\\ +Stop: 1\\ 
-1.8.1*02(00002229.372)\\ +ParityEven\\ 
-1.8.1*01(00002141.229)\\ +Bei "input control": Send on Enter auf "CR-LF"\\ 
-...\\ +Auf "Connect" klickendann im Eingabefeld ''/?!'' eingeben und Enter drückenWenn im Feld "received data" was erscheintfunktioniert die Kommunikation prinzipiell.
-1.8.2(00003161.943*kWh)\\ +
-1.8.2*02(00002974.957)\\ +
-1.8.2*01(00002659.141)\\ +
-1.8.2*12(00002342.084)\\ +
-...\\ +
-2.8.1(00000000.010*kWh)\\ +
-2.8.1*02(00000000.010)\\ +
-2.8.1*01(00000000.010)\\ +
-2.8.1*12(00000000.010)\\ +
-2.8.1*11(00000000.010)\\ +
-...\\ +
-2.8.1*04(00000000.010)\\ +
-2.8.1*03(00000000.004)\\ +
-2.8.2(00000000.000*kWh)\\ +
-2.8.2*02(00000000.000)\\ +
-2.8.2*01(00000000.000)\\ +
-2.8.2*12(00000000.000)\\ +
-...\\ +
-1.8.0(00005450.425*kWh)\\ +
-2.8.0(00000000.010*kWh)\\ +
-3.8.1(00000039.807*kvarh)\\ +
-3.8.1*02(00000039.689)\\ +
-3.8.1*01(00000039.585)\\ +
-3.8.1*12(00000039.362)\\ +
-3.8.1*11(00000038.791)\\ +
-3.8.1*10(00000038.136)\\ +
-3.8.1*09(00000037.549)\\ +
-3.8.1*08(00000036.960)\\ +
-...\\ +
-7.8.0*07(00000000.260)\\ +
-7.8.0*06(00000000.260)\\ +
-7.8.0*05(00000000.260)\\ +
-7.8.0*04(00000000.260)\\ +
-7.8.0*03(00000000.253)\\ +
-16.7.0(2.171*kW)\\ +
-0.9.1(00:01:14)\\ +
-0.9.2(16-03-22)\\ +
-0.1.0(15)\\ +
-0.1.2*02(16-03-01,00:00)\\ +
-0.1.2*01(16-02-01,00:00)\\ +
-0.1.2*12(16-01-01,00:00)\\ +
-...\\ +
-1.2.1(0125.89*kW)\\ +
-1.6.1(09.48*kW)(16-03-14,18:45)\\ +
-1.6.1*02(09.59)(16-02-29,18:00)\\ +
-1.6.1*01(09.26)(16-01-25,22:15)\\ +
-...\\ +
-0.2.0(06BD)\\ +
-C.7.0(0004)\\ +
-C.71(02)\\ +
-F.F.1(00000000)\\ +
-F.F(00000000)\\ +
-!\\ +
-\\ +
- +
-Enthalten sind Wirkleistung Bezug und Einspeisung 1.8.0 und 2.8.0 (Mitte, keine Einspeisung zu diesem Zeitpunkt), der Bezug über 2 Tarife 1.8.1 und 1.8.2 (oben), die historischen Zählerstände zu den vorangegangenen Monatsenden bis hin zur aktuellen Summenleistung 16.7.0 und Event- und Firmwareinformationen.+
  
 ===== Quellen ===== ===== Quellen =====
-[1] [[http://www.gipsprojekt.de/featureGips/sw_springe/EnWGTool/Messstellen/Produktbeschreibung/AS1440_PR_D.pdf|Bedienungsanleitung AS1440]]\\ +[1] [[https://mddownloads.s3.eu-west-1.amazonaws.com/PV-Anlage/AS1440/AS1440_Kurzbedienung_d.pdf|Bedienungsanleitung AS1440]]\\ 
-[2] [[http://www.lkw.li/CFDOCS/cms3/admin/cms/download.cfm?FileID=2053&GroupID=159|Kurzübersicht AS1440]]\\+[2] [[https://mddownloads.s3.eu-west-1.amazonaws.com/PV-Anlage/AS1440/AS1440_Flyer_D.pdf|Kurzübersicht AS1440]]\\
 [3] [[http://www.msr.uni-bremen.de/lehre/Stromzaehler/Elster_A1500FW4xx_Communication.pdf|Protokoll-Spezifikation AS1500 mit Beispielen]]\\ [3] [[http://www.msr.uni-bremen.de/lehre/Stromzaehler/Elster_A1500FW4xx_Communication.pdf|Protokoll-Spezifikation AS1500 mit Beispielen]]\\
 [4] [[http://www.emsycon.de/downloads/LH2127B3.pdf|OBIS-Kennzahlen]] [4] [[http://www.emsycon.de/downloads/LH2127B3.pdf|OBIS-Kennzahlen]]
hardware/channels/meters/power/edl-ehz/elster_as1440.1462364916.txt.gz · Zuletzt geändert: 2016/05/04 14:28 von ronny_w