Despatch Protocol Plus Modbus Communications User Manual
Page 22
Chromalox Instruments and Controls
A-51643 Rev. 6 10/06/03
16
An example is the Manual Setpoint and Manual High Limit Setpoint holding registers. If the registers are
currently set to 500 F and 509 F respectively, then a multiple write of 300 F and 350 F respectively
will fail. During data verification, the high limit value of 350 F is invalid because the setpoint is set to
500 F. A single write of 300 F to Manual Setpoint followed by a single write of 350 F to Manual High
Limit Setpoint will work.
4.3 Control Operation and Run/Hold/Stop Functions
The 4 control states of the controller (Manual, Timer, Profile, and Autostart) can be set via the Controller
Mode holding register ($0006). The controller mode cannot be changed unless the controller is stopped.
Before changing modes, the STOP value must be written to the Run/Hold/Stop holding register ($0192),
then the desired mode value can be written to the Controller Mode holding register. When reading the
Controller Mode holding register ($0006), a fifth mode (Setup) can be detected. The user cannot place
the controller into setup mode via Modbus because the setup mode applies only to adjusting parameters
via the front panel keypad.
When the controller is in Manual, Timer, or Profile control mode, the Run/Hold/Stop register ($0192) is
used to Run, Hold, or Stop the controller. A value of 0 simulates the STOP key; a value of 1 or 2
simulates the RUN/HOLD key. When in Profile control mode, the Profile Number ($0191) and the
Segment Advance ($0194) holding registers control which profile and segment are being executed. The
Profile Number holding register can only be written when the controller is stopped. A value of 0 sets the
desired profile to none. Writing any non-zero value to the Segment Advance register simulates pressing
the Select/Up Arrow combination while running a profile to advance to the next profile segment.
The Profile Number holding register, along with the Profile Input Registers $0080-$0083 can be read to
monitor the status of the controller. The Segment Number input register ($0080) provides the current
segment number. Input register $0081 provides the time remaining in the current interval and input
register $0082 the number of segment loops remaining. The Ramp/Soak Interval Indicator ($0083) input
register indicates whether the current interval is a ramp or soak interval (0=ramp, 1=soak).
4.4 Controller Mode and Data Access
Most holding registers can only be written to if the controller is stopped. The exceptions are listed below.
All registers can be read in any mode as long as the communications security code is set to the proper
level. An illegal data address response is generated if the controller is not in the correct state to access a
register. The following registers can be written while the controller is running.