Plc control system
Patent Information
- Application Number
- CN202611507356.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-28
- Publication Date
- 2026-10-30
AI Technical Summary
[0005]本公开要解决的技术问题是为了克服现有技术中随着数据耦合节点数量的增加,PLC控制器的资源被大量消耗于通信处理,降低了PLC控制器对核心控制逻辑的处理效率的缺陷,提供一种PLC控制系统
[0039]本公开的积极进步效果在于:通过设置一个与PLC控制器直接连接的接入节点作为统一入口,并将所有扩展节点与接入节点通过光纤依次串联构成环状通信链路,使得PLC控制器只需与接入节点进行单一通信连接即可实现对全部数据耦合节点的数据交互管理,无需逐一访问每个扩展节点,从而大幅降低了PLC控制器的通信连接数和通信负担,减少了控制器资源在通信处理上的消耗,将更多处理资源留给核心控制逻辑,提升了控制系统的整体运行效率。且该环状通信链路的拓扑结构可以使所有的数据耦合节点在逻辑上对等,避免了因存在末端的数据耦合节点故障导致整个通信链路失效的风险;且该环状通信链路中的数据可以单向循环传输,这样接入节点无需等待下行完成后再进行上行,从而提升了环状通信链路中数据的交换效率,此外,在PLC控制系统需要扩展数据耦合节点时,新增的数据耦合节点可灵活插入环状通信链路中的任意位置,而无需重新确认末端,进而进一步降低了系统扩展的复杂度和维护成本。
Smart Images

