Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:controller:m-bus

Dies ist eine alte Version des Dokuments!


M-Bus Controler

Der Mbus Controler dient zur Anbindung des Meter-Bus http://de.wikipedia.org/wiki/M-Bus_(Feldbus)an den Volkszaehler

Vorraussetzungen

  • M-Bus Zähler
  • Serieller Pegelwandler
  • PC oder ähnliches mit Perl mit Device::SerialPort Perl-Modul

Installation

Die Dateien unter: volkszaehler.org/misc/controller/mbus in ein beliebiges Verzeichnis (z.B. /usr/local/m-bus) kopieren.

Konfiguration

Den Seriellen Pegelwandler an den PC anschließen

In der Datei mbusconf.pm Einstellungen zum Port Baudrate etc. vornehmen:

$mbusPort=„/dev/messbus“; # or /dev/ttyS0 ..

$vzURL=„http://host.domain/volkszaehler/middleware.php/“;

$vzOldFile=„/root/.mbus-vzold“;

$mbusserial=„/root/.mbusserial“;

$mbusBaudrate=2400;

In der Datei: vzOldFile werden Zählerstände gespeichert, weil der Volkszaehler z.Zt nur mit relativen Verbrauchswerten umgehen kann.

Jetzt auf dem Mbus nach Devices suchen.

./mbus-cmd –genserial

Die Seriellen Adressen werden in der Datei: $mbusserial gespeichert.

Jedes M-Bus Device kann wiederum viele Zähler zurückliefen.

./mbus-cmd -print-busconf

Bekommt man eine Ausgabe aller Zähler

$vzUuid{„09999999-Fabriknummer“}=„“;# (09999999)

$vzUuid{„09999999-Heizenergie“}=„“;# (00060958)

$vzUuid{„09999999-Volumen“}=„“;# (11245.24)

$vzUuid{„09999999-Fliessgeschwindigkeit“}=„“;# (1.534)

Jetzt Zähler anlegen, z.B. mit dem vzclient

Diese Zeilen können nun mit der uuid in die bestehende mbusconf.pm übernommen werden, also z.B.:

$vzUuid{„09999999-Heizenergie“}=„503ad3d0-18d4-11e1-9d30-8f7c5e0b88b1“;# (09999999)

$vzUuid{„09999999-Volumen“}=„669bd360-18d4-11e1-8c33-055342b3cb21“;# (11245.24)

$vzUuid{„09999999-Fliessgeschwindigkeit“}=„6c345080-18d4-11e1-8e07-7d37ae5b0848“;# (1.534)

Test

'./mbus-cmd –verbose'

Ergibt eine Ausgabe der übertragenen Daten.

'./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 zu speichern.

Regelmäßiger Aufruf im Cron

Ein Skript /usr/local/bin/mbus-cron.sh anlegen:

#!/bin/bash cd /usr/local/m-bus /usr/bin/perl mbus-cmd

*/3 * * * * root /usr/local/bin/mbus-cron.sh

software/controller/m-bus.1322398665.txt.gz · Zuletzt geändert: 2011/11/27 13:57 von sven_anders