Industrial control method, device, equipment, medium and product

By deploying edge device resources in the edge node cluster of industrial control systems and managing node generation and allocation of subtasks, the problem of insufficient scalability and reconfigurability of traditional industrial control systems is solved, achieving higher flexibility and efficiency.

CN120103761APending Publication Date: 2025-06-06广东省工业边缘智能创新中心有限公司
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510263219.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-06
Publication Date
2025-06-06

AI Technical Summary

Technical Problem

Due to the solidification of hardware and software architectures, traditional industrial control systems have insufficient scalability and reconfigurability, making it difficult to adapt to the rapidly changing production environment and market demand.

Method used

By deploying edge device resources in an edge node cluster, the management node generates subtasks and assigns them to the execution node, and performs subtasks by invoking functional blocks and/or sub-applications in the edge device resource until the industrial control process is completed.

Benefits of technology

Flexible task scheduling and resource management are realized, and the flexibility and efficiency of industrial control are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120103761A_ABST
    Figure CN120103761A_ABST
Patent Text Reader

Abstract

The invention discloses an industrial control method, device, equipment, medium and product, and relates to the technical field of automation, the method is applied to at least one edge node cluster, and the at least one edge node cluster comprises a management node and an execution node. The method comprises the following steps: in response to receiving an industrial control task in an industrial control process issued by a cloud management platform, generating at least one subtask by a management node according to the industrial control task; and based on an edge device resource pre-deployed in the at least one edge node cluster, allocating the at least one sub-task to the execution node, and calling a function block and / or a sub-application in the edge device resource through the execution node to execute the at least one sub-task until the industrial control process is completed. According to the invention, flexible task scheduling and resource management are realized, and the flexibility and / or efficiency of industrial control are / is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of automation technology, and in particular to an industrial control method, device, equipment, medium and product. Background Art

[0002] In modern industrial production, with the rapid development of automation and intelligent technology, the complexity and flexibility of industrial control systems are constantly increasing. Traditional industrial control systems usually rely on fixed hardware and software architectures, resulting in insufficient scalability and reconfigurability of the system, making it difficult to adapt to the rapidly changing production environment and market demand. Therefore, how to achieve software and hardware decoupling, flexible deployment, and dynamic reconstruction of industrial control systems has become a technical challenge that needs to be urgently solved in the current industrial automation field.

[0003] IEC 61131-3 and IEC 61499 are two important standards developed by the International Electrotechnical Commission (IEC), targeting function block programming in programmable logic controllers (PLCs) and distributed control systems (DCSs), respectively. These two standards have been widely used in the field of industrial control, but they each have some limitations. Although the IEC 61131-3 standard provides a variety of programming languages ​​(such as ladder diagrams, structured text, etc.), its application capabilities in distributed systems are limited, and it is difficult to achieve flexible task scheduling and resource management. The IEC 61499 standard emphasizes the distributed deployment and event-driven mechanism of function blocks, which is suitable for complex control tasks, but it still faces challenges in terms of compatibility and integration with existing industrial control systems, which is not conducive to improving the flexibility and / or efficiency of industrial control.

[0004] Therefore, it is necessary to propose a solution to improve the flexibility and / or efficiency of industrial control.

[0005] The above contents are only used to assist in understanding the technical solution of the present application and do not constitute an admission that the above contents are prior art. Summary of the invention

[0006] The main purpose of this application is to provide an industrial control method, device, equipment, medium and product, aiming to improve the flexibility and / or efficiency of industrial control.

[0007] To achieve the above object, the present application provides an industrial control method, the method is applied to at least one edge node cluster, the at least one edge node cluster includes a management node and an execution node, the method includes:

[0008] In response to receiving an industrial control task in an industrial control process issued by a cloud management platform, the management node generates at least one subtask according to the industrial control task;

[0009] Based on the edge device resources pre-deployed in the at least one edge node cluster, the at least one subtask is assigned to the execution node, and the function blocks and / or sub-applications in the edge device resources are called by the execution node to execute the at least one subtask until the industrial control process is completed.

[0010] In one embodiment, before the step of allocating the at least one subtask to the execution node based on the edge device resources pre-deployed in the at least one edge node cluster, the step further includes:

[0011] Generate function block networks based on a hybrid programming environment that supports target programming languages ​​and target function block models;

[0012] The function blocks and / or sub-applications in the function block network are deployed to the resources corresponding to the edge devices in the at least one edge node cluster in a single or combined manner through a preset deployment mode to obtain the edge device resources.

[0013] In one embodiment, the step of deploying the function blocks and / or sub-applications in the function block network to the resources corresponding to the edge devices in the at least one edge node cluster in a single or combined manner, and obtaining the edge device resources further includes:

[0014] Selecting functional blocks distributed to independent device resources from the edge device resources;

[0015] Add a communication service interface function block to the function block distributed to the independent device resources, wherein the communication service interface function block includes a subscription interface function block and / or a publishing interface function block, the subscription interface function block is used to subscribe to upstream data, and the publishing interface function block is used to trigger downstream tasks.

[0016] In one embodiment, the target programming language includes a graphical language and / or a textual language, and the step of generating a function block network based on a hybrid programming environment supporting the target programming language and the target function block model includes:

[0017] Defining logic control function blocks in a hybrid programming environment by means of the graphical language and / or text language;

[0018] The target function block model is called through the encapsulation interface, and the target function block model is controlled to interact synchronously or asynchronously with the logic control function block to obtain the function block network.

