Terminal configured for control are inferred if parameter 5 of the
ModbusSlave() instruction is set to 0. Coils are assigned to Modbus
registers 00001 to 09999.
Term. digital registers 10001 to 19999
Hold values resulting from a digital measurement. Digital registers in the
Modbus domain are read-only. In the Campbell Scientific domain, the
leading digit in Modbus registers is ignored, and so are assigned together to a
single Dim- or Public-variable array (read / write).
Term. input registers 30001 to 39999
Hold values resulting from an analog measurement. Input registers in the
Modbus domain are read-only. In the Campbell Scientific domain, the
leading digit in Modbus registers is ignored, and so are assigned together to a
single Dim- or Public- variable array (read / write).
Term. holding registers 40001 to 49999
Hold values resulting from a programming action. Holding registers in the
Modbus domain are read / write. In the Campbell Scientific domain, the
leading digit in Modbus registers is ignored, and so are assigned together to a
single Dim or Public variable array (read / write).
Term. RTU / PLC
Remote Telemetry Units (RTUs) and Programmable Logic Controllers
(PLCs) were at one time used in exclusive applications. As technology
increases, however, the distinction between RTUs and PLCs becomes more
blurred. A CR1000 fits both RTU and PLC definitions.
8.6.2.2 Programming for Modbus
8.6.2.2.1 Declarations (Modbus Programming)
Table CRBasic Ports, Flags, Variables, and Modbus Registers (p. 413) shows the
linkage between terminals configured for control, flags and Boolean variables and
Modbus registers. Modbus does not distinguish between terminals configured for
control, flags, or Boolean variables. By declaring only terminals configured for
control, or flags, or Boolean variables, the declared feature is addressed by
default. A typical CRBasic program for a Modbus application will declare
variables and ports, or variables and flags, or variables and Boolean variables.
413