Inhaltsverzeichnis
M-Bus
The M-Bus driver can read values from M-Bus Slave devices which work according EN13757 standard on 2-wire technology.
The M-BUS driver name is: mbus
The routing address for the first M-Bus driver is: 60
The data point file for the first M-BUS driver is called: mbus1.txt
The configuration file for global settings of the first M-BUS driver is: mbus1.cfg
For the M-BUS driver as well as all other gateway drivers the data point definitions are as follows:
Type | Description |
---|---|
M | Integer value (binary data points, counters) which can/shall only be read by the gateway |
S | Integer value which can be either read or written by the gateway. (to M-BUS writing is not possible) |
X | Floating point value (with decimal place) which can/shall only be read by the gateway |
Y | Floating point value (with decimal place) which can be either read or written by the gateway. (to M-BUS writing is not possible) |
A | String, is used e.g. with BACnet Trends and ESPA4.4.4 data points |
Addresses are defined as follows:
„<slave> <type> [<no>]“
Communication state with slave device: „<slave> failure“
While following definition is valid:
Parameter | Range of values | Description |
---|---|---|
<slave> | 1 - 250 SXXXXXXXX | primary address or 8 digit secondary address (with prefixed „S“) of the addressed slave device |
<type> | failure, value, vif, ident, manufacturer, medium, accesno, signature, version, status, sBit | communication failure with counter, virtual value field <no> VIF-field <no> manufacturer specific counter number manufacturer code IEC 870 media code amount of accesses reserved version status field status bit from status field (no: 1..8) |
<nr> | integer 1 - 127 | <no>-th value from the „variable data structure“-data set (–> s. manufacturer's documentation ). |
The address of the first value of slave „2“ will be defined in mbusX.txt as follows:
[X 2 value 1]
Values are defined to the basic units (W, Wh, m3, …). By using the format field values can be converted into other prefix units. Please see example below:
format = <format>
<format> can have following values:
<format> | description |
---|---|
u | micro (e.g. Micrometer, MicroLiter) |
m | milli (e.g. Millimeter, Milliliter) |
k | kilo (e.g. Kilowatt, Kilometer) |
M | Mega (e.g. Megawatt) |
G | Giga (e.g. Gigawatt) |
Note: If ':' followed by a hexadecimal number then this number will be searched in the DIF/VIF fields of the data frame. Then the <no> value is purely used to separate data points. The <no>-th value from „variable data structure“-data set is NOT used!
Typical data point definitions can be:
[M 2 failure] name = communication failure with slave 2 query = pe
[M 2 value 1] name = digital operation message query = pe
[X 2 value 2] name = measure temperature value query = pe format =
[X 2 value 3] name = power consumption query = pe format = k
[X S12345678 value 3] name = power consumption query = pe format = k
[M 2 ident 3] name = manufacturer specific device ID query = pe
Tips and notes
For some meters it may be necessary to increase the waiting time between the individual characters of a telegram. To do this, you can set the configuration parameter „ReceiveInterCharTimeout“ to a higher value, e.g. 500 (ms). The default value is 300 ms.
When using the M-Bus meter scan, it can happen in large systems that a scan takes longer. Here there is a time limit, which is 600 seconds (10 minutes) in the default value. Here, a higher duration can be defined via the configuration parameter „MeterScanTimeout“.
Notes on polling behavior
How often a meter is polled depends on the „CacheTimeout“ entry in the configuration file. The global parameter is effective if the meter itself does not already have another entry.
How often the driver starts a poll run (or poll attempt) is specified by the „Interval“ parameter. If a value greater than „CacheTimeout“ is specified for „Interval“, then the poll interval is also greater.
Normally, the interval can be left at 1 second, so that the „CacheTimeout“ takes effect.
Additional M-Bus interface via RS485
Some units can communicate M-Bus via an RS485 interface. If an M-Bus driver is to be used via the RS485 interface, this must be set in the driver configurations (General → Update → Driver configuration). For this purpose, the COM3 (external) interface must be selected via the „Edit field“. (see also FAQ: What is the combination of serial and logical interface on the UGW?).