Aiding the configuration of industrial equipment with generative machine learning models

A generative machine learning model aids in configuring industrial equipment by combining technical documentation and configuration files, addressing complexity and time inefficiencies in the configuration process.

WO2026017255A1PCT designated stage Publication Date: 2026-01-22ABB (SCHWEIZ) AG
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2024/070390
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-18
Publication Date
2026-01-22

AI Technical Summary

Technical Problem

The process of configuring industrial equipment, such as robots, is complex and time-consuming due to the need to modify multiple configuration files, requiring extensive manual searching and trial-and-error, even with available user manuals and software tools.

Method used

A method utilizing a generative machine learning model (GMLM) that generates configuration information and instructions by combining pertinent technical documentation and existing configuration files, reducing the need for manual effort and improving accuracy.

Benefits of technology

Facilitates efficient and accurate configuration of industrial equipment by generating targeted and plausible configuration files and instructions, reducing the time and effort required for commissioning or recommissioning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2024070390_22012026_PF_FP_ABST
    Figure EP2024070390_22012026_PF_FP_ABST
Patent Text Reader

Abstract

A method (100) for generating configuration information (2a) for performing a configuration task of a piece (1) of industrial equipment, and / or instructions (2b) how to perform a configuration task (3) on a piece (1) of industrial equipment, comprising the steps of: obtaining (110) a query (4) that is indicative of the configuration task (3); selecting (120), based on the query (4), from a repository (5) of technical documentation covering the type of the piece of industrial equipment, and / or a superclass of this type, at least one documentation portion (5a) that is pertinent to the query (4); obtaining (130) at least one existing configuration file (6) for the concrete piece (1) of industrial equipment, and / or for a piece (1) of industrial equipment of the same or a sufficiently similar type and / or superclass; providing (140) at least the selected documentation portion (5a) and the existing configuration file (6) to a generative machine learning model, GMLM (7), as inputs (7a); and generating (150) the sought configuration information (2a), and / or the sought instructions (2b), from the output (7b) of the GMLM (7).
Need to check novelty before this filing date? Find Prior Art

Description

[0001] AIDING THE CONFIGURATION OF INDUSTRIAL EQUIPMENT WITH GENERATIVE MACHINE LEARNING MODELS

[0002] FIELD OF THE INVENTION

[0003] The invention relates to the configuring of industrial equipment, such as robots, with the aid of a machine learning model. p

[0004] BACKGROUND

[0005] During the commissioning phase of a robotic application, the robot control systems are usually configured by one or multiple files to set-up the controller and its interfaces and to define application specific parameters.

[0006] Even relatively small modifications to a robot system during commissioning (or recommissioning) can become quite complex and time consuming because required modifications may affect multiple configuration files.

[0007] The commissioning engineer is supported by a large number of user manuals and different software tools or pre-defined configuration files / templates, yet quite some know-how is needed to find the relevant information, potentially resulting in the user spending a large amount of effort on searching in the technical documentation / configuration files and rely on try and error to commission the system.

[0008] OBJECTIVE OF THE INVENTION

[0009] It is therefore an objective of the present invention to facilitate the configuring of industrial equipment based on a given set of technical documentation that is pertinent to the equipment and / or its configuration.

[0010] This objective is achieved by a method according to the independent claim. Further advantageous embodiments are detailed in the dependent claims. DISCLOSURE OF THE INVENTION

[0011] The invention provides a method for generating configuration information for performing a configuration task of a piece of industrial equipment, and / or instructions how to perform a configuration task on a piece of industrial equipment. The configuration information may be any information that can be used by the piece of industrial equipment, and / or by an operator, and aids configuring this piece of industrial equipment. For example, the configuration information may comprise

[0012] • a ready-to-use configuration file that the piece of industrial equipment can understand and / or process;

[0013] • a precursor for such a configuration file; or

[0014] • a plurality of several configuration files.

[0015] Instructions how to perform a configuration task may, in particular, comprise step by step instructions. In particular, these instructions may also comprise actions that need to be performed by an operator because there is no practical way to perform them automatically. For example, the instruction may comprise actions such as, “put an ND9 filter onto the camera objective” or “align the manipulator arm with its mounting socket until the marking on the arm is flush with the corresponding marking on the socket, then tighten the screws”. That is, the instructions may form a custom manual for a particular configuration task. Such a custom manual is much more concise than the original technical documentation. The concise instructions therein may, for example, be telephoned or radioed to an operator who performs the actions. That is, one possible use case of the method is telephone customer support for the configuration of pieces of industrial equipment.

[0016] In the course of the method, a query that is indicative of the configuration task is obtained. For example, this query may be inputted by an operator who has been given the configuration task. Examples for such queries include:

[0017] • “I want to commission an IRB1100 robot with a suction gripper, and a vision system, that moves on a collision free path ...”,

[0018] • “I need to continuously supervise signals, even when my main program is not running on my OmniCore controller.”, and

