cfg#mul0 5
Multiplier[0] = 5
cfg#div0 100
Divider[0] = 100
cfg#val0
Value[0] : 2000 * 5 / 100 -> 100
cfg#
From the display of summary shown in the last sequence of commands it is evident that current status value (2000)
will be interpreted as output value 100 (m
3
). As one unit of the counter represents 50 litres, output value of the
counter is: 2000*50 = 100 000 litres = 100 m
3
.
By using of
”dib[index]”
command a value of DIF code could be set. The DIF code describes character of
the variable, number of
”
storage” and format of data field according to the M-Bus standard. Default setting of DIF
parameters of the module counters is as follows:
counter:”0” DIF = 04 00 (instant value, 32-bit integer, storage No ”0”)
counter:”1” DIF = 44 00 (instant value, 32-bit integer, storage No ”1”)
Warning: It is not recommended to make changes of DIF parameter.
By using of
”vib[index]”
command a value of VIF code could be set.
The VIF code describes the kind of
measured quantity (e.g. volume, temperature, voltage...) and the measuring unit (including multiplier) in which
the value is presented (e.g. m
3
,
◦
C, mV, kWh...) according to the M-Bus standard. Default setting of VIF param-
eter of all counters is:
VIF = ”13” (quantity:
”
Volume”, measuring unit: 10
−
3 * m
3
)
It means that with using of default setting the information message contains value of measured volume in thousandth
of m
3
, i.e.
in litres.
If a watermeter is connected to the module with default setting of VIF code, it is necessary
to check out how many litres represent one measuring pulse and setup multiplier and divisor values so as to get
output value in litres. If, as an example, the watermeter generates measuring pulse after each 10 litres of volume,
it is necessary to set multiplier to value ”10”.
If it is needed to get volume in other units than litres (e.g. in m
3
), or other quantity than volume is measured (e.g.
electrical work in kWh), it is necessary to adjust values of multiplier and divisor to get result in required units as
well as setup correct VIF value to ensure correct presentation of the unit in auxiliary information.
Examples of settings of VIF code
Example of VIF setting in case the water consumption is presented in m
3
:
Setup values of multiplier and divisor in order to convert output value into ”m
3
” units (see example of multi-
plier/divisor setting above). Calculate value of VIF code for ”m
3
” units as follows:
”
Codes for Value Information Field (VIF)” table of M-Bus standard designates for
”
Volume” quantity ”0001 0nnn”
code, where the result is in 10
(
nnn
−
6) m
3
units. It means that the last three bits of code determine value of unit
multiplier. To get result in litres it is necessary to use multiplier 10
(
−
3) (because 1 liter = 0.001 m
3
), so that the
value of last three bits must be ’3” (nnn=3). In this case the multiplier is 10
(
3
−
6), that is 10
(
−
3) = 0.001). It
means that the correct VIF code for volume in litres is ”0001 0
011
”, because decadic value nnn=3 converted into
binary code means ”011” value. Conversion of binary ”00010011” value into decadic transcription gives number
”13”, what is default setting of VIF parameter.
To present the measured volume in m
3
, it is necessary to put multiplier ”1” before
”
m
3
” value. For this case the
value of ”nnn’ must be ”6” (so that the multiplier value is 10
(
6
−
6), that is 10
(
0) = 1). The correct value of VIF
code for volume in m
3
is ”0001 0
110
” (because decadic value nnn=6 converted into binary code means ”110” value).
Conversion of binary ”00010110” value into decadic transcription gives number ”16”, what is required setting of
VIF parameter.
Parameter VIF can be setup to ”16” value as follows:
cfg#vib0
VIB[0] : 13
cfg#vib0 0x16
Set VIB[0] : 16
VIB[0] : 16
cfg#
WB169-SI2
13