software:controller:m-bus
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
hardware:controllers:m-bus [2011/11/27 13:57] – Config Dateien aufbereitet sven_anders | software:controller:m-bus [2017/10/20 10:21] – Typo jau | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== M-Bus Controler | + | ====== M-Bus Controller |
- | Der Mbus Controler dient zur Anbindung des Meter-Bus | + | Der Mbus Controler dient zur Anbindung des [[http:// |
===== Vorraussetzungen ===== | ===== Vorraussetzungen ===== | ||
Zeile 11: | Zeile 11: | ||
===== Installation ===== | ===== Installation ===== | ||
- | Die Dateien unter: volkszaehler.org/ | ||
+ | cd volkszaehler.org/ | ||
+ | |||
+ | ./ | ||
+ | |||
+ | erzeugt einen Benutzer mbus und packt ihn in die Gruppe dialout damit er auf die Serielle Schnittstelle zugreifen kann. Im Anschluß kopiert das Skript die Dateien in die richtigen Pfade. | ||
===== Konfiguration ===== | ===== Konfiguration ===== | ||
Den Seriellen Pegelwandler an den PC anschließen | Den Seriellen Pegelwandler an den PC anschließen | ||
- | In der Datei mbusconf.pm Einstellungen zum Port Baudrate etc. vornehmen: | + | In der Datei /etc/mbus/mbusconf.pm Einstellungen zum Port Baudrate etc. vornehmen, die Einstellungen sind dort mit # einkommentiert (die # entfernen!): |
- | '' | + | < |
+ | $mbusPort="/ | ||
+ | $vzURL=" | ||
+ | $mbusBaudrate=2400; | ||
+ | </ | ||
- | '' | + | In der Datei: /var/lib/mbus/vzold werden Zählerstände gespeichert, |
- | '' | + | Jetzt auf dem Mbus nach Devices suchen. |
- | '' | + | < |
+ | ./mbus-cmd --genserial | ||
+ | </code> | ||
- | '' | + | Je nach Installation kann die Installation verschiedener perl-Bibliotheken erforderlich sein. Das erkennt man daran, dass der mbus-cmd Befehl Fehlermeldungen ausgibt wie z.B.: |
- | In der Datei: vzOldFile werden Zählerstände gespeichert, | + | Can't locate Device/ |
- | Jetzt auf dem Mbus nach Devices suchen. | + | sucht man z.B. in Google nach dieser Fehlermeldung findet man schnell einen Hinweis, dass mit |
+ | < | ||
+ | apt-get install libdevice-serialport-perl | ||
+ | </ | ||
- | '' | + | die entsprechende Bibliothek nachinstalliert werden muss. Wenn alles da ist, startet der Scan und die Seriellen Adressen werden in der Datei: |
+ | /etc/mbus/serialno gespeichert. | ||
- | Die Seriellen Adressen werden | + | Sicherstellen, |
- | $mbusserial gespeichert. | + | |
Jedes M-Bus Device kann wiederum viele Zähler zurückliefen. | Jedes M-Bus Device kann wiederum viele Zähler zurückliefen. | ||
- | '' | + | < |
+ | ./mbus-cmd -print-mbusconf | ||
+ | </ | ||
Bekommt man eine Ausgabe aller Zähler | Bekommt man eine Ausgabe aller Zähler | ||
- | '' | + | < |
+ | $vzUuid{" | ||
+ | $vzUuid{" | ||
+ | $vzUuid{" | ||
+ | $vzUuid{" | ||
+ | ... | ||
+ | </ | ||
- | '' | ||
- | '' | + | Jetzt Zähler anlegen, z.B. mit dem [[hardware: |
- | '' | ||
+ | Diese Zeilen können nun mit der uuid in die bestehende mbusconf.pm übernommen werden, also z.B.: | ||
- | Jetzt Zähler anlegen, z.B. mit dem [[software/clients/ | + | < |
+ | $vzUuid{" | ||
+ | $vzUuid{" | ||
+ | $vzUuid{" | ||
+ | </code> | ||
+ | ===== Tipp: Device Konfiguration mit udev ===== | ||
- | Diese Zeilen können nun mit der uuid in die bestehende mbusconf.pm übernommen werden, also z.B.: | + | Durch das Anlegen einer Datei / |
- | '' | + | SUBSYSTEM==" |
- | '' | + | (alles in einer Zeile!) |
+ | |||
+ | kann man dafür sorgen, das das richtige Device immer / | ||
+ | |||
+ | Die nötigen Werte für idVendor usw. erhält man mit: | ||
+ | |||
+ | | ||
- | '' | ||
===== Test ===== | ===== Test ===== | ||
- | ''' | + | < |
+ | su - mbus | ||
+ | ./mbus-cmd --verbose | ||
+ | </ | ||
Ergibt eine Ausgabe der übertragenen Daten. | Ergibt eine Ausgabe der übertragenen Daten. | ||
- | ''' | + | < |
+ | su - mbus | ||
+ | ./mbus-cmd --sql-out | ||
+ | </ | ||
Kann man alle Zählerstände in einer MySQL Syntax abfragen um zu testen, oder die Zählerstände nochmals zusätzlich | Kann man alle Zählerstände in einer MySQL Syntax abfragen um zu testen, oder die Zählerstände nochmals zusätzlich | ||
Zeile 76: | Zeile 114: | ||
===== Regelmäßiger Aufruf im Cron ===== | ===== Regelmäßiger Aufruf im Cron ===== | ||
- | Ein Skript | + | Sicherstellen, |
+ | < | ||
+ | chmod 666 / | ||
+ | </ | ||
- | ''# | + | eingeben. |
- | cd / | + | |
- | / | + | |
- | */3 * * * * | + | / |
+ | < | ||
+ | */3 * * * * | ||
+ | </ | ||
+ | Nun sollte der Cron alle 3 Minuten laufen, dass lässt sich nun anhand des Datums der Datei / |
software/controller/m-bus.txt · Zuletzt geändert: 2023/05/17 21:06 von raptorsds