[0019] • “I need to add output signals, so I am able to open and close a gripper.” Based on the query, at least one documentation portion that is pertinent to the query is selected from a repository of technical documentation covering the type of the piece of industrial equipment, and / or a superclass of this type. The repository may, for example, be a collection of documents stored in any suitable form, such as a folder structure, a database or a knowledge graph that facilitates the retrieval of particular pieces of information. But in a simple form, the repository may also be a single document that comprises the whole technical documentation. Typically, multiple documents are relevant and need to be consulted for a single configuration task.

[0020] Furthermore, at least one existing configuration file for the concrete piece of industrial equipment, and / or for a piece of industrial equipment of the same type and / or superclass, is obtained. For example, this configuration file may represent a current state of the configuration of the piece of industrial equipment that is to be modified in the course of the configuration task. But the configuration file may also serve as a mere template indicating the syntax, the available options, or other generic properties of valid configuration files. That is, the configuration file may be an empty or default configuration file as well. Also, even if some information is missing in the configuration file, if this relates to a piece of equipment that is at least similar enough to the piece of equipment that is to be configured, it may still be very helpful.

[0021] In one example, the existing configuration file may be selected from a plurality of existing configuration files based at least in part on the selected documentation portion. In this manner, because the selection of the documentation portion is dependent on the query, the existing configuration file may be chosen to be more pertinent to the query. For example, there may be many configuration files for robots with or without particular optional subsystems. If the query and the selected documentation portion relate to the use of one particular subsystem, such as a gripper, then an existing configuration file that relates to a robot with such a gripper is more pertinent than another configuration file that relates to a robot with multiple other optional subsystems but no gripper.

[0022] At least the selected documentation portion and the existing configuration file are provided to a generative machine learning model, GMLM, as inputs. This GMLM may, for example, be a large language model, LLM, that is configured to iteratively predict next words of text sequences. In particular, a LLM may be trained on huge datasets of publicly available textual information, with or without a fine-tuning in the industrial domain. Such generically trained, very large models are also termed “foundation models” because they serve as a foundation for many different applications.

[0023] The original query may also be provided to the GMLM as an additional input. This may point the GMLM further into the direction of what is needed to accomplish the given configuration task. But this is not required. Rather, the combination of the documentation portion that has been selected based on the query on the one hand, and the existing configuration file on the other hand, may already be enough to generate configuration information, and / or instructions for performing the configuration.

[0024] From the output of the GMLM, the sought configuration information, and / or the sought instructions, are generated.

[0025] In the example presented above, where the query is “I want to commission an IRB1100 robot with a suction gripper, and a vision system, that moves on a collision free path ...”, the instructions may be of the form:

[0026] 1. Adjust system options as follows: ...

[0027] 2. Setup tasks by loading the following file *.pgf

[0028] 3. Adjust configuration file *.cfg and load to controller

[0029] 4. Adjust your robot program in *.mod by using WIZARD or RAPID coding.

[0030] In the example presented above, where the initial query is “I need to continuously supervise signals, even when my main program is not running on my OmniCore controller.”, the dialogue may continue as follows:

[0031] GMLM: I propose to use a background task in RAPID for this. Do you have the right option installed (Multitasking 3114-1)? If you upload your latest backup, I can check this for you.

[0032] Operator: Uploading backup

[0033] GMLM: I checked your backup and you got all you need. I would propose a background task named “IJOCheck” which will run continuously and cannot be used for robot movement. If OK with you, I can upload the configuration directly to your robot controller.

[0034] Operator: OK That is, the configuration information and / or instructions generated from the output of the GMLM need not yet be everything that is needed to complete the configuration task. It is already helpful if a part of the configuration task can be accomplished with the generated configuration information and / or instructions. As the example above shows, it is even helpful if the instructions just point the operator into the direction of how to solve the configuration task: Once the operator has been advised of the multitasking option, it may be straight-forward to work out the rest.

[0035] Selecting a document from a repository and using this as input for the GMLM has an effect that is similar to that of the “retrieval-augmented generation” (RAG) method. Using a configuration file as a further input has an effect that is similar to that of the “few-shot learning by example” method. The combination of the two inputs has the surprising effect of facilitating the generation of the sought configuration information, respectively of the sought instructions, while at the same time improving the quality of the output:

[0036] The pre-selecting of information from the repository reduces the size of the input that the GMLM needs to process. Many GMLM architectures have limits as to the size of the input, so freeing the input from unnecessary ballast allows to use more architectures for the job. Also, the size of the input determines how much memory and computation time is needed. If the model is used on a pay-per-use basis (e.g., as provided by the Amazon Bedrock service), the cost is directly related to the size of the input.

[0037] Also, the pre-selection reduces the risk that the GMLM “hallucinates”, i.e. , produces an output that is not relevant, or not even true, when faced with a question that it cannot answer.

[0038] The use of the configuration file also serves to reduce the risk of a hallucination because it may serve as an example to follow.

