Method of generating control logic code for controlling automated industrial process

Through metalanguage syntax conversion and vector database technology, the problem of input token limitations of generative AI in automated industrial processes is solved, and high-quality control logic code is efficiently generated, which reduces the workload of manual programming and reduces costs.

CN120686715APending Publication Date: 2025-09-23ABB (SCHWEIZ) AG
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510343275.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-03-22
Filing Date
2025-03-21
Publication Date
2025-09-23

AI Technical Summary

Technical Problem

Existing generative AI is limited by input tokens when generating control logic code, making it difficult to handle complex automated industrial process requirements, especially projects that contain large amounts of P&ID data and I/O lists. This results in heavy manual programming workload and is prone to errors.

Method used

A metalanguage grammar-based conversion method is used to convert the specifications and functional requirements of automated industrial processes into natural language form, and control logic code is generated through a large language model. Vector database and similarity search technology are used to compress the data volume to overcome token limitations, and a generative artificial intelligence model is combined to generate high-quality control logic code.

Benefits of technology

It significantly reduces manual programming workload, improves engineering efficiency, and generates high-quality control logic code that can effectively handle complex automated industrial process requirements, reducing costs and improving the scalability of generative AI.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120686715A_ABST
    Figure CN120686715A_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure relate to a method of generating control logic code for controlling an automated industrial process. The method comprises: providing a plurality of specifications of an appliance structure for an automated industrial process, including a plurality of components and / or sub-components; and / or providing a plurality of functional requirements for each component of the automated industrial process; converting the plurality of specifications and / or requirements into a natural language form; wherein the semantic content of the plurality of specifications and / or requirements is retained; providing at least one control concept related to the plurality of components and / or sub-components for controlling the industrial process; generating a prompt for a first generative artificial intelligence model configured for natural language processing for the first generative artificial intelligence model; providing a prompt to the first generative artificial intelligence model; and generating control logic code for executing the automated industrial process by means of a first generative artificial intelligence model based on the provided cues.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of automated industrial processes, and in particular to a method for generating control logic codes for controlling automated industrial processes. Background Art

[0002] Creating control logic for automated industrial processes requires processing complex requirements, typically specified in the form of P&IDs, I / O tables, or control statements. This task is typically performed by automation engineers manually interpreting the provided requirements specifications and selecting the appropriate process equipment, instruments, and controllers into which to write the control logic code.

[0003] Requirements are usually specified by the Engineering, Procurement and Construction Contractor (EPC) and follow certain standard notations before being handed over to the automation engineer. Summary of the Invention

[0004] Generative artificial intelligence (AI) that can be based on a large language model (LLM) can support the generation of control logic source code and thus save manual programming effort. However, the large language model is queried using prompts that include natural language requirements that can define the control logic source code to be generated. Requirements for automating industrial processes of large production facilities based on piping and instrumentation diagrams (P&IDs), input / output (I / O) tables and / or control concepts (which can, for example, be formulated as control narratives) can be complex and can be partially formulated using natural language. Significant parts of these requirements are typically expressed using verb data formats that are machine readable and therefore cannot be used directly as input to the LLM because the LLM is limited in the amount of input information, which can be viewed as a token limitation.

[0005] Automation engineers are responsible for interpreting requirements documents. This process can be laborious and prone to human error due to oversight or cognitive complexity. Therefore, a method for generating control logic code that can significantly improve engineering efficiency is highly desirable.

[0006] Recently, generative AI in the form of large language models (LLMs) has made significant technical progress and has become widely available to end users. Tests have shown that generative AI can generate control logic source code by querying it using requirements formulated in natural language (e.g., in the programming language defined in IEC 61131-3). Therefore, using P&IDs, I / O lists, and control narratives as input to generative AI is a potential solution for generating source code.

[0007] However, currently available AI is limited by input token limits, requiring queries to be formulated with certain size constraints. A variant of the most advanced generative AI (GPT-4) is able to process up to 32,000 input tokens, which corresponds to approximately 25,000 words.

[0008] The data contained in hundreds of P&IDs, and I / O lists with more than 5,000 entries, or control narratives spanning tens of pages of text for a typical automation project can easily exceed these input limits.

[0009] While in many cases requirements can be divided into separate parts that can be processed by separate generative AI queries, even requirements described within a single P&ID page may often exceed token limits and carry interdependencies with other parts of the requirement that affect the required control logic source code.

[0010] The invention therefore relates to a method for generating control logic code for controlling an automated industrial process by means of at least one programmable logic controller, a method for constructing a controller, a controller, and the use of a metalanguage as described in the independent claims.

[0011] Advantageous modifications of the invention are set forth in the dependent claims. All combinations of at least two features disclosed in the description, the claims, or the drawings fall within the scope of the invention. To avoid repetition, features disclosed with respect to the method also apply and are claimable with respect to the system.

[0012] Throughout the description of this invention, the order of process steps is presented in a manner that facilitates understanding of the process. However, those skilled in the art will recognize that many process steps can be performed in a different order and produce the same or equivalent results. In this sense, the order of the process steps can be changed accordingly. Some features have count numbers to improve readability or clarify the assignment, but this does not necessarily imply the presence of certain features.

[0013] To achieve these and other advantages and in accordance with the purposes of the present invention, as embodied and broadly described herein, a method for generating control logic code for controlling an automated industrial process by means of at least one programmable logic controller is provided, the method comprising the following steps. In one step of the method, a plurality of specifications of an appliance structure of an automated industrial process comprising a plurality of components and / or subcomponents are provided. Alternatively or additionally, in another step, a plurality of functional requirements for each component of the automated industrial process are provided. In another step, the plurality of specifications of the appliance structure of the automated industrial process comprising a plurality of components and / or subcomponents and / or the functional requirements for each component of the automated industrial process are converted into a natural language form, wherein the semantic content of the plurality of specifications and / or requirements is retained by the conversion. In a further step, at least one control concept associated with the plurality of components and / or subcomponents for controlling the industrial process is provided for the method. In another step, prompts for a first generative artificial intelligence model are generated for the first generative artificial intelligence model based on at least a portion of a plurality of specifications of an appliance structure; and / or based on at least a portion of a plurality of functional requirements of each component of the automated industrial process; based on at least one control concept; and based on a task description generated for the control logic. The first generative artificial intelligence model is configured for natural language processing based on a natural language form. In another step, the prompts are provided to the first generative artificial intelligence model. In another step, control logic code for executing the automated industrial process is generated by the first generative artificial intelligence model based on the provided prompts.

[0014] The control logic code may be a computer program including instructions that, when the computer program is executed by a computer and / or a programmable logic controller (PLC), cause the computer and / or PLC to perform the instructions.

