AI-based automatic control application generation
Through automated systems and methods, the automatic control application generator is used to automatically generate industrial control applications, solving the problem of time-consuming and easy introduction of human errors in traditional manual processes, and achieving more efficient, accurate and compatible industrial control application generation.
Patent Information
- Application Number
- CN202411587179.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-03-27
- Filing Date
- 2024-11-08
- Publication Date
- 2025-05-09
AI Technical Summary
The generation process of existing industrial control applications is time-consuming and easy to introduce human errors. Traditional manual processes rely on a large number of resources and multiple iterations, and the division of workflows among engineers is easy to introduce variability and errors.
Provides a system and method to automate the entire process from interpreting initial documents to generating fully functional industrial control applications using an automated control application generator, including a control narrative interpretation engine, a graph interpretation engine, a unified knowledge integrator and a control application builder.
It significantly reduces the time required to generate industrial control applications, reduces the occurrence of human errors, improves the accuracy and consistency of control applications, and the generated applications are compatible with industrial automation platforms from different suppliers.
Smart Images

Figure CN119960734A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to U.S. Provisional Patent Application Serial No. 63 / 597,423 filed on November 9, 2023, and U.S. Non-Provisional Patent Application Serial No. 18 / 618,633 filed on March 27, 2024. Technical Field
[0003] The present disclosure generally relates to automatic generation of industrial control applications. Background Art
[0004] Control applications in industrial automation or control systems are traditionally developed manually by control application engineers. These manual processes are often time consuming and require multiple iterations and resources. Furthermore, the workflow of these manual processes is often divided among a group of control application engineers, which often introduces variability and human error into the process and results. Thus, there have been many attempts to automate certain aspects of the process of generating control applications, but these attempts still require a lot of manual intervention. Summary of the invention
[0005] Various aspects of the present disclosure provide systems and methods for automatically generating industrial control applications for industrial control systems.
[0006] In one aspect, a system for generating an industrial control application includes a processor configured to execute an automatic control application generator to build an industrial control application for an industrial control system. A memory device stores computer executable instructions including the automatic control application generator. The automatic control application generator includes a control narrative interpretation engine configured to receive one or more control narratives for an industrial control system as input, and process the control narrative to identify and provide control narrative information in a data format as output. A diagram interpretation engine is configured to receive one or more diagrams illustrating functional relationships within an industrial control system as input, and process the diagrams to identify and provide diagram information in a data format as output. A unified knowledge integrator is configured to receive control narrative information and diagram information as input. The unified knowledge integrator is configured to process one or more inputs to output an internal representation. A control application builder is configured to receive the internal representation as input. The control application builder is configured to process the internal representation to generate and provide an industrial control application for an industrial control system as output.
[0007] In another aspect, a method for generating an industrial control application includes receiving, by a control narrative interpretation engine, one or more control narratives for an industrial control system as input. The control narrative interpretation engine processes the one or more control narratives to output control narrative information in a data format. A chart interpretation engine receives, as input, one or more logic diagrams for an industrial control system. The chart interpretation engine processes the one or more logic diagrams to output logic diagram information in a data format. The chart interpretation engine receives, as input, one or more piping and instrumentation diagrams for an industrial control system. The chart interpretation engine processes the one or more piping and instrumentation diagrams to output piping and instrumentation diagram information in a data format. A unified knowledge integrator receives, as input, the control narrative information, the logic diagram information, and the piping and instrumentation diagram information. The unified knowledge integrator processes at least one of the control narrative information, the logic diagram information, and the piping and instrumentation diagram information to output an internal representation. A control application generator receives, as input, the internal representation. A control application builder processes the internal representation to generate and provide, as output, an industrial control application for an industrial control system.
[0008] Other objects and features will be in part apparent and in part pointed out hereinafter. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Figure 1 is a schematic flow chart illustrating a known manual process for generating an industrial control application.
[0010] Figure 2 is a schematic block diagram illustrating a system for building industrial control applications according to an embodiment.
[0011] Figure 3 is a flow chart illustrating the data flow of a system according to an embodiment.
[0012] Figure 4 is a schematic block diagram of a control narrative interpretation engine of a system according to an embodiment.
[0013] Figure 5 is a schematic block diagram of a logical diagram interpretation engine of a system according to an embodiment.
[0014] Figure 6 is a schematic block diagram of a pipeline and instrument interpretation engine of a system according to an embodiment.
[0015] Figure 7 is a schematic block diagram of a unified knowledge integrator of a system according to an embodiment.
[0016] Figure 8 is a schematic block diagram of a control application builder of a system according to an embodiment.
[0017] Fig. 9is a flow chart illustrating an automated process flow for generating an industrial control application according to an embodiment.
[0018] Corresponding reference numerals indicate corresponding parts throughout the drawings. DETAILED DESCRIPTION
[0019] Industrial automation and control systems utilize industrial control applications to monitor and control system components within industrial facilities. The traditional manual process for generating industrial control applications is time-consuming, resource-intensive, and prone to human error. Figure 1 An example of a traditional manual process for generating industrial control applications is provided. As shown, engineers must manually review and interpret documents such as control narratives, logic diagrams, and piping and instrumentation diagrams (P&IDs) to understand the system components of an industrial facility. Next, based on the collective understanding of the engineers, the engineers will manually define the functional requirements for building the industrial control application. From here, different engineers will use different integrated development environments to develop separate industrial control applications to accommodate different engineering tools used within different industrial control systems. Each industrial control application is then tested and deployed separately. The results of this manual process are highly subjective and variable because it relies primarily on human interpretation. For example, there is no specific standard or format that specifies how the control narrative should be written, resulting in different interpretations of the control narrative by different engineers. In another example, P&ID has multiple applicable standards, such as ISA5.1, ISO14617, IEC62424, etc., which requires engineers to understand each standard in order to accurately interpret it. There have been several attempts to automate certain parts of the process of generating industrial control applications, but these traditional attempts are flawed and still require a lot of manual intervention.
[0020] The present disclosure provides systems and methods for automating the entire process of generating industrial control applications. The systems and methods disclosed herein provide an automated end-to-end solution from interpreting initial documents to generating fully functional industrial control applications. Thus, the time and manpower spent on creating industrial control applications are reduced. Suitably, the systems and methods according to the present disclosure provide a more efficient process for generating industrial control applications, as well as provide improved accuracy of control applications.
[0021] See now Figure 2, an exemplary embodiment of a system for automatically generating industrial control applications generally includes an industrial control application generator computing device (not shown). The computing device has a processor configured to execute an automatic control application generator 10. The automatic control application generator 10 includes a control narrative interpretation engine 12, a logic diagram interpretation engine 14, and a piping and instrumentation diagram interpretation engine 16 for interpreting inputs containing information for building industrial control applications. Each engine 12, 14, 16 receives and processes its own input to output information in a data format. The data format can be a predefined data structure format or an unstructured data format. The automatic control application generator 10 also includes a unified knowledge integrator 18 and a control application builder 20. The unified knowledge integrator 18 combines the outputs from the engines 12, 14, 16 into an internal representation, which is provided as an input to the control application builder 20 to build the industrial control application.
[0022] According to various aspects of the present disclosure, one or more tangible, non-transitory storage media store computer executable instructions that, when executed by an industrial control application generator computing device, implement the control narrative interpretation engine 12, logic diagram interpretation engine 14, piping and instrumentation diagram interpretation engine 16, unified knowledge integrator 18, and control application builder 20 of the automatic control application generator 10. Before turning to an exemplary method of using the system to generate an industrial control application, the various components of the system will now be described in more detail.
[0023] The industrial control application generator computing device includes a processor, memory, user input, display, and other related elements. The industrial control application generator computing device may also include a circuit board and / or other electronic components for communicating with other computing devices, such as a transceiver, a wired connector, or an external connection. For example, the industrial control application generator computing device includes a component such as a wireless transceiver that connects the industrial control application generator computing device to one or more system databases storing at least one of the control narrative document 22, the logic diagram 26, and the piping and instrumentation diagram 24. In this way, the industrial control application generator computing device is operably connected to the one or more system databases to at least load and receive the control narrative document, the logic diagram, and / or the piping and instrumentation diagram as input. It should be understood that the industrial control application generator computing device may include different types of computing resources, such as one or more local computer devices and / or one or more remote computing resources (e.g., cloud computing resources). Typically, the industrial control application computer is configured to execute the automatic control application generator 10 to build an industrial control application based on inputs such as control narratives, logic diagrams, and P&IDs.
[0024] See now Figure 3, the automatic control application generator 10 includes a plurality of interpretation modules, which include engines 12, 14, 16 that perform various automation functions related to the automation of interpreting the design and functional requirements for generating industrial control applications, as described in more detail below. In addition, the control application generator 10 includes a unified knowledge integrator 18 and a control application builder 20. In an exemplary embodiment, the automatic control application generator 10 also includes a plurality of knowledge storage devices or system databases for storing input and output information. The components of the automatic control application generator 10 are generally designed to ensure that the generated control application is accurate and meets the functional and design requirements. In an exemplary embodiment, the automatic application generator 10 is an artificial intelligence based system.
[0025] See now Figure 4 , the automatic control application generator 10 includes a control narrative interpretation engine 12. The control narrative interpretation engine 12 is configured to receive one or more control narratives for an industrial control system as input. For example, the control narrative interpretation engine 12 is configured to receive one or more control narrative documents 22 from one or more system databases. The control narrative may be in the form of at least one of a text description and document, a table, a flow chart, an equation, a chart, a list, an annotation, and an image. The control narrative interpretation engine 12 is configured to process the control narrative to interpret and extract control narrative information in a data format that can be integrated and utilized by the unified knowledge integrator 18. For example, the control narrative interpretation engine 12 is configured to transform complex and diverse data from the control narrative document into a structured format that can be further integrated and utilized by the unified knowledge integrator 18. In the illustrated embodiment, the data format includes a machine-readable representation of the extracted control narrative information, which is organized into at least one of predefined categories, parameters, or fields to be integrated with other components for analysis and generation.
[0026] In one embodiment, processing the control narrative using the control narrative interpretation engine 12 includes preprocessing and retrieving control narrative information from the control narrative to convert the control narrative into a data format. Preprocessing the control narrative involves at least one of cleaning the control narrative, removing duplicates, and changing the format. For example, the control narrative engine 12 is configured to analyze each control narrative using techniques such as using a computer vision model or a natural language processing (NLP) model to extract key information such as control objectives, control variables, control actions, control strategies, control devices and instruments, control loops, interlocks, alarms, set points and limits, startup procedures, and shutdown procedures. NLP techniques are used to understand the context and requirements for industrial control applications specified in the control narrative. The extracted control narrative information can be stored in a system database or directly provided as input to the unified knowledge integrator 18.
[0027] The automatic application generator 10 also includes a logic diagram interpretation engine 14. Figure 5 As shown in , the logic diagram interpretation engine 14 is configured to receive one or more logic diagrams for an industrial control system as input, and process these logic diagrams to interpret and extract logic diagram information in a data format that can be integrated and interpreted by the unified knowledge integrator 18. For example, the logic diagram interpretation engine is configured to receive one or more logic diagrams 26 as input from one or more system databases. The one or more logic diagrams intuitively represent the control logic sequence and interaction between different system components. In one example, the logic diagram includes symbols, lines, and text annotations that represent system behavior. In the embodiment shown in the diagram, the data format includes a machine-readable representation of the extracted logic diagram information, and the extracted logic diagram information is organized into at least one of predefined categories, parameters, or fields for integration with other components for analysis and application generation.
[0028] In one embodiment, processing one or more logic diagrams using the logic diagram interpretation engine 14 includes preprocessing, identifying one or more symbols, and mapping one or more relationships in each logic diagram to transform the visual and symbolic elements of the logic diagram into a data format. Preprocessing the logic diagram involves at least one of cleaning the logic diagram, removing duplicates, and changing the format. For example, the logic diagram interpretation engine 14 is configured to use a computer vision model specified for the logic diagram, which uses image recognition technology to identify elements such as doors, loops, and conditions. The computer vision model is trained based on different data sets of logic diagrams to ensure accurate interpretation of logic diagrams used to build industrial control applications. The computer vision model is configured to extract information such as control functions, process variables, control actions, conditional dependencies and interlocks, sequence operations, alarms, and instructions. The extracted logic diagram information can be stored in a system database or directly provided as input to the unified knowledge integrator 18.
[0029] See now Figure 6, the automatic control application generator 10 includes a P&ID interpretation engine 16. The P&ID interpretation engine 16 is configured to receive one or more piping and instrumentation diagrams for an industrial control system as input, and process these piping and instrumentation diagrams to interpret and extract P&ID information in a data format that can be integrated and interpreted by the unified knowledge integrator 18. For example, the P&ID interpretation engine 16 is configured to receive one or more piping and instrumentation diagrams 26 as input from one or more system databases. P&ID 26 includes drawings that detail the physical and control relationships between process components of an industrial control system. In one example, these drawings include various symbols, lines, and annotations. In the illustrated embodiment, the data format includes a machine-readable representation of the extracted P&ID information, and the extracted P&ID information is organized into at least one of predefined categories, parameters, or fields for integration with other components for analysis and application generation.
[0030] In an exemplary embodiment, processing the P&ID using the P&ID interpretation engine 16 includes preprocessing, identifying one or more symbols, and mapping one or more relationships in each P&ID to convert the complex symbols and relationships in the P&ID into a data format. Preprocessing the P&ID involves at least one of cleaning the P&ID, removing duplicates, and changing the format. For example, the P&ID interpretation engine 16 is configured to use additional computer vision models specified for the P&ID. The additional computer vision model uses image recognition technology that can recognize standard symbols, labels, and marks commonly used in P&IDs. The additional computer vision model also identifies the relationship between different components, such as process equipment, instruments, control loops, and process conditions. The extracted P&ID information can be stored in a system database or directly provided as input to the unified knowledge integrator 18.
[0031] The automatic application generator 10 also includes Figure 7 The unified knowledge integrator 18 shown in . The unified knowledge integrator 18 is configured to receive control narrative information, logic diagram information, and P&ID information in a data format as input. For example, the unified knowledge integrator 18 is configured to receive input from one or more system databases, and / or directly receive input from the control narrative interpretation engine 12, the logic diagram interpretation engine, and the P&ID interpretation engine 16. The unified knowledge integrator 18 is also configured to process one or more inputs to build an internal representation of the information. For example, the unified knowledge integrator 18 is configured to build an internal representation containing control narrative information, logic diagram information, and P&ID information organized into a unified structure, which is used by the control application builder 20 to generate an industrial control application.
[0032] In the illustrated embodiment, the internal representation serves as a machine-readable model of the integrated information. In one example, the unified knowledge integrator 18 also includes a knowledge integration algorithm that obtains control narrative information, logic diagram information, and P&ID information in data format from the control narrative interpretation engine 12, the logic diagram interpretation engine 14, and the P&ID interpretation engine 16, and integrates the information to form a comprehensive internal representation of the control application. The comprehensive internal representation captures all content that contributes to the generation of the control application as specified by the control narrative, logic diagram, and P&ID. The representation can be stored in a system database or provided directly as input to the control application builder 20.
[0033] See now Figure 8 , the automatic application generator 10 also includes a control application builder 20. The control application builder 20 is configured to receive the internal representation as input from the unified knowledge integrator 18 and / or the system database, and process the internal representation to build an industrial control application for the industrial control system. In one embodiment, the control application builder 20 is configured to process the internal representation by converting the internal representation into executable control logic and code to generate and output a fully functional control application.
[0034] In an exemplary embodiment, the control application builder 20 is configured to receive both the internal representation and the engineering tool knowledge from the unified knowledge integrator 18 as input. For example, the control application builder 20 is configured to receive the engineering tool knowledge as input from the system database. The engineering tool knowledge provides information for building an industrial control application compatible with the engineering tool used with the industrial control system. In one example, the engineering tool knowledge includes at least one of the customer-specific requirements, the supplier-specific requirements, and the industry-specific requirements for the control application. In addition, the control application builder 20 is configured to process the internal representation and the engineering tool knowledge to generate the industrial control application. The engineering tool knowledge is processed with the internal representation to ensure that the generated control application is compatible with the specific engineering tool used in the industrial control system. For example, the control application builder also includes a control application generation algorithm, which includes an AI-based algorithm and / or a classical algorithm. The control application generation algorithm takes a series of steps to convert the internal representation and the engineering tool knowledge into an industrial control application. By appropriately using both the internal representation and the engineering tool knowledge to build the industrial control application, the control application generation algorithm can be programmed to output a control application compatible with control systems from different suppliers.
[0035] See also Fig. 9, the figure shows a process flow of an exemplary method for automatically generating an industrial control application using the system. The automatic control application generator 10 receives one or more control narratives at the control narrative interpretation engine 12, wherein each control narrative is processed to output control narrative information in a data format. In addition, the logic diagram interpretation engine 14 of the automatic control application generator 10 receives one or more logic diagrams and processes these logic diagrams to output logic diagram information in a data format. The P&ID interpretation engine 16 of the automatic control application generator 10 receives one or more P&IDs and processes these P&IDs to output P&ID information in a data format. Each engine 12, 14, 16 sends corresponding information in a corresponding data format to the unified knowledge integrator 18 of the automatic control application generator 10.
[0036] The unified knowledge integrator 18 receives information from each engine 12, 14, 16 as input, and processes (e.g., combines) these inputs to output an internal representation. The unified knowledge integrator 18 sends the internal representation to the control application builder 20. The control application builder 20 receives the internal representation and / or engineering tool knowledge as input, and processes these inputs to generate and output an industrial control application. Next, the generated industrial control application is tested in the real environment of the industrial control system and / or the simulated environment of the industrial control system. When the test is completed, the control application is deployed in the industrial control system.
[0037] Advantageously, the present disclosure provides a new method for control application development, which brings great benefits to the field of industrial automation, including reduced engineering time, reduced human errors, vendor adaptability, and comprehensive automation. The automated process for generating industrial control applications disclosed herein significantly reduces the time required to develop control applications, thereby achieving faster project completion time and cost savings. In addition, by automating the interpretation of control narratives, logic diagrams, and P&IDs, the system minimizes human errors and provides more reliable control applications. Regarding vendor adaptability, industrial control applications generated using the systems and methods herein are designed to be compatible with different industrial automation platforms and different vendors using engineering tool knowledge. Thus, the systems and methods according to the present disclosure can be applied to a wide range of industrial automation industries, such as manufacturing, oil and gas, chemicals and petrochemicals, power generation, water and wastewater treatment, desalination, mining, building automation, and other industries to automatically generate control applications. The adaptability of the system or method disclosed herein provides a solution suitable for both small and large industrial applications.
[0038] Having described the invention in detail, it will be apparent that various modifications and variations are possible without departing from the scope of the invention defined in the appended claims.
[0039] Embodiments of the present disclosure include special-purpose computers including various computer hardware as described in more detail herein, and even if described in conjunction with an example computing system environment, it is also possible to operate with other special-purpose computing system environments or formations. The computing system environment is not intended to impose any restrictions on the scope of use or function of any aspect of the present invention. In addition, the computing system environment should not be interpreted as having any dependency or requirement related to any one or combination of components illustrated in the example operating environment. Examples of computing systems, environments and / or formations applicable to various aspects of the present disclosure include, but are not limited to, personal computers, server computers, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, mobile phones, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, etc.
[0040] Various aspects of the present disclosure may be described in the general context of data and / or processor executable instructions, such as program modules, which are stored in one or more tangible non-temporary storage media and executed by one or more processors or other devices. Typically, program modules include, but are not limited to, routines, programs, objects, components, and data structures that perform specific tasks or implement specific abstract data types. Various aspects of the present disclosure may also be practiced in a distributed computing environment, in which tasks are performed by remote processing devices linked through a communication network. In a distributed computing environment, program modules may be located in both local and remote storage media, including memory storage devices. For purposes of illustration, programs and other executable program components may be shown as discrete blocks. However, it should be appreciated that such programs and components reside in different storage components of a computing device at different times and are executed by the data processor of the device.
[0041] In operation, processors, computers and / or servers can execute processor-executable instructions (e.g., software, firmware and / or hardware), such as the instructions shown in this article, to implement various aspects of the present invention. Processor-executable instructions can be organized into one or more processor-executable components or modules on a tangible processor-readable storage medium. In addition, embodiments can be implemented with such components or modules of any number and organization. For example, various aspects of the present disclosure are not limited to specific processor-executable instructions or specific components or modules illustrated in the figures and described herein. Other embodiments may include different processor-executable instructions or components with more or less functions than those shown and described herein.
[0042] Unless otherwise specified, the order in which the operations of the various aspects of the disclosure illustrated and described herein are performed or performed is not required. That is, unless otherwise specified, the operations may be performed in any order, and embodiments may include more or fewer operations than those disclosed herein. For example, it is foreseeable that it is within the scope of the disclosure to perform or perform a particular operation before, simultaneously with, or after another operation.
[0043] It may not be necessary for all depicted components shown or described. In addition, some implementations and embodiments may include additional components. The arrangement and type of components may be changed without departing from the spirit or scope of the claims as set forth herein. Additional, different or fewer components may be provided, and components may be combined. Alternatively or additionally, a component may be implemented by several components.
[0044] Having described the invention in detail, it will be apparent that various modifications and variations are possible without departing from the scope of the invention defined in the appended claims.
[0045] When introducing elements of the present invention or the preferred embodiments thereof, "a", "an", "the" and "said" are intended to mean that there are one or more of the elements. The terms "comprising", "including" and "having" are intended to be open-ended, meaning that there may be additional elements in addition to the listed elements.
[0046] In view of the above, it will be seen that the several objects of the invention are achieved and other advantageous results attained.
[0047] As various changes could be made in the above product without departing from the scope of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.
[0048] The Abstract and Summary sections are provided to help the reader quickly determine the nature of the technical disclosure. These sections are submitted with the understanding that they will not be used to interpret or limit the scope or meaning of the claims. The Summary section is provided to introduce a series of concepts that are further described in the Detailed Description section in a simplified form. The Summary section is neither intended to identify key features or essential features of the claimed subject matter nor to be used as an aid in determining the claimed subject matter.
Claims
1. A system for generating an industrial control application, the system comprising: a processor configured to execute an automatic control application generator to build an industrial control application for an industrial control system; A memory device storing computer executable instructions comprising the automatic control application generator, wherein the automatic control application generator comprises: a control narrative interpretation engine configured to receive as input one or more control narratives for an industrial control system and to process the control narratives to identify and provide as output control narrative information in a data format; a diagram interpretation engine configured to receive as input one or more diagrams illustrating functional relationships within an industrial control system and to process the diagrams to identify and provide as output diagram information in a data format; a unified knowledge integrator configured to receive the control narrative information and the diagram information as inputs, and wherein the unified knowledge integrator is configured to process one or more of the inputs to output an internal representation; and A control application builder is configured to receive the internal representation as input, and wherein the control application builder is configured to process the internal representation to generate and provide an industrial control application for an industrial control system as output.
2. A system according to claim 1, wherein the control application builder is further configured to receive engineering tool knowledge as input, the engineering tool knowledge comprising information for building an industrial control application to be compatible with an engineering tool used with an industrial control system, and wherein the control application builder is configured to process the engineering tool knowledge using the internal representation to output the industrial control application, and wherein the engineering tool knowledge comprises at least one of customer-specific requirements, supplier-specific requirements, and industry-specific requirements.
3. A system according to any one of claims 1-2, wherein the internal representation includes at least control narrative information and diagram information combined into a unified format that can be understood by a control application builder, and wherein each data format defines a format that can be integrated and interpreted by the unified knowledge integrator.
4. The system of any one of claims 1-3, further comprising one or more databases configured to store the control narrative and / or the diagram, and wherein the processor is operably connected to the one or more databases to load and receive the control narrative and the diagram as input.
5. A system according to any one of claims 1-4, wherein the control narrative interpretation engine includes at least one of a natural language processing model, the chart interpretation engine includes a computer vision model, the unified knowledge integrator includes a knowledge integration algorithm, and the control application builder includes a control application generation algorithm.
6. A system according to any one of claims 1-5, wherein the diagram includes a logic diagram and / or a piping and instrumentation diagram, and wherein the diagram interpretation engine includes a logic diagram interpretation engine and / or a piping and instrumentation diagram interpretation engine, the logic diagram interpretation engine is configured to receive one or more logic diagrams for an industrial control system as input, and process the logic diagram to identify and provide logic diagram information in a data format as output, and the piping and instrumentation diagram interpretation engine is configured to receive one or more piping and instrumentation diagrams for an industrial control system as input, and process the piping and instrumentation diagram to identify and provide piping and instrumentation diagram information in a data format as output.
7. A method for generating an industrial control application, the method comprising: receiving, by a control narrative interpretation engine, as input, one or more control narratives for an industrial control system; processing the one or more control narratives by the control narrative interpretation engine to output control narrative information in a data format; Receiving as input, by a diagram interpretation engine, one or more logic diagrams for an industrial control system; Processing the one or more logic diagrams by the diagram interpretation engine to output logic diagram information in a data format; receiving, by the diagram interpretation engine, as input, one or more piping and instrumentation diagrams for an industrial control system; processing the one or more piping and instrumentation diagrams by the diagram interpretation engine to output piping and instrumentation diagram information in a data format; The unified knowledge integrator receives the control narrative information, the logic diagram information, and the piping and instrumentation diagram information as input; processing, by the unified knowledge integrator, at least one of the control narrative information, the logic diagram information, and the piping and instrumentation diagram information to output an internal representation; The internal representation is received as input by a control application generator; and the internal representation is processed by a control application builder to generate and provide as output an industrial control application for an industrial control system.
8. The method of claim 7, wherein processing the one or more control narratives to obtain control narrative information further comprises preprocessing each control narrative and identifying and extracting control narrative information from each control narrative, and wherein processing the one or more logic diagrams to obtain logic diagram information further comprises preprocessing each logic diagram, identifying one or more symbols for each logic diagram, and mapping one or more relationships in each logic diagram, and wherein processing the one or more piping and instrumentation diagrams to obtain piping and instrumentation diagram information further comprises preprocessing each piping and instrumentation diagram, identifying one or more symbols for each piping and instrumentation diagram, and mapping one or more relationships in each piping and instrumentation diagram.
9. A method according to any one of claims 7-8, wherein processing the internal representation to generate an industrial control application for an industrial control system also includes converting the internal representation into executable control logic and code, and wherein processing the internal representation to generate an industrial control application for an industrial control system also includes mapping engineering tool knowledge to the internal representation to construct an industrial control application to be compatible with engineering tools used in the industrial control system.
10. The method according to any one of claims 7-9 further includes testing the industrial control application in a real environment of the industrial control system and / or a simulated environment of the industrial control system, and deploying at least one of the industrial control applications in the industrial control system.