[0039] In an example where the configuration task comprises modifying an existing configuration to change a particular setting to a new value, the combination of technical documentation and a configuration file works particularly well hand in hand. Providing only the configuration file to the GMLM might not yield a satisfactory output because the GMLM might find the setting in the configuration file, but lack knowledge about which value to change it to. E.g., the GMLM would not know whether a timeout value that is mentioned in the configuration file with an entry “Timeout = 20” is expressed in seconds or in milliseconds, or whether the optimal cycle mode for a robot is to be specified as “optimal_cycle_mode” or “optimal_cycle_time_mode”. Providing only the technical documentation to the GMLM might not yield a satisfactory result either because the GMLM might lack knowledge of the syntax of the configuration file. Even if the technical documentation explains the syntax regarding the particular option to be changed, the GMLM might, e.g., not know which statements must be present in every configuration file to make it a valid configuration file. Having the correct statement for changing the desired setting to a new value in the configuration file is not of much use if the configuration file as a whole is rejected for being incomplete or otherwise invalid. Using the combination of the technical documentation and the configuration file as inputs greatly increases the probability that the end result will be a configuration file that, when applied to the piece of industrial equipment, will actually cause what is intended.

[0040] Furthermore, in the present industrial use case, the use of the configuration file may drive the GMLM towards generating an output that is appropriate not for just any instance of a piece of equipment and its use, but for one particular instance and its use. In industrial plants, it frequently happens that

[0041] • of one particular type of equipment (such as pumps, valve, controllers, robots, conveyors, grippers, cameras, feeders or PLCs), there are very many instances that differ very much in their function across the plant; and / or

[0042] • one particular piece of equipment, such as a robot, is recommissioned for different uses multiple times because it is too bulky, and / or too expensive, to have separate instances of this piece of equipment for each such use.

[0043] In a particularly advantageous embodiment, the selected documentation portion is provided to the GMLM as context information, and the existing configuration file is provided to the GMLM as part of a question asked to the GMLM, and / or as part of an example presented to the GMLM. This allows the GMLM to distinguish between generic information in the documentation on the one hand, and information that is more related to the concrete configuration task on the other hand. In a further particularly advantageous embodiment, the piece of industrial equipment is a robot, and / or a component of a robot, and / or a robot system. Herein, a robot may be any machine that is able to carry out a complex motion, and in particular a sequence of actions, automatically. A robot system may comprise the robot itself and also accessory parts mounted on the robot, such as grippers or manipulator arms. A robot system may also comprise more equipment that is needed for operating the robot, such as PLCs or other controllers, grippers, laser scanners, cameras or feeders. For robots and robot systems, it is quite common that they are recommissioned to different tasks fairly frequently. At the same time, the process is quite cumbersome to accomplish manually. A plurality of manuals need to be consulted, wherein some manuals are relevant to a wider class of robots or even also to devices other than robots, and other manuals are relevant only to one particular robot or even a particular subsystem of this robot (such as a manipulator arm). It is time-consuming and error-prone to gather all information that is pertinent for a given configuration task from these diverse sources. The set of manuals is somewhat analogous to a stack of transparencies with different pieces of information: Putting the transparencies on top of each other causes these pieces of information to complement each other, making the big picture visible. That is, each manual = transparency fills additional space in the big picture, and there may be partial overlap, but information from one manual = transparency is usually not superseded by information from another manual = transparency.

[0044] In a further particularly advantageous embodiment, a generated configuration file that has been generated as configuration information is uploaded to a controller of the piece of industrial equipment. In this manner, if the controller is connected to a physical instance of the piece of industrial equipment, the information contained in the configuration file may be put into practice in that it modifies the behavior of the piece of industrial equipment as intended. In particular, it may be tested whether the configuration file will cause what is intended: if the controller does not accept the configuration file, it may be determined that the configuration file still needs amending. For such tests, besides a real controller, a virtual controller, e.g., a “digital twin” of a real controller, may be used. Virtual controllers can be spawned very quickly at negligible cost, so they are advantageous for the testing of a large number of candidate configuration files. Thus, in a further particularly advantageous embodiment, the controller is a virtual controller instance that serves to test the generated configuration file as configuration information. Therefore, in a further particularly advantageous embodiment, feedback that the controller has produced in response to the uploading of the generated configuration file is received. At least this feedback is provided to the GMLM, so that the GMLM produces a further output. Based on this further output, it is determined whether an update to the generated configuration information is necessary. In one example, the controller may output an error message indicating that the configuration file is incomplete, syntactically incorrect, or otherwise deficient. In this case, it may be determined that an update to the generated configuration file is necessary. In response to this, the GMLM may then work out a remedy as an update to the configuration file. In another example, the controller may output routine information that results from processing the configuration file in the normal manner, or even just a simple acknowledgement message saying that the configuration file is OK. In this case, no update to the configuration file is necessary. For example, feedback may comprise event messages or start-up scripts. The feedback may also be used to further enrich the repository of documentation, and / or fine tune the GMLM.

