Modbus is a registered trademark of Schneider Electric.
Company names and product names used in this manual are the trademarks or registered trademarks of
the respective companies.
All Rights Reserved, Copyright 1999, RKC INSTRUMENT INC.
Thank you for purchasing the RKC instrument. In order to achieve maximum performance and ensure
proper operation of your new instrument, carefully read all the instructions in this manual. Please
place this manual in a convenient location for easy reference.
SYMBOLS
WARNING
CAUTION
!
: This mark indicates precautions that must be taken if there is danger of electric
shock, fire, etc., which could result in loss of life or injury.
: This mark indicates that if these precautions and operating procedures are not
taken, damage to the instrument may result.
: This mark indicates that all precautions should be taken for safe usage.
: This mark indicates important information on installation, handling and operating
procedures.
: This mark indicates supplemental information on installation, handling and
operating procedures.
: This mark indicates where additional information may be located.
WARNING
!
An external protection device must be installed if failure of this instrument
could result in damage to the instrument, equipment or injury to personnel.
All wiring must be completed before power is turned on to prevent electric
shock, fire or damage to instrument and equipment.
This instrument must be used in accordance with the specifications to prevent
fire or damage to instrument and equipment.
This instrument is not intended for use in locations subject to flammable or
explosive gases.
Do not touch high-voltage connections such as power supply terminals, etc.
to avoid electric shock.
RKC is not responsible if this instrument is repaired, modified or
disassembled by other than factory-approved personnel. Malfunction can
occur and warranty is void under these conditions.
This is a Class A instrument. In a domestic environment, this instrument may cause radio
interference, in which case the user may be required to take adequate measures.
This instrument is protected from electric shock by reinforced insulation. Provide
reinforced insulation between the wire for the input signal and the wires for instrument
power supply, source of power and loads.
This instrument is designed for installation in an enclosed instrumentation panel. All highvoltage connections such as power supply terminals must be enclosed in the
instrumentation panel to avoid electric shock by operating personnel.
All precautions described in this manual should be taken to avoid damage to the
instrument or equipment.
All wiring must be in accordance with local codes and regulations.
To prevent instrument damage or failure, protect the power line and the input/output lines
from high currents with a protection device such as fuse, circuit breaker, etc.
Prevent metal fragments or lead wire scraps from falling inside instrument case to avoid
electric shock, fire or malfunction.
Tighten each terminal screw to the specified torque found in the manual to avoid electric
shock, fire or malfunction.
For proper operation of this instrument, provide adequate ventilation for heat dispensation.
Do not connect wires to unused terminals as this will interfere with proper operation of the
instrument.
Turn off the power supply before cleaning the instrument.
Do not use a volatile solvent such as paint thinner to clean the instrument. Deformation or
discoloration will occur. Use a soft, dry cloth to remove stains from the instrument.
To avoid damage to instrument display, do not rub with an abrasive material or push front
panel with a hard object.
NOTICE
This manual assumes that the reader has a fundamental knowledge of the principles of electricity,
process control, computer technology and communications.
The figures, diagrams and numeric values used in this manual are only for purpose of illustration.
RKC is not responsible for any damage or injury that is caused as a result of using this instrument,
instrument failure or indirect damage.
Periodic maintenance is required for safe and proper operation of this instrument. Some
components have a limited service life, or characteristics that change over time.
Every effort has been made to ensure accuracy of all information contained herein. RKC makes no
warranty expressed or implied, with respect to the accuracy of the information. The information in
this manual is subject to change without prior notice.
No portion of this document may be reprinted, modified, copied, transmitted, digitized, stored,
processed or retrieved through any mechanical, electronic, optical or other means without prior
written approval from RKC.
This manual describes the specifications, wiring instructions and communication settings for
CB100/CB400/CB500/CB700/CB900 Z-1021 with Modbus communication protocol.
To establish communication parameters between master and slave, it is necessary to set the slave
address, communication speed, data configuration and interval time on each slave in the
communication mode.
The CB900 controller will be used as an example, but the same instructions apply to all CB Series
controllers with Modbus protocol.
4.1 Communication Setting Mode
1. When the power to the instrument is turned on, the input type, input range and PV/SV display
mode will be automatically displayed in that order.
2. To go to the communication setting mode, you must be in either PV/SV display mode or the SV
setting mode. Press and hold the SET key and press the <R/S key at the same time to initiate
communication settings. The first parameter to be displayed will be the slave address, Add.
PV
SV
SET
ALM2ALM1ATOUT2OUT1
R/S
PV
SV
SET
ALM2ALM1ATOUT2OUT1
R/S
PV/SV display modeCommunication setting mode
-Slave address setting
Add
The number segment being set will
be brighter than the others in the
SV display
To return to the PV/SV display mode, press and hold the SET key and press the <R/S key at
the same time.
To select parameters in communication setting mode, press the SET key. The parameters are
displayed and sequenced in the order of slave address, Add, communication speed, bPS, data
configuration, bIT and interval time set value, InT.
Display flowchart
Power On
Display changes automatically
Input type and input range
display
PV/SV display mode
Communication setting mode
PV
SV
PV
SV
PV
SV
(Display for approx. 4 sec)
Press the
SET key.
Press and hold the SET key and press the
<R/S key at same time.
Slave address
(Add)
Press the SET key.
Communication speed
(bPS)
Press the SET key.
Data configuration
(bIT)
SV setting mode
PV/SV display
mode
Press and hold the
SET key and press
the <R/S key at
same time.
The slave address must be set before Modbus communication can begin. The slave address number
is set with numbers from 1 to 99. The factory set value is 0 and two-way communication is not
possible when the address is 0.
SymbolNameSetting rangeDescription
Slave address1 to 99*Set the controller slave
address.
Add
* Two-way communication is not possible when the address is 0.
When the communication parameter is changed, turn the power on and off again to refresh and
make the new value effective.
All slave address settings must be stored by pressing the SET key. If changes are made and
the SET key is not pressed within one minute, the display will automatically return to the
PV/SV display mode and the slave address will return to the value prior to set change.
Setting procedure
Example: Setting the slave address to 15
1. Go to the communication setting mode so that slave address, Add, is displayed.
The communication speed of 2400bps, 4800bps, 9600bps or 19200bps is set with numbers from 0 to 3.
To change the number of the digit, press the UP or DOWN key.
SymbolNameSetting rangeDescription
Communication
speed
0 : 2400 bps
1 : 4800 bps
Select the communication
speed
Factory set
value
2
2 : 9600 bps
bPS3 : 19200 bps
Set the same communication speed for both the slave and the master.
When the communication parameter is changed, turn the power on and off again to refresh and
make the new value effective.
All communication speed settings must be stored by pressing the SET key. If changes are
made and the SET key is not pressed within one minute, the display will automatically return
to the PV/SV display mode and the communication speed will return to the value prior to set
change.
Setting procedure
Example: Setting the communication speed to 1: 4800 bps
1. Go to the communication setting mode so that slave address, Add, is displayed. Then, press the
SET key once, so the communication speed symbol, bPS, appears.
The data configuration shown below is set with numbers from 1 to 3. To change the number of the
digit, press the UP or DOWN key.
SymbolNameSetting rangeDescription
Data
configuration
bITConfiguration
Data configuration table
SettingData bitParity bitStop bit
08None1
1 to 5Do not set 1 to 5. Malfunction may result.
68Even1
78Odd1
Set the same data configuration for both the slave and the master.
0, 6 or 7
See Data
Table
Select data configuration
during communication
Factory set
value
0
12
When the communication parameter is changed, turn the power on and off again to refresh and
make the new value effective.
All data configuration settings must be stored by pressing the SET key. If changes are made
and the SET key is not pressed within one minute, the display will automatically return to the
PV/SV display mode and the data configuration will return to the value prior to set change.
The interval time from 0 to 250 ms is set with numbers from 0 to 150. To shift the digit, press the
<R/S key. To change the number of the digit, press the UP or DOWN key.
SymbolNameSetting rangeDescription
Interval time set
value
0 to 150*Set the value to set the interval
time
InT
* 0 to 250 ms can be set by using 0 to 150.
Formula to calculate interval time and interval time set value
Interval time = Interval time set value 1.666 ms
Interval time set value = Interval time
1.666 ms
When the communication parameter is changed, turn the power on and off again to refresh and
make the new value effective.
All interval times must be stored by pressing the SET key. If changes are made and the SET
key is not pressed within one minute, the display will automatically return to the PV/SV
display mode and the interval time will return to the value prior to set change.
Setting procedure
Example: Setting the interval time to 250 ms.
Factory set
value
5
1. Go to the communication setting mode so that slave address, Add, is displayed. Press the SET
key until the communication speed, InT, appears.
2. Calculate the interval time set value by using the formula on the previous page. The interval
time set value must be a whole number. If you get a number with a decimal fraction, round to
the nearest whole number.
Interval time set value:
250 ms 1.666 ms150 (Round to the nearest whole number)
The actual interval time re-calculated by using the interval time set value, 150:
150 1.666 ms249.9 (Approx. 250 ms)
Enter an interval time set value of 150, calculated as show above, on the controller.
3. Press the DOWN key to enter 0 at the first digit from the right.
PV
SV
ALM2ALM1ATOUT2OUT1
SET
R/S
4. Press the <R/S key to high-light the second digit from the right.
The sending and receiving of RS-485 communication is conducted through two wires; consequently,
the transmission and reception of data requires precise timing. The following processing times are
required during data send/receive.
Slave process timing
Procedure detailsTime (ms)
Read holding registers [03H]
Response transmission time after the
slave
receives the query message
Preset single register [06H]
Response transmission time after the
slave
receives the query message
Diagnostics (loopback test) [08H]
Response transmission time after the
slave
receives the query message
The master controls communication between master and slave. A typical message consists of a
request (query message) sent from the master followed by an answer (response message) from the
slave. When master begins data transmission, a set of data is sent to the slave in a fixed sequence.
When it is received, the slave decodes it, takes the necessary action, and returns data to the master.
5.1 Message Format
The message consists of four parts: slave address, function code, data, and error check code which are
always transmitted in the same sequence.
Slave address
Function code
Data
Error check CRC-16
Message format
Slave address
The slave address is a number from 1 to 99 manually set at the front key panel of the controller.
Although all connected slaves receive the query message sent from the master, only the slave with the
slave address coinciding with the query message will accept the message.
Function code
The function codes are the instructions set at the master and sent to the slave describing the action to
be executed. The function codes are included when the slave responds to the master.
For details, see 5.2 Function Code.
Data
The data to execute the function specified by the function code is sent to the slave and corresponding
data returned to the master from the slave.
For details, see 6. MESSAGE FORMAT, 7. DATA CONFIGURATION and 7.3 CommunicationData List.
Error check
An error checking code (CRC-16: Cyclic Redundancy Check) is used to detect an error in the signal
transmission. For the calculation method of CRC-16, see 5.5 Calculating CRC-16.
Measured value (PV), alarm status, current
transformer input, etc.
Set value (SV), alarm set value, PID constants,
PV bias, etc. (For each word)
Diagnostics (loopback test)
Query messageResponse message
MinMaxMinMax
8888
8888
Signal transmission between the master and slaves is conducted in Remote Terminal Unit (RTU)
mode.
RTU mode
ItemsContents
Data bit length8 bit (Binary)
Start mark of messageUnused
End mark of messageUnused
Message length
Data time interval24 bit's time or less*
Error checkCRC-16
* The data time intervals in one query message from the master must be 24 bit's time or less.
If the data time interval exceeds 24 bit's time, the slave regards the transmission as ended
and because the message format is incomplete, the slave does not respond.
In the response message of the Read Holding Registers, the slave returns the read out data and the
number of data items with the same slave address and function code as the query message.
In the response message of the Preset Single Register, the slave returns the same message as the
query message.
In the response message of the Diagnostics (loopback test), the slave returns the same message as
the query message.
(2) Defective message response
If the query message from the master is defective, except for transmission error, the slave returns
the error response message without any action.
Slave address
Function code
Error code
Error check CRC-16
Error response message
If the self-diagnostic function of the slave detects an error, the slave will return an error response
message to all query messages.
The function code of each error response message is obtained by adding 80H to the function code
of the query message.
Error codeContents
1
2
3
4
Function code error (Designation of an unsupported function code)
When written to read only data
When any address other than 0000H to 0019H is specified
When PID constants or anti-reset windup (ARW) data are set to 0 and 1 is
entered at self-tuning (ST) function
When either one of PID constants and anti-reset windup (ARW) data are written
during execution of the self-tuning (ST) function
When the data written exceeds the setting range
When the specified number of data items in the query message exceeds the
maximum number of data items available
Self-diagnostic error response
(3) No response
The slave ignores the query message and does not respond when:
The slave address in the query message does not coincide with any slave address settings.
The transmission parameter of the master does not coincide with that of the slave.
Transmission error such as overrun, framing, parity and etc., is found in the query message.
Data time interval in the query message from the master exceeds 24 bit's time.
The Cyclic Redundancy Check (CRC) is a 2 byte (16-bit) error check code. After constructing the
data message, not including start, stop, or parity bit, the master calculates a CRC code and appends
this to the end of the message. The slave will calculate a CRC code from the received message, and
compare it with the CRC code from the master. If they do not coincide, a communication error has
occurred and the slave does not respond.
The CRC code is formed in the following sequence:
1. Load a 16-bit CRC register with FFFFH.
2. Exclusive OR ( ) the first byte (8 bits) of the message with the CRC register. Return the result to
the CRC register
3. Shift the CRC register 1 bit to the right.
4. If the carry flag is 1, exclusive OR the CRC register with A001 hex and return the result to the
CRC register. If the carry flag is 0, repeat step 3.
5. Repeat step 3 and 4 until there have been 8 shifts.
6. Exclusive OR the next byte (8 bits) of the message with the CRC register..
7. Repeat step 3 through 6 for all bytes of the message (except the CRC).
8. The CRC register contains the 2 byte CRC error code. When they are appended to the message,
the low-order byte is appended first, followed by the high-order byte.
The query message specifies the starting register address and quantity of registers to be read.
The contents of the holding registers are entered in the response message as data, divided into two
parts: the high-order 8 bits and the low-order 8 bits, arranged in the order of the register numbers.
Example: The contents of the three holding registers from 0000H to 0002H are the read out from
slave address 2.
Query message
Slave address02H
Function code03H
Starting numberHigh00H
Low00H
QuantityHigh00H
Low03H
CRC-16High05H
LowF8H
First holding register address
The setting must be between 1 and 125
(0001H and 007DH)
The query message specifies data to be written into the designated holding register. The write data
is arranged in the query message with high-order 8 bits first and low-order 8 bits next. Only R/W
holding registers can be specified.
Example: Data is written into the holding register 0006H of slave address 1.
The master's query message will be returned as the response message from the slave. This function
checks the communication system between the master and slave.
The numeric range of data used in Modbus protocol is 0000H to FFFFH. Only the set value within
the setting range is effective.
FFFFH represents -1.
Data processing with decimal points
Data with decimal points
The Modbus protocol does not recognize data with decimal points during communication.
Data with one decimal place
Current transformer input 1Heater break alarm 1
Current transformer input 2Heater break alarm 2
(Z-168 specification) (Z-168 specification)
Control loop break alarm
Example: When heater break alarm (HBA) 1 set value is 20.0 A; 20.0 is processed as 200, 200 =
00C8H
Heater break alarm 1High00H
LowC8H
Data without decimal points
Alarm 1 statusDerivative time
Alarm 2 statusAnti-reset windup
BurnoutHeat-side proportioning cycle time
LBA deadbandCool-side proportional band
Autotuning (AT)Cool-side proportioning cycle time
Self-tuning (ST)Set data lock function
Integral timeRUN/STOP function
Example: When integral time is 50 seconds, 50 is processed as 50, 50 = 0032H
Data whose decimal point's presence and/or position depends on input
range
The position of the decimal point changes depending on the input range type because the Modbus
protocol does not recognize data with decimal points during communication.
The following data can have one of three decimal point positions:
No decimal point
One decimal place
Two decimal places
The input range for voltage/current input is fixed at 0.0 to 100.0%. For details, see Input Range
Table 2 on P.34.
Measured value (PV)Heat-side proportional band
Set value (SV)Deadband
Alarm 1 set valuePV bias
Alarm 2 set value
Example: When the temperature set value is -20.0 C; -20.0 is processed as -200,
-200 = 0000H - 00C8H = FF38H
Set value (SV)HighFFH
Low38H
7.2 Data Processing Precautions
For 03H (data read from the holding register), an error response message is returned when any
address other than 0000H to 0019H is specified as the starting number.
For 06H (data write to the single holding register), an error response message is returned when
data is written to any address other than 0000H to 0019H.
Read data of unused channel and undefined address is 0.
Any attempt to write to an unused channel is not processed as an error. Data can not be written
into an unused channel.
If data range or address error occurs during data writing, the data written before error is in effect.
The data lock function only prevents setting changes being made from the front keys. Setting
changes can still be made through communication transmission.
Other setting items
Reading RO (read only) and R/W (read/write) unused data are not processed as an error at
read holding registers, but read data will be 0.
Any attempt to write unused data is not processed as an error. Data can not be written into
the slave.
To prevent electric shock or instrument failure, always turn off the system
power before replacing the instrument.
To prevent electric shock or instrument failure, always turn off the power
before mounting or removing the instrument.
To prevent electric shock or instrument failure, do not turn on the power until
all the wiring is completed.
To prevent electric shock or instrument failure, do not touch the inside of the
instrument.
All wiring must be performed by authorized personnel with electrical
experience in this type of work.
This section lists some basic causes and solutions for Modbus communication problems.
If you can not find a solution, contact your nearest RKC sales office or agent for additional
information about replacement or repair.
SymptomProbable causeSolution
No responseThe controller power is not turned onTurn on the power
There communication cable is improperly
connected
Breakage in the communication cableReplace the cable
Detachment of the communication cableConfirm the connection condition
Problems with the connectors or contactsCheck and replace the wiring in the
The communication speed or bit structure
settings are different
The address specification is differentConfirm the address numbers
A transmission error (overrun error, framing
error, parity error or CRC-16 error) is found in
the query message
The time interval between adjacent data in the
query message is too long, exceeding 24 bit's
time
Instrument failure
Confirm the connection method
connector
Confirm each setting
Re-transmit after time-out occurs or
verify communication program