[0019] In one embodiment, the preset deployment mode includes at least one of a local deployment mode, a cloud collaborative deployment mode, and a hybrid deployment mode, wherein:

[0020] The local deployment mode includes: editing and compiling the function block network in the at least one edge node cluster;

[0021] The cloud collaborative deployment mode includes: the cloud management platform edits and compiles the function block network and sends it to the at least one edge node cluster;

[0022] The hybrid deployment mode includes: the cloud management platform allocates a function block network to the at least one edge node cluster, and the at least one edge node cluster compiles the function block network.

[0023] In addition, to achieve the above purpose, the present application also proposes an industrial control method, which is applied to a cloud management platform and includes:

[0024] An industrial control task in an industrial control process is sent to at least one edge node cluster, wherein the at least one edge node cluster includes a management node and an execution node, the management node generates at least one subtask according to the industrial control task, and the management node allocates the at least one subtask to the execution node based on edge device resources pre-deployed in the at least one edge node cluster, and calls the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed.

[0025] In addition, to achieve the above-mentioned purpose, the present application also proposes an industrial control device, which is applied to at least one edge node cluster, wherein the at least one edge node cluster includes a management node and an execution node, and the industrial control device includes:

[0026] A receiving module, configured to generate at least one subtask according to the industrial control task in the industrial control process sent by the cloud management platform in response to receiving the industrial control task;

[0027] A distribution module is used to allocate the at least one subtask to the execution node based on the edge device resources pre-deployed in the at least one edge node cluster, and call the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed.

[0028] In addition, to achieve the above objectives, the present application also proposes an industrial control device, which includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the industrial control method described above.

[0029] In addition, to achieve the above objectives, the present application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the industrial control method described above are implemented.

[0030] In addition, to achieve the above-mentioned purpose, the present application also provides a computer program product, wherein the computer program product includes a computer program, and when the computer program is executed by a processor, the steps of the industrial control method described above are implemented.

[0031] One or more technical solutions proposed in this application have at least the following technical effects:

[0032] In response to receiving an industrial control task in an industrial control process issued by a cloud management platform, the management node generates at least one subtask based on the industrial control task; based on edge device resources pre-deployed in the at least one edge node cluster, the at least one subtask is allocated to the execution node, and the execution node calls the function blocks and / or sub-applications in the edge device resources to execute the at least one subtask until the industrial control process is completed, thereby achieving flexible task scheduling and resource management, thereby improving the flexibility and / or efficiency of industrial control. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0034] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0035] Figure 1 This is a flow chart of the first embodiment of the industrial control method of the present application;

[0036] Figure 2 is a schematic diagram of an interaction timing according to the first embodiment of the present application;

[0037] Figure 3 This is a flow chart of the second embodiment of the industrial control method of the present application;

[0038] Figure 4 is a schematic diagram of a distribution model according to the second embodiment of the present application;

[0039] Figure 5 This is a flow chart of the third embodiment of the industrial control method of the present application;

[0040] Figure 6 This is a flow chart of a fourth embodiment of the industrial control method of the present application;

[0041] Figure 7 is a schematic diagram of a system architecture according to a fourth embodiment of the present application;

[0042] Figure 8 A schematic diagram of a multi-programming language mixed design according to a fourth embodiment of the present application;

[0043] Fig. 9 A schematic diagram of a system configuration integrated development environment according to a fourth embodiment of the present application;

[0044] Fig.10 A schematic diagram of a deployment scheme design according to the fourth embodiment of the present application;

[0045] Fig.11 This is a flow chart of a fifth embodiment of the industrial control method of the present application;

[0046] Fig.12 This is a schematic diagram of the module structure of the industrial control device according to an embodiment of the present application;

[0047] Fig.13 Schematic diagram of the device structure of the hardware operating environment involved in the industrial control method in the embodiment of the present application.

[0048] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0049] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.

[0050] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.

[0051] The main solution of the embodiment of the present application is: in response to receiving an industrial control task in an industrial control process issued by a cloud management platform, the management node generates at least one subtask according to the industrial control task; based on the edge device resources pre-deployed in the at least one edge node cluster, the at least one subtask is allocated to the execution node, and the execution node calls the function blocks and / or sub-applications in the edge device resources to execute the at least one subtask until the industrial control process is completed, thereby realizing flexible task scheduling and resource management, thereby improving the flexibility and / or efficiency of industrial control.

[0052] In this embodiment, for the convenience of description, the following description is made with the industrial control device as the execution subject.

[0053] In modern industrial production, with the rapid development of automation and intelligent technology, the complexity and flexibility of industrial control systems are constantly increasing. Traditional industrial control systems usually rely on fixed hardware and software architectures, resulting in insufficient scalability and reconfigurability of the system, making it difficult to adapt to the rapidly changing production environment and market demand. Therefore, how to achieve software and hardware decoupling, flexible deployment, and dynamic reconstruction of industrial control systems has become a technical challenge that needs to be urgently solved in the current industrial automation field.

[0054] IEC 61131-3 and IEC 61499 are two important standards developed by the International Electrotechnical Commission (IEC), which are aimed at function block programming in programmable logic controllers (PLCs) and distributed control systems (DCSs), respectively. These two standards have been widely used in the field of industrial control, but they each have some limitations. Although the IEC 61131-3 standard provides a variety of programming languages ​​(such as ladder diagrams, structured text, etc.), its application capabilities in distributed systems are limited, and it is difficult to achieve flexible task scheduling and resource management. The IEC 61499 standard emphasizes the distributed deployment and event-driven mechanism of function blocks, which is suitable for complex control tasks, but it still faces challenges in terms of compatibility and integration with existing industrial control systems.