[0045] That is, in a further particularly advantageous embodiment, from the output of the GMLM obtained in response to the feedback, an updated version of the configuration information is determined. In particular, in this determining, the help of the GMLM may be enlisted in any suitable manner, and to any suitable degree, up to the point that the GMLM generates the updated version of the configuration information.

[0046] In the example presented above where the GMLM proposes to create a background task named “IJOCheck”, the controller may output the error message “Incorrect task name”. When this feedback is provided back to the GMLM, and the GMLM is also provided a documentation portion on the multitasking option to which the error message relates, the GMLM may encounter a specification in this documentation portion that the task name must not start with a digit. In the updated version of the configuration information, the GMLM may then correct the task name “IJOCheck” to something that meets this requirement, such as “MylOCheck”.

[0047] As discussed before, in a further particularly advantageous embodiment, the to-be- generated configuration information, and / or the to-be-generated instructions, are specifically for the commissioning of the piece of industrial equipment to a given task, and / or for the recommissioning of the piece of industrial equipment from a first task to a second task. The overall time for the performing of the task comprises, on top of the time for the task itself, the commissioning or recommissioning of the piece of industrial equipment to this task. By speeding up the commissioning or recommissioning, this overall time is reduced, and the overall performance of the piece of industrial equipment is increased.

[0048] In a further particularly advantageous embodiment, it is checked whether the generated instructions, and / or the generated configuration information, are plausible. This may be done using any kind of knowledge. For example, the generated instructions, and / or the generated configuration information, may be directly checked against this knowledge. But they may also be indirectly checked by observing the behavior of the piece of industrial equipment, e.g., when carrying out a test task. If the generated instructions, and / or the generated configuration information, turn out to be plausible, the generated instructions are executed on the piece of the industrial equipment, respectively the generated configuration information (such as a configuration file) is applied on the piece of industrial equipment, so as to perform the given configuration task. The end result is that the piece of industrial equipment is configured as per the intention of the given configuration task.

[0049] In one example, it may be determined that the generated instruction, respectively the generated configuration information, is not plausible in response to determining that a set-point value or other value of a quantity is mentioned in a generated instruction and / or in generated configuration information with a wrong unit. For example, if the generated configuration information mentions that the set-point value of a pressure is 5 volts, this is clearly not plausible. In another example, if a velocity is set to 1000 mm / s but transferred without unit as ,,1000“ to a receiver that expects the velocity in m / s, this factor of 1000 might be very dangerous. At best, there is no motion because 1000 m / s cannot be realized. At worst, there is motion at the maximum possible speed.

[0050] Likewise, it may be determined that the generated instruction, respectively the generated configuration information, is not plausible in response to determining that a set-point value or other value of a quantity mentioned in a generated instruction, and / or in generated configuration information, is outside of a predetermined range. For example, in any given plant, there are set-point values or other values that are bounded by given limits. For example, a pressure set-point value cannot be negative and must be within a prescribed range. In particular, the pressure set-point value cannot be above the maximum permissible pressure for the vessel that shall hold this pressure. In another example, a variable that holds the operating mode of a robot may only take one of a few discrete textual values that correspond to the available operating modes. In this case, the range of plausible values corresponds to the set of available textual values.

[0051] In particular, the check of set-point values or other values of a quantity as to the unit may go hand in hand with the check as to the numeric value. For example, if the GMLM thinks that a set-point value for a pressure shall be given in pounds per square inch (psi), while the piece of industrial equipment really expects a value that is given in bar, then it is likely that both the unit and the numeric value will be flagged as not plausible.

[0052] Also, it may be determined that the generated instruction, respectively the generated configuration information, is not plausible in response to determining that the executing of a generated instruction, and / or the applying of generated configuration information, will not move the given configuration task forward. For example, if the configuration task is to change the operating mode of a robot, but the configuration file proposes to write the new operating mode to a variable that contains the hostname of the robot on a local network, then this changing of the hostname will clearly not change the operating mode as desired.

[0053] Instructions for performing the configuration task, which are meant to be understood by an operator, are easier to check for plausibility than configuration files that are meant to be understood by the piece of industrial equipment or a controller associated with it.

[0054] For example, if the GMLM hallucinates and outputs the instruction “please fill a beaker with water and pour it into the PLC”, the operator would certainly not do that.

[0055] In a further particularly advantageous embodiment, from the existing configuration file that is supplied as input, a desired format of the output of the GMLM is determined. This desired format of the output is provided to the GMLM. In this manner, the risk of hallucination of the GMLM is reduced further. Many invalid outputs violate the desired format and can therefore be directly recognized as invalid before they are processed further. Also, the supplying of the desired format may directly entice the GMLM to supply the correct information. This is in some way analogous to official forms with which information is collected from citizens: If there is a field for a bank account number, the citizen is reminded to write it on the form.

[0056] In a further particularly advantageous embodiment, the repository of documentation comprises at least

