0% found this document useful (0 votes)
68 views8 pages

DIGISENS - FAQ - Modbus Protocol

Uploaded by

mangabriel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
68 views8 pages

DIGISENS - FAQ - Modbus Protocol

Uploaded by

mangabriel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

DIGISENS

sensors
Modbus protocol_ FAQ
MEASUREMENT

Measurement order / measures registers

Measurement order :

DIGISENS sensors make measurement only after an order from the master.
Write 0x001F into the register 0x0001 to start measurement of ALL parameters of the sensors.

Possible but not recommanded, for example, writing 0x01 into the register 0x0001 to start only temperature measure.
Please note that parameters #1, 2, etc need temperature for compensation. In some cases, parameter #2, #3 need
parameter #1 value to be calculated.

Measurement value :

After measurement delay, defined for each sensor (read 0x00A4, sampling delay), the master reads the measurement
value into one register for one parameter or all the consecutive registers (see table below).

Extract of « Digital sensor Frame_v3_0_0_20191125_UK.xls » document.

0x0053 RAM r temperature measurement float 2

0x0055 RAM r measurement of parameter 1 float 2

0x0057 RAM r measurement of parameter 2 float 2

0x0059 RAM r measurement of parameter 3 float 2

0x005B RAM r measurement of parameter 4 float 2

2
ERROR CODES

DIGISENS sensors : classical error codes

9999 : value out of range → Verify user calibration or range activated vs current fluid characteristics

9998 : Init default value at power up (modbus init) → Send measurement request to the probe, no measure yet
available

9996 : Measurement overflowed SDI12 digits → SDI12 can not represent the result, use Modbus / Verify Calibration
(reset to factory)

3
ERROR CODES

DIGISENS sensors : Averaging

Setting Average is done by writting the appropriate value in 170 (hex=0x00AA), between 1 and 50

The user need to keep asking measurements requests (each new value will be used for sliding average)

For all DIGISENS sensors, sliding averaging function is reset when the averaging value is changed (no reset if Sensor is
shutting down).

Consequently, when the power comes back, the range of the averaging will start increasing until the quantity of values is
enough to calculate the averaging defined by the user.

For example, averaging defined at 10 :

first measure = no averaging

Second measure = average with the two available measures

Third measure = average with the three available measures

...

10th measure = average with all measures obtained since the beginning

11th measure =average with last ten measures

4
MEASUREMENT CONFIGURATION

DIGISENS sensors : measurement configuration RESET (slide 1/3)

How to put back sensor in default measurement mode ?


Registers 0x00A5 (165) to 0x00A9 (169) allows the following configuration for each measurement parameters (T/P1/P2/P3/P4) :
by default all values of those registers must be 0 (dec) = 0x0000 (hex) = 0b0000 0000 0000 0000 (bin)

The client Sensor seems to have no effect of Factory Calibration or User Calibration

Client must write 0x0000 in registers :


- 0x00A5 (165) : Temperature Measurement Configuration
- 0x00A6 (166) : Parameter 1 Measurement Configuration
- 0x00A7 (167) : Parameter 2 Measurement Configuration
- 0x00A8 (168) : Parameter 3 Measurement Configuration
- 0x00A9 (169) : Parameter 4 Measurement Configuration

This means the measurement are outputed as « Corrected & Calibrated Measurement »
The measuremnts are in « Autorange »
There is no « External Compensations » activated
There is no « delayed » calibration sequence engaged.

5
MEASUREMENT CONFIGURATION

DIGISENS sensors : measurement level configuration (slide 2/3)


CgMes (Corrected, Limited, .., Raw) / CgGamme for Range (Auto, 1,2,3,4...)

Registers 0x00A5 (165) to 0x00A9 (169) allows the following configuration for each measurement parameters (T/P1/P2/P3/P4) :
by default all values of those registers must be 0 (dec) = 0x0000 (hex) = 0b0000 0000 0000 0000 (bin)

==> All sensors must be used with CgMes = 00 for all parameters unless you know exactly
why you need something else

- Measurement Correction Level CgMes (2 bits ==> 4 possibles vlaues) : must be 0b00 by
default (fully corrected measure),

0b00 : Full corrected and compensated measurement (final measurement with all
compensations)

0b01 : Often the same measure but without limations (sometimes not fully temperature
compensated)

0b10 : Most of the time it’s reserved to factory (may be a totally uncompensated measurement,
maybe in another unrelated unit) – Not for Client

0b11 : Sometimes RAW measurement (unkown unit, such as direct voltage measurement
without any conversion can be anything – Factory Only

The measurement returned depending of parameter is specific to each sensor (see the associated tab such as
« Conductivity CTZ » in "POD_TramesCom_vX_Y_Z".

If the client is using a parameter such as 0b11 (raw measurement) which is referenced as « NU » (NOT USED)
in the documentation, After Sales must invite him to use 0b00, and no information will be provided by R&D.

For example a client which have 0x0002 in 0x00A6 for CTZ will not have the appropriate result for
Conductivity (not compensated, or not using « user calibration », ...

6
MEASUREMENT CONFIGURATION

DIGISENS sensors : measurement all configuration (slide 3/3)


CgMes (Corrected, Limited, .., Raw) / CgGamme for Range (Auto, 1,2,3,4...)

Registers 0x00A5 (165) to 0x00A9 (169) allows the following configuration for each measurement parameters (T/P1/P2/P3/P4) :
by default all values of those registers must be 0 (dec) = 0x0000 (hex) = 0b0000 0000 0000 0000 (bin)

- Measurement Correction Level CgMes (2 bits ==> 4 possibles vlaues) : must be 0b00 by
default (fully corrected measure), allows to set the level of measurement correction (not all
levels are accessible to final clients, mostly the client can use fully compensated and corrected
measurement 0b00). The measurement returned depending of parameter is specific to each
sensor (see the associated tab such as « Conductivity CTZ » in "POD_TramesCom_vX_Y_Z".
If the client is using a parameter such as 0b11 (raw measurement) which is referenced as
« NU » (NOT USED) in the documentation, After Sales must invite him to use 0b00, and no
information will be provided by R&D.

- External Compensation Activations Flags CgTEX,Cg1EX,Cg2EX,Cg3EX (4 x 1 bits => 4 x 1 flag) : must be 0b0000 by default
(no external compensations) thoses flags allows activation of external compensations if it’s used by the sensor. In addition to the
activation using the flag, a compensation values must also be injected in the appropriate register (such as Pressure for Optod).

- Range choosing : CgGamme (3 bits ==> 5 possible values here) : must be 0b000 by default for automatic range. Allow to
choose between « auto / range 1 / range 2 / range 3 / range 4 (if applicable depending of Sensors).

- Posponed Calibration CgDif (2 bits =>2 possible values here) : 0b00 by default (nothing), used for specific calibration with delayed
calibration such as MES.

7
8

You might also like