[0055] In addition, with the rise of cloud computing and edge computing technologies, the architecture of industrial control systems is gradually developing in the direction of cloud-edge collaboration. Cloud computing provides powerful data processing and storage capabilities, while edge computing can perform real-time processing close to the data source, reducing latency and improving response speed. Therefore, how to effectively combine cloud computing and edge computing to form an efficient and flexible industrial control system has become a hot topic of research.

[0056] In the embodiment of the present application, a programmable controller runtime system based on the characteristics of IEC 61131-3 and IEC 61499 standards is proposed, which aims to realize the issuance of priority policies on the cloud and priority scheduling on the edge side. Through the parallel task scheduling strategy, the control task is decomposed into multiple subtasks and handed over to the edge node for execution, thereby improving the flexibility and response speed of the system. At the same time, the microservice architecture and online programmable reconstruction technology are adopted to support the dynamic adjustment and optimization of the system to meet the needs of modern manufacturing industry for efficient, reliable and sustainable development. The proposal of this application can not only effectively solve the deficiencies of traditional industrial control systems in flexibility and scalability, but also make full use of the advantages of cloud computing and edge computing to provide more intelligent solutions for industrial production.

[0057] It should be noted that the execution subject of this embodiment may be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, an industrial control device, etc. The following takes an industrial control device as an example to illustrate this embodiment and the following embodiments.

[0058] Based on this, the embodiment of the present application provides an industrial control method, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the industrial control method of the present application.

[0059] In this embodiment, the industrial control method includes steps S10 to S20:

[0060] Step S10, in response to receiving an industrial control task in an industrial control process issued by a cloud management platform, the management node generates at least one subtask according to the industrial control task;

[0061] Exemplarily, an industrial control system integrating the characteristics of IEC 61131-3 and IEC 61499 standards is proposed in an embodiment of the present application, wherein the industrial control system includes a cloud management platform and at least one edge node cluster.

[0062] For example, the cloud management platform is responsible for managing and scheduling the entire industrial control process, and sends industrial control tasks to edge node clusters according to production needs and task priorities. Its role is to serve as the source of tasks, provide global task scheduling and management functions, and serve as a centralized system responsible for global task delivery and strategy formulation, and is used to coordinate various edge node clusters.

[0063] Exemplarily, the edge node cluster includes a management node and an execution node. The management node serves as the local control unit of the edge node cluster, and is used to receive cloud instructions and decompose tasks. It can be regarded as the gateway of the edge node cluster, and plays the role of "uploading and downloading" during the task execution process, and assists in completing the communication interaction between the cloud management platform and the edge node cluster; the execution node includes each edge device, and can execute subtasks by calling the corresponding resources.

[0064] For example, an industrial control task is an automated process defined by production requirements (such as parts processing, quality inspection, etc.), including operations such as logic control and data collection. Subtasks are smaller task units decomposed by management nodes according to industrial control tasks. Subtasks are the basis of parallel task scheduling strategies. By decomposing tasks into multiple subtasks, distributed execution of tasks can be achieved, improving the flexibility and response speed of the system.

[0065] Exemplarily, the cloud management platform sends industrial control tasks in the industrial control process to the management node, and the management node makes reasonable allocations based on the execution nodes and task requirements to ensure the reasonable execution of distributed tasks and relatively balanced load. The subtasks executed by each execution node can be regarded as parallel, that is, they do not affect each other and have no constraints on execution in sequence.

[0066] Exemplarily, the management node uses a task decomposition algorithm to decompose the task into multiple subtasks according to the characteristics and requirements of the industrial control task. The task decomposition algorithm can be designed based on factors such as the logical structure, functional module, and execution time of the task. For example, for a complex production process, it can be decomposed according to production stages, equipment types, etc.

[0067] For example, when the cloud management platform issues tasks, it will assign priorities to the tasks based on factors such as the urgency and importance of the tasks. When the management node generates subtasks, it will inherit the priority of the task and schedule the subsequent subtasks according to the priority in the allocation and execution process.

[0068] Step S20, based on the edge device resources pre-deployed in the at least one edge node cluster, assign the at least one subtask to the execution node, and call the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed.

[0069] Reference Figure 2 , Figure 2 is a schematic diagram of an interaction sequence according to the first embodiment of the present application, as shown in Figure 2 As shown, the management node (Management Node) in the embodiment of the present application receives the task requirements and publishes the task requirements to each execution node (ECN_a, ECN_b, ..., ECN_n), and then selects nodes and assigns tasks according to the reply information of each execution node. After the execution node executes the task, the execution result can be returned to the management node, and the management node summarizes the execution result to complete the task execution process. The industrial control system in the embodiment of the present application supports microservice deployment and online programmable reconstruction, relying on a two-layer real-time network and a dynamic loading mechanism to realize real-time industrial control under virtual machines and containers, as well as plug-and-play of components and equipment.

[0070] For example, an edge node cluster is a cluster composed of multiple edge nodes, which are distributed at different locations of the industrial site and are responsible for executing specific industrial control tasks. Its role is to provide edge computing resources and realize distributed execution of tasks.