[0057] • a first document that relates to a class of pieces of industrial equipment to which the piece of industrial equipment belongs; and

[0058] • a second document that is specific to the type of the piece of industrial equipment; and / or to the concrete instance of the piece of industrial equipment.

[0059] In particular, the first and second documents may comprise user manuals. User manuals need not be limited to information relating to a concrete piece of industrial equipment. Rather, they may also comprise information relating to function packages, software tools, programming languages, and safety considerations linked to one or more pieces of industrial equipment.

[0060] As discussed before, the technical documentation of many pieces of industrial equipment, and in particular of robots, is organized in this manner. The advantage of this is that the documentation is less redundant: if something is relevant for all robots, it needs to be written in the documentation for all robots (and updated later if necessary) only once, rather than augmenting the bulk of each and every documentation for an individual robot. The downside of this is that the information that is relevant for the configuration of one individual robot is scattered over multiple manuals. All these manuals need to be consulted, and it is quite cumbersome to assemble the required information from them.

[0061] In a further particularly advantageous embodiment, the repository of documentation further comprises at least a third document that is specific to a subsystem of the piece of industrial equipment. Many pieces of industrial equipment are built in a modular manner with an indispensable base and multiple optional subsystems. In this case, if a particular optional subsystem is not present in a concrete instance of the piece of equipment, then there is no need to consult the documentation on this absent subsystem. This comes at the price that more manuals need to be consulted. The present method allows to consider such additional documentation without having to manually gather the information from all available documentation.

[0062] The naming of a “first”, “second” and “third” document is not to be understood limiting in the sense that the repository comprises only three documents. Rather, this naming is to signify that the repository comprises at least one document each of a first, second and third type or class, respectively.

[0063] In a further particularly advantageous embodiment, the documentation portion is provided to the GMLM as an indication of available configuration options and values of these configuration options. The at least one configuration file is provided to the GMLM as an indication of the syntax of the configuration file. As discussed before, the configuration file can particularly serve as an indication what a configuration file as a whole must contain in order to be recognized as valid. That is, the existing configuration file may serve as an indication of the syntax of the to-be-generated configuration information. A check of the syntax of the generated configuration information may be performed by uploading the configuration information to a controller as discussed above, but also, for example, by a simple syntax checker. In addition, there may be many relevant source of syntax information besides examples. Take, for example, the concept of the XML schema file to validate an XML file with respect to syntax. For programming languages, there is the possibility of providing the Backus- Naur form of syntax specification.

[0064] Because it is computer-implemented, the present method may be embodied in the form of a software. The invention therefore also relates to a computer program with machine-readable instructions that, when executed by one or more computers and / or compute instances, cause the one or more computers and / or compute instances to perform the method described above. Examples for compute instances include virtual machines, containers or serverless execution environments in a cloud. The invention also relates to a machine-readable data carrier and / or a download product with the computer program. A download product is a digital product with the computer program that may, e.g., be sold in an online shop for immediate fulfilment and download to one or more computers. The invention also relates to one or more compute instances with the computer program, and / or with the machine-readable data carrier and / or download product. DESCRIPTION OF THE FIGURES

[0065] In the following, the invention is described using Figures without any intention to limit the scope of the invention. The Figures show:

[0066] Figure 1 : Exemplary embodiment of the method 100 for generating configuration information 2a, and / or instructions 2b how to perform a configuration task 3;

[0067] Figure 2: Illustration of the assembling of the input 7a to the GMLM 7 and of how to process feedback 8 from a controller 1a;

[0068] Figure 3: Illustration of an embodiment where an existing configuration file 6* is preselected based on the selected documentation portion 5a.

[0069] Figure 1 is a schematic flow chart of an embodiment of the method 100 for generating configuration information 2a for performing a configuration task of a piece 1 of industrial equipment, and / or instructions 2b how to perform a configuration task 3 on a piece 1 of industrial equipment. The method starts from a situation where the task 3 to configure a piece 1 of industrial equipment is given.

[0070] In step 110, a query that is indicative of the configuration task 3 is obtained. As discussed before, this query may be supplied by an operator, but it may also be generated automatically. For example, as it will be discussed further below, if a previous attempt to generate configuration information 2a did not result in viable configuration information 2a, the query 4 may relate to how to correct any problems and / or errors that became apparent in that attempt.

[0071] In step 120, based on the query 4 at least one documentation portion 5a that is pertinent to the query 4 is selected from a repository 5 of technical documentation covering the type of the piece of industrial equipment, and / or a superclass of this type.

[0072] According to block 121, the repository 5 of documentation may comprise at least

[0073] • a first document that relates to a class of pieces 1 of industrial equipment to which the piece 1 of industrial equipment belongs; and a second document that is specific to the type of the piece 1 of industrial equipment; and / or to the concrete instance of the piece 1 of industrial equipment.

[0074] According to block 121a, the repository 5 of documentation may further comprise at least a third document that is specific to a subsystem of the piece 1 of industrial equipment.

