Table of Contents
Driver M-bus
Description
- Protocol implementation according to EN 13757-2 and EN 13757-3
- connection of M-bus devices through local M-Bus converter
- connection of M-bus devices through unlimited number of remote M-Bus/TCP converters
- driver for reading M-Bus devices uses primary addressing
- configuring basic M-Bus device parameters:
- primary address
- secondary address
- transfer speed
- reading basic parameters:
- manufacturer
- medium
- primary address
- secondary address
- integrated M-Bus telegram analyzer, which can be used to create read profile from unknown device
- creating M-Bus telegram with command (e.g. command to disable button) and its sending through associated Bacnet point
- it is possible to assign mathematical operations to each M-Bus point:
- add value
- substract value
- multiply by value
- divide by value
- mathematical operations are computed with double precision float numbers
- each M-bus device has created point containing state value of last reading
- active reading profile can be tested and its return results displayed
- Bacnet point for manual start of M-Bus devices reading
- virtual M-bus/TCP converter:
- allows direct device configuration with manufacturers software on device
- slave mode - paralel sensor reading with packet insertion from TCP client
- master mód - disables devices reading and master client gains exclusive access to M-Bus converter
Knowledge of M-bus protocol is required to work with this driver.
Virtual gateway M-bus/TCP
Enables direct configuration of M-Bus devices with manufacturers software.
Virtual COM port emulator is requried to use this function. For Windows we recommend to use VSPE, 32-bit version is free.
Master connection
Enables exclusive access to M-Bus converter. All M-Bus functions of M-Bus/Bacnet converter are disabled while connection is active.
Connection is established with TCP protocol on port 2001.
Slave connection
Retains M-bus/Bacnet converter functions and adds received telegrams from TCP client to telegrams sent to converters software. Responses on these telegrams are returned on open TCP connection.
Connection is established with TCP protocol on port 2000.
Bacnet implementation
M-bus | Bacnet |
---|---|
Value from telegram | AnalogInput |
Manual M-bus read | BinaryValue |
State of last read | AnalogInput |
M-bus command | AnalogValue |
Properties:
- objectName
- objectType
- presentValue
- statusFlags
- outOfService
- covIncrement
- priorityArray
- relinquishDefault
- units
Values of state point of M-bus device
- 0 - OK
- 1 - No response
- 2 - Failed to open port
- 3 - CRC error
- 4 - Failed to decode telegram
- Writing any value through Bacnet starts manual reading of device
Bacnet point of M-bus command
Written value will be used as M-bus address when command is sent to M-Bus.
Bacnet point for manual devices reading
Writing any value will start manual reading of all devices.
Driver settings
Communication speed:
Transfer speed of local port.
COM port:
Selection of local COM port.
Manual reading - point name:
Name of Bacnet point to start devices reading.
Reading starts after writing any value to this Bacnet point.
Status of master M-Bus connection:
Displays status of master M-Bus connection.
M-Bus functions of converter are blocked while connection is active.
Disconnect master client
Disconnects master client.
Virtual COM ports
Virtual ports manager.
Button | Description |
---|---|
Save settings | |
Undo | |
Add virtual COM port | |
Delete selected | |
Check availability of virtual ports |
Only TCP connection is supported currently.
M-bus devices settings
Port configuration
Transfer speed
Currently set transfer speed of local M-Bus converter. Changes are applied immediately.
Warning! Transfer speed also affects reading algorithm of M-bus/Bacnet driver.
Select COM port
Selection of used port for devices configuration
Commands sending
Primary address
Primary address of configured device:
- 254 - command for all devices (broadcast)
- 253 - command for secondary addressed device through Slave select
snd_nke
Sends telegram snd_nke
req_ud2
Sends telegram req_ud2
Slave select
Select device with secondary address
Change primary address
Changes primary address of device
Change secondary address
Changes secondary address of device
Change transfer speed
Changes transfer speed
Decoded req_ud2 response
M-bus device profiles
Editor for M-bus device profiles
In top part of the screen is located list of current profiles.
Editor for M-bus device profile
Bacnet object name:
Name of M-Bus status point on Bacnet
Symbol @ will be replaced with given text on profile upload to M-Bus read configuration.
REQ_UD2:
“C Field” of sent telegram.
Timeout [s]:
Telegram reading timeout in seconds.
Data from TCP converters will be processed after time limit. M-bus device needs to send all data or CRC errors can occur.
Description:
Notes:
User description and notes.
List of telegram entries
These entries are exported as Bacnet points
M-Bus telegram records editor
Bacnet object name:
Name of M-Bus point on Bacnet.
Symbol @ will be replaced with given text on profile upload to M-Bus read configuration.
Bacnet units:
Units accessible through Bacnet
Telegram number:
Position in telegram:
Informative value on automatic read from M-Bus device
VIF+VIFE:
VIF+VIFE value
DIF+DIFE:
DIF+DIFE value
Search by:
Entry in telegram is searched by VIF+VIFE, or by VIF+VIFE and at the same time by DIF+DIFE.
You can find more informations about structure of M-Bus telegram here.
Mathematical functions and their values
Allows modification of decoded values before they are written to Bacnet point.
Telegram data
Hexadecimal representation of recieved telegram on automatic profile generation.
Generate profile from M-Bus device
Button | Description |
---|---|
Read M-Bus device on specified COM port and req_ud2 | |
Generate profile from received data | |
Cancel profile generation |
Test profile on M-Bus device
M-Bus device settings
M-Bus devices editor
In top part of the screen is located list of currently configured devices.
M-Bus device editor
Primary address:
Primary address of M-Bus device
Bacnet object name:
Name of M-Bus status point in Bacnet
REQ_UD2:
“C Field” of send telegram.
COM port selection:
Port of connected device
Timeout [s]:
Telegram reading time limit in seconds.
Data from TCP converters will be processed after time limit. M-bus device needs to send all data or CRC errors can occur.
List of telegram entries
These entries are exported as Bacnet points
M-Bus telegram entry editor
Name of Bacnet point:
Name of M-Bus entry on Bacnet.
Bacnet units:
Units accessible from Bacnet
VIF+VIFE:
VIF+VIFE value
DIF+DIFE:
DIF+DIFE value
Search by:
Entry in telegram is searched by VIF+VIFE, or by VIF+VIFE and at the same time by DIF+DIFE.
You can find more informations about structure of M-Bus telegram here.
Mathematical functions and their values
Allows modification of decoded values before they are written to Bacnet point.
M-bus commands settings
M-bus commands editor
In top part of the screen is located list of current commands.
Button | Description |
---|---|
Add M-Bus command | |
Add predefined command | |
Delete selected commands | |
Save commands configuration | |
Undo |
M-bus command editor
Bacnet object name:
Name of the Bacnet object
Enabled
Exports command to Bacnet
COM port:
COM port on which will be command sent
Timeout [s]
Response time limit, used to clear RX buffer
<C>
Telegrams “C-field”
<CI>
Telegrams “CI-field”
<DATA>
Hexadecimal representation of telegrams data
Telegram address will be included from defined value in Bacnet object. Length and CRC will be calculated before telegram is sent.