...
Communication implements data reading from devices that support the M-Bus protocol by the Rev. 4.8 specification. Communication was tested with MULTICAL® III, MULTICAL® 5 measuring devices by KARMSTRUP Company, CALSTREEM EEM-C measuring device by Danfoss Company, and PolluTherm Pt500 by Sensus.
The communication was also verified against the water flow meter Sensus MeiStream 150 with communication module HRI-Mei using an EthMBus-5 converter manufactured by JC-e (it was necessary to configure a converter to TCP mode and use a TCP/IP-TCP line category).
...
Possible I/O tag types: Ai, Ci, TiA, TiR, TxtI, TxtO
Two types of addresses can be configured:
- Simple address: a number that is an index of the value in the M-Bus data packet. To get detailed information on unknown devices, activate debug logs using the FULL_DEBUG parameter.
An example of debug log (individual rows correspond with addresses 1 to 9, value is displayed at the end of listing after the text "Val"):>> Adr.1,DF:0CH (8 digit BCD)(inst. val),VIF:05H=Energy 0*10^2 [Wh],VIFE:7DH=Multiplicative corr. factor 10^3,Val:0 >> Adr.2,DF:0CH (8 digit BCD)(inst. val),VIF:15H=Volume 0*10^-1 [m3],Val:0 >> Adr.3,DF:0CH (8 digit BCD)(inst. val),VIF:3DH=Volume Flow 0*10^-1 [m3/h],Val:0 >> Adr.4,DF:0CH (8 digit BCD)(inst. val),VIF:2DH=Power 0*10^2 [W],Val:0 >> Adr.5,DF:02H (16 bit int)(val during err),VIF:5AH=Flow temperature 0*10^-1 [C],Val:0 >> Adr.6,DF:02H (16 bit int)(val during err),VIF:5EH=Return temperature 0*10^-1 [C],Val:0 >> Adr.7,DF:03H (24 bit int)(val during err),VIF:60H=Temperature difference 0*10^-3 [K],Val:0 >> Adr.8,DF:0CH (8 digit BCD)(inst. val),VIF:78H=Fabrication No.,Val:53155203 >> Adr.9,DF:0CH (8 digit BCD)(inst. val),VIF:7DH=Extension of VIF-codes,VIFE:10H=Customer location,Val:53155203
Address of header objects: in 0.subadr format enables to address objects located in a header of an answer. A device can answer using fixed or variable responses that have different header contents. The following table lists header objects and their addresses for fixed and variable respond.
Object Value type Address in fix respond Address in variable respond Identification No. Ci, TxtI 0.0 0.0 Manufacturer TxtI (3 characters) - 0.1 Version Ci - 0.2 Medium Ci - 0.3 Access No. Ci 0.1 0.4 Status Ci 0.2 0.5 Signature Ci - 0.6
An example of a debug log for variable response:Variable data respond CI=0x72 mode 1 from St:'B.MBUS_SENSUS'(0) detected. >> Adr.0.0,Identification No.,Val=53155203 >> Adr.0.1,Manufacturer,Val='SEN' >> Adr.0.2,Version,Val=12 >> Adr.0.3,Medium,Val=4 >> Adr.0.4,Access Nr.,Val=50 >> Adr.0.5,Status,Val=16 >> Adr.0.6,Signature,Val=0
Writing
An output text I/O tag (TxtO) with address 1 is designated for writing. The opening sequence <68><Length><Length><68> and the ending <CRC><16> are added to the data written to the I/O tag.
The write is successful if a short reply <E5> is received from the station.
Example script for Sensus HRI-Mei (communication module for water meters Sensus HRI-MeiStream and Sensus HRI-MeiStream Plus):
Blok kódu | ||||
---|---|---|---|---|
| ||||
; command Clearing Rotation Counters
; sent request and received response (header is first 4 bytes, footer is last 2 bytes)
;L:L.Sensus_Mei REQ-<68><08><08><68><73><00><51><0F><02><1F><20><7A><8E><16>
;L:L.Sensus_Mei RSP-<E5>
TEXT _stAdr = %Chr(%StrToI("16#00#")) ; station address
TEXT _val
_val := %Chr(%StrToI("16#73#")) + _stAdr + %Chr(%StrToI("16#51#")) + %Chr(%StrToI("16#0F#")) + %Chr(%StrToI("16#02#")) + %Chr(%StrToI("16#1F#")) + %Chr(%StrToI("16#20#")) + %Chr(%StrToI("16#7A#"))
M.Mei_write := _val |
Kotva | ||||
---|---|---|---|---|
|
...
Info | ||
---|---|---|
| ||
You can read a blog about M-Bus protocol: Communication – M-Bus |
Info | ||||||
---|---|---|---|---|---|---|
| ||||||
The attached ZIP contains the configuration of the line, station, and I/O tags with the M-Bus protocol that communicate with the Sensus MeiStream 150 flowmeter with the HRI-Mei communication module and using an EthMBus-5 converter manufactured by JC-e in UDP mode (the converter has an IP address of 192.168.1.1 in the line configuration).
|
Kotva | ||||
---|---|---|---|---|
|
...
- Ver. 1.0 - June 26th, 2000 – Document creation.
- Ver. 1.1 – November 9th, 2000 – Testing Danfoss CALSTREEM.
- Ver. 1.2 – December 14th, 2000 – Change of the outputs AUX1 and AUX2 from Ci to Ai
- Ver. 1.3 - November 22nd, 2005 - Redesigned by M-Bus Rev. 4.8.
- Ver. 1.4 - March 10th, 2021 - Added "Accept Reply To Broadcast" parameter
- Ver. 1.5 - June 14, 2024 - Support fro writing
Info | ||
---|---|---|
| ||
...