Decentralized Slot Address Assignment in Daisy-Chain Modules
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Industrial control systems face challenges in efficiently and automatically assigning unique slot addresses to modules, particularly in distributed configurations, due to the complexity of manual configuration and the risk of human error, which can lead to delays and single-point failures.
Innovation Solution
A decentralized method for assigning slot addresses in industrial control systems, where a bank master module reads its slot address and communicates with neighbors to assign unique addresses to each module in a daisy-chain topology, ensuring each module verifies and accepts its address, thereby reducing the burden on a central device and providing a safety mechanism for reliable communication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual configuration of addresses is used, then each module can be assigned a unique address, but the process is time consuming and prone to human error
Solution Approach 1:
Each module automatically determines its own slot address by detecting its position in the daisy-chain topology and communicating with neighboring modules. The module reads a predefined value from a slot ID selector and exchanges messages with adjacent modules to establish its unique address without human intervention, thereby eliminating human error while maintaining efficiency
Solution Approach 2:
The slot ID selector is pre-configured with potential address values before the module is installed. During the automatic assignment process, the module reads this pre-defined value and uses it as the basis for its slot address, preparing the address assignment in advance to speed up the commissioning process
2Extent of automation
If automatic address assignment is executed from a central controller, then address assignment can be automated, but it creates a single point of failure that can delay system operation
Solution Approach 1:
The address assignment function is segmented and distributed to each individual module rather than being centralized. Each module independently performs address assignment by communicating only with its immediate neighbors in the daisy-chain topology. This segmentation eliminates the single point of failure at the central controller, as each module can determine its address autonomously even if other modules or the central controller are unavailable
Solution Approach 2:
Each module serves itself by automatically determining its own slot address through local communication with neighboring modules. The module reads its slot address from the slot ID selector and exchanges verification messages with adjacent modules without requiring central controller intervention. This self-service approach ensures that address assignment can proceed even if the central controller fails, maintaining system availability
3Extent of automation
If a table or database is created and stored in the central controller to define system structure, then automatic address assignment can be performed, but future modifications require updating the central controller's table
Solution Approach 1:
Each module independently determines its slot address by reading from its own slot ID selector and communicating with its neighboring modules. There is no centralized table or database required to store system structure information. When modifications are needed, only the affected module's slot ID selector needs to be adjusted, and the module will automatically re-establish its address through local communication, eliminating the complexity of updating central controller databases
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
A method and system for assigning slot addresses to modules in an industrial control system is disclosed. The modules are set up in a daisy chain topology. On power-up, a first module in the chain reads its slot address from a user configurable input or sets its slot address to a default value. The first module communicates to its immediate right neighbor using a special, one-hop message. The neighboring modules communicate to receive each other's information. The first module then sets an enable signal between the modules and sends a slot number to the neighbor in a firmware message. The neighbor checks if the enable signal is set and verifies that the slot number is a valid slot number. If so, then the neighboring module accepts the slot and repeats the same procedure to its next immediate neighbor, and so on until the last module.