[0071] Exemplarily, the management node uses a resource scheduling algorithm to assign subtasks to appropriate execution nodes according to the requirements of the subtasks and the resource status of the edge device. The resource scheduling algorithm can be designed based on factors such as the resource requirements of the task, the resource status of the node, and the network topology.

[0072] Exemplarily, the execution node calls the function blocks and sub-applications in the edge device resources according to the requirements of the subtasks. The calling process can be based on technologies such as event-driven mechanisms and service calling mechanisms, which can realize the distributed execution and collaborative work of tasks and improve the flexibility and scalability of the system. By reasonably allocating subtasks and calling edge device resources, the computing and storage resources of edge nodes can be fully utilized to improve the resource utilization of the system. At the same time, the parallel execution of subtasks can reduce the execution time of tasks and improve the execution efficiency of industrial control processes.

[0073] This embodiment adopts the above scheme, specifically by responding to the industrial control task in the industrial control process issued by the cloud management platform, the management node generates at least one subtask according to the industrial control task; based on the edge device resources pre-deployed in the at least one edge node cluster, the at least one subtask is allocated to the execution node, and the execution node calls the function blocks and / or sub-applications in the edge device resources to execute the at least one subtask until the industrial control process is completed, thereby realizing flexible task scheduling and resource management, thereby improving the flexibility and / or efficiency of industrial control.

[0074] Based on the first embodiment of the present application, the second embodiment of the present application is proposed. In the second embodiment of the present application, the same or similar contents as those of the above-mentioned embodiment 1 can be referred to the above introduction and will not be repeated later. Figure 3 Before step S20, the industrial control method further includes steps S01 to S02:

[0075] Step S01, generating a function block network based on a hybrid programming environment supporting a target programming language and a target function block model;

[0076] Step S02: deploying the function blocks and / or sub-applications in the function block network to the resources corresponding to the edge devices in the at least one edge node cluster in a single or combined manner through a preset deployment mode to obtain the edge device resources.

[0077] For example, a function block is the basic execution unit in a function block network, which is an independently encapsulated control logic or algorithm module, and a sub-application is a complex application composed of multiple function blocks. They can all be deployed to the resources of edge devices through a preset deployment mode. The deployment method of function blocks and sub-applications determines the degree of parallelization of tasks and the response time of the system.

[0078] Exemplarily, the computing resources, storage resources, and communication resources required by the functional blocks are reasonably allocated according to the resource status of the edge device and the needs of the functional blocks. The goal of resource allocation is to maximize the resource utilization of the system while meeting the performance requirements of the functional blocks. For example, for an image processing functional block that requires high computing resources, it can be deployed on an edge device with a high-performance CPU; for a historical data recording functional block that requires a large amount of storage resources, it can be deployed on an edge device with a large-capacity storage device.

[0079] Reference Figure 4 , Figure 4 is a schematic diagram of a distribution model according to the second embodiment of the present application, as shown in Figure 4 As shown in the figure, in the decoupled distribution model, function blocks and sub-applications can be deployed to any resource of any device in the industrial field in any single or combined manner. The distribution model is mainly divided into two steps: distribution and configuration. First, function block 1 and sub-application A in application A will be sent to the resources of device 1 and device 2 respectively. Since they are distributed to independent devices and resources, it is necessary to add additional communication service interface function blocks in each resource to continue and restore the original event and data connection of function block 1 and sub-application A.

[0080] Exemplarily, load balancing is achieved by reasonably allocating functional blocks and sub-applications to different edge devices. Load balancing can prevent some devices from being overloaded while other devices are idle, thereby improving the performance and stability of the entire system. Load balancing can be achieved through static allocation (based on the hardware configuration of the device) and dynamic adjustment (based on the actual load situation). For example, when the CPU usage of an edge device is too high, some functional blocks can be migrated to other relatively idle devices.

[0081] For example, deploying function blocks and sub-applications to edge node clusters allows data and control tasks to be processed close to data sources and devices, reducing data transmission delays and reliance on cloud servers. This is critical for industrial control tasks with high real-time requirements, such as robot control and coordinated actions of automated production lines.

[0082] For example, by deploying functional blocks and sub-applications on multiple edge devices, the redundancy and fault tolerance of the system are enhanced. When a device fails, other devices can take over its tasks to ensure the continuous operation of the system. For example, in a distributed monitoring system, if an edge device fails, other devices can continue to collect and analyze data to ensure that the monitoring task is not interrupted.

[0083] For example, according to the needs of functional blocks and sub-applications and the resource status of edge devices, reasonable resource allocation and effective task scheduling are achieved. This helps to improve the overall performance and efficiency of the system and reduce energy consumption and operating costs. For example, for some tasks that do not require high real-time performance, they can be deployed on devices with relatively sufficient resources, while tasks that require high real-time performance are preferentially allocated to high-performance devices.

[0084] This embodiment, through the above scheme, specifically generates a function block network based on a hybrid programming environment that supports the target programming language and the target function block model, wherein the function block network includes at least one of a component library, an algorithm library and a model library; through a preset deployment mode, the function blocks and / or sub-applications in the function block network are deployed in a monomeric or combined manner to the resources corresponding to the edge devices in the at least one edge node cluster to obtain the edge device resources, thereby achieving reasonable allocation of resources and effective scheduling of tasks, which helps to improve the overall performance and efficiency of the system.