[0075] In step 130, at least one existing configuration file 6 for the concrete piece 1 of industrial equipment, and / or for a piece 1 of industrial equipment of the same type and / or superclass, is obtained.

[0076] According to block 131 , a configuration file 6* may be selected from a plurality of existing configuration files 6 based at least in part on the selected documentation portion 5a.

[0077] In step 140, at least the selected documentation portion 5a and the existing configuration file 6 are provided to a generative machine learning model, GMLM 7, as inputs 7a.

[0078] According to block 141, the selected documentation portion 5a may be provided to the GMLM 7 as context information, and the existing configuration file 6 may be provided to the GMLM 7 as part of a question asked to the GMLM, and / or as part of an example presented to the GMLM 7.

[0079] According to block 142, a desired format 7b* of the output 7b of the GMLM 7 may be determined from the existing configuration file 6. According to block 143, this desired format 7b* of the output may then be provided to the GMLM 7.

[0080] According to block 144, the documentation portion 5a may be provided to the GMLM 7 as an indication of available configuration options and values of these configuration options. According to block 145, the at least one configuration file 6 may then be provided to the GMLM 7 as an indication of the syntax of the configuration file 6, 2a. According to block 146, the query 4 may also be provided to the GMLM 7 as an input 7a.

[0081] In step 150, the sought configuration information 2a, and / or the sought instructions 2b, are generated from the output 7b of the GMLM 7. For example, the GMLM 7 may directly output this configuration information 2a, and / or these instructions 2b.

[0082] According to block 151, the to-be-generated configuration information 2a, and / or the to- be-generated instructions 2b, may specifically be for the commissioning of the piece 1 of industrial equipment to a given task, and / or for the recommissioning of the piece 1 of industrial equipment from a first task to a second task.

[0083] The configuration information 2a, and / or the instructions 2b, obtained as described above may then be used in any suitable manner in the context of the piece 1 of industrial equipment, and / or in the context of the industrial plant where this piece 1 of industrial equipment is being used.

[0084] In the example shown in Figure 1 , in step 160, a generated configuration file as configuration information 2a is uploaded to a controller 1a of the piece 1 of industrial equipment. In step 170, feedback 8 in response to the uploading of the generated configuration file 2a is received from the controller 1a. This feedback 8 is provided to the GMLM 7 in step 180. In step 190, based on the so-obtained output 7c of the GMLM 7, it is then determined whether an update 2a* to the generated configuration information 2a is necessary. If this determining is positive (truth value 1), in step 200, an updated version 2a* of the configuration information 2a is determined from the output 7c of the GMLM 7 obtained in response to the feedback 8. For example, this may be done by creating a new query 4 that relates to the to-be-corrected problem, such as the issuance of an error message by the controller 1a.

[0085] In the example shown in Figure 1 , in step 210, it is checked whether the generated instructions 2b, and / or the generated configuration information 2a, are plausible. If the generated instructions 2b, and / or the generated configuration information (2a), turn out to be plausible, in step 220, the generated instructions 2b may be executed on the piece 1 of the industrial equipment. Likewise, in step 230, the generated configuration information 2a may be applied to the piece 1 of industrial equipment, so as to perform the given configuration task 3. If, however, the generated instructions 2b, and / or the generated configuration information 2a, are not plausible, they may be disregarded. Optionally, this finding may also give rise to a new query 4 with the goal of obtaining new generated instructions 2b, and / or new generated configuration information 2a, that are plausible.

[0086] The uploading to the controller 1a according to step 160 on the one hand, and the checking for plausibility according to step 210 on the other hand, may also be cascaded. For example, once configuration information 2a has been found to be prima facie plausible in step 210, it may still be uploaded to the controller 1a in step 160 to see if it does what it should do.

[0087] Figure 2 illustrates how the input 7a to the GMLM 7 may be assembled.

[0088] An operator O has a given configuration task 3 on the given piece 1 of industrial equipment. Starting from this configuration task 3, the operator O formulates a query 4. Based on this query 4, the repository 5 of technical documentation is queried for a relevant documentation portion 5a. This selected documentation portion 5a, the original query 4, and an existing configuration file 6 together form the input 7a to the GMLM 7.

[0089] From the output 7b of the GMLM 7, configuration information 2a, and / or instructions 2b for performing the configuration task 3, are determined. Configuration information 2a may be provided to the controller 1a of the piece 1 of industrial equipment. Any feedback 8 obtained from this controller 1a may be used for fine-tuning the GMLM 7, and / or for enriching the documentation repository 5. This is done by means of respective APIs.

[0090] Figure 3 illustrates another exemplary embodiment. Here, for clarity, it is shown that the determining of a documentation portion 5a that is pertinent to the query 4 is analogous to retrieval augmented generation, RAG, whereas the obtaining of an existing configuration file 6 is analogous to few-shot learning, FSL.