[0015] The control logic code may be coded based on a control code programming language (eg IEC 61131-3, IEC 61499), and / or based on Modelica or MATLAB / Simulink, and / or based on a general programming language (eg Python or C#).

[0016] Automated industrial processes can apply intelligent technology to industrial processes to replace manual, uninterrupted, repetitive tasks with efficient and / or automated workflows. This can overcome the task of factory operators physically and manually monitoring performance values ​​and output quality to determine the optimal settings for running production equipment and / or production components (especially including sub-components). Automated industrial processes can simplify and manage these tasks based on the use of sensors, automatic control devices, computer technology and software engineering. Data can be collected by thousands of sensors at different locations throughout the facility. Computer equipment can be used to store and analyze relevant information. Each process and machine can be monitored and controlled on a large screen in the control room.

[0017] The control concept may be described at least in part by control narratives and / or control information contained within the P&ID diagram and include specifications for sequential control and / or feedback control of individual parts of an industrial process and / or integrated industrial process.

[0018] The generative AI model configured for natural language processing can be a large language model (LLM), such as LLAMA, GPT, or Bard. Such a large language model can be a type of language model based on an artificial neural network and trained on a large amount of general knowledge (e.g., instruction tuning). The generative AI model can be configured to output an answer to an input user query. The answer provided can include a textual explanation or a formal computer-processable code, for example, in the notation used by a programmable logic controller.

[0019] The generative artificial intelligence model can additionally or alternatively be a custom-trained model of a general-purpose LLM configured for industrial automation or fine-tuning. The LLM can be fine-tuned based on available control logic code or generated from scratch (self-supervised) using available simulation code snippets. Fine-tuning can be performed using available control logic code, which is linked to the applicant's specifications for the structure of multiple components and / or multiple functional requirements for each component of the automated industrial process.

[0020] The applicant's multiple specifications of the structure of the automated industrial process that can include multiple components and / or sub-components, and / or the multiple functional requirements of each component of the automated industrial process can be based on the project context. The project context can be described by including documents and specifications about a specific automation engineering project and / or an automated industrial process. For example, these documents can be requirement specifications, control narratives, contracts, design specifications, field-specific textbooks, engineering manuals and / or other documents that help understand the details about the expected industrial production process. For example, for an automated engineering project for a chemical plant that produces a specific type of chemical substance, the document of the project context can have detailed information about the ingredients used, the size of the equipment and the expected procedures (such as mixing, boiling, reacting, etc.). This can also include, for example, piping and instrumentation diagrams (P&IDs), process flow diagrams (PFDs) and / or system control diagrams (SCDs). When the process is already running, the context can also include historical data, such as time series measurements and alarms and events.

[0021] Topological information about the automated production process and instrumentation requirements can be specified using P&I diagrams, which can be provided and received in a structured file format, for example, according to the DEXPI or ISO 15926 standards. The types of input and output signals used for automation can be specified using input / output (I / O) lists, which are typically large spreadsheets in which inputs and outputs are specified with various properties, such as analog / digital, range, etc. Control concepts or automation concepts can be specified using so-called control narratives, which are plain text documents written in a technology / vendor-agnostic manner that describe the automation requirements in prose. Based on these requirements artifacts or documents, the automation of industrial processes can be defined and specified as described in IEC 61131-3 or IEC 61499.

[0022] Prompt generation can be based on a template for prompt generation, wherein the template is associated with a task category for control code generation. Based on the task description, prompts can be generated from a selected prompt template associated with the task. Prompts can be augmented with multiple blocks of specifications for an appliance structure of an automated industrial process and / or multiple functional requirements for each component of the automated industrial process. Blocks of multiple specifications and / or functional requirements can be selected through a similarity search based on the embedding of the multiple specifications and / or functional requirements and the embedding of prompts.

[0023] The database can be used to store embedded specifications of multiple transformations of an appliance structure for an automated industrial process and / or embedded functional requirements of multiple transformations of each component of the automated industrial process. The embedded specifications and / or functional requirements can be stored with the aid of a vector database for performing similarity searches based on the embeddings.

[0024] Advantageously, the method for generating a control logic controller can support the generation of control logic code with the aid of a generative artificial intelligence model, particularly one that includes implicit or explicit compression and / or implicit or explicit summarization of artifacts relevant to controlling an automated industrial process, and / or requires implicit search of artifacts. This greatly expands the possibilities for control logic code generation and can significantly save manual engineering effort. Additionally or alternatively, using an algorithm to generate control logic code can improve the quality of the generated control logic code.

[0025] According to one aspect, a plurality of specifications of an appliance structure and / or a plurality of functional requirements for each component can be transformed by means of a structured transformation process in such a manner that the semantic content of each of the plurality of specifications of the appliance structure and / or each of the plurality of functional requirements for each component is preserved and the amount of data of each of the plurality of specifications of the appliance structure and / or each of the plurality of functional requirements for each component is reduced relative to a structured computer-readable form of each of the corresponding specifications and / or functional requirements provided. The structured transformation process can be configured to search the plurality of specifications of the appliance structure and / or the plurality of functional requirements for each component for control-related portions to reduce the amount of corresponding data provided to the first generative artificial intelligence model.

[0026] Advantageously, by selecting the relevant portion of the requirement artifact based on the structured transformation process, the method for generating control logic code can compress the requirement artifact based on the structured transformation process to overcome size limitations on the amount of data provided to the first generative artificial intelligence model. Based on the described method for generating control logic code, specifications and / or requirements and / or relevant portions of the requirement artifact can be included in the query to the first generative artificial intelligence model (respectively, the large language model) for control logic code generation, even if the size limitations of the input to the first generative artificial intelligence model must be adhered to.

[0027] According to one aspect, a plurality of specifications of an appliance structure and / or a plurality of functional requirements for each component are provided in a structured computer-readable form.

[0028] Advantageously, this enables automatic generation of control logic code with high quality, as the specifications and / or requirements can be unambiguously converted into a natural language form.

[0029] According to one aspect, the method includes the following steps: providing a description of a plurality of specifications of an appliance structure and / or a plurality of functional requirements of each component in a metalanguage grammar, wherein the metalanguage grammar is based on a natural language. In another step, converting the plurality of specifications of the appliance structure and / or the plurality of functional requirements of each component into a natural language form based on the metalanguage grammar, wherein the semantic content of at least part of the plurality of specifications of the appliance structure and / or at least part of the plurality of functional requirements of each component is preserved.

[0030] As an example of a required artifact, the topology of an automated industrial process may be provided by a P&I diagram, which is typically described by a verbal notation, such as the XML defined by the DEXPIP&ID specification.

[0031] Because P&IDs are used not only for control logic generation but also for a variety of other tasks, such as space planning and process graphics creation, they can contain a significant amount of information that is not required for control logic generation. This additional information, for example, relates to graphical coordinates required for drawing, but not for control logic implementation. For control logic code generation, the topological dependencies of different sensors and actuators are relevant, for example, to implement control logic for interlocking.

[0032] The I / O list can be provided in the form of a table containing I / O descriptions in rows, including columns such as I / O number, tag number, loop number, P&ID number, location, I / O type, calibration limits, set points, engineering units, value range, etc.

[0033] Since the I / O table already contains a compressed set of information, a possible reduction should be user-definable, where redundant parts of the I / O list should be omitted, such as the run number column.

[0034] An additional augmentation could be to provide guidance to the first generative AI model on how to interpret I / O signal names, such as the tag name definition based on IEC 62424 that “if the signal name starts with P”, this means it is connected to a “pressure” measurement.

[0035] The metalanguage grammar can be configured to compress and condense multiple specifications of an appliance structure and / or multiple functional requirements for each component of an automated industrial process provided as input to a first generative AI model by executing specific model transformations that strip data irrelevant to control logic generation and use compressed symbols. Large automation requirements documents can be fed as prompts to the generative AI, which can then generate control logic source code.

[0036] A metalanguage grammar for (particularly compressing) a requirement artifact may include an introduction portion defining the metalanguage grammar, independent of the specific requirement artifact, and an encoding portion based on the metalanguage grammar, wherein the encoding portion is specific to the specification of the device structure and / or the functional requirements of each component. Furthermore, the metalanguage grammar may include a conclusion portion, also based on the metalanguage grammar, and may include specific data such as general "public" device relationships.

[0037] The conversion of a requirement artifact, such as a P&ID diagram and / or an I / O list and / or a control statement (including at least one control concept), based on a metalanguage syntax can be performed by mapping a first plurality of metalanguage elements to structural elements of a plurality of specifications of an appliance structure provided in a structured computer-readable form, and / or by mapping a second plurality of metalanguage elements to structural elements of a plurality of functional requirements for each component provided in a structured computer-readable form. The structural elements of the requirement artifact to be mapped to the metalanguage elements can be selected to preserve the semantic context of the requirement artifact and / or reduce the data size of the requirement artifact.

[0038] In other words, converting the plurality of specifications and / or requirements into a natural language form can include mapping rules, particularly based on a metalanguage grammar, wherein the semantic context of the requirement artifacts comprising the specifications and / or functional requirements is preserved. This conversion can reduce the amount of data per requirement artifact, particularly by selecting portions of the requirement artifact relevant for generating the control logic code, particularly through the metalanguage grammar.

[0039] Advantageously, the use of a metalanguage grammar for converting multiple specifications and / or requirements into a natural language form can structure the conversion process and reduce the amount of data to be provided to the first generative artificial intelligence model for generating the control logic code.

[0040] According to one aspect, the amount of data of each of the multiple specifications of the instrument structure based on the metalanguage grammatical transformation and / or each of the multiple functional requirements of each component based on the metalanguage grammatical transformation is reduced relative to the structured computer-readable form of each of the specifications and / or functional requirements provided.

[0041] Advantageously, using a metalanguage grammar to convert multiple specifications and / or requirements into a natural language form can compress the automated requirements artifact to overcome size limitations, so that relevant portions of the requirements selected based on the metalanguage grammar can be included in the query to the first generative artificial intelligence model for code generation. This greatly expands the possibilities for control logic code generation and significantly saves manual engineering work.

[0042] In other words, using a metalanguage, a method for generating control logic code can overcome the input token limitations (as a measure of input data limitations) of generative artificial intelligence models in the context of process automation requirements, such that the semantics of multiple specifications and / or requirements are preserved, but their data size is significantly reduced. This reduction in data size may be necessary because most current and likely future generative artificial intelligence models or LLMs are still limited by the number of input tokens. The proposed method for generating control logic code can reduce energy and / or cost because generative artificial intelligence models or LLMs can cope with larger inputs in the future.

[0043] Additionally or alternatively, the use of token-restricted, local LLM models may be more cost-effective and sustainable compared to general cloud-available models like GPT-4.

[0044] According to one aspect, multiple specifications of an apparatus structure and / or multiple functional requirements of each component converted based on a metalanguage include an introduction part and a coding part, the coding part is used to define the metalanguage grammar, and the coding part is specific to the specifications of the apparatus structure and / or the functional requirements of each component.

[0045] According to one aspect, the metalanguage grammar is configured to preserve the semantic content of the multiple specifications of the appliance structure and / or the multiple functional requirements of each component by mapping a first plurality of metalanguage elements to structural elements of the multiple specifications of the appliance structure in a provided structured computer-readable form and / or by mapping a second plurality of metalanguage elements to structural elements of the multiple functional requirements of each component in a provided structured computer-readable form.

[0046] According to one aspect, the conversion based on the metalanguage grammar is continuously performed for any object class included in the plurality of specifications of the appliance structure and / or the plurality of functional requirements of each component.

[0047] According to one aspect, corresponding portions of the transformation through the object class are cascaded for transforming multiple specifications of the appliance structure and / or multiple functional requirements of each component into a natural language form.

[0048] According to one aspect, multiple specifications of an apparatus structure and / or multiple functional requirements of each component, which are converted based on a metalanguage grammar and / or provided in a structured computer-readable form, are divided into multiple corresponding sub-units to generate multiple blocks of multiple specifications of the apparatus structure and / or generate multiple blocks of multiple functional requirements of each component, whereby the corresponding blocks are characterized by corresponding smaller data sizes as each specification in the relevant specifications of the apparatus structure and / or each functional requirement in the relevant functional requirements of each component.

[0049] In particular, a P&ID or other desired artifact can be divided into a plurality of corresponding subunits by constructing multiple blocks. The blocks can include chapters, sections, pages, and / or individual descriptions of the P&ID or other desired artifact, and can be treated independently of one another. The resulting multiple blocks can be based on different levels of abstraction for the P&ID or other desired artifact. The embeddings of these blocks can be stored in a vector database, particularly for similarity searches.

[0050] The I / O list can be provided to the first generative artificial intelligence model in its entirety without any conversion.

[0051] A first alternative may be that the portion of the I / O list selected by the similarity search with the description of the hint is used to expand the hint.

[0052] A second alternative could be to convert the I / O list into multiple sub-units based on logical grouping rules, wherein the logical grouping rules are provided to the first generative artificial intelligence model together with at least part of the I / O list by means of a hint for expansion. An example of a logical grouping rule is, for example: "all tags contained in one control loop should be considered as a block". In this case, a control loop can represent, for example, the expected logical dependencies between sensors and actuators indicated in a P&ID or a control narrative. For example, if the measured value of the pressure sensor "PI40" affects the opening of the analog valve "V50", they are in the same control loop and should always be part of one information block, i.e. always a joint part of any LLM query.

[0053] The control narrative can be converted by dividing the control narrative into a plurality of respective subunits forming a plurality of blocks of the control narrative, wherein the plurality of blocks may comprise chapters, sections, pages and / or individual instructions of the control narrative and in particular treating them independently of one another.

[0054] Additionally or alternatively, different types of descriptions of a control narrative, for example an HMI description or a PAC description, can be treated independently of one another with regard to the expansion instructions.

[0055] Additionally or alternatively, the control narrator and / or the blocks that control the narrator may be generalized using a generator that is an artificial intelligence model, which generator may in particular be different from the first generative artificial intelligence model.

[0056] According to one aspect, multiple specifications of the appliance structure and / or multiple functional requirements of each component converted based on the metalanguage grammar and / or provided in a structured computer-readable form are compressed based on the summary with respect to their data size, the compression being performed with the aid of a second generative artificial intelligence model configured for natural language processing.

[0057] Specifically, the second generative artificial intelligence model can be the same as the first generative artificial intelligence model.

[0058] Due to the high importance of control narratives for generating control logic code, summarization can be performed by careful definition of the summary (taking into account the removal of predefined "parasitic" words such as "may" or "mostly"), and / or by applying abbreviations where possible (e.g., replacing "for example" with "eg"), and / or by introducing abbreviations for multiple repeated terms (e.g., P&ID for common terms), and / or by keyword-based summarization. Before feeding any control narrative, a list of main keywords can be provided to the first generative artificial intelligence model. Based on the keywords, the first generative artificial intelligence model can focus on the text parts near the keywords. For example, a tag name that is part of the control narrative can draw attention to the tag name so that the output for the first generative artificial intelligence model can take into account the interlocking or logical explanations near the tag name.

[0059] In particular, the summarization performed by the generative artificial intelligence model can be supervised by an operator through a graphical user interface to release the results of the summarization performed by the control narrator for further processing by the first generative artificial intelligence model.

[0060] According to one aspect, prompts are generated based on multiple input / output descriptions of at least a portion of a component and / or subcomponent in a provided natural language form; and / or prompts are generated based on control narratives in a provided natural language form, the control narratives including multiple control concepts assigned to the component and / or subcomponent for controlling an industrial process.

[0061] According to one aspect, the method comprises the steps of generating a first plurality of embeddings of at least part of a plurality of blocks of a plurality of specifications of an appliance structure by means of a third generative artificial intelligence model configured for natural language processing. In another step, generating a second plurality of embeddings of at least part of a plurality of blocks of a plurality of functional requirements of each component by means of a fourth generative artificial intelligence model configured for natural language processing. In another step, storing the first plurality of embeddings and / or the second plurality of embeddings by means of a database. And in another step, augmenting the prompts of the first generative artificial intelligence model configured for natural language processing by adding matching blocks from the plurality of blocks of the specifications of the appliance structure and / or by adding matching blocks from the plurality of blocks of the functional requirements of each component, wherein the matching is performed based on a similarity search performed with the aid of the database.

[0062] The database may include a vector database, which is a specialized database designed to efficiently store, search, and manage high-dimensional vector data. It is often used in applications such as machine learning, image and speech recognition, and similarity search. These databases enable fast nearest neighbor search operations, allowing users to quickly identify the vector in the database that most resembles a given input vector. Examples of vector databases include the FAISS database developed by Facebook AI or the Annoy or Pincone databases developed by Spotify.

[0063] Embedding is a concept in machine learning and artificial intelligence, primarily in deep learning. It allows categorical data, such as words or items, to be converted into vectors of continuous numbers. Embeddings can capture the underlying semantics and relationships between different categories, thereby improving the performance of machine learning models.

[0064] Embeddings can be learned from large datasets, and in particular, they can be used for other tasks without having to be trained from scratch.

[0065] Embeddings for the artifacts and / or prompts can be generated with the aid of a generative AI model (e.g., an LLM model) to create an embedded representation of the input text, typically as a vector of numbers, where the artifacts and / or chunks of artifacts can be pre-processed by the transformations described above.

[0066] In other words, embeddings are representations of values ​​or objects such as text, images, and audio that are designed to be used by machine learning models and semantic search algorithms.

[0067] The similarity search can be performed by comparing the first and / or second plurality of embeddings stored in the vector database with embeddings of at least one control concept associated with a plurality of components and / or subcomponents for controlling an industrial process; and / or with other control concepts of the control statement, wherein embeddings of the control concepts are also stored in the vector database. Matching chunks can also be retrieved from the database and added to the specific prompt.

[0068] Similarity searches based on embeddings and augmented cues can be performed according to the embedding retrieval method.

[0069] The augmented hints may be sent to a first generative artificial intelligence model (respectively LLM) for control logic code generation.

[0070] Because the potential number of required processing objects and the corresponding data volume are quite large, the division of multiple specifications of the instrument structure and / or multiple functional requirements of each component that can be combined with embedded retrieval methods and / or combined with functional requirements through metalanguage grammar can significantly reduce the data size of the prompt so as not to exceed the token limit of the first generator artificial intelligence model.

[0071] According to one aspect, the method comprises the steps of editing and / or modifying and / or changing performed by an operator through an interface:

[0072] - Generation of prompts for a first generative artificial intelligence model; and / or

[0073] - mapping the first plurality of metalanguage elements to a plurality of canonical structural elements of the provided appliance structure in structured computer-readable form; and / or

[0074] - mapping the second plurality of metalanguage elements to structural elements of the plurality of functional requirements of each component in the provided structured computer-readable form; and / or

[0075] - dividing the plurality of specifications of the instrument structure to generate a plurality of chunks of the plurality of specifications of the instrument structure; and / or

[0076] - dividing the plurality of functional requirements of each component to generate a plurality of blocks of the plurality of functional requirements of each component; and / or

[0077] - compressing multiple specifications of the device structure based on the digest; and / or

[0078] -Compress multiple functional requirements for each component based on the summary.

[0079] By editing and / or modifying and / or changing the various steps of the method for generating control logic code, automation engineers can oversee the generation of control logic code while being freed from manually coding the control logic. Furthermore, by deciding which artifacts participate in the code generation process, automation engineers have a high level of control over the "summary" of the engineering artifacts, making the resulting code more interpretable. Because the blocks of required artifacts suggested for use by the method are included and / or documented by the suggested prompts, they can be documented and communicated to the end user.

[0080] In other words, the proposed method for generating control logic code is user-guided and / or user-assisted, and may require user input for the summary process. This user-assisted method is effective for generating control logic code. Additionally or alternatively, the method for generating control logic code is supervised and explainable to end users to increase potential user acceptance. The speed and effectiveness of generating control logic code can be improved by using a metalanguage grammar to transform the methodology of the required artifacts.

[0081] A method for constructing a controller for controlling an automated industrial process is proposed. The method comprises the following steps: generating control logic code for controlling an automated industrial process by means of at least one programmable logic controller as described above. Furthermore, in a further step, the control logic code is loaded into the programmable logic controller. This may specifically include a compilation step, i.e., converting the control logic code into an executable format for execution on the controller's CPU.

[0082] A controller is provided having a programmable logic controller, a database, and an interface. The database is coupled to the programmable logic controller. The interface is signal-coupled to the programmable logic controller. Furthermore, the interface is configured to be signal-coupled to a plurality of components and / or subcomponents of an automated industrial process system. Furthermore, the controller is configured to control the automated industrial process based on control logic code generated by any of the methods described above.

[0083] A coding device for generating control logic code is proposed, wherein the control logic code is configured to control an automated industrial process by means of at least one programmable logic controller. The coding device comprises a first interface, a data processing device and a second interface.

[0084] The first interface is configured to receive a plurality of specifications of an apparatus structure for an automated industrial process; wherein in particular, the apparatus structure includes a plurality of components and / or subcomponents. Alternatively or additionally, the first interface is configured to receive a plurality of functional requirements for each component of the automated industrial process. Alternatively or additionally, the first interface is configured to receive at least one control concept associated with the plurality of components and / or, in particular, the plurality of subcomponents, for controlling the industrial process.

[0085] The data processing device is signally coupled to the first interface and the second interface. The second interface is configured to be coupled to a first generative artificial intelligence model configured for natural language processing. The encoding device includes means for performing any of the above methods and / or the encoding device is configured to perform any of the above methods, in particular by means of the data processing device.

[0086] The encoding device can be part of the control programming environment.

[0087] An encoder system is proposed, comprising: the above-mentioned encoding device and a first generative artificial intelligence model configured for natural language processing.

[0088] The use of a metalanguage is proposed for converting the specification of an appliance structure and / or the functional requirements of each component into a natural language form, in accordance with any of the above methods, wherein the semantic content of the specification of the appliance structure and / or the functional requirements of each component is preserved, for generating a control logic code for controlling an automated industrial process.

[0089] According to one aspect, the method for generating control logic code for controlling an automated industrial process can be a computer-implemented method, wherein a computer program includes instructions that, when the computer program is executed by a computer and / or a programmable logic controller (PLC), cause the computer and / or PLC to perform the instructions and / or steps of the method for generating control logic code. BRIEF DESCRIPTION OF THE DRAWINGS

[0090] The accompanying drawings are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application. The drawings illustrate embodiments of the invention and together with the description serve to explain the principles of the invention. The drawings show:

[0091] Figure 1 It is a data flow diagram of the method for generating control logic code;

[0092] Figure 2 It is a diagram of metalanguage grammar;

[0093] Figure 3 is a schematic metalanguage grammar for multiple object categories;

[0094] Figure 4 is a schematic information flow of a method for generating control logic code; and

[0095] Figures 5 to 10 This section illustrates a page of a user interface for a method of generating control logic code. DETAILED DESCRIPTION

[0096] Figure 1 A data flow diagram 100 of a method for generating control logic code for controlling an automated industrial process by means of at least one programmable logic controller is schematically depicted, wherein the automated industrial process comprises an appliance structure comprising a plurality of components and / or subcomponents.

[0097] Figure 1The architecture of the control logic generator 120 depicted in FIG2 can be configured to perform the method and can include model converters 121, 122, 123, a prompt generator 127, an embedding encoder 125, a vector database 126, and a user interface 124. The control logic generator 200 can be configured to be provided with input documents 111, 112, 113 containing automation requirements. The control logic generator 200 can be configured to query the application programming interface (API) 141 of a first generative artificial intelligence model 140 configured for natural language processing using prompts to generate control logic source code. The first generative artificial intelligence model 140 can provide the generated control logic code in a repository 150 based on a large language model 142, and the control logic code can be retrieved, interpreted, compiled, deployed, and ultimately executed from the repository 150. The control logic generator 120 can be configured to perform a search based on the provided automation requirements to identify relevant portions of the automation requirements, and to generate an augmented prompt including the searched portion of the automation requirements. The control logic generator 120 can be configured to provide the expanded prompts and task specifications for control logic generation to the first generative artificial intelligence model for querying. For example, a search for relevant parts of the automation requirement can be performed by the generative artificial intelligence model based on the embedded prompts and / or the embedded automation requirement and / or the requirement artifacts. The generative artificial intelligence model used for the search can be different from the first generative artificial intelligence model.

[0098] In a first step of a method for generating control logic code for controlling an automated industrial process with the aid of at least one programmable logic controller, a plurality of specifications of an equipment structure of the automated industrial process and / or a plurality of functional requirements of components and / or subcomponents of the automated industrial process are provided with the aid of a computer-readable P&ID drawing 111, the P&ID drawing being constructed as a computer-readable XML file.

[0099] In a further step 121 , the plurality of specifications and / or requirements 100 is converted into a natural language form, wherein the semantic content of the plurality of specifications and / or requirements is preserved.

[0100] Alternatively or additionally, in step 121, multiple specifications of the device structure and / or multiple functional requirements of each component can be converted into a natural language form based on a metalanguage grammar, wherein the description of the metalanguage grammar is based on a natural language and is provided to the method, and in particular, wherein the amount of data of each of the multiple specifications of the device structure and / or the amount of data of each of the multiple functional requirements of each component converted based on the metalanguage grammar is reduced relative to the structured computer-readable form of each of the specifications and / or functional requirements provided.

[0101] Additionally or alternatively, in step 121, multiple specifications of the instrument structure and / or multiple functional requirements of each component converted based on the metalanguage syntax and / or provided in a structured computer-readable form are divided into multiple corresponding sub-units to generate multiple blocks of multiple specifications of the instrument structure and / or generate multiple blocks of multiple functional requirements of each component, whereby the corresponding blocks are characterized by corresponding smaller data sizes as each specification in the relevant specifications of the instrument structure and / or each functional requirement in the relevant functional requirements of each component.

[0102] In a further step 123 of the method, at least one control concept 133 is provided, which relates to a plurality of components and / or subcomponents for controlling an industrial process, for example by means of a plain text describing a control statement 113 for automating the industrial process.

[0103] In another step 127 of the method, prompts 135 are generated for a first generative artificial intelligence model 140 configured for natural language processing based on at least a portion of the plurality of specifications of the appliance structure and / or at least a portion of the plurality of functional requirements for each component of the automated industrial process 131 in natural language form, and at least one control concept 133. Task instructions generated for the control logic of the first generative artificial intelligence model are added to the prompts 135.

[0104] In another step, the prompt 135 is provided to the first generative artificial intelligence model 140 , which may include an API 141 for the first generative artificial intelligence model 140 including the large language model 142 .

[0105] In another step, the generated control logic code 134 for executing the automated industrial process is provided by the first generative artificial intelligence model 140 based on the prompt 135 .

[0106] Additionally, generated hints 135 may be modified by natural language form 132 of at least a portion of the plurality of input / output descriptions 112 of components and / or subcomponents provided by processing step 122. This may more closely define the structure of the tool for improved control of the automated industrial process.

[0107] Additionally, the generated prompts 135 can be modified based on a natural language form of a provided control narrative 113, which includes a plurality of control concepts assigned to components and / or subcomponents for controlling an industrial process, where the natural language form can be provided by the process steps 123. This can more closely define the automated industrial process for improved control.

[0108] In a further step 125 , a first plurality of embeddings of at least part of the plurality of canonical chunks of the appliance structure may be generated by means of a third generative artificial intelligence model configured for natural language processing.

[0109] Additionally or alternatively, in step 125, a second plurality of embeddings of at least a portion of the plurality of chunks of the plurality of functional requirements of each component may be generated with the aid of a fourth generative artificial intelligence model configured for natural language processing. The first, second, third, and / or fourth generative artificial intelligence models may be the same generative artificial intelligence model, or they may be partially the same generative artificial intelligence model.

[0110] In a further step, the first plurality of embeddings and / or the second plurality of embeddings may be stored by database 126. Hints 135 may also be stored by database 126, in particular for use in similarity searches.

[0111] In another step, the prompt 135 provided to the first generative artificial intelligence model 140 and configured for natural language processing can be augmented by appending or adding matching blocks from the plurality of blocks of the specification of the appliance structure and / or by matching blocks from the plurality of blocks of the functional requirements of each component with at least one control concept associated with the plurality of components and / or subcomponents for controlling the industrial process. The matching of these blocks is based on a similarity search performed with the aid of a database, wherein the similarity search is performed using at least stored embeddings of the at least one control concept associated with the plurality of components and / or subcomponents for controlling the industrial process and the embeddings of the plurality of blocks of the specification of the appliance structure and / or the plurality of blocks of the functional requirements of each component.

[0112] Figure 2 A metalanguage grammar is schematically illustrated as a basis for converting multiple specifications of a tool structure and / or multiple functional requirements of each component.

[0113] Each object type's metalanguage grammar may include an introduction part 210 for defining the metalanguage grammar and an encoding part 220 based on the metalanguage grammar, wherein the encoding part 220 is dedicated to the specification of the device structure and / or the functional requirements of each component. In addition, the metalanguage grammar may include a conclusion part 230, which is also based on the metalanguage grammar and may include specific data such as general "public" device relationships. Figure 3 Give an example of this conversion.

[0114] Figure 3A scheme 300 for transforming a requirement artifact comprising a plurality of object classes using a metalanguage grammar is schematically illustrated, wherein the transformation is configured to preserve the semantic content of the requirement artifact. The requirement artifact may include a plurality of specifications of an apparatus structure for an automated industrial process comprising a plurality of components and / or subcomponents and / or a plurality of functional requirements for each component of the automated industrial process.

[0115] The transformation of the requirements artifact based on the metalanguage syntax can be performed by mapping a first plurality of metalanguage elements to structural elements of a plurality of specifications of an appliance structure in a provided structured computer-readable form and / or by mapping a second plurality of metalanguage elements to structural elements of a plurality of functional requirements for each component in a provided structured computer-readable form. The structural elements of the requirements artifact to be mapped to the metalanguage elements can be selected to preserve the semantic context of the requirements artifact and / or to reduce the data size of the requirements artifact.

[0116] The transformation based on the metalanguage grammar can be performed continuously for any object class included in the desired artifact.

[0117] An example of converting multiple specifications of a tool structure and / or multiple functional requirements of each component based on a metalanguage grammar may be a simple P&I diagram including a vessel VE1 , a pump P1 and a valve V1 .

[0118] The P&I diagram may be provided for conversion in an encoded manner (eg, YAML format, or XML format) or as a natural language text.

[0119] The vessel VE1 comprises an inlet conduit at the top of the vessel VE1 and an outlet conduit at the bottom of the vessel VE1 . The pump P1 is configured to pump from the vessel VE1 towards the valve V1 . The pump P1 is configured to pump in one direction only.

[0120] The resulting P&ID metalanguage blocks are explained for each component of the example P&ID. Based on the metalanguage grammar, the coding process can begin with the first section of the P&ID, starting with the object type "Container," and continue sequentially to cover each object categorized by the object class of the simple P&ID, such as: container, valve, and pump. This simple topology described by the P&ID can be converted using the following rules. First, an introduction or definition section 310 can be drafted, followed by coding sections 320, 330, and 340, which are drafted following the suggested engineering rules.

[0121] Figure 3 The introduction part 310 of the first frame shown can be, for example, a sentence or a metalanguage grammar definition, as an introduction to the converted P&ID:

[0122] “I would describe the process plant representation in natural language as a piping and instrumentation diagram.”

[0123] Then, starting with the metalanguage introduction 210, the container is transformed. The metalanguage introduction 210 can be formulated as follows:

[0124] "If I say 've' followed by a number, I mean the container. For example, container 1 means ve1."

[0125] The coding portion of the P&ID is concatenated with the introduction portion after the metalanguage introduction of the container 210. The coding portion 220 can be generated based on a machine-readable representation of the P&ID drafted using pseudocode:

[0126]

[0127] This results in the following output for the simple P&ID example above:

[0128] “Plant has ve1.”

[0129] This may be followed by a metalanguage conclusion 230 which for the example of a container is empty.

[0130] The coding method described for the container 320 can be applied accordingly to the valve element 330. This starts with the metalanguage introduction for the valve:

[0131] "If I say 'v' followed by a number, I mean valve. For example, valve 1 means v1."

[0132] The encoded generated valve data follows.

[0133] “Plant has v1.”

[0134] and empty metalinguistic conclusions.

[0135] The next step in the methodology may be to encode the pump, describing the encoding of the pump 340 .

[0136] introduce:

[0137] "If I say 'p' followed by a number, I mean pump. For example, pump 1 means p1".

[0138] Coded portion: "Plant has p1."

[0139] For example, a pump is an example of a conclusion part of a metalanguage, including some additional "rules" required for the device type, such as a rule describing the unidirectional pumping property of a pump.

[0140] "Also, the pump can only pump in one direction. A P1 pump forms ve1 to v1. The pump cannot run in the reverse direction."

[0141] This methodology can be continued for all other equipment components of the provided P&ID, as provided, also including non-physical elements such as process control requests and signal descriptions and signal links.

[0142] The last example describes the metalanguage and generated boxes used for pipelining:

[0143]

[0144] introduce:

[0145] "If I say 'component name 1' - 'component name 2', I mean the pipe connection between those components. For example, ve1-p1 means the pipe connection between vessel 1 and pump 1."

[0146] This methodology produces the following pseudocode:

[0147]

[0148] Finally, provide Figure 3 The rightmost "Metalanguage Conclusion 350 for P&ID" conclusion box. This can contain P&ID specific data, like general "common" equipment relationships, and can also be defined as typical "inflow" and "outflow / outflow" pumps and valves, for example. This can correspond to:

[0149] "The outflow valve of Ve1 is V1. The outflow pump of Ve1 is P1."

[0150] Furthermore, some general rules for media flow can be defined for the first generative AI model, such as:

[0151] "The medium can only flow between the containers if the pump is operating and the corresponding valves are open."

[0152] Figure 4 The steps of a method for generating control logic code for controlling an automated industrial process are schematically depicted, wherein some of these steps involve Figures 5 to 10 The graphical user interface shown.

[0153] In a first step 410, a P&ID drawing is provided as a first example of a desired workpiece for processing by the method and can be provided by the operator 110 by, for example, Figure 5 The first menu 510 of the graphical user interface 500 is shown to be particularly supervisory.

[0154] The provided P&ID diagram can be divided into a plurality of sub-units, such as pages, to generate a plurality of chunks of the content of the provided P&ID diagram. Alternatively or additionally, at least part of the plurality of chunks of the content of the P&ID diagram is converted into a natural language form, in particular based on a metalanguage grammar, wherein the semantic content of the individual chunks of the content of the P&ID diagram is retained. Embeddings of the plurality of condensed chunks of the content of the P&ID diagram resulting from the division and conversion are generated by an embedding encoder. The embeddings are stored in a database via embedding vectors, wherein the database comprises a vector database. The plurality of condensed chunks of the content of the P&ID diagram are associated with corresponding embedding vectors. This method has been described above.

[0155] In another step 420, as a second example of a required processing object, at least one I / O list is provided for processing by the method and can be provided by the operator 110 by, for example, Figure 6 The second menu 520 of the graphical user interface 500 is shown to be particularly supervisory.

[0156] The provided I / O list can be processed according to the detailed method described in relation to step 410 in relation to the P&ID diagram to generate an embedding vector based on the content chunks of the at least one I / O list. The embedding vectors of the content chunks of the at least one I / O list can be stored in a vector database.

[0157] In another step 430, a control statement is provided for processing by the method as a third example of a desired process object and can be controlled by the operator 110 by, for example, Figure 7 The third menu 530 of the graphical user interface 500 is shown to specifically supervise.

[0158] The provided control statement may be processed according to the detailed method, as described with respect to steps 410 and 420 .

[0159] In a further step 440 , as described with respect to steps 410 and 420 , further desired artifacts, such as description files, may be provided for processing by the method according to the detailed method.

[0160] In another step 450, prompts are generated for a first generative artificial intelligence model configured for natural language processing based on the natural language form of at least part of the desired workpiece provided by steps 410 to 440. The prompts are modified by the task specification to be provided to the first generative artificial intelligence model, the task specification describing the desired control logic to be generated. The generation of the prompts can be performed by the operator 110 in particular by, for example, Figure 8 A fourth menu 540 of the graphical user interface 500 is shown for supervision.

[0161] Perform a similarity search through the vector database and based on the embedding of the generated hint to search for chunks of the desired artifact that are related to the generated hint. Augment the hint with the chunks of the desired artifact provided by the similarity search. Figure 9 As shown, the results of the similarity search can be monitored by the operator 110 in particular via the fifth menu 550 of the graphical user interface 500 .

[0162] In another step 452, the operator 110 can view the expanded prompts via the sixth menu 560 of the graphical user interface 500 to decide in step 454 whether the expanded prompts appear sufficient to be provided to the first generative artificial intelligence model. If not considered sufficient, the expanded prompts can be expanded by additionally performing steps 410 to 452.

[0163] The method for generating control logic code for controlling an automated industrial process may be performed by continuously processing the method without any operator involvement, in particular without step 452 .

[0164] A calculation of the resulting token amount may be performed in step 460 to determine whether it is below the token limit of the first generative artificial intelligence model.

[0165] In case the calculated token amount exceeds the token limit, the steps of the method for generating the control logic code must be started again, including the steps of editing and / or adjusting and / or dividing the blocks of the requested artifact for expanding the prompt.

[0166] This means that, in the event that the number of tokens exceeds the token limit, the augmented prompt may be edited by additionally performing steps 410 to 452. Alternatively, the augmented prompt may be provided to another generative artificial intelligence model configured with a higher token limit.

[0167] In particular, the operator 110 may oversee the editing and / or adjustment and / or division of the blocks of the required artifact.

[0168] Where the number of tokens is below the token limit, in step 470 , the augmented hint is provided to the first generative artificial intelligence model to generate control logic code.

[0169] At step 480 , the operator 110 may use the generated control logic code to determine whether the generated control logic code meets expectations for simulation and / or process control, or initiate steps to edit and / or adjust and / or partition the blocks of the desired artifact to augment the prompt by executing the next iteration of steps 410 to 452 .

[0170] The method can be expanded to include the following steps: providing the operator 110 with a turn in the discussion with the first generative artificial intelligence model to generate control logic code through interaction of the first generative artificial intelligence model with the engineering tool, such as through a plug-in communicatively coupled to the first generative artificial intelligence model and interfacing with the API of the engineering tool, wherein the graphical user interface of the engineering tool is Figure 10 The right-hand side of is indicated alongside the graphical user interface 500 .

[0171] Figure 5 An example of a menu 510 of a graphical user interface 500 is illustrated, the menu 510 being configured to oversee the provision of a requested artifact with respect to a P&ID drawing, enabling selection of a portion 512 of the P&ID drawing, and / or a strategy 514 for dividing the P&ID drawing, and / or selection of a conversion strategy 516 for the P&ID drawing.

[0172] Figure 6 An example of a menu 520 of the graphical user interface 500 is illustrated, the menu 520 being configured to oversee the provision of requested artifacts regarding an I / O list, enabling selection of a file 522 associated with the I / O list, and / or selection of a partitioning strategy 524 for the I / O list, and / or selection of a conversion strategy 516 for the I / O list.

[0173] Figure 7 An example of a menu 530 of a graphical user interface 500 is illustrated, the menu 530 being configured to oversee the provision of a requirement artifact regarding a control narrative, enabling selection of a file 531 related to the control narrative, and / or for selecting a portion 532 of the requirement artifact related to the control narrative, and / or for selecting a clearing mode 533 and / or a strategy 534 for partitioning the requirement artifact regarding the control narrative.

[0174] The cleaning pattern may be formulated, for example, in terms of regular expressions.The example content 533 of the field may show a global replacement of some "parasitic" words by empty strings, ie their removal.

[0175] Additionally, the menu 530 may include a text field 536 displaying a control concept using natural language and another text field 535 displaying a task description for control logic generation.

[0176] Figure 8 An example of a menu 540 of the graphical user interface 500 is depicted, which is configured to display prompts using natural language via a text field 542 .

[0177] Figure 9An example of a graphical user interface 500 is depicted, which is configured to display the results of a similarity search performed on a database based on a prompt via a menu 550. List box 551 can be configured to display a block of P&ID diagrams used to expand the prompt. Another list box 552 of menu 550 can be configured to display a block of I / O lists used to expand the prompt. Another list box 553 can be configured to display a portion of a control description used to expand the prompt. In addition, another list box 544 of menu 550 can be configured to display at least a control concept of the control description. Graphic field 555 of menu 550 can be configured to display a graphical representation of the P&ID diagram. Menu 550 of graphical user interface 500 can be configured to display the results of a calculation of the number of tokens for the expanded prompt. In addition, menu 550 of graphical user interface 500 can be configured to provide a switch for selecting a specific first generative artificial intelligence model, such as GPT-3 or GPT-4.

[0178] Figure 10 An example of a graphical user interface 500 is depicted, which is configured to display a chat interface for the operator 110 to chat with the first generative artificial intelligence model through a menu 560. In addition to the graphical user interface 500, a graphical user interface 600 of engineering software can be provided to the user for providing a scheme 620 of a control code generated by the engineering software according to a control code programming language (e.g., IEC 61131-3).

Claims

1. A computer-implemented method (100) for generating control logic code (134) for controlling an automated industrial process by means of at least one programmable logic controller, the method comprising: providing a plurality of specifications (111) of an apparatus structure for said automated industrial process including a plurality of components and / or subcomponents; and / or providing a plurality of functional requirements (111) for each component of the automated industrial process; converting (121, 122, 123) the plurality of specifications (111) and / or the requirements (111) into a natural language form; wherein the semantic content of the plurality of specifications (111) and / or the requirements (111) is preserved; providing at least one control concept (113) associated with the plurality of components and / or the subcomponents for controlling the industrial process; generating (127) prompts (135) for a first generative artificial intelligence model (140) configured for natural language processing based on at least a portion of the plurality of specifications (111) of appliance structures and / or at least a portion of the plurality of functional requirements (111) of each component of the automated industrial process in natural language form, the at least one control concept (113), and a task description for control logic generation; providing the prompt (135) to the first generative artificial intelligence model (140); and The control logic code (134) for executing the automated industrial process is generated based on the provided prompt (135) with the help of the first generative artificial intelligence model (140).

2. The method (100) according to claim 1, wherein the plurality of specifications (111) of the appliance structure and / or the plurality of functional requirements (111) of each component are provided in a structured computer-readable form.

3. The method (100) according to claim 1 or 2, comprising: providing a description of the plurality of specifications (111) of the appliance structure and / or the plurality of functional requirements (111) of each component in a metalanguage grammar (200), wherein the metalanguage grammar (200) is based on a natural language; The multiple specifications (111) of the device structure and / or the multiple functional requirements (111) of each component are converted (121, 122, 123) into a natural language form based on the metalanguage grammar (200), wherein the semantic content of at least part of the multiple specifications of the device structure and / or at least part of the multiple functional requirements of each component is preserved.

4. A method (100) according to claim 3, wherein the amount of data of each of the multiple specifications (111) of the device structure converted based on the metalanguage grammar (200), and / or each of the multiple functional requirements (111) of each component converted based on the metalanguage grammar (200) is reduced relative to the structured computer-readable form of each of the specifications (111) and / or the functional requirements (111) provided.

5. A method according to claim 3 or 4, wherein the multiple specifications (111) of the instrument structure and / or the multiple functional requirements (111) of each component converted (121, 122, 123) based on the metalanguage (200) include an introduction part (210) and a coding part (220), wherein the introduction part is used to define the metalanguage grammar and the coding part is dedicated to the specifications (111) of the instrument structure and / or the functional requirements (111) of each component.

6. A method (100) according to any one of claims 3 to 5, wherein the metalanguage grammar (200) is configured to preserve the semantic content of the multiple specifications (135) of the instrument structure and / or the multiple functional requirements (111) of each component by mapping a first plurality of metalanguage elements to structural elements of the multiple specifications (111) of the instrument structure in a provided structured computer-readable form and / or by mapping a second plurality of metalanguage elements to structural elements of the multiple functional requirements (111) of each component in a provided structured computer-readable form.

7. The method (100) according to any one of claims 3 to 6, wherein the conversion (121, 122, 123) based on the metalanguage grammar (200) is performed continuously for any object class included in the multiple specifications (111) of the device structure and / or the multiple functional requirements (111) of each component.

8. A method (100) according to any one of the preceding claims, wherein the multiple specifications (111) of the device structure and / or the multiple functional requirements (111) of each component converted (121, 122, 123) based on the metalanguage grammar (200) and / or provided in a structured computer-readable form are divided into multiple corresponding sub-units to generate multiple blocks of the multiple specifications (111) of the device structure and / or generate multiple blocks of the multiple functional requirements (111) of each component, whereby the corresponding blocks are characterized by corresponding smaller data sizes as each specification in the relevant specifications of the device structure and / or each functional requirement in the relevant functional requirements of each component.

9. A method (100) according to any one of the preceding claims, wherein the multiple specifications (111) of the device structure and / or the multiple functional requirements (111) of each component converted (121, 122, 123) based on the metalanguage grammar (200) and / or provided in a structured computer-readable form are compressed based on the summary with respect to their data size, the compression being performed with the aid of a second generative artificial intelligence model configured for natural language processing.

10. A method (100) according to any one of the preceding claims, wherein the prompt (135) is generated based on a plurality of input / output descriptions (112) of at least part of the component and / or the subcomponent provided in natural language form, and / or wherein the prompt (135) is generated based on a control narrative (113) provided in natural language form, the control narrative comprising a plurality of control concepts assigned to the component and / or the subcomponent for controlling the industrial process.

11. The method (100) according to any one of the preceding claims, comprising generating (125) a first plurality of embeddings of at least a portion of the plurality of chunks of the plurality of specifications of the apparatus structure with the aid of a third generative artificial intelligence model configured for natural language processing; and / or generating (125) a second plurality of embeddings of at least a portion of the plurality of chunks of the plurality of functional requirements for each component with the aid of a fourth generative artificial intelligence model configured for natural language processing; storing, by means of a database (126), the first plurality of embeddings and / or the second plurality of embeddings; as well as The hint (135) for the first generative artificial intelligence model (140) configured for natural language processing is augmented by appending or adding matching blocks of the plurality of blocks of the specification of the appliance structure and embeddings of at least one control concept (113) associated with the plurality of components and / or the subcomponents for controlling the industrial process, and / or by adding matching blocks of the plurality of blocks of the functional requirements of each component and embeddings of at least one control concept associated with the plurality of components and / or the subcomponents for controlling the industrial process, wherein the matching is performed based on a similarity search performed with the help of the database (125).

12. The method (100) according to any one of the preceding claims, comprising: Editing and / or modification and / or changes performed by the operator via the interface: generating said prompt (135) for said first generative artificial intelligence model (140); and / or mapping said first plurality of metalanguage elements to structural elements of said plurality of canonical structured computer-readable forms of said provided appliance structure; and / or mapping said second plurality of metalanguage elements to structural elements of the structured computer-readable form of said plurality of functional requirements for each component provided; and / or dividing the plurality of specifications (111) of the instrument structure to generate a plurality of chunks of the plurality of specifications of the instrument structure; and / or dividing the plurality of functional requirements of each component (111) to generate a plurality of blocks of the plurality of functional requirements of each component; and / or Compressing the plurality of specifications (111) of the appliance structure based on a digest; and / or The plurality of functional requirements of each component are compressed based on the summary (111).

13. A method for constructing a controller for controlling an automated industrial process, the method comprising: The method according to any of the preceding claims, generating control logic code (134) for controlling an automated industrial process by means of at least one programmable logic controller; and The control logic code (134) is loaded into a programmable logic controller.

14. A controller comprising: Programmable logic controllers; a database and / or repository (150) coupled to the programmable logic controller; an interface that is signally coupled to the programmable logic controller; and wherein the interface is configured to be signally coupled to a plurality of components and / or subcomponents of an automated industrial process system; and wherein The controller is configured to control the automated industrial process based on control logic code (134), the control logic code being generated by the method according to any one of claims 1 to 13.

15. An encoding device for generating a control logic code (134), comprising: a first interface configured to receive a plurality of specifications (111) of an appliance structure for an automated industrial process; and / or configured to receive at least one control concept (113) related to a plurality of components of said automated industrial process; a data processing device signally coupled to the first interface; A second interface is signally coupled to the data processing device, wherein the second interface is capable of being coupled to a first generative artificial intelligence model (140) configured for natural language processing; wherein the encoding device includes means for performing one of the methods according to claims 1 to 13 and / or the encoding device is configured to perform one of the methods according to claims 1 to 13.

16. Use of a metalanguage for converting a specification (111) of an apparatus structure and / or the functional requirements (111) of each component into a natural language form, wherein the semantic content of the specification (111) of the apparatus structure and / or the functional requirements (111) of each component is retained, for generating control logic code (134) for an automated industrial process according to the method described in any one of claims 1 to 12.

Citation Information

Cited By

  • Code generation method and device, equipment and storage medium

    CN121477769A