Programming device

The programming device uses AI to generate and verify sequence programs for PLC simulation, addressing the labor-intensive and costly process of creating machine signal simulations, enhancing efficiency and accuracy.

WO2026154607A1PCT designated stage Publication Date: 2026-07-23FANUC LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
FANUC LTD
Filing Date
2025-01-16
Publication Date
2026-07-23

AI Technical Summary

Technical Problem

Creating a sequence program to simulate machine signals for debugging a PLC is labor-intensive and costly when actual machines are connected for verification.

Method used

A programming device that generates a sequence program by acquiring machine signal information from electrical design specifications and operation data, using AI to create a flowchart and simulate machine signals, and verifies the program's consistency with operational data.

Benefits of technology

Reduces user effort and time in creating sequence programs, ensures accurate simulation, and allows for efficient regeneration of programs when inconsistencies are detected.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025001211_23072026_PF_FP_ABST
    Figure JP2025001211_23072026_PF_FP_ABST
Patent Text Reader

Abstract

A programming device according to one embodiment of the present invention acquires information on a target machine signal from electrical design specification data of a machine, and acquires time-series data of the target machine signal from machine signal operation data. Next, the programming device generates, in a stepwise manner, prompts for respectively instructing a generative AI device to generate, on the basis of the electrical design specification data, a flowchart indicating the operation of the machine related to the target machine signal and to generate, on the basis of the flowchart and the operation data, a sequence program for simulating the target machine signal, sequentially transmits the prompts to the generative AI device, and receives responses to the prompts. Then, the programming device outputs the sequence program included in the response.
Need to check novelty before this filing date? Find Prior Art

Description

Programming device

[0006]

[0001] An embodiment of the present invention relates to a technique for generating a sequence program that simulates machine signals.

[0002] In the development of a sequence program executed by a PLC (Programmable Logic Controller), for debugging, there may be a case where it is desired to verify the operation based on the input / output signals with a machine connected to the PLC. In this case, since it is costly to connect the PLC to the actual machine for debugging, a simulation program that simulates the input / output signals (machine signals) on the machine side is created, and an interface with the PLC is provided to debug the sequence program of the PLC. For example, if the simulation program of the machine signals is implemented in the form of a sequence program executable by the PLC, it becomes possible to debug the PLC unit including the machine signals.

[0003] International Publication No. 2024 / 028932

[0004] Since it takes a lot of effort to create a sequence program that simulates machine signals, a technique for easily creating it is desired.

[0005] The programming device according to one embodiment acquires information on target machine signals from the electrical design specification data of the machine, and acquires time-series data of the target machine signals from the operation data of the machine signals. Next, the programming device generates a flowchart showing the operation of the machine related to the target machine signals based on the electrical design specification data, and generates a sequence program that simulates the target machine signals based on the flowchart and the operation data, respectively. A prompt for instructing the generation AI device to perform these operations is generated step by step, the prompt is sequentially transmitted to the generation AI device, and a response to the prompt is received. Then, the programming device outputs the sequence program included in the response.

[0006] One embodiment of the programming device generates a flowchart showing the operation of a machine related to a target machine signal based on the machine's electrical design specification data, and also acquires time-series data of the target machine signal from the machine signal operation data. Next, the programming device generates a prompt that instructs the generation AI device to generate a sequence program that simulates the target machine signal based on the flowchart and the operation data, transmits the prompt to the generation AI device, and receives a response to the prompt. The programming device then outputs the sequence program included in the response.

[0007] This is a block diagram showing the functional configuration of the programming device in the first embodiment. This is a diagram illustrating the process of generating a flowchart in the first embodiment. This is a diagram illustrating the process of generating a sequence program in the first embodiment. This is a block diagram showing the functional configuration of the programming device in the second embodiment. This is the first diagram illustrating the process of verifying a sequence program in the second embodiment. This is the second diagram illustrating the process of verifying a sequence program in the second embodiment. This is a diagram illustrating the process of generating a sequence program in a modified example.

[0008] The following describes embodiments of the present invention. The programming device of this embodiment takes electrical design specification data, such as CAD data including wiring specifications for machine signals, and machine signal operation data (signal trace data) as input and generates a sequence program that simulates changes in machine signals using AI generation.

