Appendix i. modbus on the cr10 and cr10x, I.1 terminology, I.2 communications and compatibility – Campbell Scientific CR10X Measurement and Control System User Manual
Page 277

I-1
APPENDIX I. MODBUS ON THE CR10 AND CR10X
Modbus communication capability is available as a Library Special on the CR10 and CR10X
dataloggers.
The implementation of MODBUS on the CR10 and CR10X allows input locations, ports, and flags to be
read or to be set. Not supported are historical data retrieval, program downloads, setting the clock, and
other functions of PC208.
Modbus on the CR10 and CR10X does not preclude interfacing with PC208 as long as the
communications system (radios, modems, etc.) is compatible with PC208.
Applications Engineers at Campbell Scientific are not proficient in, and do not provide technical support
for any of the commercially available software packages or PLCs that support Modbus. CR10 users
have successfully communicated using the following software packages: Wonderware Intouch,
Labview, Iconics Genesis for DOS, and Citect for Windows. LabTech’s modbus driver does not support
floating point, and thus is not compatible with CR10s.
I.1 TERMINOLOGY
The CR10s communicate in RTU mode (not
ASCII) to other Modbus devices.
The SCADA and MMI software packages and
Modbus use different terminology than does
Campbell Scientific. For example in SCADA
software using Modbus, to reference the
CR10’s input location number 3, specify
“register 40005 F”. The CR10’s input locations
are analogous to registers in Modbus. Because
of floating point considerations, two registers of
memory are required for each input location.
Modbus registers are offset by 40000,
therefore, the register equivalent of any input
location X is: 40000+2X-1. The register is
followed by a “ F” in the Intouch software. Ports
and flags are more straight forward. Modbus
does not differentiate between ports and flags.
They have “coils” originally meaning coil relays
that are either on or off. Ports 1..8 on the CR10
correspond to coils 1..8, and flags 1..8
correspond to coils 9..16.
Campbell
Scientific
Modbus
input location 1,2,3...X
register 40001,40003,
40005...(40000+2X-1)
port 1..8
coil 1..8
flag 1..8
coil 9..16
I.2 COMMUNICATIONS AND
COMPATIBILITY
Direct RS232 connect and telephone are
supported by PC208 and most SCADA software
packages. Modbus communications are on the
serial port of the CR10s. For a direct connect to
a computer an SC32A is used just as it is for
PC208 communications. Other devices such as
spread spectrum radios may require an SC932.
DC112 and VS1 telephone modems and some
radio modems are compatible with modbus
communications.
In the PC based software’s Modbus driver or
with a PLC the communications port, baud rate,
data bits, stop bits, and parity are set. The
CR10s communicate at 9600, 1200, or 300
baud (they automatically sink to the baud rate of
the computer), N,8,1.
The Modbus address can be set in *D mode
allowing multiple dataloggers on the same serial
port for direct communications. The address is
set in *D window 8. Valid addresses are 1 to
254 with the exception of 13.
NOTE: In earlier beta versions of the CR10
operating system the Modbus address is
fixed at address 1.
This can be done from the CR10KD or a
computer terminal with a terminal emulator.
See section OV3 and section 5 of the CR10X
manual for details.