Superblock Reading (Grouping)

<< Click to Display Table of Contents >>

 

Superblock Reading (Grouping)

Starting with version 2.01, this Driver supports a Superblock Reading feature. This feature is supported by E3 and Elipse Power, and it can be enabled via the EnableReadGrouping property of this Driver on Organizer. When this property is configured to True, users do not need to worry about block resizing.

With this feature, it is possible, and usually recommended, to create applications with only simple Tags, or PLC Tags in Elipse SCADA, without performance issues, because group optimization on readings is automatically performed during communication. The next figure displays the configuration of the EnableReadGrouping property on E3 or Elipse Power.

EnableReadGrouping property

EnableReadGrouping property

Elipse SCADA does not support Superblocks. The behavior when reading Tags on Elipse SCADA is identical to E3 and Elipse Power when the EnableReadGrouping property is configured as False. In both cases, this Driver relies on Automatic Block Partition, and it can divide blocks with sizes larger than protocol limits into smaller blocks during communication. In these cases, users must consider that grouping when defining application Tags, as described later on this topic.

 

NOTES

Automatic grouping is performed based on application Tags in advise. Whenever new Tags enter or leave advise, the Superblock algorithm redefines this grouping, that is, Superblocks to be read automatically, at run time, including only Tags in advise.

 

IMPORTANT

Superblock grouping in E3, as well as Driver's Automatic Block Partition, require that a device supports the limits established by standard Modbus. For more information, please check topic Maximum Limit for the Size of Blocks Supported by the Modbus Protocol. There are devices, however, that support lower limits. For automatic block partition and Superblock grouping to work on these cases, starting with version 2.03, this Driver allows customizing the maximum limit supported for PDU (Protocol Data Unit). To do so, on this Driver's configuration window, Modbus tab, enable the Customize Max. PDU Size option and configure the maximum size of bytes supported for PDU on this device. If this device supports different limits for each type of function, users must perform a manual grouping, as described further on this topic, observing all limits described on manufacturer's documentation.

 

Identifying Devices that do not Support Automatic Grouping (Superblocks)

The Superblock algorithm considers all limits and addressing spaces defined by standard Modbus protocol. For devices that implement Modbus protocol with small variations, some additional advanced configurations may be necessary to use this Superblock feature, if its usage appears viable. In these cases, it is necessary to disable automatic grouping, that is, the EnableReadGrouping property configured as False, and then perform a manual grouping. The following conditions may prevent using Superblocks, or may require additional advanced configurations:

Devices that define maximum limits for block sizes lower than protocol's standard limit, that is, a limit of 253 bytes for PDU. Solution: Configure the Customize Max. PDU Size option on the Modbus tab

 

NOTE

There are devices whose PDU limits vary according to the Modbus function used. In these cases, if it is necessary to use functions with different limits, it is also necessary to disable Superblocks, that is, the EnableReadGrouping property configured as False, by manually grouping Tags, as described later on this topic.

 

Devices with discontinuities, or undefined address intervals inserted between valid intervals, on the register map. Solution: Once it is impossible to inform to the Superblock algorithm which intervals cannot be inserted in blocks, usually it is not possible to use Superblocks. Disable Superblocks, that is, configure the EnableReadGrouping property as False, and manually group all Tags

Devices that do not support block readings. Solution: Disable Superblocks, that is, configure the EnableReadGrouping property as False, and define simple Tags

Devices that only allow defining blocks in pre-determined addresses and with fixed sizes. Solution: Disable Superblocks, that is, configure the EnableReadGrouping property as False, and define simple Tags, or PLC Tags in Elipse SCADA, or Blocks according to a device's specification

 

Manual Grouping

Usually, the larger the grouping of variables in blocks, the less reading requests are needed to complete a scan cycle of application Tags, thus increasing Tag's update speed. For this reason, if it is not possible to use automatic grouping, or Superblocks, it is preferable to create Block Tags containing as many variables as possible, instead of creating simple Tags, or PLC Tags in Elipse SCADA.

Notice that, due to the Automatic Block Partition feature, there is no need to prevent exceeding protocol's maximum limits, as long as a device supports protocol's default maximum limits. If this device does not support these limits, but defines fixed limits, valid for all supported Modbus functions, users must configure the Customize Max. PDU Size option on the Modbus tab.

If a device supports different limits for each supported function, automatic partitioning can be also unfeasible. In these cases, an application developer must also consider device's limits, and define blocks respecting these limits.

For a manual grouping, using user-defined data types can increase possibilities of grouping, by allowing to gather on a single Block Tag variables from the same addressing space, that is, a single Modbus function, but with different data types. In this case, the defined structure may have elements with different data types.

For more tips, please check topic Optimization Tips. The article KB-23112 in Elipse Knowledgebase presents a summary of questions related to Tag grouping and block resizing in this Driver, discussed here and on other topics.

Was this page useful?