All rights reserved. No part of this document may be reproduced, stored in a retrieval system, or
transmitted in any form without writtenpermission from HAMILTON Bonaduz AG.
The contents of this manual are subject to change without notice. Technical changesreserved.
All efforts have been made to ensure the accuracy of the contents of this manual. However, should any
errors be detected, HAMILTON Bonaduz AG would greatly appreciate being informed of them.
The above notwithstanding, HAMILTON Bonaduz AG can assume no responsibility for any errors in
This document describes in detail the pH ARC Sensors Modbus RTU interface. It is addressed to
software programmers.
The general information about Modbus command structures and its implementation in the HAMILTON
ARC Sensor family is described in detail in Chapter 1 of the
“VISIFERM DO Modbus RTU Programmer’s Manual”(p/n 624179/01).
If you need this general information about Modbus programming, then please consult p/n 624179/01.
In the present manual, only the specific command structure for the pH ARC Sensors is described. It is
valid for the firmware version:
EPHUM011
Please check the softwareversion by reading register 1032.
This present definition of the command structure is an additional document to the Operating
Instructions of the specific pH ARC Sensors. Before reading this manual, the operating instructions of
the sensors should be read and understood.
In order to communicate with a pH ARC Sensor over ModbusRTU protocol a Modbus master terminal
application software is needed. The Modbus RTU is an open standard and a number of free and
commercial application toolkits are available.
This manual contains examples and illustrations from WinTECH Modbus Master ActiveX Control tool:
WinTECH (www.win-tech.com) “Modbus Master OCX for Visual Basic”. The Modbus Organisation
(www.modbus.org/tech.php) provides other links to a wide variety of Modbus terminal softwares.
In the present manual the addressing of the Modbus registers starts at 1. But the Modbus master
protocol operates with register addresses starting at 0. Usually, the Modbus master software translates
the addressing. Thus, the register address of 2090 will be translated by the Modbus master software to
2089 which is sent to the sensor (Modbus slave).
Attention:
When configuring and calibrating the sensor, please limit write operations to a reasonable number.
More than 100’000 write operations will physically damage the memory of the sensor.
Furthermore, for the Free User Memory Space (see chapter 2.9.3), the write operations are limited to
10’000.
2.2Operator levels and Passwords
2.2.1 Reading / Setting Operator Level
A pH ARC Sensor can be operated in three different operator levels. Each operator level allowsa
defined access to a specific set of commands.
Figure 2.2.1.1: Definition of operator level and default passwords
At each power up or processor reset, the operator level falls back to the default level U.
The active operator level can be read and written in register 4288.
Figure 2.2.1.7: Example for a Modbus error. If the level or the password is not correct, (Operator level =
0x0B), the sensor answers with a Modbus error message “Slave device exception response”
(see chapter 1.6).
0x300
0x030
0x0C18111978
0x0B18111978
Modbus address: 4288Length: 4Type: 3
Modbus address: 4288Length: 4Type: 16
Modbus address: 4288Length: 4Type: 16
Modbus address: 4288Length: 4Type: 16
Read
Write
Write
Write
2.2.2 Changing Passwords for Operator Level
The passwordsfor accessing the operator levels A and S can be modified by S (Specialist) only. U
(User) and A (Administrator) have no right to change any password. The new password will remain
stored after power down.
Start
register
42924LevelNew password16NoneS
Figure 2.2.2.1: Definition of register 4292.
Command: Password
Parameter:Operator levelPass number
Format:HexDecimal
Value:
Figure 2.2.2.2: Example to set the Password of operator level S (code 0x30) to 12345678.
A pH ARC Sensor has two individual physical analog interfaces that have identical functionalities, but
can be configured independently from each other.
Analog Output Interface 1 (AO1)
Analog Output Interface 2 (AO2)
The number of analog interfaces is defined in register 4320.
Start
register
43202Available analog interfaces3, 4U/A/Snone
Figure 2.4.1.1: Definition of register 4320.
Command: Avail analog interfaces
Parameter:Available analog
Format:Hex
Value:
Figure 2.4.1.2: Example to read the available analog interfaces. The answer is “0x03”meaning that
Number of
registers
interfaces
0x03
there exists an Analog Interface 1 (AO1) and an Analog Interface 2 (AO2).
Reg1 / Reg2Modbus
function code
Modbus address: 4320Length: 2Type: 3
Read
access
Write
access
Read
2.4.2 Available Analog Interface Modes
With register 4322, the available analog interface modes for AO1 and AO2 are defined
Start
register
43228Available
Figure 2.4.2.1: Definition of register 4322. It defines the analog interface modes available for AO1 and
Number of
registers
AO2. The analog interface modes are described in Figure 2.4.2.2.
Reg1 /
Reg2
Analog
Interface
Modes for
AO1
Reg3 /
Reg4
Available
Analog
Interface
Modes
for AO2
Reg5 /
Reg6
reservedreserved3,4U/A/Snone
Reg7 /
Reg8
Modbus
function
code
Read
access
Write
access
Code
(Hex)
0x004-20 mA inactiveAnalog interface deactivated
0x014-20 mA fixedSet to a constant output value for current loop testing
0x024-20 mA linearLinear output of measurement (PMC1 / 6)
0x044-20 mA bilinearBilinear output of measurement (PMC1 / 6)
Figure 2.4.2.2: Definition of the analog interface modes, valid for both AO1 and AO2.
Command: Analog Interface Modes
Parameter:Available Analog
Format:HexHexHexHex
Value:
Figure 2.4.2.3: Example to read register 4322: all modes defined in figure 2.4.2.2 are available for both
624300/01page 9 / 67
Analog Interface
Mode
Interface Modes for
AO1
0x070x070x00x0
AO1 and AO2.
Description
Modbus address: 4322Length: 8Type: 3
Available Analog
Interface Modes for
AO2
44902Available Primary Measurement Channels
Figure 2.4.5.1.1: Definition of register 4362 / 4490.
For the definition of the Primary Measurement Channels(PMC), see chapter 2.5.
Code
(Hex)
0x01PMC1 (pH)
0x20PMC6 (temperature)
Figure 2.4.5.1.2: Code for selection of the primary measurement channel.
Command: Available PMC AO1
Parameter:Available PMC 20 mA
Format:hex
Value:
Figure 2.4.5.1.3: Example to read the available Primary Measurement Channels (PMC) for AO1. The
Number of
registers
Primary Measurement Channel (PMC)
not available
0x21
hexadecimal value of “0x21”defines that PMC1 (pH) or PMC6 (temperature) can be mapped to
AO1. Register 4490 contains the same value “0x21”. Accordingly, PMC1 or PMC6 can be
mapped to AO2 as well.
Reg1 / Reg2Modbus
function code
3, 4U/A/Snone
for AO1
3, 4U/A/Snone
for AO2
Modbus address: 4362Length: 2Type: 3
Read
access
Write
access
Read
2.4.5.2Selecting the Primary Measurement Channel to be Mapped to the Analog Interface
Start
register
43642SelectedPMC for AO13, 4, 16U/A/SS
44922SelectedPMC for AO23, 4, 16U/A/SS
Figure 2.4.5.2.1: Definition of register 4364 / 4492. Only one bit can be set.
Command: Active PMC AO1
Parameter:Current PMC 20mA
Format:hex
Value:
Figure 2.4.5.2.2: Example to read the current primary measurement channel mapped to AO1, defined
624300/01page 11 / 67
Number of
registers
0x01
in register 4364. The value “0x01”is returned, saying that PMC1 is mapped to AO1 (factory
setting).
The factory setting for register 4492 is “0x20”, mapping PMC6 to AO2.
Figure 2.4.5.3.2: Example to read the min and max output current of AO1. Min is fixed to 3.5 and Max
2.4.5.4Reading the Minimum, Maximum and Mid Current for Measurement Value Output
Start
register
43706Min output for
44986Min output for
Figure 2.4.5.4.1: Definition of register 4370 / 4498
Number of
registers
3.522
is fixed to 22 mA (Currents above 20 and below 4 mA indicate erroneous measurements or
errors).
The same values are stored in register 4494 for AO2.
Number of
registers
Reg1 / Reg2Reg3 / Reg4Modbus
function code
Max physical
output current
for AO1 [mA]
output current
for AO2 [mA]
Reg1 / Reg2Reg3 / Reg4Reg5 / Reg6Modbus
measurement
value for AO1
[mA]
measurement
value for AO2
[mA]
output current
for AO1 [mA]
Max physical
output current
for AO2 [mA]
Modbus address: 4366Length: 4Type: 3
Max output for
measurement
values for AO1
[mA]
Max output for
measurement
values for AO2
[mA]
3, 4U/A/Snone
3, 4U/A/Snone
Mid output
(bilinear) for
measurement
values for
AO1 [mA]
Mid output
(bilinear) for
measurement
values for
AO2 [mA]
Read
access
function
code
3, 4U/A/Snone
3, 4U/A/Snone
Write
access
Read
access
Read
Write
access
Command: MinMaxMid current AO1
Parameter:Min current [mA]Max current [mA]Mid current [mA]
Format:FloatFloatFloat
Value:
Figure 2.4.5.4.2: Example to read the min, max and mid output current for measurement values for
AO1. They are fixed to 4, 20 and 12 mA.
The same values are stored in register 4498 for AO2.
Note:
Mid current must alwaysbe defined. However, in linear output mode, the mid current value has no
physical meaning and will not affect the 4-20 mA output.
2.4.5.5Reading the Selected Physical Unit for Analog Interface
Start
register
43762Selected physical unit of AO1
45042Selected physical unit of AO2
Figure 2.4.5.5.1: Definition of register 4376 / 4504.
Command: Avail unit AO1
Parameter:Available unit
Format:Hex
Value:
Figure 2.4.5.5.2: Example to read the selected unit of the selected PMC of AO1. The value returned is
2.4.5.6Defining the Measurement Values for 4, 12 and 20 mA Output
Start
register
43786Measurement
45066Measurement
Figure 2.4.5.6.1: Definition of register 4378 / 4506.
Number of
registers
0x001000
“0x001000”, accordingly, the unit is pH. The physical unit for PMC is defined in Reg. 2090 or
2410 and applies automatically for 4-20 mA output.
Number of
registers
Reg1 / Reg2Modbus
function code
3, 4U/A/Snone
(see chapter 2.5.1)
3, 4U/A/Snone
(see chapter 2.5.1)
Modbus address: 4376Length: 2Type: 3
Reg1 / Reg2Reg3 / Reg4Reg5 / Reg6Modbus
function
code
value at
Min Output
Current (4 mA)
for AO1
value at
Min Output
Current (4 mA)
for AO2
Measurement
value at
Max Output
Current (20
mA) for AO1
Measurement
value at
Max Output
Current (20
mA) for AO2
Measurement
value at
Mid Output
Current (12
mA) for AO1
Measurement
value at
Mid Output
Current (12
mA) for AO2
3, 4, 16U/A/SS
3, 4, 16U/A/SS
Read
access
Read
access
Write
access
Read
Write
access
Command: MinMaxMid value AO1
Parameter:Min valueMax valueMid value
Format:FloatFloatFloat
Value:
Figure 2.4.5.6.2: Example to set the min value to 3 (for 4 mA), the max value to 10 (for 20 mA) and the
mid value to 7 (for 12 mA). The corresponding physical unit can be read in register 4376 / 4504
and in 2090 / 2410.
Note:
Mid current must alwaysbe defined. However, in linear output mode, the mid current value has no
physical meaning and will not affect the 4-20 mA output.
Attention:
When assigning measurement values to 4-20 mA analog output by using register 4378 / 4506, you
need to consider the following:
The PMC you have mapped to AO1 / AO2 (register 4364 / 4492)
The physical unit currently in use for the selected PMC (register 2090 for PMC1 (pH) and
register 2410 for PMC6 (temperature).
Therefore, when the operator redefines one of the register 4364 / 4492, 2090 / 2410, the definitions of
the register 4378 / 4506 should be reviewed. If not, the current output at the 4-20 mA interfaces may be
wrong.
Note:
The physical unit of the analog output correspondsalways to the unit that is set for the selected PMC
(register 2090 for PMC1 or register 2410 for PMC6). Accordingly, not only the pH value is selectable at
the 4-20 mA interface, but also mV values, degrees centigrade or Kelvin.
Example:
Register 4364 is set to 1 (PMC1 is mapped to AO1).
Register 2090 is set to 0x1000 (the unit “pH”is assigned to PMC1).
Register 4378 is set to 2 and 10 (4 mA = pH 2, 20 mA = pH 10).
The sensor reads currently pH 4, the output at the 4-20 mA is accordingly 8 mA.
The operator now re-assigns register 2090 to the value of 0x200000 (unit = mV), but does not modify
all other registers. The sensor is still at pH 4 and reads now +170 mV. At the analog output, as 20 mA
is programmed to a value of 10 by register 4378, the current will go to the maximum value of 20 mA.
This will generate an interface warning “4-20 mA current set point not met”.
2.4.5.7Defining a Constant Current Output for Testing
Note:
For constant current output, the AO1 / AO2 must be set to analog interface mode 0x01:
Start
register
43842Constant current output value for
45122Constant current output value for
Figure 2.4.5.7.1: Definition of register 4384 / 4512.
Command: Fixed value AO1
Parameter:Fixed value [mA]
Format:Float
Value:
Figure 2.4.5.7.2: Example to read the constant current output in mode 0x01 for AO1. It is set to 10 mA.
2.4.5.8Defining the Error and Warning Output of the 4-20 mA Interface
Errors and warnings can be mapped to the AO1 / AO2.
Start
register
43868Code of
45148Code of
Figure 2.4.5.8.1: Definition of register 4386 / 4514.
Bit #Code (hex)Behaviour of the 4-20 mA interface in case of errors and warnings
0 (LSB)0x000001Error continuous output
160x010000Warning continuous output
Figure 2.4.5.8.2: Code for the 4-20 mA interface in case of errors and warnings.
Number of
registers
Reg1 /
Reg2
warnings
and errors
(see Figure
2.4.4.8.2)
for AO1
warnings
and errors
(see Figure
2.4.4.8.2)
for AO2
not available
not available
Reg3 /
Reg4
Current
in case of
“warning”
[mA]
for AO1
Current
in case of
“warning”
[mA]
for AO2
Reg5 /
Reg6
Current
in case of
“error”
[mA]
for AO1
Current
in case of
“error”
[mA]
for AO2
Reg7 /
Reg8
Current in
case of
“T exceed”
[mA]
for AO1
Current in
case of
“T exceed”
[mA]
for AO2
Modbus
function
code
3, 4, 16U/A/SS
3, 4, 16U/A/SS
Read
access
Write
access
If the corresponding bits for the errors and warnings are not set (=0x00), the respective options are
inactive.
The default settings are:
Code 0x01
current in case of warnings:3.5 mA
current in case of errors:3.5 mA
current in case of temperature exceed: 3.5 mA
Command: ErrorWarnings AO1
Parameter:Warning codeCurrent in case of
Format:HexFloatFloatFloat
Value:
Figure 2.4.5.8.4: Example: Read the settings for AO1 in case of warnings and errors. Warning code
0x010001 corresponds to the continuous output current in case of warning (0x010000) and
continuous output current in case of error (0x01) of 3.5 mA. The output current in case of
temperature exceed is 3.5 mA.
the setpoint to which the current is regulated in a closed loop control
the electrical current the sensor is measuring to feed the closed loop control
These values are helpful in order to compare against the externally measured electrical current.
Start
register
44144Set point
45424Set point
Figure 2.4.6.1: Definition of register 4414 / 4542.
Command: Internal values AO1
Parameter:Set point
Format:FloatFloat
Value:
Figure 2.4.6.2: Example to read the internal values of AO1, depending on the analog interface mode.
Number of
registers
[mA]
9.991869.99742
Reg1 / Reg2Reg3 / Reg4Modbus
[mA]
AO1
[mA]
AO2
function code
Internally measured
[mA]
AO1
Internally measured
[mA]
AO2
Command: Avail. PMC and SMC
Parameter:Avail. PMC and
Format:Hex
Value:0x06E1
Figure 2.5.1.3: Example to read Reg. 2048 for Polilyte Plus ARC.
Number of
registers
SMC
In case of operator A/U, the value 0x06E1 is returned. In other words the following PMC and
SMC are available to A/U: PMC1 / PMC6 / SMC1 / SMC2 / SMC4 / SMC5
In case of operator S, the value 0x066E1 is returned. In other words the following PMC and SMC
are available to S:PMC1 / PMC6 / SMC1 / SMC2 / SMC4 / SMC5 / SMC8 / SMC9
In register 2080, a plain text ASCII description of PMC1 is given.
Start
register
20808Description of PMC13, 4U/A/Snone
Figure 2.5.2.1.1: Definition of register 2080.
Command: PMC 1 text
Parameter:Text
Format:Character
Value:
Figure 2.5.2.1.2: Example to read the description. It is “pH”.
2.5.2.2Selecting the Physical Unit for PMC1
In register 2088, the available physical units for this channel are defined.
Start
register
20882Available physical units of PMC13, 4U/A/Snone
Figure 2.5.2.2.1: Definition of register 2088.
Command: PMC1 available units
Parameter:Units
Format:Hex
Value:
Figure 2.5.2.2.2: Example to read the available physical units of PMC1: pH (0x001000) + mV
Number of
registers
pH
Number of
registers
0x201000
(0x200000), total 0x201000.
Reg1 … Reg8
16 ASCII characters
Reg1 / Reg2
(bitwise defined)
Modbus
function code
Modbus address: 2080Length: 8Type: 3
Modbus
function code
Modbus address: 2088Length: 2Type: 3
Read
access
Read
access
Write
access
Write
access
Read
Read
In register 2090, the active physical unit for this channel can be selected, by choosing one of the
physical units that are defined in register 2088.
Start
register
20902Selected active physical unit for the
Figure 2.5.2.2.3: Definition of register 2090. Only one bit can be set.
Command: PMC1 set unit
Parameter:Unit
Format:Hex
Value:
Figure 2.5.2.2.4: Example to set the physical unit of PMC1 to pH (0x1000).
Changing the physical unit has also an influence on the output of AO1 / AO2, as the same physical unit
is active for the analog outputs. All limits of the 4-20 mA analog output have to be redefined after
changing the physical unit!
Figure 2.5.2.3.3: Example to read register 2090. Physical unit is set to mV (0x200000), PMC1 is
175.9922 mV, Status is 0x00, Min allowed value is -414.0028 mV, Max allowed value is
414.0028 mV.
Write
access
Read
Read
For the definition of the measurement status see chapter 2.5.4.
Attention:
You cannot read selectively the registers 3 and 4 for the measurement value only. You have to read the
entire length of the command (10 registers) and extract the desired information.
In register 2400, a plain text ASCII description of PMC6 is given
Start
register
24008Description of PMC63, 4U/A/Snone
Figure 2.5.3.1.1: Definition of register 2400.
Command: PMC6 text
Parameter:Text
Format:Character
Value:
Figure 2.5.3.1.2: Example to read the description. It is “T”(Temperature).
2.5.3.2Selecting the Physical Unit for PMC6
In register 2408, the available physical units of PMC6 are defined.
Start
register
24082Available physical units of PMC63, 4U/A/Snone
Figure 2.5.3.2.1: Definition of register 2408.
Command: PMC6 available units
Parameter:Units
Format:Hex
Value:
Figure 2.5.3.2.2: Example to read the available physical unit for PMC6. K (0x02) + °C (0x04), total
0x06.
Number of
registers
T
Number of
registers
0x06
Reg1 … Reg8
16 ASCII characters
Modbus address: 2400Length: 8Type: 3
Reg1 / Reg2
(bitwise defined)
Modbus address: 2408Length: 2Type: 3
Modbus
function code
Modbus
function code
Read
access
Read
access
Write
access
Write
access
Read
Read
In register 2410, the active physical unit of PMC6 can be selected, by choosing one of the physical
units that are defined in register 2408.
Start
register
24102Selected active physical unit of PMC616noneU/A/S
Figure 2.5.3.2.3: Definition of register 2410. Only one bit can be set.
Command: PMC6 set unit
Parameter:Unit
Format:Hex
Value:
Figure 2.5.3.2.4: Example to set the physical unit of PMC6 to °C (0x04).
Changing the physical unit has also an influence on the output of AO1 / AO2, as the same physical unit
is active for the analog outputs. All limits of the 4-20 mA analog output have to be redefined after
changing the physical unit!
Figure 2.5.3.3.2: Example to read register 2410. Physical unit is set to °C (0x04), PMC6 is 24.35834
°C, Status is 0x00, Min allowed value is -20 °C, Max allowed value is 130 °C.
For definition of the measurement status see chapter 2.5.4.
Attention:
You cannot read selectively the registers 3 and 4 for the measurement value only. You have to read the
entire length of the command (10 registers) and extract the desired information.
2.5.3.4Input of an Externally Measured Temperature
Unlike to the VISIFERM DO, this feature is not available for pH ARC Sensors.
2.5.4 Definition of the Measurement Status for PMC1 / PMC6
This is the definition of the status registers read in registers 2090 (PMC1) and 2410 (PMC6):
Bit #Hex codeDescription
0 (LSB)0x01Temperature out of measurement range (see chapter 2.8.1)
10x02Temperature out of operating range (see chapter 2.8.1)
20x04Calibration status not zero (see chapter 2.7.4)
30x08Warning not zero (see chapter 2.8.3)
40x10Error not zero (see chapter 2.8.4)
Figure 2.5.4.1: Definition of measurement status for Primary Measurement Channels.
pH ARC Sensors do allow access to secondary measurement values (16 in total). The access to the
individual SMC depends on the operator level. The available SMC are defined in register 2048
according to the selected operator level and the sensor type (see chapter 2.5.1).
2.5.5.1Description of SMC
The registers defined here give a plain text ASCII description of each available SMC.
Start
register
Address8Description of each SMC3, 4U/A/Snone
Figure 2.5.5.1.1: Definition of registers at Address
DescriptionAddressPlain Text
SMC12464R glassResistance of the pH glass
SMC22496R referenceResistance of the reference electrode
SMC32528R auxiliaryResistance of the auxiliary electrode
SMC42560E pH vs. refElectrical potential between glass and reference electrode
SMC52592E SG vs. refElectrical potential between solution ground and reference
SMC62624E aux vs. refElectrical potential between auxiliary electrode and reference
SMC72656E referenceElectrical potential between reference electrode and electrical
SMC82688pH actCurrent pH value (3-seconds-reading)
SMC92720T actCurrent T value (3-seconds-reading)
Number of
registers
Reg1 … Reg8
16 ASCII characters
Description
(16 ASCII)
electrode
electrode
ground
Modbus
function code
Read
access
Write
access
Figure 2.5.5.1.2: Full list of starting register addresses for the plain text ASCII description of each SMC
Example:
Command: SMC 1 text
Parameter:Text
Format:Character
Value:
Figure 2.5.5.1.3: Example to read the description of SMC1 at address 2464. It is “R glass”.
The pH ARC Sensor provides new pH readings every 3 seconds. One has the possibility to smoothen
the pH reading (PMC1) by means of a moving average applied to the 3-seconds-readings.
PA9 can be applied on 1 to 16 3-seconds-readings. The default value is 2.
Effect of Moving Average (n=1 vs n=16)
5.5
pH
pH
5.18
5.16
5.14
4.5
3.5
2.5
5.2
5
4
3
2
15:46
15:46
15:46
15:46
15:46
15:47
15:47
15:47
15:47
15:48
15:48
15:48
15:48
15:49
tim e
15:49
mov av = 1
mov av = 16
15:49
15:49
15:50
15:50
15:50
Effect of Moving Average (n=1 vs n=16)
mov av = 1
mov av = 16
5.12
5.1
15:46
15:46
15:46
15:46
15:46
15:47
15:47
15:47
15:47
15:48
15:48
15:48
15:48
15:49
15:49
15:49
15:49
15:50
15:50
15:50
tim e
Figure 2.6.2.1: Comparison of the response of a pH ARC Sensor to a change from pH 5.1 to pH 2.5,
using no moving average (n=1) or a moving average over 16 3-seconds-readings.
Using moving average, the short term signal stability can be improved; on the other hand, the response
time of the sensor increases with increasing moving average. A moving average over 16 samples
results in a response time of at least 48 s.
In register 3360, a plain text ASCII description of PA9 is given.
Start
register
33608Description of PA93, 4U/A/Snone
Figure 2.6.2.1.1: Definition of register 3360.
Command: Moving average text
Parameter:Text
Format:Character
Value:
Figure 2.6.2.1.2: Example to read the description for “Moving average“.
2.6.2.2Selecting the Physical Unit and Writing the Value for PA9
In register 3368, the available physical units for PA9 are defined.
Start
register
33682Available physical units for PA93, 4U/A/Snone
Figure 2.6.2.2.1: Definition of register 3368.
Command: Moving average av. units
Parameter:Units
Format:Hex
Value:
Figure 2.6.2.2.2: Example to read the available physical units for PA9. The only one available here is
Number of
registers
Moving average
Number of
registers
0x01
“none”(0x01). For the definition of the physical units see chapter 2.5.1.
Reg1 … Reg8
16 ASCII characters
Modbus address: 3360Length: 8Type: 3
Reg1 / Reg2
(bitwise defined)
Modbus address: 3368Length: 2Type: 3
Modbus
function code
Modbus
function code
Read
access
Read
access
Write
access
Read
Write
access
Read
Start
register
33704Select physical unit
Figure 2.6.2.2.3: Definition of register 3370. Only one bit for the physical unit can be set. PA9 can be
By writing to register 3370 the active physical unit for PA9 can be selected by choosing one of the
physical units that are defined in register 3368. The value of the parameter can be set as well.
Command: Moving average
Parameter:UnitValue
Format:HexDecimal
Value:
Figure 2.6.2.2.4: Example to set the physical unit of PA9 to “none”(0x01) and the value of the moving
Number of
registers
set to the value 1-16. A value of 1 does not influence the response time of the sensor, a value of
16 increases the response time of the sensor to 48 s.
pH ARC Sensors allow to have a separate moving average on secondary measurement values:
Glass resistance
Reference resistance
The moving average can be applied on 1 to 16 3-s measurement values. The default value is 4.
Especially if high resistancesare measured, it is recommended to choose a higher moving average.
2.6.3.1Description of PA12 (Moving Average R)
In register 3456, a plain text ASCII description of PA12 is given.
Start
register
34568Description of PA123, 4U/A/Snone
Figure 2.6.3.1.1: Definition of register 3456.
Command: Moving average text
Parameter:Text
Format:Character
Value:
Figure 2.6.3.1.2: Example to read the description for “Moving average R“.
2.6.3.2Selecting the Physical Unit and Writing the Value for PA12
In register 3464, the available physical units for PA12 are defined.
Start
register
34642Available physical units for PA123, 4U/A/Snone
Figure 2.6.3.2.1: Definition of register 3368.
Command: Moving average av. units
Parameter:Units
Format:Hex
Value:
Figure 2.6.3.2.2: Example to read the available physical units for PA12. The only one available here is
Number of
registers
Moving average R
Number of
registers
0x01
“none”(0x01). For the definition of the physical units see chapter 2.5.1.
Reg1 … Reg8
16 ASCII characters
Modbus address: 3456Length: 8Type: 3
Reg1 / Reg2
(bitwise defined)
Modbus address: 3464Length: 2Type: 3
Modbus
function code
Modbus
function code
Read
access
Read
access
Write
access
Read
Write
access
Read
Start
register
34664Select physical unit
Figure 2.6.3.2.3: Definition of register 3466. Only one bit for the physical unit can be set. PA12 can be
By writing to register 3466, the active physical unit for PA12 can be selected, by choosing one of the
physical units that are defined in register 3464. The value of the parameter can be set as well.
Command: Moving average
Parameter:UnitValue
Format:HexDecimal
Value:
Figure 2.6.3.2.4: Example to set the physical unit of PA12 to “none”(0x01) and the value of the moving
average R to 7.
2.6.3.3Reading all Values for PA12
By reading register 3466, the active physical unit of measurement, the selected value, and the min and
max values can be read.
Start
register
34668Physical
Figure 2.6.3.3.1: Definition of register 3466.
Command: Moving average
Parameter:UnitValueMin valueMax value
Format:HexDecimalDecimalDecimal
Value:
Figure 2.6.3.3.2: Example to read PA12. The physical unit is 0x01 (“none”), the value is 7, and the
In register 5120, the available number of Calibration Points (CP) for Primary Measurement Channel 1
(PMC1) is defined. 8 individual CP are theoretically possible.
Start
register
51202Available number of CP for PMC1
Number of
registers
Reg1 / Reg2
(bitwise defined)
Modbus
function code
Read
access
Write
access
3, 4U/A/Snone
(see figure 2.7.1.2)
Figure 2.7.1.1: Definition of register 5120.
Bit #Hex valueDescriptionDefinition in ARC Sensors
0 (LSB)0x01CP1Calibration Point 1
10x02CP2Calibration Point 2
CP1 and CP2 are used for standard calibration (shown in this figure).
The product calibration CP6 is used to adjust the standard calibration function to specific process
conditions (the effect of CP6 is shown in Figure 2.7.3.2.1).
2.7.2.1Calibration Points 1 and 2 (Standard Calibration)
The limits for the calibration point 1 are defined in register 5152, for calibration point 2 in register 5184.
Start
register
51526Physical unit
51846Physical unit
Figure 2.7.2.1.1: Definition of register 5152 for CP1 and 5184 for CP2.
The only physical unit available for calibration is pH ! The physical unit defined in 5152, 5184 and 5312
for CP1, CP2 and CP6 is NOT linked to the physical unit defined for PMC1 in register 2090.
When performing a calibration while having the physical unit set to “mV”, the calibration status will
report “CP1: incorrect measurement unit”or “CP2: incorrect measurement unit”(see figure 2.7.4.1.1).
Command: Calibration limits CP1
Parameter:UnitMin valueMax value
Format:HexFloatFloat
Value:
Figure 2.7.2.1.2: Example to read the limits of CP1. Currently active physical unit is pH (0x01000). The
Number of
registers
Attention:
0x0100000
min and max values are both 0, indicating, that calibration at CP1 can be performed only using
defined calibration standards having discrete pH values.
Reg1 / Reg2Reg3 / Reg4Reg5 / Reg6Modbus
function code
currently
active for
CP1
currently
active for
CP2
Min value for
CP1 (in the
physical unit
as defined in
Reg1 and 2)
Min value for
CP2 (in the
physical unit
as defined in
Reg1 and 2)
Modbus address: 5152Length: 6Type: 3
Max value for
CP1 (in the
physical unit
as defined in
Reg1 and 2)
Max value for
CP2 (in the
physical unit
as defined in
Reg1 and 2)
3, 4U/A/Snone
3, 4U/A/Snone
Read
access
Read
Write
access
Command: Calibration limits CP2
Parameter:UnitMin valueMax value
Format:HexFloatFloat
Value:
Figure 2.7.2.1.3: Example to read the limits of CP2. The active physical unit is is pH (0x01000). The
min and max values are both 0, indicating, that calibration at CP2 can be performed only using
defined calibration standards having discrete pH values.
When initiating the calibration at CP1 and CP2, the measured pH and temperature have to be stable for
at least 3 minutes. The stability criteria are defined in register 5128:
Start
register
51284Max. Drift PMC1
Figure 2.7.2.1.4: Definition of register 5128.
0x0100000
Number of
registers
Reg1 / Reg2
(Float)
pH
[pH/min]
Modbus address: 5184Length: 6Type: 3
Reg3 / Reg4
(Float)
Max. Drift PMC6
Temperature
[K/min]
2.7.3.1Calibration at CP1 and CP2 (Standard Calibration)
The ARC Sensor family has a unique calibration routine. When initiating the calibration, the data set of
the sensor is automatically traced back within the last 3 minutes and a decision is made immediately if
the calibration is successful or not. The operator therefore gets an immediate result. The criteria for a
successful calibration are:
the stability of pH value and temperature over the last 3 minutes (see register 5128)
the currently measured pH value fits to one of the calibration standardsdefined in the selected
set of calibration standards
the limits of slope and offset at pH 7 have to be met
Standard Calibration at 2 calibration points
200
150
100
CP1
electrical potential glass vs. ref [mV]
50
0
-50
-100
-150
-200
01234567891011121314
CP2
pH value
Figure 2.7.3.1.1: Standard Calibration using CP1 and CP2.
CP1 and CP2 define a linear relationship between the electrical potential and the pH value. This
linear calibration function is defined by an offset at pH 7 [mV] and a slope [mV/pH]. These two
values are stored in register 5448.
Note: the pH value of CP1 can be lower or higher than the pH value of CP2. However, the
difference in pH between CP1 and CP2 must always be greater than 1 pH unit.
Notes:
In order to perform a standard calibration at CP1 and CP2, it is necessary to use commercially
available calibration standards. The operator is restricted to use those standards that are
defined in the six sets of calibration standards (see chapter 2.7.11).
There are two ways of performing a standard calibration:
- standard calibration with automatic recognition of the calibration standard:
in this case, the sensor decides on itself in what calibration standard it is immersed.
The criteria to decide on is the electrical potential measured. The sensor checks the list
of calibration standardsthat are available for automatic recognition (see chapter
2.7.11)
- standard calibration with manual selection of the calibration standard:
the operator is selecting the calibration standard in which the sensor is immersed.
Factory calibration is pH 4 at CP1 and pH 7 at CP 2.
Standard Calibration with Automatic Recognition of the Standard
Prior to calibration, the specialist selects - for each set of calibration standards - a list of calibration
standards allowed for automatic recognition (register 9530).
When the calibration is initiated, the sensor screens this list of allowed calibration standardsand
checks if the currently measured electrical potential is within the allowed range of electrical potentials,
defined for the individual calibration standards in this list.
If the sensor does find a corresponding calibration standard, the nominal pH value of the specific
calibration standard is assigned to the currently measured electrical potential. The temperature
dependency of the calibration standard is considered during the assignment.
Temperatue depend ency of Hamil ton pH buffer solutions
14
13
12
11
10
9
8
7
pH
6
5
4
3
2
1
0
0102030405060
Temper ature [°C]
Figure 2.7.3.1.2: Temperature dependency of the pH value of HAMILTON DURACAL calibration
standards.
If the sensor does not find any corresponding calibration standard, the bit representing the
corresponding status “no matching calibration standard”is set in the calibration status register.
Note that only the nominal value of the calibration standard is used for calibration. The actual value of
the calibration solution, which may deviate from the nominal value, is not taken into account and cannot
be set by the operator.
Standard Calibration with Manual Selection of the Calibration Standard
If the operator knows in what calibration standard the sensor is immersed, he can initiate the calibration
procedure by means of setting the pH value to the actual value of the calibration standard. The sensor
now screens the list of calibration standards that are allowed for manual selection (register 9530). If the
pH value entered by the operator fits in the allowed pH range of one of the allowed calibration
standards, the entered pH value is assigned to the currently measured electrical potential. The
temperature dependency of the calibration standard is considered during the assignment.
If the sensor does not find any corresponding calibration standard, the bit representing the
corresponding status “no matching calibration standard”is set in the calibration status register.
Note: using manual selection only, the actual pH value of the calibration standard can be set. However,
the actual value must be within the given tolerance of the standard in use.
Examples: (Definitionsof register 5158 and 5190 used in these examples are given in chapter 2.7.4.1,
those for register 4872 in chapter 2.8.6)
Example to calibrate at CP1 with automatic recognition:
Command: Make calibration CP1
Parameter:pH value
Format:Float
Value:
Figure 2.7.3.1.4: Example to start the calibration at CP1, setting a value of 0 for automatic
recognition of the calibration standard.
Example to calibrate at CP2 with automatic recognition:
Command: Make calibration CP2
Parameter:pH value
Format:Float
Value:
Figure 2.7.3.1.5: Example to start the calibration at CP2, setting a value of 0 for automatic
recognition of the calibration standard.
Example to read the calibration status of CP1:
Command: Calibration status CP1
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.3.1.6: Example to read the calibration status of CP1 after calibration CP1 at 0 = auto.
All bits of CP1 are zero (0x00000000), indicating that the calibration was successful. The
physical unit of the last calibration is pH (0x00001000) and the assigned pH value is 4.01
at 25°C.
0
0
0x000000000x000010004.01
Modbus address: 5162Length: 2Type: 16
Modbus address: 5194Length: 2Type: 16
Modbus address: 5158Length: 6Type: 3
Write
Write
Read
Example to read the calibration status of CP2:
Command: Calibration status CP2
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.3.1.7: Example to read the calibration status of CP2 after calibrating CP2 at 0 = auto.
All bits of CP2 are zero (0x00000000), indicating that the calibration was successful. The
physical unit of the last calibration is pH (0x00001000) and the pH value is 7.
Example to calibrate at CP1 with manual selection of the calibration standard:
Command: Make calibration CP1
Parameter:pH value
Format:Float
Value:
Figure 2.7.3.1.8: Example to start the calibration at CP1, by means of manually selecting the
calibration standard HAMILTON DURACAL 4.01 (nominal value 4.01). The operator knows
from the certificate of the specific production lot that the actual pH value is 4.00.
Figure 2.7.3.1.9: Example to read the sensor’s quality indicator
2.7.3.2Calibration at CP6 (Product Calibration)
The product calibration is a process in order to adjust the measurement of a correctly calibrated pH
ARC Sensor to specific process conditions.
Product calibration is a two stage process:
1. An initial measurementis performed while the operator takes a sample of the process solution.
At that time point the pH ARC Sensor stores its raw measurement value, temperature and
operating hour in the memory.
While the operator takes the sample to the analytics lab for reference analysis the pH ARC
Sensor is still running on its prior standard calibration (CP1 and CP2) while the initial
measurement data for the ongoing product calibration is kept in the sensor’s memory.
2. When the result of the reference analysis is available this value is assigned, at a second time
point, to the former initial measurement data stored in the pH ARC Sensor.
100
Modbus address: 4872Length: 2Type: 3
Read
The sensor is now, after valid assignment, running on a calibration function which is
compensated for the correct process conditions. The product calibration (CP6) is now active.
Performing a Cancel command for the product calibration (CP6) brings the sensor back to its still stored
standard calibration (CP1 and CP2).
If a product calibration is still active and a standard calibration (CP1 or CP2) is performed the product
calibration (CP6) is cancelled.
If the operator needs to overrun an active product calibration (old CP6) by a new product calibration
(new CP6) the above process applies in the same way. After initial measurement the pH ARC Sensor
is still running on the first product calibration (old CP6) until a valid assignment has been done (new
CP6).
What happens to the pH ARC Sensor’s calibration function upon product calibration (CP6)?
A product calibration adds an offset to the linear calibration function defined by the standard calibration
at CP1 and CP2.
Product calibration of ARC pH sensors
200
150
100
Standard Calibration function
50
0
5678910
-50
Electrical potential [mV]
-100
-150
-200
CP1
CP6
CP2
pH
Figure 2.7.3.2.1: Effect of the product calibration CP6 on an existing standard calibration function
defined by CP1 and CP2.
The operator starts with a Standard Calibration with calibration points CP1 and CP2:
CP1: pH value of calibration standard: 6electrical potential: 64.2 mV
CP2: pH value of calibration standard: 9.21electrical potential: -125.2 mV
The sensor internally calculates the calibration function, using the calibration points CP1 and
CP2. The resulting calibration function, compensated to the standard temperature 25°C, is
shown as a straight line. The calibration function is described by two parameters: the offset at pH
7 and the slope.
Some weeks later, the operator believes that the Standard Calibration function is not correct
anymore. As the process is running and he is not able to perform a standard calibration under
defined conditions in the lab, he decides to perform a product calibration CP6, in other words
adjusting the standard calibration function to the process conditions:
CP6: pH value of product: 7.2electrial potential: 5 mV
The sensor internally adds an offset to the calibration curve. The slope remains unchanged.
Another special feature of this calibration point is to switch off and back on again a product calibration.
These functions are called “restore standard calibration”and “restore product calibration”.
Note:
The sensor’s internal criteria for a successful product calibration are:
the sensor is currently in an environment corresponding to the pH ARC Sensors measurement
range.
the manually assigned pH value does not deviate more than 2 pH units from the value
All commands are executed by writing a command value to the register 5340 except for assignment
where the calibration value is written to register 5322 (see below).
Definition of the commands for product calibration
The commands for register 5340 are defined as follows:
Code HexDefinition of commands
0x01Perform initial measurement
0x02Cancel an active product calibration
0x03Restore a standard calibration from an active product calibration
0x04Restore a product calibration from an active standard calibration
Figure 2.7.3.2.2: Definition of the commands related to the product calibration
Start
register
53402Code as defined in Figure 2.7.3.2.23, 4, 16A/SA/S
Figure 2.7.3.2.3: Definition of register 5340
2.7.3.2.1Product calibration: Initial measurement
Upon process sample collection for laboratory analysis the command for initial measurement is sent to
the sensor.
This is achieved by writing the command 0x01 to register 5340 which performs the initial measurement
and stores the corresponding measurement values in the sensor.
After successful initial measurement a correct value must be assigned to the initially stored
measurement data.
This is achieved by writing the correct calibration value to register 5322.
Figure 2.7.3.2.2.2: Example to assign a calibration value to the above performed initial measurement.
From now on the sensor is measuring using the here performed product calibration.
The calibration status (register 5318) is 0x14000000 meaning that a correct value has been assigned
and that the product calibration is active (see figure 2.7.4.1.1).
2.7.3.2.3Product calibration: Cancel
To cancel an active product calibration or an active initial measurement the command 0x02 is written to
register 5340.
Figure 2.7.3.2.3.1: Example to cancel an active product calibration or an initial measurement.Writing
the command 0x02 (cancel) to register 5340.
Performing this action the product calibration or any initial measurements are canceled. The values of
the prior product calibration are removed from the sensor’s memory. From now on the sensor is
measuring using its prior CP1 / CP2 standard calibration.
The sensor’s calibration status (register 5318) will be reading 0x00 again (see figure 2.7.4.1.1).
2.7.3.2.4Product calibration: Restore standard calibration
If a product calibration is active this product calibration can be temporarily switched off by writing the
command 0x03 to register 5340.
Performing this action the values of the product calibration remain stored in the sensor’s memory.
Command: CP6: Restore standard
Parameter:Command
Format:Hex
Value:
Figure 2.7.3.2.4.1: Example to restore a standard calibration from an active product calibration. Writing
command 0x03 (restore standard calibration) to register 5340.
From now on the sensor is measuring using its prior CP1 / CP2 standard calibration.
The sensor’s calibration status (register 5318) will be reading “CP6 assigned”(0x10000000) meaning
that a valid assignment for a product calibration is available in the sensor’s memory (see figure
If a valid but inactivated product calibration is available in the sensors memory, the calibration status is
reading “CP6 assigned”(corresponding to 0x10000000, see figure 2.7.4.1.1), this stored product
calibration can be restored or reactivated by writing command 0x04 to register 5340.
Figure 2.7.3.2.5.1: Example to restore an available product calibration from an active standard
calibration. Writing command 0x04 (restore product calibration) to register 5340.
0x03
0x04
Modbus address: 5340Length: 2Type: 16
Modbus address: 5340Length: 2Type: 16
Write
Write
From now on the sensor is measuring using its prior CP6 product calibration.
The sensors calibration status (register 5318) will be reading 0x14000000 (corresponding to “CP6
assigned”and “CP6 active”, see figure 2.7.4.1.1) again.
If this command is performed without available product calibration in the sensor’s memory the sensor
will respond with a Modbus exception since this command is not valid.
2.7.4.1Reading the Calibration Status of CP1 and CP2
A standard calibration is not always successful. In order to analyze what has gone wrong, two different
calibration status registers can be read:
Register 5158 for CP1
Register 5190 for CP2
Note
Registers 5158 and 5190 contain the same information!
Bit #Hex valueDefinition
0 (LSB)0x00000001CP1: difference between CP1 and CP2 < pH 1.0
10x00000002CP1: no matching calibration standard
20x00000004CP1: actual temperature reading is too low
30x00000008CP1: actual temperature reading is too high
40x00000010CP1: temperature reading during calibration is not stable
50x00000020CP1: offset a pH 7 is too low or slope is too low
60x00000040CP1: offset a pH 7 is too high or slope is too high
70x00000080CP1: pH reading during calibration is not stable
80x00000100CP2: difference between CP2 and CP1 < pH 1.0
90x00000200CP2: no matching calibration standard
100x00000400 CP2: actual temperature reading is too low
110x00000800 CP2: actual temperature reading is too high
120x00001000 CP2: temperature reading during calibration is not stable
130x00002000 CP2: offset a pH 7 is too low or slope is too low
140x00004000 CP2: offset a pH 7 is too high or slope is too high
150x00008000 CP2: pH reading during calibration is not stable
…not available
240x01000000 CP6: out of calibration range
250x02000000 CP6: out of range
260x04000000 CP6: active
270x08000000 CP6: initial measurement
280x10000000 CP6: assigned
not available
300x40000000 CP2: incorrect measurement unit
310x80000000 CP1: incorrect measurement unit
Figure 2.7.4.1.1: Definition of the status for register 5158, 5190 and 5318 (see Figure 2.7.4.1.2 and
2.7.4.2.1).
Start
register
51586Status CP1
51906Status CP2
Figure 2.7.4.1.2: Definition of register 5158 for CP1 and register 5190 for CP2.
624300/01page 44 / 67
Number of
registers
Reg1 / Reg2Reg3 / Reg4Reg5 / Reg6Modbus
(see figure
2.7.4.1.1)
(see figure
2.7.4.1.1)
Physical unit of
the last
successful
calibration CP1
(always pH)
Physical unit of
the last
successful
calibration CP2
(always pH)
Command: Calibration status CP1
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.1.3: Example to read the calibration status of CP1 after calibration CP1 at 0 = auto. The
status message is: “CP1 pH reading during calibration is not stable”(0x00000080). The physical
unit of the last successful calibration is pH (0x00001000) and the last successful calibration has
been performed at pH 4.01.
Command: Calibration status CP2
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.1.4: Example to read the calibration status of CP2 after calibrating CP2 at 0 = auto. All bits
of CP2 are zero (0x00000080), indicating that the calibration was successful. The physical unit of
the last calibration is pH (0x00001000) and the last successful calibration has been performed at
pH 7.
Command: Calibration status CP2
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.1.5: Example to read the calibration status of CP2 after attempt to calibrate CP2 at pH
4.01, which is the same as CP1. The value is 0x00000180 = 0x00000080 + 0x00000100. Shown
is still 0x00000080 of CP1 and new 0x00000100 of CP2, which says: “CP2 space to CP1 < pH
1.0”.
0x000000800x000010004.01
0x000000800x000010007
0x000001800x000010007
Modbus address: 5158Length: 6Type: 3
Modbus address: 5190Length: 6Type: 3
Modbus address: 5190Length: 6Type: 3
Read
Read
Read
2.7.4.2Reading the Calibration Status of CP6 (Product Calibration)
The calibration status and the current state of the product calibration process (CP6) is read in the
calibration status register for CP6 (register 5318).
Start
register
53186Status CP6
Figure 2.7.4.2.1: Definition of register 5318 for CP6. For examples, see following chapters.
Number of
registers
Reg1 / Reg2Reg3 / Reg4Reg5 / Reg6Modbus
function
code
(see figure
2.7.4.1.1)
Physical unit of
the last
successful
calibration CP6
(always pH)
Calibration status after initial measurement command under conditions outside the valid calibration
range for CP6 (defined in register 5312):
Command: Calibration status CP6
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.2.1.1: Example to read the calibration status of CP6 after having performed an initial
measurement at CP6 under measurement conditions outside the calibration range for CP6.
The status says: “CP6: out of calibration range”(0x01000000). The last successful calibration
has been performed at pH 4.01.
The initial measurementin this case was not successful.
The sensor is still running on its prior standard calibration.
Calibration status after successful initial measurement:
Command: Calibration status CP6
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.2.1.2: Example to read the calibration status of CP6 after having performed an initial
measurement at CP6 under correct measurement conditions.
The status says: “CP6: initial measurement”(0x08000000). The last successful calibration has
been performed at pH 4.01.
The initial measurementin this case was successful.
The sensor is still running on its prior standard calibration until a valid calibration value has been
assigned to this initial measurement values.
0x010000000x000010004.01
0x080000000x000010004.01
Modbus address: 5318Length: 6Type: 3
Modbus address: 5318Length: 6Type: 3
Read
Read
2.7.4.2.2Product calibration: Assignment
Calibration status after invalid assignment:
Command: Calibration status CP6
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.2.2.1: Example to read the calibration status of CP6 after having performed a valid initial
measurement at CP6 and an invalid assignment.
The status says: “CP6: out of range”(0x02000000) and “CP6: initial measurement”
(0x08000000). The last successful calibration has been performed at pH 4.01
The initial measurementin this case is still valid and available for further assignment of a product
calibration value. The here performed assignment was not successful. The sensor remains
running on its prior standard calibration.
Calibration status after valid assignment:
Command: Calibration status CP6
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.2.2.2: Example to read the calibration status of CP6 after having performed an initial
measurement at CP6 and a valid assignment to pH 4.5.
The status says: “CP6: active”(0x04000000) and “CP6: assigned”(0x10000000). The last
successful calibration corresponding to the here performed assignment has been performed at
pH 4.5.
The here performed assignment was successful. The sensor is running using a valid product
calibration.
2.7.4.2.3Product calibration: Cancel
Calibration status after cancelling an active product calibration:
Command: Calibration status CP6
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.2.3.1: Example to read the calibration status of CP6 after having performed a cancel
command at CP6.
The status reports no messages. The last successful calibration at CP6 has been performed at
pH 4.5.
The sensor is running on a valid standard calibration and no product calibration is stored.
2.7.4.2.4Product calibration: Restore standard calibration
Calibration status after restoring a standard calibration from an active product calibration:
Command: Calibration status CP6
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.2.4.1: Example to read the calibration status of CP6 after having restored the standard
calibration from an active product calibration (CP6).
The status says: “CP6 assigned”(0x10000000). The last successful calibration at CP6 has been
performed at pH 4.5.
The sensor is running on a valid standard calibration but a valid product calibration is still
available in the sensor.
Calibration status after restoring an available product calibration from an active standard calibration:
Command: Calibration status CP6
Parameter:StatusUnitValue
Format:HexHexFloat
Value:
Figure 2.7.4.2.5.1: Example to read the calibration status of CP6 after having restored an available
product calibration (CP6) from an active standard calibration (CP1 / CP2).
The status says: “CP6: active”(0x04000000) and “CP6: assigned”(0x10000000). The last
successful calibration corresponding to the here performed assignment has been performed at
pH 4.5.
The sensor is running on a valid product calibration again.
2.7.5 Currently active Calibration Parameters part 1
In registers 5164 (CP1), 5196 (CP2) and 5324 (CP6) the currently active calibration parameters part 1
are stored. These registers contain the values for temperature, number of calibrations and operating
hour upon calibration.
Start
register
51648Unit of
51968Unit of
53248Unit of
Figure 2.7.5.1: Definition of register 5164 for CP1, 5196 for CP2 and 5324 for CP6.
Command: Calibration CP1 values
Parameter:Unit of temperatureTemperatureNumber of caliOperating hour
Format:HexFloatDecimalFloat
Value:
Figure 2.7.5.2: Example to read the calibration values for CP1. The physical unit is °C (0x00000004),
Number
of
registers
0x0000000424.35184623.78
the temperature is 24.35184 °C, the number of calibrations at CP1 is 6 and the operating hour is
23.78 h.
Reg1 / Reg2Reg3 /
Reg4
Value of
temperature for
CP1 (bitwise
defined)
temperature for
CP2 (bitwise
defined)
temperature for
CP6 (bitwise
defined)
temperature
of CP1
Value of
temperature
of CP2
Value of
temperature
of CP6
Modbus address: 5164Length: 8Type: 3
Reg5 /
Reg6
Number of
calibrations
at CP1
Number of
calibrations
at CP2
Number of
calibrations
at CP6
Reg7 /
Reg8
Operating
hour for
CP1
Operating
hour for
CP2
Operating
hour for
CP6
Modbus
function
code
3, 4U/A/Snone
3, 4U/A/Snone
3, 4U/A/Snone
Read
access
Read
Write
access
Command: Calibration CP2 values
Parameter:Unit of temperatureTemperatureNumber of caliOperating hour
Format:HexFloatDecimalFloat
Value:
Figure 2.7.5.3: Example to read the calibration values for CP2. The physical unit is °C (0x00000004),
the temperature is 24.37691 °C, the number of calibrations at CP1 is 5 and the operating hour is
16.45 h.
Command: Calibration CP6 values
Parameter:Unit of temperatureTemperatureNumber of caliOperating hour
Format:HexFloatDecimalFloat
Value:
Figure 2.7.5.4: Example to read the calibration values 1 for CP6. The physical unit is °C (4), the
temperature is 29.93 (°C), the number of calibrations at CP1 is 12 and the operating hour is
379.51 (h).
0x0000000424.37691516.45
0x0000000429.9336812379.5167
Modbus address: 5196Length: 8Type: 3
Modbus address: 5324Length: 8Type: 3
Read
Read
2.7.6 Currently active Calibration Parameters part 2
Registers 5172 (CP1), 5204 (CP2) and 5332 (CP6) are not defined for pH ARC Sensors, as they
document atmospheric pressure and salinity used for VISIFERM DO / VISIFERM DO ARC Sensors
only.
2.7.7 Currently active Calibration Parameters part 3
In register 5520, 5528 and 5560 the pH value of the used calibration standards, the electrical potential
of the pH sensor and the temperature upon calibration are stored.
Start
register
55208pH value of
55288pH value of
55608pH value of
Figure 2.7.7.1: Definition of register 5520, 5528 and 5560.
2.7.9 Special Commands for Calibration with VISICAL
The VISICAL calibration device allows calibration of pH ARC Sensors at CP1 or CP2. The pH ARC
Sensor’s associated calibration parameters for CP1 and CP2 are those predefined and stored in
corresponding registers of the sensor.
Register 5164 defines the pH value for CP1 and register 5196 defines the pH value for CP2, which are
only valid for use with VISICAL. The same calibration limits for the pH value are used as for standard
calibration at CP1 and CP2 (register 5152 and 5184 respectively).
Attention:
It is not possible to perform a product calibration using VISICAL.
Physical unit is fixed to pH by definition.
Start
register
51802pH value at CP1 (default: pH 4.00)3, 4, 16U/A/SS
52122pH value at CP2 (default: pH 7.00)3, 4, 16U/A/SS
Figure 2.7.9.1: Definition of register 5180 for CP1 and 5212 for CP2.
Figure 2.7.9.4: Example to read the pH value valid for CP2. It is 7.00. Accordingly, the next time when a
Number of
registers
4.00
calibration is started using VISICAL at LOW, a calibration with manual selection is performed,
using the calibration standard at pH 4. The operator has to make sure that - within the selected
set of calibration standards - a standard at pH 4 is selected for manual selection.
7.00
7.00
calibration is started using VISICAL at HIGH, a calibration with manual selection is performed,
using the calibration standard at pH 7. The operator has to make sure that - within the selected
set of calibration standards - a standard at pH 7 is selected for manual selection.
pH ARC Sensors can store and operate six different sets of calibration standards each having max 12
calibration standards. Before calibration the operator has to select one defined set to operate with.
Default setting is the HAMILTON set of calibration standards.
The operator can change the selection of sets at any time, without compromising prior calibration data
at CP1 / CP2.
In register 9472 the available sets of calibration standards are defined.
Start
register
94722Available calibration standard sets3, 4U/A/Snone
2.7.10.2 Definitions for Individual Sets of Calibration Standards
Once the operator has selected a set of calibration standards(register 9474) the register 9504 and
following give all information on the selected set of calibration standards.
Start
register
95048Manufacturer of the selected set3, 4U/A/Snone
95128Info 1 of the selected set3, 4U/A/Snone
95208Info 2 of the selected set3, 4U/A/Snone
Figure 2.7.10.2.1: Definition of registers 9504 to 9520.
Command: manufacturer of set
Parameter:Text
Format:Character
Value:
Figure 2.7.10.2.2: Example to read the description (in this case, the set 0x01 is selected)
Within one set of calibration standards, a maximum of 12 calibration standards are available. In the
following registers, the details of each calibration standard is given:
Start registerDescription
9536Nominal value and tolerance of calibration standard 1
9552Nominal value and tolerance of calibration standard 2
9568Nominal value and tolerance of calibration standard 3
9584Nominal value and tolerance of calibration standard 4
9600Nominal value and tolerance of calibration standard 5
9616Nominal value and tolerance of calibration standard 6
9632Nominal value and tolerance of calibration standard 7
9648Nominal value and tolerance of calibration standard 8
9664Nominal value and tolerance of calibration standard 9
9680Nominal value and tolerance of calibration standard 10
9696Nominal value and tolerance of calibration standard 11
9712Nominal value and tolerance of calibration standard 12
Figure 2.7.10.2.3: Definition for the register range from 9536 until 9720.
Number of
registers
HAMILTON
Reg1 … Reg8
(16 ASCII characters)
Modbus address: 9504Length: 8Type: 3
Modbus
function code
Read
access
Write
access
Read
Start
register
9536,
9552,
…
Figure 2.7.10.2.4: Definition for registers 9536 until 9720.
Command: Read standard 4
Parameter:Nominal value
Format:FloatFloatFloatFloat
Value:
Figure 2.7.10.2.5: Example to read the values for the calibration standard 4.
Number
of
registers
8Calibr.
[pH]
4.010.0218080
Reg1 /
Reg2
(Float)
standard
nominal
value
[pH]
Reg3 /
Reg4
(Float)
Tolerance
of nominal
value (±)
[pH]
Register 9528 defines for the selected set of calibration standards:
the available calibration standards for manual selection of the pH value
the available calibration standards for automatic recognition of the pH value
Start
register
95282Availability of the 12 cal. standards3, 4U/A/Snone
Figure 2.7.10.2.6: Definition of register 9528
Command: Available standards
Parameter:Standard fields
Format:Hex
Value:
Figure 2.7.10.2.7: Example to read the information of register 9528. For the definition of the bits, see
Figure 2.7.10.2.8: Availability / Selection for the 12 calibration standards within one given set.
Number of
registers
0x0FFF0FFF
Figure 2.7.10.2.8. The value 0x0FFF0FFF says that (for the selected set of calibration
standards):
all 12 calibration standards are available for manual calibration
all 12 calibration standardsare available for automatic recognition.
Bit 0-11 define availability of standards 1-12 for manual calibration.
Bit 16-27 define availability of standards 1-12 for automatic recognition
Register 9528: the corresponding calibration standard is available if bit is set
Register 9530: the corresponding calibration standard is selected if bit is set
By means of register 9530, the specialist can define for each available calibration standard if the
specific standard is available.
Start
register
95302Selected standard fields3, 4U/A/SS
Figure 2.7.10.2.9: Selected calibration standards within one given set.
Command: Selected standard fields
Parameter:Standard fields
Format:Hex
Value:
Figure 2.7.10.2.10: Example to read the selected calibration standards. The value 0x02480FFF says
Command: Selected standard fields
Parameter:Standard fields
Format:Hex
Value:
Figure 2.7.10.2.11: Example to set the standard fields to 12 calibration standards for manual calibration
The standards selected for automatic recognition must exhibit a difference in pH of at least 2 pH units.
Number of
registers
0x02480FFF
that:
all 12 calibration standards are selected for manual selection
only calibration standards 3, 7 and 10 are selected for automatic recognition
0x05540FFF
and calibration standard 3 (0x00040000), 5 (0x00100000), 7 (0x00400000), 9 (0x01000000) and
11 (0x04000000) for automatic recognition.
Attention:
Reg1 / Reg2
(Bit, see figure 2.7.10.2.8)
Modbus address: 9530Length: 2Type: 3
Modbus address: 9530Length: 2Type: 16
Modbus
function code
Read
access
Write
access
Read
Write
Figure 2.7.10.2.12: Illustration from the ARC Sensor Configurator software tool for registers 9528 and
9530. For this example, the HAMILTON set of calibration standard is selected.
On the left half of the figure, the availability of the calibration standards 1-12 is shown, as defined
in register 9528. In the left column, the availiability for manual calibration is shown (all
standards). In the right column, the availability for automatic recognition is given (all
standards as well).
On the right half of the figure, the individual selection defined by the specialist is shown as read
from register 9530. In the left column, the selection for manual selection is shown (all
standards). In the right column the selection for automatic recognition is given (calibration
standards 4, 7 and 10).
In registers 4608, 4612 and 4616 three different temperature ranges are defined:
Operation –in this range the sensor will work properly (current output, Modbus
communication), except the measurement, which is stopped until the temperature is back in
the measurement range. In this case the last value of measurement will be frozen and sent to
analog interfaces.
Measurement –in this range the sensor is able to measure.
Calibration –in this range the sensor can be calibrated.
Start
register
46084Operating
46124Measurement
46164Calibration
Figure 2.8.1.1: Definition of register 4608, 4612 and 4616.
Command: Operating T range
Parameter:Operating T min
Format:FloatFloat
Value:
Figure 2.8.1.2: Example to read the operating temperature values min and max.
Command: Measurement T range
Parameter:Measurement T
Format:FloatFloat
Value:
Figure 2.8.1.3: Example to read the measurement temperature values min and max.
Number of
registers
[°C]
-20130
min [°C]
-20130
Reg1 / Reg2Reg3 / Reg4Modbus
temperature min [°C]
temperature min [°C]
temperature min [°C]
function
code
Operating
temperature max [°C]
Measurement
temperature max [°C]
Calibration
temperature max [°C]
Modbus address: 4608Length: 4Type: 3
Operating T max
[°C]
Modbus address: 4612Length: 4Type: 3
Measurement T
max [°C]
3, 4U/A/Snone
3, 4U/A/Snone
3, 4U/A/Snone
Read
access
Write
access
Read
Read
Command: Calibration T range
Parameter:Calibration T min
[°C]
Format:FloatFloat
Value:
Figure 2.8.1.4: Example to read the calibration temperaturevalues min and max.
624300/01page 57 / 67
550
Modbus address: 4616Length: 4Type: 3
Calibration T max
[°C]
total operating hours
operating hours above max measurement temperature (see chapter 2.8.1)
the operating hours above max operating temperature (see chapter 2.8.1)
In register 4682 are stored:
number of power ups
number of watchdog resets
number of writing cycles to the sensor’s flash memory
In register 4688 are given:
number of sterilizations in place (SIP) (see chapter 2.8.5)
number of cleanings in place (CIP) (see chapter 2.8.5)
Start
register
46766Operating
46826Number of
46884Number of
Figure 2.8.2.1: Definition of register 4676, 4682 and 4688.
A “Warning”is a notification message which still allows further functioning of the system. This message
alerts the operator of a possible problem that could lead to uncertain results.
2.8.3.1Currently Active Warnings
The currently active warnings are stored in register 4736.
Start
register
47368Active
Figure 2.8.3.1.1: Definition of register 4736 (see chapter 2.8.3.3)
Command: Active warning
Parameter:W MeasurementW CalibrationW InterfaceW Hardware
Format:HexHexHexHex
Value:
Figure 2.8.3.1.2: Example to read the currently active warnings.
2.8.3.2History of Warnings
The history of warnings is not implemented in pH ARC Sensors.
Number of
registers
0x000x000x000x00
Reg1 /
Reg2
warning
measurement
(bitwise
defined)
Reg3 /
Reg4
Active
warning
calibration
(bitwise
defined)
Modbus address: 4736Length: 8Type: 3
Reg5 /
Reg6
Active
warning
interface
(bitwise
defined)
Reg7 /
Reg8
Active
warning
hardware
(bitwise
defined)
Modbus
function
code
3, 4U/A/Snone
Read
access
Read
Write
access
2.8.3.3Definition of Warnings
Bit #HexDescription
not available
Figure 2.8.3.3.1: Definition of warnings “measurement”. None is defined.
Bit #HexDescription
0 (LSB)0x0001PMC1 (pH) calibration recommended
10x0002PMC1 (pH) last calibration not successful
Figure 2.8.3.3.2: Definition of warnings “calibration”.
Bit #HexDescription
not available
Figure 2.8.3.3.3: Definition of warnings “interface”. None is defined.
Bit #HexDescription
not available
Figure 2.8.3.3.4: Definition of warnings “hardware”. None is defined.
An “Error”message indicates a serious problem of the sensor which does not allow further proper
functioning of the sensor. This problem must be solved.
2.8.4.1Currently Active Errors
The currently active errors are stored in register 4800.
Start
register
48008Active error
Figure 2.8.4.1.1: Definition of register 4800 (see chapter 2.8.4.3)
Command: Active errors
Parameter:E MeasurementE CalibrationE InterfaceE Hardware
Format:HexHexHexHex
Value:
Figure 2.8.4.1.2: Example to read the currently active errors.
2.8.4.2History of Errors
The history of errors is not implemented in pH ARC Sensors.
not available
50x0000020Glass resistance too high
60x0000040Glass resistance too low
70x0000080Reference electrode resistance too high
80x0000100Reference electrode resistance too low
not available
150x0008000Auxiliary electrode electrical potential too high
160x0010000Auxiliary electrode electrical potential too low
170x0020000Auxiliary electrode resistance too high
180x0040000Auxiliary electrode resistance too low
not available
250x2000000Temperature sensor defective
Figure 2.8.4.3.1: Definition of errors “measurement”.
Bit #HexDescription
10x0000002Sensor failure (Quality value < 15%)
Figure 2.8.4.3.2: Definition of errors “calibration”.
Bit #HexDescription
not available
Figure 2.8.4.3.3: Definition of errors “interface”. None is defined.
Bit #HexDescription
not available
240x1000000Internal communication error (betweenfront-end and user-end)
Figure 2.8.4.3.4: Definition of errors “hardware”.
pH ARC Sensor are counting special cleaning events such as sterilizations or cleaning cycles by
means of tracking typical temperature profiles (see chapter 2.8.2).
Register 4988 defines a typical temperature profile for SIP (sterilizationin place) and register 4996 for
CIP (cleaning in place). For the explanation the followingvalues are given:
CIP temperature min: 80 °CCIP temperature max: 100 °CCIP time min: 30 minutes
SIP temperature min: 120 °CSIP temperature max: 130 °CSIP time min: 30 minutes
CIP and SIP
140
120
100
80
60
Temperature [°C]
40
20
0
08:00
08:15
08:30
no SIP 1)SIP ok 3)
CIP ok 2)
08:45
09:00
09:15
09:30
09:45
10:00
10:15
10:30
10:45
11:00
11:15
11:30
11:45
12:00
Time
Figure 2.8.5.1: Definition of CIP and SIP cycles.
1) no SIP-cycle counted, because time too short <30 minutes.
2) CIP-cycle counted, because time >30 minutes and in CIP temperature range.
3) SIP-cycle counted, because time >30 minutes and in SIP temperature range.
4) no CIP-cycle counted, because of reaching the SIP-min limit.
no CIP 4)no CIP 4)
12:15
12:30
12:45
13:00
13:15
13:30
13:45
14:00
14:15
14:30
14:45
15:00
15:15
15:30
15:45
16:00
16:15
16:30
16:45
17:00
T CIP
T SIP
CIP min
CIP max
SIP min
SIP max
Start
register
Number
of
Reg1 /
Reg2
Reg3 /
Reg4
Reg5 /
Reg6
registers
49888SIP
Temperature min
[°C]
49968CIP
Temperature min
[°C]
SIP
Temperature max
[°C]
CIP
Tempera-
-ture max
[°C]
SIP
Process
time min
[min]
CIP
Process
time min
[min]
Figure 2.8.5.2: Definition of register 4988 and 4996.
Command: Serial number
Parameter:Text
Format:Character
Value:
Figure 2.9.2.2: Example to read register 1312.
0001001
Modbus address: 1312Length: 8Type: 3
Read
2.9.3 Free User Memory Space
These registers can be used to store any customer specific information in the sensor. There are
different registers which can be read by everybody, but only specific operators can write them.
Start
register
15368Free user space U/A/S*FREE_USERSPACE*3, 4, 16U/A/SU/A/S
15448Free user space U/A/S*FREE_USERSPACE*3, 4, 16U/A/SU/A/S
15528Free user space U/A/S*FREE_USERSPACE*3, 4, 16U/A/SU/A/S
15608Free user space U/A/S*FREE_USERSPACE*3, 4, 16U/A/SU/A/S
15688Free user space A/S*FREE_USERSPACE*3, 4, 16U/A/SA/S
15768Free user space A/S*FREE_USERSPACE*3, 4, 16U/A/SA/S
15848Free user space A/S*FREE_USERSPACE*3, 4, 16U/A/SA/S
15928Free user space A/S*FREE_USERSPACE*3, 4, 16U/A/SA/S
16008Measuring point242111-00010013, 4, 16U/A/SS
16088Free user space S*FREE_USERSPACE*3, 4, 16U/A/SS
16168Free user space S*FREE_USERSPACE*3, 4, 16U/A/SS
16248Free user space S*FREE_USERSPACE*3, 4, 16U/A/SS
16328Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16408Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16488Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16568Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16648Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16728Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16808Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16888Free user space others*FREE_USERSPACE*3, 4U/A/Snone
16968Free user space others*FREE_USERSPACE*3, 4U/A/Snone
17048Free user space others*FREE_USERSPACE*3, 4U/A/Snone
17128Free user space others*FREE_USERSPACE*3, 4U/A/Snone
17208Free user space others*FREE_USERSPACE*3, 4U/A/Snone
17288Free user space others*FREE_USERSPACE*3, 4U/A/Snone
17368Free user space others*FREE_USERSPACE*3, 4U/A/Snone
17448Free user space others*FREE_USERSPACE*3, 4U/A/Snone
17528Free user space others*FREE_USERSPACE*3, 4U/A/Snone
Figure 2.9.3.1: Definition of registers containing user information.
Number
of
registers
An important register is 1600, as it is the description of the measuring point. The information of
this register is displayed on the ARC View Handheld in order to identify individual sensors.
Reg1 … Reg8
(16 ASCII characters)
Example of contentModbus
function
code
Read
access
Write
access
Attention:
The Free User Memory Space is located in a memory which allows in total max 10’000 write
operations.
Command: Info user
Parameter:Text
Format:Character
Value:
Figure 2.9.3.2: Example to write 16 ASCII characters to register 1568 with operator A or S.
Command: Info user
Parameter:Text
Format:Character
Value:
Figure 2.9.3.3: Example to read the register 1568 (written in figure 2.9.1.6).
Hello World
Hello World
Modbus address: 1568Length: 8Type: 16
Modbus address: 1568Length: 8Type: 3
2.10 System Commands
2.10.1 Recall Sensor’s Factory Settings
Using register 8192 you can recall the sensor manufacturer values (interfaces, calibration data and
passwords), except the SIP and CIP data which remain unchanged. By sending the recall value
“732255”, all configuration values will be set to default.