[0091] To populate the repository 5, system manuals 5b are processed by an embedding model 5c into representations in a vectorial latent space. That is, in the example shown in Figure 3, the repository 5 comprises a vector database. Akin to Figure 2, the operator O has a given configuration task 3 and, based on this configuration task 3, determines a query 4. Akin to Figure 2, this query goes into the input 7a that is provided to the GMLM 7 as a prompt. The query 4 is also provided to a retriever 5d that causes a pertinent documentation portion 5a to be retrieved from the repository 5.

[0092] This selected documentation portion 5a goes into the input 7a to the GMLM 7 as well. But it is also used to select, from a pool of available existing configuration files 6, one configuration file 6* that is most pertinent to the selected documentation portion 5a, and thus also to the query 4 that gave rise to the selection of this documentation portion 5a. The selected configuration file 6* goes into the input 7a to the GMLM as well. It is used everywhere in place of the existing configuration file 6.

[0093] Akin to Figure 2, the GMLM 7 provides output 7b comprising configuration information 2a, and / or the sought instructions 2b. Configuration information 2a, such as new configuration files, may be applied to an engineering tool 1b of the piece 1 of industrial equipment. In the example shown in Figure 3, the piece 1 of industrial equipment is a robot, and the engineering tool 1b is the Robotstudio software.

[0094] Akin to Figure 2, any feedback 8 obtained from the engineering tool 1b, from the piece 1 of industrial equipment, and / or from the operator O, may be provided to the GMLM 7 for fine-tuning.

[0095] List of reference signs:

[0096] 1 piece of industrial equipment

[0097] 1a controller of piece 1 of industrial equipment

[0098] 1b engineering tool for piece 1 of industrial equipment

[0099] 2a configuration information for piece 1 of industrial equipment

[0100] 2a* updated version of configuration information 2a

[0101] 2b instructions how to perform configuration task 3

[0102] 3 configuration task on piece 1 of industrial equipment

[0103] 4 query, created based on configuration task 3

[0104] 5 repository of technical documentation

[0105] 5a selected pertinent documentation portion

[0106] 5b system manuals as technical documentation

[0107] 5c embedding model to obtain representations of manuals 5b

[0108] 5d retriever for retrieving documentation portion 5a from repository 5

[0109] 6 existing configuration file

[0110] 6* selected most pertinent existing configuration file 6

[0111] 7 generative machine learning model, GMLM

[0112] 7a input to GMLM 7

[0113] 7b output from GMLM 7, obtained in response to input 7a

[0114] 7b* desired format of output 7b

[0115] 7c output from GMLM 7, obtained in response to feedback 8

[0116] 8 feedback from controller 1a

[0117] 100 method for determining configuration information 2a, instructions 2b

[0118] 110 obtaining query 4

[0119] 120 selecting documentation portion 5a

[0120] 121 choosing repository 5 with two types of documents

[0121] 121a choosing repository 5 with third type of documents

[0122] 130 obtaining existing configuration file 6

[0123] 131 selecting most pertinent configuration file 6*

[0124] 140 providing documentation portion 5a and file 6 as inputs 7a

[0125] 141 special venues of providing different inputs 7a to GMLM 7

[0126] 142 determining desired format 7b* of output 7b

[0127] 143 providing desired format 7b* to GMLM 7 144 special way of providing documentation portion 5a to GMLM 7

[0128] 145 special way of providing configuration file 6 to GMLM 7

[0129] 146 additionally providing query 4 to GMLM 7 as further input 7a

[0130] 150 generating configuration information 2a, instructions 2b from outputs 7b

[0131] 151 commissioning / recommissioning as purpose of generating method 100

[0132] 160 uploading configuration file 2a to controller 1a

[0133] 170 receiving feedback 8 from controller 1a

[0134] 180 providing feedback 8 to GMLM 7

[0135] 190 determining whether update 2a* to information 2a is necessary

[0136] 200 determining updated version 2a* of information 2a

[0137] 210 checking whether information 2a, instructions 2b are plausible

[0138] 211 checking plausibility based on units

[0139] 212 checking plausibility based on ranges

[0140] 213 checking plausibility based on progress on configuration task 3

[0141] 220 executing generated instructions 2b

[0142] 230 applying configuration information 2a

[0143] FSL few-shot learning

[0144] O operator

[0145] RAG retrieval-augmented generation

Claims

Claims:

1. A method (100) for generating configuration information (2a) for performing a configuration task of a piece (1) of industrial equipment, and / or instructions (2b) how to perform a configuration task (3) on a piece (1) of industrial equipment, comprising the steps of:• obtaining (110) a query (4) that is indicative of the configuration task (3);• selecting (120), based on the query (4), from a repository (5) of technical documentation covering the type of the piece of industrial equipment, and / or a superclass of this type, at least one documentation portion (5a) that is pertinent to the query (4);• obtaining (130) at least one existing configuration file (6) for the concrete piece (1) of industrial equipment, and / or for a piece (1) of industrial equipment of the same or a sufficiently similar type and / or superclass;• providing (140) at least the selected documentation portion (5a) and the existing configuration file (6) to a generative machine learning model, GMLM (7), as inputs (7a); and• generating (150) the sought configuration information (2a), and / or the sought instructions (2b), from the output (7b) of the GMLM (7).