[0085] Based on any of the foregoing embodiments of the present application, a third embodiment of the present application is proposed. In the third embodiment of the present application, the same or similar contents as any of the foregoing embodiments can be referred to the above introduction and will not be described in detail later. Figure 5 , after step S02, steps S021 to S022 are also included:

[0086] Step S021, selecting a function block to be distributed to an independent device resource from the edge device resource;

[0087] Step S022, adding a communication service interface function block to the function block distributed to the independent device resources, wherein the communication service interface function block includes a subscription interface function block and / or a publishing interface function block, the subscription interface function block is used to subscribe to upstream data, and the publishing interface function block is used to trigger downstream tasks.

[0088] For example, in the above embodiments Figure 4 In the example, add four communication service interface function blocks to function block 1:

[0089] (1) SUBSCRIBE1: Passes data from sub-application B. It should be noted that function block 1 simply uses the data of sub-application B. Therefore, SUBSCRIBE1 does not send any events to trigger function block 1. The latter will only read the data when it needs it.

[0090] (2) SUBSCRIBE2: passes events from function block 2;

[0091] (3) PUBLISH1: sends events and data to sub-application A;

[0092] (4)PUBLISH2: Sends data to sub-application B. Unlike the case of SUBSCRIBBI, although there is only a data connection between function block 1 and sub-application B in the original application, since all function blocks must be triggered by events, the event output associated with the data output must be connected to PUBLISH2.

[0093] For example, in the original application, sub-application A has one information source and two receiving ends, so the following three communication service interface function blocks need to be added to it in device 2. Resource B:

[0094] (1) SUBSCRIBE1: passes events and data from function block 1;

[0095] (2) PUBLISH1: sends events and data to sub-application B;

[0096] (3)PUBLISH2: Send data to function block 2.

[0097] Exemplarily, the communication service interface function block is based on a data or event driven mechanism, and realizes communication and data exchange between function blocks through the triggering and transmission of data or events. When the function block receives data or events, it triggers the corresponding processing logic to realize data input and output.

[0098] For example, by selecting function blocks distributed to independent device resources from edge device resources and adding communication service interface function blocks to them, communication and data exchange between function blocks can be achieved, thereby improving the flexibility and scalability of the system. At the same time, dynamic combination and expansion of function blocks are supported to meet the needs of different industrial control scenarios.

[0099] For example, through the task scheduling algorithm, according to the priority and resource requirements of the function blocks, the execution order of the function blocks and sub-applications is reasonably arranged, and the key function blocks are executed first to ensure the timely execution of key tasks. At the same time, through the communication service interface function block, real-time communication and data exchange between function blocks are realized to improve the real-time performance and reliability of the system.

[0100] This embodiment adopts the above scheme, specifically by selecting the function blocks distributed to the independent device resources from the edge device resources; adding the communication service interface function blocks to the function blocks distributed to the independent device resources, wherein the communication service interface function blocks include subscription interface function blocks and / or publishing interface function blocks, the subscription interface function blocks are used to subscribe to upstream data, and the publishing interface function blocks are used to trigger downstream tasks, so as to realize communication and data exchange between function blocks, improve the flexibility and scalability of the system, and improve the real-time performance and reliability of the system.

[0101] Based on any of the foregoing embodiments of the present application, a fourth embodiment of the present application is proposed. In the fourth embodiment of the present application, the same or similar contents as any of the foregoing embodiments can be referred to the above introduction and will not be described in detail later. Figure 6 , step S01 also includes steps S011 to S012:

[0102] Step S011, defining a logic control function block in a hybrid programming environment by using the graphical language and / or text language;

[0103] Step S012, calling the target function block model through the encapsulation interface, controlling the target function block model to interact synchronously or asynchronously with the logic control function block, and obtaining the function block network.

[0104] Exemplarily, a hybrid programming environment supports multiple programming languages, each with its own compiler or interpreter. Developers implement data sharing and functional interaction between languages ​​by calling interface functions or libraries in different languages. For example, calling a library function written in C++ in Python, or embedding a sequential control module written in SFC in a ladder diagram program. The key to multi-language programming is how to ensure data type compatibility and semantic consistency in different languages, which is usually achieved by defining standardized interfaces and data models.

[0105] Exemplarily, the target function block model is based on a hybrid mechanism of event-driven and data-driven. The function block is triggered to execute when receiving input events or data, and generates output events or data according to the internal logic during execution. The design principle of the function block model is to separate the behavior of the function block from its internal implementation, so that its internal logic can be modified without changing the appearance of the function block. The connection relationship between function blocks defines the direction of data flow and control flow, and the function block network is constructed by configuring these connection relationships.

[0106] Reference Figure 7 , Figure 7 Schematic diagram of the system architecture according to the fourth embodiment of the present application. Figure 7 As shown, in the embodiment of the present application, IEC31131-1 provides multiple languages ​​such as ST (structured text), IL (instruction list), SFC (function flow chart), FBD (function block diagram), LD (ladder diagram), etc., to program the function blocks defined by IEC61499, forming three major function libraries: component library, algorithm library, and model library, among which the function blocks and function libraries constitute a function block network in the cloud or edge, and are finally sent to the equipment of the industrial control system, thereby realizing the decoupling of software and hardware.

[0107] For example, by adopting a graphical programming method, the subroutine structure of IEC 61131-3 is extended to the function block (FB) in the distributed system and used as the basic functional unit. The function block encapsulates the abstract logic code and provides a unified interface to connect with other function blocks to exchange events and data information.