[0009] [First Embodiment] Figure 1 is a block diagram showing the functional configuration of the programming device 1 in the first embodiment. The programming device 1 is an information processing device (computer) equipped with a control unit 10 (processor) and a storage unit 20 (memory), and may be the PLC itself that actually controls the machine, or an alternative device for program development. The programming device 1 is also connected to the generating AI device via communication, either directly or via a network.

[0010] The control unit 10 comprises an acquisition unit 11, a prompt generation unit 12, a transmission unit 13, a reception unit 14, and an output unit 15. These functional units operate when the control unit 10 reads and executes a predetermined program stored in the storage unit 20.

[0011] The storage unit 20 stores various software, including programs for realizing the functions of this embodiment, as well as input / output data, data in progress during processing, and the like.

[0012] The acquisition unit 11 acquires information on the target machine signal from the machine's electrical design specification data, and time-series data of the target machine signal from the machine signal operation data. The electrical design specification data includes CAD data as well as information on various machine signals, and is information that allows for the analysis of output signals and changes in internal states in response to input signals.

[0013] The prompt generation unit 12 generates the following prompts in stages: (1) A prompt that instructs the generation AI device to generate a flowchart showing the operation of the machine related to the machine signal based on the electrical design specification data. (2) A prompt that instructs the generation AI device to generate a sequence program that simulates the machine signal based on the generated flowchart and operation data.

[0014] The transmitting unit 13 sequentially transmits the prompts generated by the prompt generation unit 12 to the generation AI device. The receiving unit 14 receives responses to the prompts from the generation AI. The output unit 15 outputs or presents the sequence program included in the responses received by the receiving unit 14 to the outside.

[0015] In the case where the AI ​​generation device cannot uniquely identify the flowchart and sequence program, the output unit 15 may output multiple generation results.

[0016] Figure 2 illustrates the process of generating a flowchart in the first embodiment. From the electrical design specification data, for example, the type and description of various signals related to the door opening operation, as well as a mechanical signal time chart during the door opening operation, can be obtained. The arrows in the time chart indicate the triggers when each signal changes from 0 to 1.

[0017] Here, the user may select and input information related to the flowchart to be generated, such as a time chart of the signals to be simulated. Programming device 1 instructs the generation AI to generate a flowchart based on this information, and in response obtains a flowchart of the door opening operation related to the machine signal.

[0018] Figure 3 illustrates the process of generating a sequence program in the first embodiment. For example, regarding the door opening operation, a prompt is generated using the operational data of the machine signal as input data, along with a flowchart. In this case, the operational data of the machine signal is obtained in a tabular format from the time-dependent values ​​of each signal obtained from the signal trace data.

[0019] The programming device 1 can obtain a response from the generating AI device that is appropriate as a simulator of machine signals by instructing the AI ​​device to generate a sequence program in which the input and output signals match the operational data.

[0020] [Second Embodiment] Figure 4 is a block diagram showing the functional configuration of the programming device 1 in the second embodiment. In the second embodiment, the programming device 1 performs the flowchart generation that was performed by the generation AI device in the first embodiment. The programming device 1 also executes the generated sequence program and verifies its consistency with the operation data.

[0021] In other words, the control unit 10 comprises an acquisition unit 11, a prompt generation unit 12, a transmission unit 13, a reception unit 14, and an output unit 15, and further comprises a flowchart generation unit 16, a virtual execution unit 17, and a verification unit 18.

[0022] The flowchart generation unit 16 analyzes the electrical design specification data using known methods and generates a flowchart showing the operation of the machine related to the machine signal according to predetermined rules.

[0023] Then, the prompt generation unit 12 generates a prompt that instructs the generation AI device to generate a sequence program that simulates a machine signal, based on the flowchart generated by the flowchart generation unit 16 and the same operation data as in the first embodiment.

[0024] The virtual execution unit 17 uses the input signal in the operation data of the machine signal acquired by the acquisition unit 11 to execute a sequence program generated by the generation AI device using this signal as input.

[0025] The verification unit 18 determines whether the output signal, which is the execution result of the virtual execution unit 17, matches the output signal of the operational data. The output unit 15 then outputs the sequence program obtained from the generating AI device only if it is determined that the output signal, which is the execution result of the virtual execution unit 17, matches the output signal of the operational data.