Figure CN123010585A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of industrial automation control technology, and in particular to a PLC control system. Background Technology
[0002] In a PLC (Programmable Logic Controller) control system, the field data collected by various devices in the industrial field are coupled through data coupling nodes, and the PLC controller can control the various devices in the industrial field through these data coupling nodes.
[0003] However, with the continuous improvement of industrial automation, the number of devices in large industrial sites (such as wind farms, thermal power plants, and hydroelectric power stations) continues to grow, and the distribution range of these devices is constantly expanding. A single data coupling node often cannot cover all the devices. Therefore, it is necessary to set up a large number of data coupling nodes to couple the data collected from all field devices.
[0004] However, when the PLC control system expands its data coupling nodes, the PLC controller needs to control the data interaction between these nodes. As the number of data coupling nodes increases, the communication burden on the PLC controller multiplies, with a large amount of its resources consumed by communication processing. This reduces the processing resources available for the core control logic, thereby lowering the PLC controller's efficiency in processing the core control logic. Summary of the Invention
[0005] The technical problem to be solved by this disclosure is to overcome the defect in the prior art where, as the number of data coupling nodes increases, a large amount of PLC controller resources are consumed in communication processing, which reduces the PLC controller's processing efficiency for core control logic, and to provide a PLC control system.
[0006] This disclosure solves the above-mentioned technical problems through the following technical solution:
[0007] This disclosure provides a PLC control system, which includes a PLC controller and at least two data coupling nodes; wherein, the data coupling node directly connected to the PLC controller is used as an access node, and the other data coupling nodes are used as extension nodes.
[0008] The access node and each of the extension nodes are connected sequentially via optical fibers to form a ring communication link;
[0009] The PLC controller is used to send the data interaction information of each of the data coupling nodes to the access node;
[0010] The access node is used to parse the data interaction information and send the parsed data interaction information to the extension node through the ring communication link;
[0011] The access node and the extension node perform corresponding data interaction operations based on the parsed data interaction information.
[0012] Optionally, the access node includes a first FPGA control unit, and the expansion node includes a second FPGA control unit;
[0013] The PLC controller and the access node are electrically connected via the first FPGA control unit;
[0014] The first FPGA control unit in the access node and the second FPGA control units in each of the expansion nodes are connected sequentially via optical fibers to form the ring communication link.
[0015] Optionally, the parsed data interaction information includes the configuration information of each of the data coupling nodes;
[0016] The first FPGA control unit and the second FPGA control unit perform corresponding configuration operations based on the configuration information.
[0017] Optionally, the data interaction information includes first interaction information;
[0018] The first FPGA control unit periodically sends the first interactive information through the ring communication link;
[0019] The second FPGA control unit sends the corresponding extended data information to the first FPGA control unit through the ring communication link according to the first interaction information;
[0020] The first FPGA control unit stores the extended data information for access by the PLC controller.
[0021] Optionally, the first FPGA control unit stores the extended data information in the target address space according to a predetermined address mapping relationship, so that the PLC controller can access it.
[0022] Optionally, the data interaction information includes second interaction information; the second interaction information includes a source node identifier and a destination node identifier;
[0023] The first FPGA control unit and the second FPGA control unit are also used to send the corresponding data to the FPGA control unit that matches the destination node identifier through the ring communication link when they identify that their own node identifier matches the source node identifier.
[0024] Optionally, the second interactive information may also include the source node address and the destination node address;
[0025] The first FPGA control unit and the second FPGA control unit are also used to read the corresponding data based on the source node address when they identify that their own node identifier matches the source node identifier, and send the corresponding data to the FPGA control unit that matches the destination node identifier through the ring communication link;
[0026] The FPGA control unit that matches the destination node identifier is also used to store the corresponding data in the local storage unit based on the destination node address.
[0027] Optionally, the first FPGA control unit and the second FPGA control unit are further configured to continue sending the second interactive information through the ring communication link when they detect that their own node identifier does not match the source node identifier.
[0028] Optionally, the PLC controller includes a master PLC controller and a slave PLC controller; the access node includes a master access node and a slave access node; the expansion node includes a master expansion node and a slave expansion node; and the PLC control system further includes a link switching unit.
[0029] The main PLC controller is electrically connected to the main access node;
[0030] The main access node and each of the main extension nodes are connected sequentially via optical fibers to form a main ring communication link;
[0031] The slave PLC controller is electrically connected to the slave access node;
[0032] The access node and each of the extension nodes are connected sequentially via optical fibers to form a ring communication link.
[0033] The link switching unit is electrically connected to the master PLC controller and the slave PLC controller respectively;
[0034] The link switching unit is used to switch the master PLC controller to the slave PLC controller when the master ring communication link does not meet the preset conditions.
[0035] Optionally, the first FPGA control unit and the second FPGA control unit are further configured to acquire the operating status of the corresponding node and send the operating status to the main access node through the main ring communication link;
[0036] The main PLC controller is also used to issue a switching command to the link switching unit when the operating state does not meet the preset conditions;
[0037] The link switching unit switches the master PLC controller to the slave PLC controller according to the switching instruction.
[0038] Based on common knowledge in the field, the above-mentioned preferred conditions can be combined arbitrarily to obtain various preferred embodiments of this disclosure.
[0039] The positive improvements of this disclosure are as follows: By setting up a unified entry point directly connected to the PLC controller and connecting all expansion nodes to the access node in a ring communication link via optical fiber, the PLC controller only needs a single communication connection with the access node to manage data interaction with all data-coupled nodes. This eliminates the need to access each expansion node individually, significantly reducing the number of communication connections and the communication burden on the PLC controller. It also reduces the consumption of controller resources in communication processing, allowing more processing resources to be allocated to the core control logic, thus improving the overall operating efficiency of the control system. Furthermore, the topology of this ring communication link ensures logical equality among all data-coupled nodes, avoiding the risk of the entire communication link failing due to a faulty end data-coupled node. Data in this ring communication link can be transmitted unidirectionally, eliminating the need for access nodes to wait for downlink completion before uplinking, thereby improving the data exchange efficiency of the ring communication link. In addition, when the PLC control system needs to expand data-coupled nodes, the new data-coupled nodes can be flexibly inserted into any position in the ring communication link without reconfirming the end, further reducing the complexity of system expansion and maintenance costs. Attached Figure Description
[0040] Figure 1 A schematic diagram of a PLC control system provided for an exemplary embodiment of this disclosure.
[0041] Figure 2 This is a schematic diagram of a master / slave ring communication link in a PLC control system provided as an exemplary embodiment of the present disclosure.
[0042] Figure 3 This is a schematic diagram of a data coupling node in a PLC control system provided as an exemplary embodiment of the present disclosure. Detailed Implementation
[0043] The present disclosure is further illustrated below by way of embodiments, but the present disclosure is not limited to the scope of the embodiments described herein.
[0044] The prefixes such as "first" and "second" used in this disclosure are merely for distinguishing different descriptive objects and do not limit the position, order, priority, quantity, or content of the described objects. The use of ordinal numbers and other prefixes used to distinguish descriptive objects in this disclosure does not constitute a limitation on the described objects. The description of the described objects is given in the context of the claims, and the use of such prefixes should not constitute unnecessary limitations. Furthermore, in the description of this embodiment, unless otherwise stated, "multiple" means two or more.
[0045] To improve the processing efficiency of PLC controllers for core control logic, this disclosure provides a PLC control system. Figure 1 This is a schematic diagram of a PLC control system provided in an exemplary embodiment of the present disclosure. The PLC control system includes a PLC controller 11 and at least two data coupling nodes; wherein, the data coupling nodes directly connected to the PLC controller 11 are designated as access nodes 12, and the other data coupling nodes are designated as extension nodes 13; the access nodes 12 and each extension node 13 are sequentially connected via optical fibers to form a ring communication link 14; the PLC controller 11 is used to send data interaction information from each data coupling node to the access node 12; the access node 12 is used to parse the data interaction information and send the parsed data interaction information to the extension nodes 13 via the ring communication link 14; the access node 12 and the extension nodes 13 perform corresponding data interaction operations based on the parsed data interaction information.
[0046] It should be noted that, Figure 1 The dashed lines between the expansion nodes 13 indicate that there are multiple expansion nodes 13. The PLC controller 11 communicates with the access node 12 via Ethernet.
[0047] Preferably, two sets of optical fiber transceiver interfaces can be set on the two data coupling nodes, and these transceiver interfaces are reversible to form a ring communication link. In this way, when the transmitting port is unresponsive, the receiving port can be used to perform the transmitting action.
[0048] In this embodiment, an access node directly connected to the PLC controller is set as a unified entry point. All expansion nodes and the access node are sequentially connected in series via optical fiber to form a ring communication link. This allows the PLC controller to manage data interaction with all data coupling nodes through a single communication connection with the access node, eliminating the need to access each expansion node individually. This significantly reduces the number of communication connections and the communication burden on the PLC controller, reducing the consumption of controller resources in communication processing and allocating more processing resources to the core control logic, thereby improving the overall operating efficiency of the control system. Furthermore, the topology of this ring communication link ensures logical equality among all data coupling nodes, avoiding the risk of the entire communication link failing due to a faulty data coupling node at the end. Data in this ring communication link can be transmitted unidirectionally, eliminating the need for access nodes to wait for downlink completion before uplinking, thus improving the data exchange efficiency of the ring communication link. In addition, when the PLC control system needs to expand data coupling nodes, the new data coupling nodes can be flexibly inserted into any position in the ring communication link without reconfirming the end, further reducing the complexity of system expansion and maintenance costs.
[0049] In one embodiment, the access node 12 includes a first FPGA control unit, and the expansion node 13 includes a second FPGA control unit; the PLC controller is electrically connected to the access node 12 through the first FPGA control unit; the first FPGA control unit in the access node 12 and the second FPGA control units in each expansion node 13 are sequentially connected through optical fibers to form a ring communication link 14.
[0050] In this embodiment, since the FPGA control unit can complete the identification, parsing, and forwarding of data frames within the same clock cycle, by setting up FPGA control units in each data coupling node, the data interaction between the access node and the expansion node can be made so that the PLC controller does not need to participate step by step, thus completely freeing the PLC controller from cumbersome node-by-node communication management. This significantly reduces the number of communication connections and the communication burden of the PLC controller, reduces the consumption of controller resources in communication processing, and leaves more processing resources for the core control logic, thereby improving the overall operating efficiency of the control system.
[0051] In one embodiment, the parsed data interaction information includes the configuration information of each data coupling node; the first FPGA control unit and the second FPGA control unit perform corresponding configuration operations according to the configuration information.
[0052] In this embodiment, by parsing the configuration information via the first FPGA control unit of the access node and transmitting it along the ring communication link to the second FPGA control units of each expansion node, the PLC controller does not need to issue instructions one by one or maintain the configuration information of each data coupling node. Instead, the configuration information is broadcast once to the ring communication link through the access node. Each FPGA control unit identifies and executes its own related configuration operations in parallel based on hardware logic, realizing synchronous updates and rapid effects of system configuration. This significantly reduces the configuration complexity of the PLC control system with multiple data coupling nodes and the PLC controller's dependence on the underlying topology, thereby improving the flexibility and efficiency of PLC control system expansion and operation and maintenance.
[0053] In one embodiment, the data interaction information includes first interaction information; the first FPGA control unit periodically sends the first interaction information through the ring communication link 14; the second FPGA control unit sends the corresponding extended data information to the first FPGA control unit through the ring communication link 14 according to the first interaction information; the first FPGA control unit stores the extended data information for access by the PLC controller.
[0054] In this embodiment, the first FPGA control unit of the access node periodically issues a unified data acquisition command along the ring communication link, enabling the second FPGA control units of each expansion node to respond in parallel and report their respective expansion data within the same data frame period. This allows the PLC controller to obtain the data of all data coupling nodes by accessing the local storage area of the access node without having to access each expansion node one by one, thereby significantly reducing the communication burden of the PLC controller.
[0055] In one embodiment, the first FPGA control unit stores the extended data information in the target address space according to a predetermined address mapping relationship, so that the PLC controller 11 can access it.
[0056] It should be noted that this predetermined address mapping relationship can be set according to actual needs. This extended data information may include at least one of the following: field input data, output feedback data, communication card data, IOU unit diagnostic data, and data coupling node diagnostic data.
[0057] In this embodiment, the first FPGA control unit of the access node stores the extended data information reported by each extended node in the local target address space according to a predetermined address mapping relationship. This reorganizes the originally scattered extended data from different extended nodes into a continuous and regular address image. In this way, the PLC controller only needs to access the corresponding address in the target address space to obtain the data of any extended node, without needing to care about the physical location, communication address, or data transmission path in the ring communication link of each extended node. This further reduces the complexity of data management on the PLC controller side. Furthermore, due to the continuity and determinism of the target address space, the PLC controller can efficiently obtain data, thereby improving the data interaction efficiency.
[0058] In one embodiment, the data interaction information includes second interaction information; the second interaction information includes a source node identifier and a destination node identifier; the first FPGA control unit and the second FPGA control unit are further configured to send the corresponding data to the FPGA control unit that matches the destination node identifier through the ring communication link 14 when they identify that their own node identifier matches the source node identifier.
[0059] In this embodiment, when any FPGA control unit recognizes that its own node identifier matches the source node identifier, it can directly send data to the FPGA control unit that matches the destination node identifier through the ring communication link. This process makes the data interaction between data coupling nodes no longer limited to a single master-slave direction between the access node and the extension node, but realizes direct data transfer between any two data coupling nodes on the ring communication link. The PLC controller only needs to formulate the second interaction information of the data transfer rules, without participating in the specific data transmission process. Each FPGA control unit can complete the data interaction task, effectively shortening the data transmission path and delay between data coupling nodes, and improving the flexibility and efficiency of data interaction.
[0060] In one embodiment, the second interactive information further includes the source node address and the destination node address; the first FPGA control unit and the second FPGA control unit are also used to read the corresponding data based on the source node address when they identify that their own node identifier matches the source node identifier, and send the corresponding data to the FPGA control unit that matches the destination node identifier through a ring communication link; the FPGA control unit that matches the destination node identifier is also used to store the corresponding data in the local storage unit based on the destination node address.
[0061] In this embodiment, when any FPGA control unit detects that its own node identifier matches the source node identifier, it can read the corresponding data from its local storage unit based on the source node address and send the data directly to the FPGA control unit matching the destination node identifier via a ring communication link. The FPGA control unit matching the destination node identifier also stores the corresponding data in its local storage unit based on the destination node address. This process allows data interaction between data-coupled nodes to move beyond the single master-slave relationship between the access node and the extension node, enabling direct data transfer between any two data-coupled nodes on the ring communication link. The PLC controller only needs to define the second interaction information for data transfer rules without participating in the specific data transmission process. Each FPGA control unit can then complete the data interaction task, effectively shortening the data transmission path and delay between data-coupled nodes and improving the flexibility and efficiency of data interaction.
[0062] In one embodiment, the first FPGA control unit and the second FPGA control unit are also used to continue to send the second interactive information through the ring communication link 14 when they detect that their own node identifier does not match the source node identifier.
[0063] In this embodiment, when any FPGA control unit receives the second interaction information and recognizes that its own node identifier does not match the source node identifier in the instruction, the FPGA control unit does not perform any parsing or caching of the data content in the instruction. Instead, it directly continues to transmit the second interaction information down the ring communication link, thereby ensuring that the second interaction information can be transmitted to the corresponding data coupling node at the fastest speed. This avoids the parsing delay and invalid processing of the second interaction information by irrelevant data coupling nodes, and eliminates the need for the PLC controller to forward or resend the second interaction information at each level. This further reduces the processing overhead of non-target data coupling nodes, improves the transmission efficiency of the second interaction information in the ring communication link, and ensures that the second interaction information can reach any data coupling node in the ring communication link efficiently and without omission.
[0064] In one embodiment, the data interaction process across data coupling nodes is specifically described. The aforementioned second interaction information includes a cross-node data transport packet, which carries an actual data transfer task. This cross-node data transport packet includes at least a command flag, packet length, source node identifier, destination node identifier, source data address, destination data address, data length, upload completion flag, download completion flag, and a data area. After parsing the cross-node data transport packet, the first FPGA control unit generates a corresponding transport packet and continuously transports it to each data coupling node via a ring communication link. Specifically, the command flag indicates that the cross-node data transport packet is a transport-type data packet; the source node identifier and destination node identifier indicate the start and end points of the transport task; the source data address and destination data address indicate the read and write positions of the local data storage areas at both ends; the data length limits the range of data transfer; the upload completion flag and download completion flag indicate whether the source node's read action and the destination node's write action are complete; and the data area carries the actual data read from the source node. Upon receiving a cross-node data transport packet, each data coupling node matches its own node identifier with the source node identifier and destination node identifier in the transport packet to determine its role in the current transport task.
[0065] When its own node identifier matches the source node identifier, the data coupling node acts as the source node, parses the source data address and data length from the transport packet, reads the corresponding data from the local data storage area, writes it into the data area of the transport packet, and then sets the upload completion flag.
[0066] When its own node identifier matches the destination node identifier, the data coupling node acts as the destination node. After detecting that there is already valid data in the transport package, it extracts the data from the data area, writes it to the destination data address in the local data storage area, and then sets the download completion flag.
[0067] When a data coupling node is neither a source node nor a destination node, it does not modify the data area but only performs transparent forwarding, allowing the transport packet to continue to be transmitted along the ring communication link.
[0068] Through this mechanism, the same cross-node data transport packet can be processed step-by-step by different data coupling nodes in the link according to their roles. The source data coupling node is responsible for uploading data, the destination data coupling node is responsible for downloading data, and other data coupling nodes are responsible for forwarding. The PLC controller does not need to issue independent read and write commands to each data coupling node; the data coupling nodes can determine the action themselves based on the node identifier and address field in the transport packet.
[0069] This mechanism supports data transfer from any data coupling node to any data coupling node. That is, the source node is not limited to the primary access data coupling node, nor is the destination node limited to the primary access data coupling node; as long as the corresponding source node, destination node and address relationship are defined in the exchange link table, the data exchange module can generate the corresponding transport packet and complete the data transfer.
[0070] To ensure that the cross-node data transfer process is verifiable and diagnosable, upload and download completion flags are set in the transport packet. The source data coupling node sets the upload completion flag after completing local data reading and writing the data into the transport packet; the destination data coupling node sets the download completion flag after completing writing the target address.
[0071] This mechanism enables data packets to carry execution status as they flow through the ring communication link. The initiating or monitoring node can determine whether the cross-node data transfer is complete, whether only the upload is complete, whether only the download is complete, or whether an anomaly has occurred based on two completion flags. If the upload completion flag remains unset for an extended period, it indicates that the source node is reading or the source link is experiencing an anomaly; if the download completion flag remains unset for an extended period, it indicates that the destination node is writing or the destination link is experiencing an anomaly.
[0072] Through this cross-data coupling node data interaction process, the transport package not only carries data content, but also task execution status, which is beneficial for the data coupling node to realize closed-loop confirmation and diagnosis of cross-node data exchange in the FPGA hardware logic.
[0073] In one embodiment, the PLC controller 11 includes a master PLC controller and a slave PLC controller; the access node 12 includes a master access node and a slave access node; the expansion node 13 includes a master expansion node and a slave expansion node; and the PLC control system further includes a link switching unit. The master PLC controller is electrically connected to the master access node; the master access node and each master expansion node are sequentially connected via optical fibers to form a master ring communication link; the slave PLC controller is electrically connected to the slave access node; the slave access node and each slave expansion node are sequentially connected via optical fibers to form a slave ring communication link; the link switching unit is electrically connected to both the master PLC controller and the slave PLC controller; and the link switching unit is used to switch the master PLC controller to the slave PLC controller when the master ring communication link does not meet preset conditions.
[0074] It should be noted that these preset conditions can be set according to the actual situation.
[0075] Figure 2 This is a schematic diagram of a master / slave ring communication link in a PLC control system provided as an exemplary embodiment of this disclosure. (In conjunction with...) Figure 2 The master / slave ring communication link will be further explained.
[0076] like Figure 2 As shown, two data coupling node slots can be set on the same base plate, with the master / slave access nodes respectively connected to the master / slave controller via links. The master / slave access nodes are also respectively connected to master / slave expansion nodes to form a master / slave ring communication link.
[0077] When the primary ring communication link times out or the corresponding data becomes unavailable, the secondary ring communication link can synchronize the corresponding communication card data or diagnostic data to this side, reducing the impact of single-link anomalies on the continuity of field data. This mechanism can be used in conjunction with master-slave switching and trusted status judgment to improve the data consistency and availability of redundant PLC systems.
[0078] In this embodiment, by setting up redundant main and slave ring communication links and configuring a link switching unit to monitor the working status of the main ring communication link in real time, when the main ring communication link does not meet the preset conditions, the link switching unit automatically switches the main PLC controller to the slave PLC controller. This allows the PLC control system to continue to maintain normal control communication through the slave ring communication link even when the main ring communication link is abnormal, thereby ensuring the PLC control system's ability to resist sudden failures and ensuring the continuity of data transmission and the reliability of system operation.
[0079] In one embodiment, such as Figure 2 As shown, two data coupling node slots can be installed on the same baseboard, and up to 15 IOU units of different types can be connected. These IOU units include input IOU units, which convert physical signals from field sensors into digital signals for the data coupling node, and output IOU units, which convert control commands from the data coupling node into electrical signals to drive field devices. Each IOU unit has a type identifier to identify the module type. The data coupling node identifies the IOU unit type through backplane communication frames and determines the corresponding input, output, and diagnostic areas based on configuration data.
[0080] For input IOU units, the data coupling node periodically or on triggers reads their sampled data and writes it to the local data storage area; for output IOU units, the data coupling node reads the output control data from the local data storage area and sends it to the corresponding IOU unit; for diagnostic data, the data coupling node reads the IOU unit status and writes it to the diagnostic area.
[0081] After data from the IOU unit enters the data coupling node, it can be further addressed and cached through the data exchange module. Alternatively, it can be moved to other data coupling nodes or the unified process image area of the main access data coupling node according to the data exchange information. Thus, the physical slots and data addresses of the IOU unit can be decoupled through a configuration table, facilitating system expansion and maintenance.
[0082] In one embodiment, the first FPGA control unit and the second FPGA control unit are further configured to acquire the operating status of the corresponding node and send the operating status to the main access node through the main ring communication link; the main PLC controller is further configured to issue a switching command to the link switching unit when the operating status does not meet the preset conditions; the link switching unit switches the main PLC controller to the slave PLC controller according to the switching command.
[0083] In this embodiment, the FPGA control unit of each data coupling node can acquire the operating status of its own data coupling node in real time and report the operating status to the main access data coupling node along the main ring communication link. This allows the main PLC controller to dynamically grasp the status information of all data coupling nodes on the ring communication link. When the main PLC controller determines that the operating status of a certain data coupling node or multiple data coupling nodes does not meet the preset conditions, it actively sends a switching command to the link switching unit to switch from the main PLC controller to the slave PLC controller. This allows for decision-making based on the operating status reported by each FPGA control unit, effectively avoiding the problem of the PLC control system continuing to use data from abnormal data coupling nodes when there is an internal fault in the data coupling node but the link is still open. This further improves the accuracy of redundancy switching and the reliability of system operation.
[0084] In one embodiment, Figure 3 This is a schematic diagram of a data coupling node in a PLC control system provided as an exemplary embodiment of this disclosure. (In conjunction with...) Figure 3 The data coupling node is further described below. This data coupling node comprises four parts: a communication and debugging interface, an FPGA control unit, a memory unit, and a field I / O interface.
[0085] The communication and debugging interface mainly includes an Ethernet interface, a serial port interface, a fiber optic interface, and a debugging interface. The Ethernet interface is primarily used for high-speed data transmission between the data coupling node and the host controller or external communication nodes. The serial port interface can be used for low-speed configuration (e.g., when the data coupling node is powered on for the first time, or when an engineer needs to modify the device address or node identifier of the data coupling node, the engineer uses a serial cable to connect the computer and the data coupling node, and sends instructions from the host computer software to write initial parameters), diagnostics (e.g., when the PLC control system malfunctions, Ethernet communication is interrupted or unstable, and the engineer cannot obtain the internal status of the data coupling node through the network, the FPGA control unit of the data coupling node can output diagnostic data from its internal registers through the serial port interface), or maintenance communication (e.g., firmware upgrades, version queries, log export, etc. in the data coupling node). The fiber optic interface can be used for high-speed communication or redundant data transmission between data coupling nodes. The debugging interface is used to download the execution logic of the FPGA control unit, debug the data coupling node online, and observe the status of the data coupling node. After various external interfaces are connected to the FPGA control unit, they are uniformly managed by preset internal protocol processing and data exchange logic.
[0086] It should be noted that the communication interface data in this communication and debugging interface can be accessed to the data coupling node via Ethernet interface or other industrial communication interface data. The communication interface data can be categorized according to the communication protocol type. The data coupling node does not need to establish independent processing links for each type of communication interface data on the PLC controller side; instead, all data is uniformly managed by the network port module and data exchange module. For read / write data packets, the network port module accesses the local data storage area or forwards commands to the corresponding communication and debugging interface based on the communication type, interface number, node number, read / write address, and data length in the data packet. For control data packets, control commands such as start, stop, reset node, enter pre-operation, and reset communication can be carried through general routing data packets. In this way, the data coupling node establishes a mapping relationship between the communication interface data and the local data storage area within the FPGA control unit. The input, output, and diagnostic data of the communication interface data can all be uniformly included in the data exchange path and can be further transported to the unified process image area of the target data coupling node or the main access data coupling node through a cross-node transport mechanism. This Ethernet interface can be a 5-port Ethernet interface, where one port is typically connected to an external controller, and the other ports can be freely configured to connect to communication cards.
[0087] The internal logic system of this FPGA control unit is used to complete data processing and control functions. Its main components include an Ethernet and protocol processing module, a data exchange module, an I / O control module, an initialization module, a redundancy synchronization module, an internal storage control module, a bit stream control module, an EEPROM control module, a FLASH control module, a local register module, and an internal data bus.
[0088] This Ethernet and protocol processing module is used to receive, parse, filter, encapsulate, and transmit Ethernet data frames. After external Ethernet data enters the data coupling node, this module performs protocol identification and data preprocessing, and then sends the processed valid data to the internal data bus or data exchange module. For data requiring a response, this module is responsible for encapsulating and transmitting the response data.
[0089] This data exchange module is the core unit for data organization within the data coupling node. It is primarily used for data classification, data routing, command parsing and response, and internal data transfer. Data from Ethernet interfaces, fiber optic interfaces, field I / O interfaces, and storage interfaces can all enter a unified data exchange path through this module. This data exchange module connects to other functional modules via an internal data bus, enabling coordinated access and unified scheduling between different data sources.
[0090] This I / O control module is used to parse, acquire, control, and respond to field input and output data. Connected to the IOU unit via a field I / O interface, it can process digital inputs, analog inputs, digital outputs, and analog outputs, and perform data acquisition, output control, and status feedback for the corresponding channels according to configuration commands.
[0091] This initialization module is used to load configuration data, parse runtime parameters, and perform status checks after the data coupling node is powered on. After the data coupling node powers on, the initialization module reads necessary parameter information from the configuration storage area and distributes it to the relevant logic modules, enabling the data coupling node to enter a runnable state. This initialization module can also be used to detect configuration integrity, module status, and necessary operating conditions.
[0092] This redundant synchronization module supports data consistency maintenance in redundant data-coupled node environments. The module analyzes the redundancy status and performs necessary synchronization data organization and transmission, ensuring consistency of diagnostic information, status information, and critical operational data among redundant data-coupled nodes.
[0093] This built-in storage control module manages access to the FPGA control unit's internal or on-chip analog storage resources. It provides temporary storage space for data exchange, caching, configuration parsing, and runtime status recording, and interacts with other modules via the internal data bus.
[0094] This bitstream control module manages and guides the configuration bitstream of the FPGA control unit, supporting FPGA control unit restart, configuration loading, and necessary program update control. When firmware updates or abnormal recovery are required, this bitstream control module can work with external non-volatile memory to reload the FPGA control unit logic.
[0095] This EEPROM control module is used to manage the reading and writing of non-volatile parameters. Its main functions include EEPROM read / write control, parameter storage management, power-down data preservation, and boot recovery. Some configuration parameters, node information, status parameters, or verification information required for the operation of the data coupling node can be stored in the EEPROM to ensure that data is not lost after power failure.
[0096] This FLASH control module is used to implement access control of the program memory, including FLASH data erasure, reading, writing, and online update control. This FLASH control module can be used to store FPGA control unit configuration programs, upgrade files, or other fixed data.
[0097] This local register module is used to store the hardware status, module status, diagnostic information, and control register data during the operation of the data-coupled node. Other logic modules can access the local register module through the internal data bus to perform status reading, fault diagnosis, and control parameter distribution. This local register module is the local storage unit mentioned above.
[0098] It should be noted that this local register module is not limited to a specific memory type. The local register module includes a local data storage area and a local configuration storage area. Depending on the hardware version, the local data storage area can be implemented using BRAM, DDR, SRAM, or other read / write storage resources; the local configuration storage area can be implemented using EEPROM, eMMC, Flash, or other non-volatile storage resources.
[0099] In addition, the BRAM inside the FPGA control unit serves as the local data storage area, and the EEPROM serves as the configuration storage area.
[0100] After the data-coupled node powers on, the initialization module reads parameters such as node identifier, communication card address, IO configuration, diagnostic area address, and switching link table from the configuration storage area and writes them to the FPGA's internal runtime configuration register or local data storage area. After the configuration is loaded, the data-coupled node can automatically restore to the last valid configuration state.
[0101] This internal data bus serves as the data exchange channel between various functional modules within the FPGA control unit. The Ethernet and protocol processing module, data exchange module, I / O control module, initialization module, redundancy synchronization module, storage control module, and local register module all transmit data via this internal data bus. Through this internal data bus, data coupling nodes can achieve unified data access, caching, scheduling, and response within the FPGA control unit.
[0102] This memory subunit provides program storage, parameter storage, and data caching capabilities for the data coupling node. Specifically, BRAM can be used as a large-capacity data cache or on-chip RAM emulation resource to store temporary data, communication cache, or intermediate data during operation; DDR3 is used to compensate for insufficient BRAM capacity. EEPROM is mainly used for non-volatile storage of fixed parameters and configuration data; SPI Flash is mainly used for storing program files, FPGA control unit configuration data, or upgrade files. All types of memory are connected to the internal logic system of the FPGA control unit through corresponding control modules and are uniformly scheduled by the internal data bus.
[0103] This field I / O interface is used to connect external IOU units to realize the acquisition and output control of field signals. The field I / O interface may include digital inputs, analog inputs, digital outputs, analog outputs, and other dedicated I / O interfaces.
[0104] Through the above module division, the data coupling node can realize functions such as communication access, protocol processing, data exchange, I / O control, configuration loading, redundancy synchronization and storage management within the FPGA control unit, forming a data coupling and control logic architecture for PLC applications.
[0105] In one embodiment, data packets within the data coupling node's internal data exchange information are scheduled using a unified packet protocol. Each type of data packet includes at least a packet identifier, packet length, and corresponding service fields. The packet identifier indicates the packet type, the packet length indicates the length of valid fields or data areas, and the service fields carry the node identifier, storage address, data length, control commands, status flags, and actual data content.
[0106] The unified data packet protocol enables functions such as configuration, storage access, communication card control, I / O configuration, timestamps, diagnostics, cross-node transport, and remote maintenance to all enter the data exchange module of the data coupling node through a single data entry point. The FPGA classifies the received data according to the packet identifier and selects processing paths such as local response, forwarding processing, local storage access, cross-node transport, or remote maintenance.
[0107] In this implementation, the data coupling node can classify data packets into configuration data packets, communication card read / write data packets, I / O configuration data packets, timestamp data packets, diagnostic data packets, transportation data packets, general routing data packets, register access data packets, and remote download data packets. All of these data packets are uniformly identified and scheduled within the FPGA through the data exchange module and network port module, thereby avoiding the logical dispersion and maintenance difficulties caused by establishing independent processing links for different interfaces and different service functions.
[0108] In one embodiment, the processing procedure of each data packet in the data interaction information within the aforementioned data coupling node is described in detail.
[0109] Upon receiving a data packet, the system first parses the packet flags and length, then proceeds to the corresponding processing path based on the flags. Depending on the processing method, data packets can be categorized into local immediate response packets and forwarding packets. When a packet is a response packet, it can be processed within the current data coupling node, and the network interface module directly generates a response packet. Examples include communication card read / write packets and timestamp write confirmations. When a packet is a forwarding packet, it needs to be forwarded through the current data coupling node to other data coupling nodes or communication objects. The data exchange module writes the data packet to the forwarding buffer and retrieves the return packet data from the buffer after forwarding is complete.
[0110] In one embodiment, the technical effects achieved by the PLC control system in this disclosure are as follows: It elevates the data coupling node from a traditional I / O connector or protocol gateway to a unified data exchange node within the FPGA control unit. Through a unified data packet protocol, configuration, reading / writing, diagnostics, routing, transportation, and remote maintenance share a unified command scheduling entry point. It defines configuration-driven data transport relationships through data interaction information, reducing the PLC controller's dependence on the underlying topology. It enables data transport from any data coupling node to any other data coupling node through source node identifiers, destination node identifiers, source address identifiers, destination address identifiers, data length, and upload / download completion flags in the data interaction information. It constructs a unified process image through the target address area in the main access data coupling node, allowing the PLC controller to centrally access distributed field data. Through redundant synchronization and local data compensation, it improves data continuity in scenarios of link anomalies or redundant switching.
[0111] In one embodiment, the data coupling node can support remote maintenance functions through a unified data packet protocol. Remote maintenance data packets can carry fields such as the execution object, function code, access address, access length, and data content, used to perform read / write, sector erase, full disk erase, and soft reboot operations on the program storage resources of the data coupling node itself or the IOU module. The execution object may include the data coupling node itself, I / O cards connected via a local serial interface, or I / O cards connected via an LVDS link. The data exchange module distributes remote maintenance commands to the corresponding FLASH control module, I / O control module, or bitstream control module based on the execution object and function code. Through this mechanism, the system can complete program reading, firmware updates, or fault recovery without disassembling field modules, improving the efficiency of industrial field maintenance. This function, as an extension capability of the unified data packet protocol of the data coupling node, shares the command parsing, forwarding, and response encapsulation framework with the cross-node transport mechanism.
[0112] While specific embodiments of this disclosure have been described above, those skilled in the art should understand that these are merely illustrative examples, and the scope of protection of this disclosure is defined by the appended claims. Those skilled in the art can make various changes or modifications to these embodiments without departing from the principles and essence of this disclosure, but all such changes and modifications fall within the scope of protection of this disclosure.
Claims
1. A PLC control system, characterized in that, The PLC control system includes a PLC controller and at least two data coupling nodes; wherein, the data coupling node directly connected to the PLC controller is used as an access node, and the other data coupling nodes are used as extension nodes; The access node and each of the extension nodes are connected sequentially via optical fibers to form a ring communication link; The PLC controller is used to send the data interaction information of each of the data coupling nodes to the access node; The access node is used to parse the data interaction information and send the parsed data interaction information to the extension node through the ring communication link; The access node and the extension node perform corresponding data interaction operations based on the parsed data interaction information.
2. The PLC control system as described in claim 1, characterized in that, The access node includes a first FPGA control unit, and the expansion node includes a second FPGA control unit; The PLC controller and the access node are electrically connected via the first FPGA control unit; The first FPGA control unit in the access node and the second FPGA control units in each of the expansion nodes are connected sequentially via optical fibers to form the ring communication link.
3. The PLC control system as described in claim 2, characterized in that, The parsed data interaction information includes the configuration information of each of the data coupling nodes; The first FPGA control unit and the second FPGA control unit perform corresponding configuration operations based on the configuration information.
4. The PLC control system as described in claim 2, characterized in that, The data interaction information includes first interaction information; The first FPGA control unit periodically sends the first interactive information through the ring communication link; The second FPGA control unit sends the corresponding extended data information to the first FPGA control unit through the ring communication link according to the first interaction information; The first FPGA control unit stores the extended data information for access by the PLC controller.
5. The PLC control system as described in claim 4, characterized in that, The first FPGA control unit stores the extended data information in the target address space according to a predetermined address mapping relationship, so that the PLC controller can access it.
6. The PLC control system as described in claim 3, characterized in that, The data interaction information includes second interaction information; the second interaction information includes source node identifier and destination node identifier; The first FPGA control unit and the second FPGA control unit are also used to send the corresponding data to the FPGA control unit that matches the destination node identifier through the ring communication link when they identify that their own node identifier matches the source node identifier.
7. The PLC control system as described in claim 6, characterized in that, The second interactive information also includes the source node address and the destination node address; The first FPGA control unit and the second FPGA control unit are also used to read the corresponding data based on the source node address when they identify that their own node identifier matches the source node identifier, and send the corresponding data to the FPGA control unit that matches the destination node identifier through the ring communication link; The FPGA control unit that matches the destination node identifier is also used to store the corresponding data in the local storage unit based on the destination node address.
8. The PLC control system as described in claim 6, characterized in that, The first FPGA control unit and the second FPGA control unit are also used to continue sending the second interactive information through the ring communication link when they detect that their own node identifier does not match the source node identifier.
9. The PLC control system as described in claim 2, characterized in that, The PLC controller includes a master PLC controller and a slave PLC controller; the access node includes a master access node and a slave access node; the expansion node includes a master expansion node and a slave expansion node; and the PLC control system also includes a link switching unit. The main PLC controller is electrically connected to the main access node; The main access node and each of the main extension nodes are connected sequentially via optical fibers to form a main ring communication link; The slave PLC controller is electrically connected to the slave access node; The access node and each of the extension nodes are connected sequentially via optical fibers to form a ring communication link. The link switching unit is electrically connected to the master PLC controller and the slave PLC controller respectively; The link switching unit is used to switch the master PLC controller to the slave PLC controller when the master ring communication link does not meet the preset conditions.
10. The PLC control system as described in claim 9, characterized in that, The first FPGA control unit and the second FPGA control unit are also used to obtain the operating status of the corresponding node and send the operating status to the main access node through the main ring communication link; The main PLC controller is also used to issue a switching command to the link switching unit when the operating state does not meet the preset conditions; The link switching unit switches the master PLC controller to the slave PLC controller according to the switching instruction.