[0108] Reference Figure 8 , Figure 8 FIG. 4 is a schematic diagram of a multi-programming language mixed design according to the fourth embodiment of the present application. Figure 8 As shown, the embodiment of the present application is based on the OT and IT multi-programming language hybrid design of IEC61131-3 and IEC 61499, supporting modular deployment of controller functions such as logic control (production management), process control (data acquisition and processing), motion control and visual control (machine vision).

[0109] For example, in order to add mixed configurations such as logic control and other motion control, the software model proposed in the IEC61131-3 standard is followed in the embodiments of the present application, and the logic control program is organized according to the program organization unit (POU); algorithms written in high-level languages ​​such as C / C++ are embedded in the toolbox, and can be called or instantiated in graphic languages ​​such as LD and text statements such as ST, thereby realizing the embedding of complex algorithms in logic control; for some algorithm modules that cannot meet real-time control, the platform provides an asynchronous execution mechanism, and interacts with the logic control code for data coordination.

[0110] For example, in the embodiment of the present application, a controller configuration system is mainly developed. The system integrates the features of IEC61131-3 and IEC61499 standards, and supports not only the five development languages ​​(IL, ST, FBD, LD, SFC) specified in IEC 61131-3, but also CFC language, object-oriented programming (OOP), C / C++, Python and other high-level languages.

[0111] For example, in terms of program configuration, the core algorithms of industrial applications are embedded in the platform toolbox to support the same-platform configuration and online visual debugging of control programs such as logic control, motion control, and process control. Through configuration program compilation technologies such as graphic program AOV parsing, parallel relationship extraction, target platform resource matching, and automatic cross-platform code generation, the control program is automatically compiled into a deployable unit adapted to the target platform and downloaded for execution.

[0112] Reference Fig. 9 , Fig. 9 FIG. 4 is a schematic diagram of a system configuration integrated development environment according to a fourth embodiment of the present application. Fig. 9As shown in the figure, the configuration engineering of the control program is organized according to the IEC 61131-10 standard, and the import / export of POU units such as programs and function blocks is supported to realize configuration engineering interaction; it supports engineering configuration and provides data monitoring configuration based on protocol components such as Modbus / TCP and OPC UA, thereby supporting SCADA configuration, HMI configuration, etc. Through the same platform configuration of the control program, closed-loop control of industrial cameras, robot arms, servo drives, remote IO and other devices is supported.

[0113] For example, in order to support multiple programming languages ​​and function block models, a unified programming framework needs to be established. This framework can be based on an existing integrated development environment (IDE), such as Eclipse or Visual Studio, and extend support for different languages ​​and models in the form of plug-ins. For example, adding a plug-in that supports the IEC 61131-3 language allows developers to use graphical programming methods such as ladder diagrams and function block diagrams in the IDE. At the same time, the framework also needs to provide a common middle layer for data exchange and function calls between different languages ​​and models. For example, communication between function blocks is achieved through protocols such as OPC UA or MQTT.

[0114] Exemplarily, the preset deployment mode includes at least one of a local deployment mode, a cloud collaborative deployment mode and a hybrid deployment mode, wherein the local deployment mode includes: editing and compiling the functional block network in the at least one edge node cluster; the cloud collaborative deployment mode includes: editing and compiling the functional block network by the cloud management platform and sending it to the at least one edge node cluster; the hybrid deployment mode includes: allocating the functional block network to the at least one edge node cluster by the cloud management platform, and the at least one edge node cluster compiling the functional block network.

[0115] Reference Fig.10 , Fig.10 This is a schematic diagram of a deployment scheme design according to the fourth embodiment of the present application, as shown in FIG. Fig.10 As shown, after completing the programming design that integrates the IEC 61131-3 and IEC 61499 standards, the function block network is deployed. In the embodiment of the present application, it is supported to embed the editor and compiler directly into the edge computing device, and code can be written without cloud or computer support; it is supported to embed the editor directly into the edge computing device, use the cloud to compile and send the written code to each device in the distributed system; it is supported to deploy the editor and the compilation environment in the cloud, and use the cloud to edit, compile and deploy the written code to each edge computing device in the distributed system.

[0116] This embodiment uses the above scheme to define the logic control function block specifically through the graphical language and / or text language; calls the target function block model through the encapsulation interface, controls the target function block model to interact synchronously or asynchronously with the logic control function block, and obtains the function block network. Based on the hybrid programming environment and the function block model, the function block network can be constructed in a graphical or textual manner to realize the logic control and sequential control of the industrial control system. By using a high-performance programming language, more efficient algorithm implementation and optimization can be achieved, thereby improving the performance and reliability of the function block network.

[0117] The present application also provides an industrial control method, which is applied to a cloud management platform. Fig.11 , Fig.11 This is a flowchart of the fifth embodiment of the industrial control method of the present application.

[0118] In this embodiment, the industrial control method includes:

[0119] Step A10: Send the industrial control task in the industrial control process to at least one edge node cluster, wherein the at least one edge node cluster includes a management node and an execution node, the management node generates at least one subtask according to the industrial control task, and the management node allocates the at least one subtask to the execution node based on the edge device resources pre-deployed in the at least one edge node cluster, and calls the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed.

[0120] Exemplarily, an industrial control system integrating the characteristics of IEC 61131-3 and IEC 61499 standards is proposed in an embodiment of the present application, wherein the industrial control system includes a cloud management platform and at least one edge node cluster.

