Configure the Scan Properties
Use these fields on the Scanner tab to define properties such as the scan rate, scan offset, and the type of data that is to be scanned.
You can also specify whether the scan rate is increased whenever any of the associated points are displayed on a client (see Define Whether a Scanner is Promoted While its Points are on Display in the Geo SCADA Expert Guide to Simple Drivers).
For information on fields that are available for many scanners, see Define the Scan Rate in the Geo SCADA Expert Guide to Simple Drivers. Fields that are specific to Modbus scanners are explained below:
Modbus PLCs use registers to store point data (see Modbus Register Ranges). Use the properties below to determine which block of registers are scanned by this scanner. (We recommend that you configure separate scanners to scan different blocks of registers in a range, if those blocks are some distance apart. This is more efficient than having one scanner scan a large range that includes many unused registers.)
Should an attempt be made to scan for data on registers outside of a remote device’s supported range, an exception error will occur—see Modbus Exception Errors.
- Data Address—Specify the position in the Modbus register from which the scanner is to start scanning data. Enter the register address, within the range 0 to 65535.
- Data Length—Enter the number of registers that are to be scanned. The registers are scanned as a block, starting with the register specified in the Data Address field, above.
To allow for the fact that some Modbus devices can only transmit up to 125 data words, Geo SCADA Expert automatically splits any requests for large amounts of data into multiple requests, so that the maximum amount of data transmitted in each message is as follows:
Data Type Maximum Data Length per Message Output Coils
2000
Input Discretes
2000
Holding Registers
125
Input Registers
125
S600 Flow Computer 32-bit Float
125
S600 Flow Computer 64-bit Double
125
ATTENTION: Some Modbus devices can only transmit messages that have a total message length (including overhead) of 255 bytes or less. With Modbus devices that have a 255 bytes or less limit, you need to set a Data Length that takes into account the maximum message size that the device can handle. This means you may need to specify a smaller Data Length than those listed above.
- Location—Specify the register range by specifying the size and type of data to be scanned. Each data type corresponds to the first digit in a Modbus register range (see Modbus Register Ranges). Choose from:
- Output Coils—Discrete single-bit output values. Configuration on the Point Form determines the position of the bit within each 16-bit Word (see Configuring Analog Points, or see Configuring Digital Points, as appropriate).
- Input Discretes—Discrete single-bit input values. Configuration on the Point Form determines the position of the bit within each 16-bit Word.
- Holding Registers—16-bit registers that store output values.
- Input Registers—16-bit registers that store input values.
- S600 Flow Computer 32bit Float—IEEE 32-bit single-precision floating point values on an S600 Flow Computer.
- S600 Flow Computer 64bit Double—IEEE 64-bit double-precision floating point values.
Example:
A scanner has this configuration:
Data Address: 10
Data Length: 15
Location: Input Discretes
This results in the scanner scanning registers 10 to 25, within the Input Discrete register range. As Input Discretes are in the Modbus register range 100001 to 165536, and the scanner is scanning a block of 15 registers, starting with the 10th register, this results in the scanner scanning Modbus address range 100011 to 100026, with each register within the Input Discrete range comprising a one-bit value.
Another scanner has this configuration:
Data Address: 1000
Data Length: 5
Location: Input Registers
In this case, the scanner scans registers 1000 to 1005 within the Input Register block. As Input Registers are in the Modbus register range 300001 to 365536, this results in the scanner scanning Modbus address range 301001 to 301006, with each register within the range comprising 16 bits (that is, the scanner scans 5 Words of data).
(For more information on addressing, see Modbus Register Ranges.)
- Always Update on Scan—Use this check box to indicate whether you want to use the scanner’s updates as a trigger for a Logic program (see Define Whether a Scanner is Used to Trigger Logic in the Geo SCADA Expert Guide to Simple Drivers).
- Use TCP Transaction ID—Select this check box if the transaction ID component of Modbus/TCP data packets is used to check for duplicate packets. Duplicate packets might occur, for example, if a request times out and the driver resends the request and then receives responses to both the original request and the resent request. Should duplicate packets occur, the driver resends the request or, if duplicate packets still occur, fails the scanner.
Clear the check box if the Modbus device does not support checking for duplicate data packets.
- Complete Control on Acknowledge—Select this check box for the driver to process an acknowledge exception response as if it were a successful control completion response. Select this check box if a scanner scans a device that responds to a register write command with an exception response acknowledgment, rather than the usual Modbus write acknowledge response.
Clear the Complete Control on Acknowledge check box for a scanner that scans a device that responds to a register write command with a conventional Modbus write acknowledge response. The check box is clear by default.
- Device Class—Only applies if the scanner’s Primary Port and/or Secondary Port are configured to use a ‘Network’ Connection Type (see Configure the Primary and Secondary Port Properties). Use the Device Class combo box to specify the conformance level of the MODBUS/TCP device. The conformance level determines which function codes are supported. Choose from:
- Class 0—Supports function codes FC3 and FC16.
- Class 1—Supports FC1, FC2, FC3, FC4, FC5, FC6 and FC16.
- Class 2—Supports FC1, FC2, FC3, FC4, FC5, FC6, FC15 and FC16.
- All—Supports FC1, FC2, FC3, FC4, FC5, FC6, FC15, FC16, FC65 and FC67.
For information on the functionality with which each function code is associated, see Modbus Function Codes Supported by the Geo SCADA Expert Simple Modbus Driver.
- Address Base—Use this combo box to specify the starting base for the address that is included in the Source attribute for this scanner and its points. Specify whether the Modbus addressing starts at 0 or 1.
The address base is purely for use in Geo SCADA Expert and has no effect on the scanned data address. For more information, see Modbus Register Ranges.