software:controller:m-bus
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
software:controller:m-bus [2013/02/03 21:41] – Page moved from hardware:controllers:m-bus to software:controller:m-bus r00t | software:controller:m-bus [2023/05/17 21:06] (aktuell) – [Test] raptorsds | ||
---|---|---|---|
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:// |
+ | Standart M-Bus | ||
+ | 2400Baud 8b even 1stop | ||
+ | |||
+ | möglich auch | ||
+ | | ||
+ | oder selten | ||
+ | 9600Baud 8b even 1stop | ||
===== Vorraussetzungen ===== | ===== Vorraussetzungen ===== | ||
Zeile 10: | Zeile 17: | ||
===== Installation ===== | ===== Installation ===== | ||
- | + | Quellpaket [[https:// | |
- | + | < | |
- | cd volkszaehler.org/ | + | wget https:// |
+ | </ | ||
+ | < | ||
+ | unzip m-bus.zip | ||
+ | </ | ||
+ | < | ||
+ | cd m-bus | ||
+ | </ | ||
+ | < | ||
+ | chmod +x install.sh | ||
+ | </ | ||
+ | < | ||
./ | ./ | ||
+ | </ | ||
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. | 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. | ||
+ | |||
+ | Es kann vorkommen das man einen Neustart machen muss damit der Neue Benutzer richtig erkannt wird | ||
===== Konfiguration ===== | ===== Konfiguration ===== | ||
Den Seriellen Pegelwandler an den PC anschließen | Den Seriellen Pegelwandler an den PC anschließen | ||
- | In der Datei / | + | In der Datei '' |
< | < | ||
Zeile 29: | Zeile 49: | ||
</ | </ | ||
- | In der Datei: / | + | In der Datei: |
Jetzt auf dem Mbus nach Devices suchen. | Jetzt auf dem Mbus nach Devices suchen. | ||
Zeile 37: | Zeile 57: | ||
</ | </ | ||
+ | Fehlermöglichkeiten | ||
+ | - Serial | ||
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.: | 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.: | ||
Zeile 45: | Zeile 67: | ||
apt-get install libdevice-serialport-perl | apt-get install libdevice-serialport-perl | ||
</ | </ | ||
+ | |||
+ | - LWP | ||
+ | Can't locate LWP.pm in @INC | ||
+ | < | ||
+ | apt-get install libwww-perl | ||
+ | </ | ||
+ | |||
+ | |||
+ | - simple LWP | ||
+ | Can't locate LWP/ | ||
+ | < | ||
+ | perl -MCPAN -e' | ||
+ | </ | ||
+ | !dieser Befehl kompiliert auch weiter PM Files und könnte etwas länger dauern | ||
+ | |||
+ | |||
+ | - simple Lock | ||
+ | Can't locate LockFile/ | ||
+ | < | ||
+ | perl -MCPAN -e' | ||
+ | </ | ||
die entsprechende Bibliothek nachinstalliert werden muss. Wenn alles da ist, startet der Scan und die Seriellen Adressen werden in der Datei: | die entsprechende Bibliothek nachinstalliert werden muss. Wenn alles da ist, startet der Scan und die Seriellen Adressen werden in der Datei: | ||
Zeile 69: | Zeile 112: | ||
- | Jetzt Zähler anlegen, z.B. mit dem [[hardware: | + | Jetzt Zähler anlegen, z.B. mit dem [[software:frontends:frontend]] |
Zeile 75: | Zeile 118: | ||
< | < | ||
- | $vzUuid{" | + | $vzUuid{" |
$vzUuid{" | $vzUuid{" | ||
$vzUuid{" | $vzUuid{" | ||
Zeile 82: | Zeile 125: | ||
===== Tipp: Device Konfiguration mit udev ===== | ===== Tipp: Device Konfiguration mit udev ===== | ||
- | Durch das Anlegen einer Datei / | + | Durch das Anlegen einer Datei '' |
SUBSYSTEM==" | SUBSYSTEM==" | ||
Zeile 88: | Zeile 131: | ||
(alles in einer Zeile!) | (alles in einer Zeile!) | ||
- | kann man dafür sorgen, das das richtige Device immer / | + | kann man dafür sorgen, das das richtige Device immer '' |
Die nötigen Werte für idVendor usw. erhält man mit: | Die nötigen Werte für idVendor usw. erhält man mit: | ||
- | udevadm info -a -p $(udevadm info -q path -n / | + | < |
+ | udevadm info -a -p $(udevadm info -q path -n / | ||
+ | </ | ||
===== Test ===== | ===== Test ===== | ||
- | < | + | <del>< |
su - mbus | su - mbus | ||
./mbus-cmd --verbose | ./mbus-cmd --verbose | ||
- | </ | + | </code></ |
Ergibt eine Ausgabe der übertragenen Daten. | Ergibt eine Ausgabe der übertragenen Daten. | ||
Zeile 106: | Zeile 150: | ||
< | < | ||
su - mbus | su - mbus | ||
- | ./mbus-cmd --sql-out | + | ./mbus-cmd --sqlout |
</ | </ | ||
+ | Alternativ auch Rohdaten möglich | ||
+ | < | ||
+ | su - mbus | ||
+ | ./mbus-cmd --sqlrawout | ||
+ | </ | ||
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 114: | Zeile 163: | ||
===== Regelmäßiger Aufruf im Cron ===== | ===== Regelmäßiger Aufruf im Cron ===== | ||
- | Sicherstellen, | + | Sicherstellen, |
< | < | ||
chmod 666 / | chmod 666 / | ||
Zeile 121: | Zeile 170: | ||
eingeben. | eingeben. | ||
- | / | + | '' |
< | < | ||
*/3 * * * * mbus / | */3 * * * * mbus / | ||
</ | </ | ||
- | Nun sollte der Cron alle 3 Minuten laufen, dass lässt sich nun anhand des Datums der Datei / | + | Nun sollte der Cron alle 3 Minuten laufen, dass lässt sich nun anhand des Datums der Datei '' |
software/controller/m-bus.1359924094.txt.gz · Zuletzt geändert: 2013/02/03 21:41 von r00t