[0121] For example, the cloud management platform is responsible for managing and scheduling the entire industrial control process, and sends industrial control tasks to edge node clusters according to production needs and task priorities. Its role is to serve as the source of tasks, provide global task scheduling and management functions, and serve as a centralized system responsible for global task delivery and strategy formulation, and is used to coordinate various edge node clusters.

[0122] Exemplarily, the edge node cluster includes a management node and an execution node. The management node serves as the local control unit of the edge node cluster, and is used to receive cloud instructions and decompose tasks. It can be regarded as the gateway of the edge node cluster, and plays the role of "uploading and downloading" during the task execution process, and assists in completing the communication interaction between the cloud management platform and the edge node cluster; the execution node includes each edge device, and can execute subtasks by calling the corresponding resources.

[0123] For example, an industrial control task is an automated process defined by production requirements (such as parts processing, quality inspection, etc.), including operations such as logic control and data collection. Subtasks are smaller task units decomposed by management nodes according to industrial control tasks. Subtasks are the basis of parallel task scheduling strategies. By decomposing tasks into multiple subtasks, distributed execution of tasks can be achieved, improving the flexibility and response speed of the system.

[0124] Exemplarily, the cloud management platform sends industrial control tasks in the industrial control process to the management node, and the management node makes reasonable allocations based on the execution nodes and task requirements to ensure the reasonable execution of distributed tasks and relatively balanced load. The subtasks executed by each execution node can be regarded as parallel, that is, they do not affect each other and have no constraints on execution in sequence.

[0125] Exemplarily, the management node uses a task decomposition algorithm to decompose the task into multiple subtasks according to the characteristics and requirements of the industrial control task. The task decomposition algorithm can be designed based on factors such as the logical structure, functional module, and execution time of the task. For example, for a complex production process, it can be decomposed according to production stages, equipment types, etc.

[0126] For example, when the cloud management platform issues tasks, it will assign priorities to the tasks based on factors such as the urgency and importance of the tasks. When the management node generates subtasks, it will inherit the priority of the task and schedule the subsequent subtasks according to the priority in the allocation and execution process.

[0127] Exemplarily, the embodiments of the present application adopt an industrial control hardware and software decoupling architecture based on the IEC61499 standard system, a service-based architecture, and the concept of "integrated design, distributed deployment". The control logic and services are encapsulated into independent service components, and functions are implemented through service calls. Distributed deployment and dynamic reconfiguration are supported to achieve highly automated, intelligent and flexible industrial production, meeting the needs of modern manufacturing for efficient, reliable and sustainable development.

[0128] This embodiment adopts the above scheme, specifically by sending the industrial control task in the industrial control process to at least one edge node cluster, wherein the at least one edge node cluster includes a management node and an execution node, the management node generates at least one subtask according to the industrial control task, and the management node allocates the at least one subtask to the execution node based on the edge device resources pre-deployed in the at least one edge node cluster, and calls the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed, thereby realizing flexible task scheduling and resource management, thereby improving the flexibility and / or efficiency of industrial control.

[0129] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the industrial control method of the present application. More simple transformations based on this technical concept are all within the protection scope of the present application.

[0130] This application also provides an industrial control device, please refer to Fig.12 , the device is applied to at least one edge node cluster, the at least one edge node cluster includes a management node and an execution node, and the industrial control device includes:

[0131] A receiving module 10, configured to generate at least one subtask according to the industrial control task in the industrial control process sent by the cloud management platform in response to receiving the industrial control task;

[0132] The distribution module 20 is used to allocate the at least one subtask to the execution node based on the edge device resources pre-deployed in the at least one edge node cluster, and call the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed.

[0133] The industrial control device provided by the present application adopts the industrial control method in the above embodiment to solve the technical problems of industrial control. Compared with the prior art, the beneficial effects of the industrial control device provided by the present application are the same as the beneficial effects of the industrial control method provided by the above embodiment, and other technical features in the industrial control device are the same as the features disclosed in the above embodiment method, which will not be described in detail here.

[0134] The present application provides an industrial control device, which includes: at least one processor; and a memory that is communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the industrial control method in the above-mentioned embodiment one.

[0135] Reference below Fig.13 , which shows a schematic diagram of the structure of an industrial control device suitable for implementing the embodiment of the present application. The industrial control device in the embodiment of the present application may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Fig.13 The industrial control device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0136] like Fig.13 As shown, the industrial control device may include a processing device 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory 1002 or a program loaded from a storage device 1003 to a random access memory 1004. In the random access memory 1004, various programs and data required for the operation of the industrial control device are also stored. The processing device 1001, the read-only memory 1002, and the random access memory 1004 are connected to each other through a bus 1005. An input / output interface 1006 is also connected to the bus. Generally, the following systems can be connected to the input / output interface 1006: an input device 1007 including, for example, a touch screen, a touch pad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD: Liquid Crystal Display), a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the industrial control device to communicate with other devices wirelessly or wired to exchange data. Although the figure shows an industrial control device with various systems, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems can be implemented or provided instead.

[0137] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a read-only memory 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.

[0138] The industrial control device provided by the present application adopts the industrial control method in the above embodiment to solve the technical problems of industrial control. Compared with the prior art, the beneficial effects of the industrial control device provided by the present application are the same as the beneficial effects of the industrial control method provided by the above embodiment, and other technical features in the industrial control device are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.

[0139] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.

[0140] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

[0141] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, and the computer-readable program instructions are used to execute the industrial control method in the above-mentioned embodiment.

