Examples of Automatic Modbus Point Scanner Creation

The following scenarios demonstrate how the Modbus (Server Device) configuration of a set of SCADAPack x70 Analog and Digital Configuration items and the Maximum Gap Size setting impact the Modbus point scanner(s) that are automatically created for these Configuration items.

The other properties in these examples (Operation, Write Outputs, Operation for Offline Devices, Unsuccessful Write Operation, Scan Rate and Timeout) are the same for each object. Example 3b is an exception to this, with the Scan Rates differing while the other settings remain the same. These properties are configured on the Mapping tab (see Configure the Properties on the Mapping Tab).

Example 1:

Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4 PIO_SP474_AI5
Modbus Data Type UINT (Analog) UINT (Analog) UINT (Analog) UINT (Analog) UINT (Analog)
Modbus Register 30001 30002 30003 30004 30005

This scenario will create a single Modbus point scanner with:

  • A Modbus Register Start Address of 30001 and a Modbus Register Quantity of 5.

This is because the registers are consecutive.

Example 2:

Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4
Modbus Data Type UINT (Analog) UINT (Analog) UINT (Analog) UINT (Analog)
Modbus Register 30001 30002 30004 30005

With a Maximum Gap Size of 0 registers, this scenario will create two Modbus point scanners:

  • The first with a Modbus Register Start Address of 30001 and a Modbus Register Quantity of 2
  • The second with a Modbus Register Start Address of 30004 and a Modbus Register Quantity of 2.

A gap at register 30003 necessitates the creation of these two separate scanners.

With a Maximum Gap Size of 1 register (or more) this scenario will create a single Modbus point scanner with:

  • A Modbus Register Start Address of 30001 and a Modbus Register Quantity of 5, spanning the gap at register 30003.

Example 3a:

Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4 PIO_SP474_AI5
Modbus Data Type UINT (Analog) UINT (Analog) INT INT INT
Modbus Register 30001 30002 30003 30004 30005
Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4 PIO_SP474_AI5

This scenario will create two Modbus point scanners:

  • The first with a Modbus Register Start Address of 30001 and a Modbus Register Quantity of 2
  • The second with a Modbus Register Start Address of 30003 and a Modbus Register Quantity of 3.

Using two different data types necessitates the creation of these two separate scanners.

Example 3b:

Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4 PIO_SP474_AI5
Scan Rate 10 seconds 10 seconds 10 seconds 30 seconds 30 seconds
Modbus Data Type UINT (Analog) UINT (Analog) UINT (Analog) UINT (Analog) UINT (Analog)
Modbus Register 30001 30002 30003 30004 30005

This scenario will create two Modbus point scanners:

  • The first with a Modbus Register Start Address of 30001 and a Modbus Register Quantity of 3
  • The second with a Modbus Register Start Address of 30003 and a Modbus Register Quantity of 2.

Using two different scan rates necessitates the creation of these two separate scanners.

Example 4:

Object PIO_5405_DI0 PIO_5405_DI1 PIO_5405_DI2 PIO_5405_DI3 PIO_5405_DI4 PIO_5405_DI5 PIO_5405_DI6 PIO_5405_DI7
Modbus Data Type UINT (Digital) UINT (Digital) UINT (Digital) UINT (Digital) UINT (Digital) UINT (Digital) UINT (Digital) UINT (Digital)
Modbus Register 30001 30001 30001 30001 30002 30002 30002 30002
Bit Offset 0 1 2 3 0 3 4 5

This scenario will create a single Modbus point scanner with:

  • A Modbus Register Start Address of 30001 and a Modbus Register Quantity of 2.

There are 12 unused bits in each of the two registers.

Example 5:

Object PIO_5405_DI0 ... PIO_5405_DI1023 PIO_5405_DI1024 ... PIO_5405_DI2047
Modbus Data Type UINT (Digital) ... UINT (Digital) UINT (Digital) ... UINT (Digital)
Modbus Register 30001 ... 30064 30065 ... 30128
Bit Offset 0 ... 15 0 ... 15

This scenario will create two Modbus point scanners:

  • The first with a Modbus Register Start Address of 30001 and a Modbus Register Quantity of 64
  • The second with a Modbus Register Start Address of 30065 and a Modbus Register Quantity of 64.

This is due to the number of consecutive registers exceeding the maximum number of 64 registers per scanner with a UINT (Digital) data type. The other data types have a maximum of 1000 registers per scanner.

The columns with the ellipses (...) represent a contiguous sequence of registers/bits from the previous object to the next object.

Example 6:

Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4 PIO_SP474_AI5
Modbus Data Type Real (Floating Point) Real (Floating Point) Real (Floating Point) Real (Floating Point) Real (Floating Point)
Modbus Register 30001 30003 30005 30007 30009

This scenario will create a single Modbus point scanner with:

  • A Modbus Register Start Address of 30001 and a Modbus Register Quantity of 10. This is because the pairs of registers are consecutive.

Each object uses two registers due to the Real (Floating Point) data type.

Example 7:

Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4 PIO_SP474_AI5
Modbus Data Type Real (Floating Point) Real (Floating Point) Real (Floating Point) Real (Floating Point) Real (Floating Point)
Modbus Register 30001 30003 30007 30009 30011

With a Maximum Gap Size of 0 registers this scenario will create two Modbus point scanners:

  • The first with a Modbus Register Start Address of 30001 and a Modbus Register Quantity of 4
  • The second with a Modbus Register Start Address of 30007 and a Modbus Register Quantity of 6.

This is due to the gap at registers 30005 and 30006.

With a Maximum Gap Size of 2 registers (or more) this scenario will create a single Modbus point scanner with:

  • A Modbus Register Start Address of 30001 and a Modbus Register Quantity of 12, spanning the gap at registers 30005 and 30006.

Example 8:

Object PIO_SP474_AI1 PIO_SP474_AI2 PIO_SP474_AI3 PIO_SP474_AI4 PIO_SP474_AI5
Modbus Data Type Real (Floating Point) Real (Floating Point) Real (Floating Point) Real (Floating Point) Real (Floating Point)
Modbus Register 30001 30003 30008 30010 30012

This scenario will create two Modbus point scanners (regardless of the Maximum Gap Size):

  • The first with a Modbus Register Start Address of 30001 and a Modbus Register Quantity of 4
  • The second with a Modbus Register Start Address of 30008 and a Modbus Register Quantity of 6.

This is due to the gap of 3 registers (which is not a multiple of two). Each Configuration item uses 2 registers due to the Real (Floating Point) data type.