[0026] On the other hand, if it is determined that the output signal, which is the execution result by the virtual execution unit 17, does not match the output signal of the operational data, the verification unit 18 notifies the prompt generation unit 12 of the verification result. The prompt generation unit 12 then generates a prompt that instructs the generation AI device to generate a sequence program different from the verified sequence program.

[0027] Furthermore, the virtual execution unit 17 and the verification unit 18 are also applicable to the first embodiment, and accordingly, other functional units can be modified in the same way.

[0028] Figure 5 is the first diagram illustrating the process of verifying the sequence program in the second embodiment. Here, the case where the operating data of the machine signal matches the time-series data of each signal, which is the execution result of the generated sequence program, is illustrated.

[0029] Specifically, when the operational data input signal "OPEN_DOOR" is used as input to the sequence program, the execution result of the sequence program, which simulates the output signal, matches that of the operational data for "MOV" and "COMPLETE". In this case, the programming device 1 determines that the verified sequence program is correct and outputs it as the generated result.

[0030] Figure 6 is a second diagram illustrating the process of verifying the sequence program in the second embodiment. Here, we illustrate a case where the operating data of the machine signals and the time-series data of each signal, which are the execution results of the generated sequence program, do not match.

[0031] Specifically, a portion of the generated sequence program differs from that shown in Figure 6, and the execution result signal "COMPLETE" differs from the operational data at time 4. In this case, the programming device 1 generates a new prompt and instructs the generation AI device to generate a sequence program different from the one that was verified.

[0032] [Modification] In the first and second embodiments, the programming device 1 instructs the generation AI device to create a sequence program, but at this time, it is also possible to specify the details of the program description.

[0033] In this case, the acquisition unit 11 further acquires information on the programming specifications of the sequence program. Then, the prompt generation unit 12 generates a prompt that instructs the generation AI device to generate a sequence program according to these programming specifications.

[0034] Figure 7 illustrates the process of generating a sequence program in a modified example. For example, if a programming manual is obtained, adding it to the prompt input data allows the generating AI device to appropriately generate a sequence program with instructions (e.g., the axis control instruction AXCTL in the figure) and configuration suitable for the execution environment.

[0035] The sequence program generated by the programming device 1 is not limited to the ladder program exemplified in the embodiment, but may also be a program in a PLC programming language defined by IEC 61131-3, such as the ST (Structured Text) language.

[0036] According to the embodiments illustrated above, the programming device 1 can create a sequence program that simulates machine signals related to input and output with the PLC by instructing the generation AI device based on a flowchart generated based on the machine's electrical design specification data and the operation data of the machine signals. This reduces the user's man-hours required to create the sequence program. Furthermore, the programming device 1 can also instruct the generation AI device to create a flowchart based on the machine's electrical design specification data, thereby achieving even greater efficiency.

[0037] Furthermore, the programming device 1 can execute the sequence program obtained by the generation AI device using actual machine signal operation data as input, and verify the consistency of the execution result with the operation data. This allows the programming device 1 to output only the verified and appropriate sequence programs. In addition, if the execution result and the operation data do not match, the programming device 1 can instruct the generation AI device to regenerate the sequence program, enabling the efficient generation of appropriate sequence programs.

[0038] Furthermore, when the programming device 1 gives instructions to the generation AI device, it includes the programming specifications of the sequence program in the prompt, thereby enabling it to generate a more appropriate sequence program that appropriately uses instructions that may differ depending on the execution environment.

[0039] Although embodiments of the present invention have been described in detail above, the present invention is not limited to the individual embodiments described above. These embodiments can be modified in various ways, without departing from the spirit of the invention or without departing from the idea and spirit of the present invention derived from the claims and their equivalents. For example, the order of operations and processes in the embodiments described above are shown as examples only and are not limited thereto. The same applies when numerical values ​​or mathematical formulas are used in the description of the embodiments described above.

[0040] With respect to the above-described embodiment, the following additional information is disclosed. (Addendum 1) A programming device (1) comprising: an acquisition unit (11) that acquires information on a target machine signal from electrical design specification data of a machine and acquires time-series data of the target machine signal from operation data of the machine signal; a prompt generation unit (12) that sequentially generates prompts that instruct a generation AI device to generate a flowchart showing the operation of the machine related to the target machine signal based on the electrical design specification data, and to generate a sequence program that simulates the target machine signal based on the flowchart and the operation data; a transmission unit (13) that sequentially transmits the prompts to the generation AI device; a reception unit (14) that receives a response from the generation AI to the prompts; and an output unit (15) that outputs the sequence program included in the response.

