Cast Tags for Industrial Control Data Partitioning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Industrial control systems face difficulties in synchronizing control actions and managing network traffic due to asynchronous data generation from I/O modules, leading to cumbersome network traffic and inefficient program maintenance caused by fixed references in optimized connection packets.
Innovation Solution
The use of cast tags provides logical references to subsets of unformatted data blocks, allowing for flexible data access and simplifying program maintenance by decoupling data structure knowledge from programmatic references, enabling efficient data exchange and control decisions without requiring updates to the control program when the organization of the optimized connection packet changes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If the controller interfaces with I/O modules asynchronously as each generates data, then data freshness is improved, but synchronization of control actions deteriorates and network traffic becomes cumbersome
Solution Approach 1:
The system implements periodic scanning of I/O modules at predetermined intervals, converting asynchronous data generation into periodic data collection. The scanner systematically polls each I/O module in sequence at regular time intervals, ensuring that data is collected rhythmically rather than chaotically. This periodic action maintains data freshness by regularly updating all modules while providing predictable timing that facilitates synchronization of control actions.
Solution Approach 2:
The scanner serves as an intermediary device between the asynchronous I/O modules and the controller. It collects data from multiple I/O modules, consolidates it into a single optimized connection packet, and transfers it to the controller in a synchronized manner. This intermediary buffers and coordinates the asynchronous data streams, transforming them into a synchronized format that the controller can process efficiently without direct asynchronous interfacing.
2Loss of time
If I/O modules send transactions to the controller each time they update data, then data currency is improved, but network traffic complexity increases and processing efficiency deteriorates
Solution Approach 1:
The scanner merges data from multiple I/O modules into a single consolidated optimized connection packet. Instead of each I/O module sending separate transactions to the controller, the scanner collects updates from all modules and combines them into one unified data structure that is transferred in a single transaction. This merging reduces network traffic complexity and allows the controller to process multiple data updates efficiently in one operation, maintaining data currency while improving processing efficiency.
Solution Approach 2:
The scanner creates a copy of the I/O module data in its local memory before transferring it to the controller. This copying mechanism allows the scanner to buffer data temporarily and consolidate multiple data copies into a single optimized packet, reducing the frequency and complexity of transactions between the I/O modules and the controller while ensuring the controller receives current data.
3Speed
If fixed references to I/O module data positions are used in control programs, then data access speed is improved, but program maintenance complexity increases when data structure changes
Solution Approach 1:
The system introduces an intermediary layer between the control program and the raw I/O data through the use of data structures and variable names. Instead of the program directly referencing fixed bit positions in the optimized connection packet, it accesses data through named variables that are mapped to the underlying data structure. This intermediary abstraction allows fast access through pre-defined variable references while simplifying maintenance, as changes in data structure can be handled at the mapping level without requiring program modifications.
Solution Approach 2:
The optimized connection packet is segmented into logically organized data structures with named fields and variables rather than a continuous stream of bits. Each I/O module's data is organized into distinct structured elements that can be independently accessed and referenced by name. This segmentation provides both fast access through direct variable references and ease of maintenance through clear structural organization, allowing developers to understand and modify data access patterns without dealing with raw bit positions.
Data Source
AI summary
An industrial controller includes a processing unit and a memory. The industrial controller is operable to communicate using an optimized connection packet including I/O data from a plurality of I/O modules arranged as an unstructured data block. The processing unit is operable to operate on the I/O data within the optimized connection packet to control a process. The memory is operable to store a plurality of cast tags. Each cast tag is associated with one of the I/O modules and provides a logical reference to a subset of the unformatted data block including at least a portion of the I/O data for the associated I/O module.


