<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><title>RE: [vz-users] Auslesen eines ULTRAHEAT®T550 (UH50…)</title><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Vorformatiert Zchn";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.HTMLVorformatiertZchn
        {mso-style-name:"HTML Vorformatiert Zchn";
        mso-style-priority:99;
        mso-style-link:"HTML Vorformatiert";
        font-family:Consolas;}
span.E-MailFormatvorlage24
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.E-MailFormatvorlage25
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DE link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal><span style='mso-fareast-language:EN-US'>Hallo Nico,<o:p></o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'>ist das ein M-Bus Zähler oder mit optischen M-Bus?<o:p></o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'>Ich habe hier erst die Tage mit Kabelgebundenen Zählern Erfolg gehabt<o:p></o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'>Weitergeholfen haben mir vor allem folgende Programme:<o:p></o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'>Erster Test unter Windows:<o:p></o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'>Adresse hiermit gesucht:  </span><a href="https://www.piigab.com/en/products/free-tools/m-bus-wizard/"><span style='color:blue'>https://www.piigab.com/en/products/free-tools/m-bus-wizard/</span></a><o:p></o:p></p><p class=MsoNormal>Zähler hiermit ausgelesen:  <a href="https://www.m-bus.de/software.html"><span style='color:blue'>https://www.m-bus.de/software.html</span></a><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Auslesen tue ich jetzt auf einem Raspi mit libmbus <o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Will auch demnächst versuchen, optische Zähler auszulesen, warte aber leider noch auf den IR-Kopf<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Aber eigentlich bringt Dir der Momentanverbrauch wenig, löse es besser so wie von Thomas vorgeschlagen <o:p></o:p></p><p class=MsoNormal>Ich lese z.B. im 5min-Takt aus – Anbei ein Screenshot – grün über den konkreten Zählerstand von VZ erstellt, schwarz ist die  alle 5min gemessene momentane Leistung<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Die momentane Leistung sieht zwar schöner aus, aber ist durch das nur alle 5min ablesen ungenau  - hier z.B. ca. 4% Abweichung<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Grüße<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Klaus<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><img border=0 width=1897 height=880 style='width:19.7604in;height:9.1666in' id="Grafik_x0020_1" src="cid:image001.png@01D5FDF2.ECE91970"><o:p></o:p></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='mso-fareast-language:EN-US'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b>Von:</b> volkszaehler-users <volkszaehler-users-bounces@demo.volkszaehler.org> <b>Im Auftrag von </b>USER VZ<br><b>Gesendet:</b> Donnerstag, 19. März 2020 10:44<br><b>An:</b> volkszaehler.org - users <volkszaehler-users@demo.volkszaehler.org><br><b>Betreff:</b> Re: [vz-users] Auslesen eines ULTRAHEAT®T550 (UH50…)<o:p></o:p></p></div></div><p class=MsoNormal><o:p> </o:p></p><p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'>Hi Nico,<o:p></o:p></span></p><p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p><p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'>in VZ einen Kanal Typ "Wärme (Zählerstände)" anlegen.<o:p></o:p></span></p><p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p><p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'>Dein Script sollte den Zählerstand als Numerischen Wert parsen, und an die Middleware senden. Dazu eignet sich der vzclient.<o:p></o:p></span></p><p style='margin:0cm;margin-bottom:.0001pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'>Das Script dann mit cron regelmäßig aufrufen. Die Darstellung der Leistung macht das Frontend entsprechend des Kanaltypes.<o:p></o:p></span></p><pre style='margin-bottom:12.0pt;white-space:pre-wrap'><span style='font-size:11.0pt;font-family:"Tahoma",sans-serif'>Mit freundlichen Grüßen,<br><br>Thomas </span><o:p></o:p></pre><p style='margin:0cm;margin-bottom:.0001pt;min-height: 12pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p><p style='margin:0cm;margin-bottom:.0001pt;min-height: 12pt'><span style='font-size:12.0pt;font-family:"Tahoma",sans-serif'><o:p> </o:p></span></p><blockquote style='border:none;border-left:solid #325FBA 1.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:3.75pt'><p class=MsoNormal><span style='font-size:10.0pt;font-family:"Tahoma",sans-serif'>-----Ursprüngliche Nachricht-----<br><strong><span style='font-family:"Tahoma",sans-serif'>Von:</span></strong> Prof. Nikolaus Zieske <<a href="mailto:nikolaus.zieske@bau.thm.de">nikolaus.zieske@bau.thm.de</a>><br><strong><span style='font-family:"Tahoma",sans-serif'>Gesendet:</span></strong> Donnerstag 19 März 2020 10:26<br><strong><span style='font-family:"Tahoma",sans-serif'>An:</span></strong> volkszaehler-users <<a href="mailto:volkszaehler-users@demo.volkszaehler.org">volkszaehler-users@demo.volkszaehler.org</a>><br><strong><span style='font-family:"Tahoma",sans-serif'>Betreff:</span></strong> [vz-users] Auslesen eines ULTRAHEAT®T550 (UH50…)<br><br><br></span><o:p></o:p></p><div><p class=MsoNormal>Hallo, <o:p></o:p></p><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>gibt es jemanden, der einen Wärmemengenzähler ULTRAHEAT®T550 (UH50…) beim Volkszähler eingebunden hat.<o:p></o:p></p></div><div><p class=MsoNormal><br><br><o:p></o:p></p></div><div><p class=MsoNormal>Mit diesem script in python schaffe ich es zwar den Zählerstand auszulesen:<o:p></o:p></p></div><div><p class=MsoNormal><br><br><o:p></o:p></p></div><div><pre style='word-wrap: break-word;white-space:pre-wrap'><em><span style='font-size:7.5pt;font-family:"Courier New"'>#!/usr/bin/python<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>from __future__ import print_function<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>import serial, time<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'><o:p> </o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>ser = serial.Serial("/dev/ttyUSB0", baudrate=300, bytesize=7, parity="E", stopbits=1, timeout=2, xonxoff=0, rtscts=0)<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'><o:p> </o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>#send init message<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>ser.write("\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00")<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>ser.write("\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00")<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'><o:p> </o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>#send request message<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>ser.write("/?!\x0D\x0A")<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>ser.flush();<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>time.sleep(.5)<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'><o:p> </o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>#send read identification message<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>print(ser.readline())<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'><o:p> </o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>#change baudrate<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>ser.baudrate=2400<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'><o:p> </o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>try:<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>    #read data message<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>    while True:<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>        response = ser.readline()<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>        print(response, end="")<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>        if "!" in response:<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>            break<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>finally:<o:p></o:p></span></em></pre><pre><em><span style='font-size:7.5pt;font-family:"Courier New"'>    ser.close()</span></em><o:p></o:p></pre><div><p class=MsoNormal><o:p> </o:p></p></div></div><div><p class=MsoNormal><br><br><o:p></o:p></p></div><div><p class=MsoNormal>Ich bekomme aber keine aktuellen Verbrauchswerte, sondern, neben vielem anderen, nur den Zählerstand unter 6.8.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><div style='mso-element:para-border-div;border-top:#DDDDDD;border-left:#DDDDDD;border-bottom:#CCCCCC;border-right:#CCCCCC;border-style:solid;border-width:1.0pt;padding:12.0pt 12.0pt 12.0pt 12.0pt;background:whitesmoke'><pre style='background:whitesmoke;border:none;padding:0cm;white-space:pre-wrap;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px'><span style='font-size:9.5pt;color:black'>/LUGCUH50</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt'><o:p> </o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.8(0074900*kWh)6.26(04142.48*m3)9.21(66409080)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.26*01(03957.55*m3)6.8*01(0071925*kWh)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>F(0)9.20(66409080)6.35(60*m)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.6(0016.2*kW)6.6*01(0015.3*kW)6.33(001.608*m3ph)9.4(094.4*C&092.9*C)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.31(0046124*h)6.32(0000000*h)9.22(R)9.6(000&66409080&0&000&66409080&0)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>9.7(60000)6.32*01(0000000*h)6.36(01-01&00:00)6.33*01(001.608*m3ph)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.8.1()6.8.2()6.8.3()6.8.4()6.8.5()</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.8.1*01()6.8.2*01()6.8.3*01()</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.8.4*01()6.8.5*01()</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>9.4*01(094.4*C&092.9*C)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.36.1(2016-01-18)6.36.1*01(2011-07-13)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.36.2(2015-01-07)6.36.2*01(2015-01-07)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.36.3(2014-12-23)6.36.3*01(2014-12-23)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.36.4(2014-03-14)6.36.4*01(2014-03-14)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.36.5()6.36*02(01&00:00)9.36(2016-02-12&19:36:08)9.24(1.5*m3ph)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>9.17(0)9.18()9.19()9.25()</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>9.1(0&1&0&0000&CECV&CECV&1&5.16&5.16&F&101008&1>1>04&08&0)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>9.2(&&)9.29()9.31(0014842*h)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>9.0.1(00000000)9.0.2(00000000)9.34.1(000.00000*m3)9.34.2(000.00000*m3)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>8.26.1(00000000*m3)8.26.2(00000000*m3)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>8.26.1*01(00000000*m3)8.26.2*01(00000000*m3)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.26.1()6.26.4()6.26.5()</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>6.26.1*01()6.26.4*01()6.26.5*01()0.0(66409080)</span><span style='font-size:9.5pt'><o:p></o:p></span></pre><pre style='background:whitesmoke;border:none;padding:0cm'><span style='font-size:9.5pt;color:black'>!</span><span style='font-size:9.5pt'><o:p></o:p></span></pre></div><div><p class=MsoNormal><o:p> </o:p></p></div></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Wie könnte man das machen?<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Niko<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><br><br><o:p></o:p></p></div><div><p class=MsoNormal><br><br><o:p></o:p></p></div><div><p class=MsoNormal><br><br><o:p></o:p></p></div><div><p class=MsoNormal><br><br><o:p></o:p></p></div></div></blockquote></div></body></html>