[0142] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM: Random Access Memory), a read-only memory (ROM: Read Only Memory), an erasable programmable read-only memory (EPROM: Erasable Programmable Read Only Memory or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM: CD-Read Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency: Radio Frequency), etc., or any suitable combination of the above.

[0143] The computer-readable storage medium may be included in the industrial control device; or may exist independently without being installed in the industrial control device.

[0144] The above-mentioned computer-readable storage medium carries one or more programs. When the above-mentioned one or more programs are executed by the industrial control device, the industrial control device: in response to the industrial control task in the industrial control process issued by the cloud management platform, the management node generates at least one subtask according to the industrial control task; based on the edge device resources pre-deployed in the at least one edge node cluster, the at least one subtask is allocated to the execution node, and the function blocks and / or sub-applications in the edge device resources are called by the execution node to execute the at least one subtask until the industrial control process is completed, thereby realizing flexible task scheduling and resource management, thereby improving the flexibility and / or efficiency of industrial control.

[0145] Computer program code for performing the operations of the present application may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0146] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0147] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.

[0148] The readable storage medium provided in this application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned industrial control method, and can solve the technical problems of industrial control. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as the beneficial effects of the industrial control method provided in the above-mentioned embodiment, and will not be repeated here.

[0149] The present application also provides a computer program product, including a computer program, which implements the steps of the above-mentioned industrial control method when executed by a processor.

[0150] The computer program product provided by this application can solve the technical problems of industrial control. Compared with the prior art, the beneficial effects of the computer program product provided by this application are the same as the beneficial effects of the industrial control method provided by the above embodiment, which will not be repeated here.

[0151] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.

Claims

1. An industrial control method, characterized in that: The method is applied to at least one edge node cluster, the at least one edge node cluster includes a management node and an execution node, and the method includes: In response to receiving an industrial control task in an industrial control process issued by a cloud management platform, the management node generates at least one subtask according to the industrial control task; Based on the edge device resources pre-deployed in the at least one edge node cluster, the at least one subtask is assigned to the execution node, and the function blocks and / or sub-applications in the edge device resources are called by the execution node to execute the at least one subtask until the industrial control process is completed.

2. The method according to claim 1, characterized in that Before the step of allocating the at least one subtask to the execution node based on the edge device resources pre-deployed in the at least one edge node cluster, the step further includes: Generate function block networks based on a hybrid programming environment that supports target programming languages ​​and target function block models; The function blocks and / or sub-applications in the function block network are deployed to the resources corresponding to the edge devices in the at least one edge node cluster in a single or combined manner through a preset deployment mode to obtain the edge device resources.

3. The method according to claim 2, characterized in that After the step of deploying the function blocks and / or sub-applications in the function block network to the resources corresponding to the edge devices in the at least one edge node cluster in a single or combined manner and obtaining the edge device resources, the step further includes: Selecting functional blocks distributed to independent device resources from the edge device resources; Add a communication service interface function block to the function block distributed to the independent device resources, wherein the communication service interface function block includes a subscription interface function block and / or a publishing interface function block, the subscription interface function block is used to subscribe to upstream data, and the publishing interface function block is used to trigger downstream tasks.

4. The method according to claim 2, characterized in that The target programming language includes a graphical language and / or a textual language, and the step of generating a function block network based on a hybrid programming environment supporting the target programming language and the target function block model includes: Defining logic control function blocks in a hybrid programming environment by means of the graphical language and / or text language; The target function block model is called through the encapsulation interface, and the target function block model is controlled to interact synchronously or asynchronously with the logic control function block to obtain the function block network.

5. The method according to claim 2, characterized in that The preset deployment mode includes at least one of a local deployment mode, a cloud collaborative deployment mode, and a hybrid deployment mode, wherein: The local deployment mode includes: editing and compiling the function block network in the at least one edge node cluster; The cloud collaborative deployment mode includes: the cloud management platform edits and compiles the function block network and sends it to the at least one edge node cluster; The hybrid deployment mode includes: the cloud management platform allocates a function block network to the at least one edge node cluster, and the at least one edge node cluster compiles the function block network.

6. An industrial control method, characterized in that: The method is applied to a cloud management platform, and the method includes: An industrial control task in an industrial control process is sent to at least one edge node cluster, wherein the at least one edge node cluster includes a management node and an execution node, the management node generates at least one subtask according to the industrial control task, and the management node allocates the at least one subtask to the execution node based on edge device resources pre-deployed in the at least one edge node cluster, and calls the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed.

7. An industrial control device, characterized in that: The device is applied to at least one edge node cluster, the at least one edge node cluster includes a management node and an execution node, and the device includes: A receiving module, configured to generate at least one subtask according to the industrial control task in the industrial control process sent by the cloud management platform in response to receiving the industrial control task; A distribution module is used to allocate the at least one subtask to the execution node based on the edge device resources pre-deployed in the at least one edge node cluster, and call the function blocks and / or sub-applications in the edge device resources through the execution node to execute the at least one subtask until the industrial control process is completed.

8. An industrial control device, characterized in that: The device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the industrial control method according to any one of claims 1 to 6.

9. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the industrial control method according to any one of claims 1 to 6 are implemented.

10. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the steps of the industrial control method according to any one of claims 1 to 6 are implemented.

Citation Information

Cited By

  • Industrial configuration software cross-platform cooperative control method and system based on Gawan

    CN120704206A