2. The method (100) of claim 1, wherein the selected documentation portion (5a) is provided (141) to the GMLM (7) as context information, and the existing configuration file (6) is provided to the GMLM (7) as part of a question asked to the GMLM, and / or as part of an example presented to the GMLM (7).

3. The method (100) of any one of claims 1 to 2, wherein the piece (1) of industrial equipment is a robot, and / or a component of a robot, and / or a robot system.

4. The method (100) of any one of claims 1 to 3, further comprising: uploading (160) a generated configuration file (2a) to a controller (1a) of the piece (1) of industrial equipment.

5. The method (100) of claim 4, further comprising:• receiving (170), from the controller (1a), feedback (8) in response to the uploading of the generated configuration file (2a);• providing (180) at least this feedback (8) to the GMLM (7); and• determining (190), based on the so-obtained output (7c) of the GMLM (7), whether an update (2a*) to the generated configuration information (2a) is necessary.

6. The method (100) of claim 5, further comprising: determining (200), from the output (7c) of the GMLM (7) obtained in response to the feedback (8), an updated version (2a*) of the configuration information (2a).

7. The method (100) of any one of claims 4 to 6, wherein the controller (1a) is a virtual controller instance that serves to test the generated configuration file (2a).

8. The method of any one of claims 1 to 7, wherein the to-be-generated configuration information (2a), and / or the to-be-generated instructions (2b), are specifically (151) for the commissioning of the piece (1) of industrial equipment to a given task, and / or for the recommissioning of the piece (1) of industrial equipment from a first task to a second task.

9. The method (100) of any one of claims 1 to 8, further comprising:• checking (210) whether the generated instructions (2b), and / or the generated configuration information (2a), are plausible; and• if the generated instructions (2b), and / or the generated configuration information (2a), turn out to be plausible, executing (220) the generated instructions (2b) on the piece (1) of the industrial equipment, respectively applying (230) the generated configuration information (2a), so as to perform the given configuration task (3).

10. The method (100) of claim 9, wherein, in response to determining that• a set-point value or other value of a quantity is mentioned in a generated instruction (2b) and / or in generated configuration information (2a) with a wrong unit (211); and / or• a set-point value or other value of a quantity mentioned in a generated instruction (2b), and / or in generated configuration information (2a), is outside of a predetermined range (212); and / or• the executing of a generated instruction (2b), and / or the applying of generated configuration information (2a), will not move the given configuration task forward (213), it is determined that the generated instruction (2b), respectively the generated configuration information (2a), is not plausible.

11. The method of any one of claims 1 to 10, wherein,• from the existing configuration file (6), a desired format (7b*) of the output (7b) of the GMLM (7) is determined (142); and• this desired format (7b*) of the output is provided (143) to the GMLM (7).

12. The method (100) of any one of claims 1 to 11 , wherein the repository (5) of documentation comprises (121) at least• a first document that relates to a class of pieces (1) of industrial equipment to which the piece (1) of industrial equipment belongs; and• a second document that is specific to the type of the piece (1) of industrial equipment; and / or to the concrete instance of the piece (1) of industrial equipment.

13. The method (100) of claim 12, wherein the repository (5) of documentation further comprises (121a) at least a third document that is specific to a subsystem of the piece (1) of industrial equipment.

14. The method (100) of any one of claims 1 to 13, wherein• the documentation portion (5a) is provided (144) to the GMLM (7) as an indication of available configuration options and values of these configuration options; and• the at least one configuration file (6) is provided (145) to the GMLM (7) as an indication of the syntax of the configuration file (6, 2a).

15. The method (100) of any one of claims 1 to 14, wherein the query (4) is also provided (146) to the GMLM (7) as an input (7a).

16. The method (100) of any one of claims 1 to 15, wherein a configuration file (6*) is selected (131) from a plurality of existing configuration files (6) based at least in part on the selected documentation portion (5a).

17. A computer program, comprising machine-readable instructions that, when executed by one or more computers and / or compute instances, cause the one or more computers and / or compute instances to perform the method of any one of claims 1 to 16.

18. A non-transitory machine-readable data carrier, and / or a download product, with the computer program of claim 17.

19. One or more computers and / or compute instances with the computer program of claim 17, and / or with the machine-readable data carrier and / or download product of claim 18.

Citation Information

Patent Citations

  • Equipment development method and system based on generative artificial intelligence model

    CN116450100A

  • A software system configuration generation method and system based on generative big model

    CN116932037B

  • Method and Assistance System for Assisting the Planning of Automation Systems

    US20190362239A1

  • Knowledge driven artificial intelligence engine for engineering automation

    US20230213921A1