[0041] (Note 2) A programming device (1) comprising: a flowchart generation unit (16) that generates a flowchart showing the operation of a machine related to a target machine signal based on electrical design specification data; an acquisition unit (11) that acquires time-series data of the target machine signal from machine signal operation data; a prompt generation unit (12) that generates a prompt that commands a generation AI device to generate a sequence program that simulates the target machine signal based on the flowchart and the operation data; a transmission unit (13) that transmits the prompt to the generation AI device; a receiving unit (4) that receives a response from the generation AI to the prompt; and an output unit (15) that outputs the sequence program included in the response.

[0042] (Note 3) The programming device (1) described in (Note 1) or (Note 2), comprising: a virtual execution unit (17) that takes the input signal of the operation data as input and executes the sequence program included in the response; and a verification unit (18) that determines whether the output signal, which is the result of execution by the virtual execution unit (17), matches the output signal of the operation data, wherein the output unit (15) outputs the sequence program included in the response when the verification unit (18) determines that the output signal, which is the result of execution by the virtual execution unit (17), matches the output signal of the operation data.

[0043] (Note 4) If the verification unit (18) determines that the output signal which is the execution result by the virtual execution unit (17) does not match the output signal of the operation data, it notifies the prompt generation unit (12) of the verification result, and the prompt generation unit (12) generates a prompt that instructs the generation AI device to generate a sequence program different from the sequence program included in the response, the programming device (1) as described in (Note 3).

[0044] (Supplementary Note 5) The acquisition unit (11) acquires information on the programming specifications of a sequence program, and the prompt generation unit (12) generates a sequence program according to the programming specifications, and generates a prompt for instructing the generation AI device to do so. The programming device (1) according to any one of (Supplementary Note 1) to (Supplementary Note 4).

[0045] 1 Programming device 10 Control unit 11 Acquisition unit 12 Prompt generation unit 13 Transmission unit 14 Reception unit 15 Output unit 16 Flowchart generation unit 17 Virtual execution unit 18 Verification unit 20 Storage unit

Claims

1. A programming device comprising: an acquisition unit that acquires information on a target machine signal from electrical design specification data of a machine and acquires time-series data of the target machine signal from operating data of the machine signal; a prompt generation unit that sequentially generates prompts that instruct a generating AI device to generate a flowchart showing the operation of the machine related to the target machine signal based on the electrical design specification data, and to generate a sequence program that simulates the target machine signal based on the flowchart and the operating data; a transmission unit that sequentially transmits the prompts to the generating AI device; a receiving unit that receives a response from the generating AI to the prompts; and an output unit that outputs the sequence program included in the response.

2. A programming device comprising: a flowchart generation unit that generates a flowchart showing the operation of a machine related to a target machine signal based on the machine's electrical design specification data; an acquisition unit that acquires time-series data of the target machine signal from the machine signal's operation data; a prompt generation unit that generates a prompt instructing a generating AI device to generate a sequence program that simulates the target machine signal based on the flowchart and the operation data; a transmission unit that transmits the prompt to the generating AI device; a reception unit that receives a response from the generating AI to the prompt; and an output unit that outputs the sequence program included in the response.

3. A programming device according to claim 1 or 2, comprising: a virtual execution unit that takes the input signal of the operation data as input and executes the sequence program included in the response; and a verification unit that determines whether the output signal, which is the result of execution by the virtual execution unit, matches the output signal of the operation data, wherein the output unit outputs the sequence program included in the response when the verification unit determines that the output signal, which is the result of execution by the virtual execution unit, matches the output signal of the operation data.

4. The programming device according to claim 3, wherein the verification unit determines that the output signal, which is the result of execution by the virtual execution unit, does not match the output signal of the operation data, and the prompt generation unit generates a prompt that instructs the generation AI device to generate a sequence program different from the sequence program included in the response.

5. The programming device according to any one of claims 1 to 4, wherein the acquisition unit acquires information on the programming specifications of a sequence program, and the prompt generation unit generates a prompt that instructs the generation AI device to generate a sequence program in accordance with the programming specifications.