Program creation assistance device

The program creation support device simplifies the creation of NC programs by automating the generation of question sentences for generative AI devices, reducing operator effort and ensuring accurate program creation for industrial machines.

WO2025154193A1PCT designated stage expired Publication Date: 2025-07-24FANUC LTD

Patent Information

Application Number
PCT/JP2024/001089
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-17
Publication Date
2025-07-24

AI Technical Summary

Technical Problem

Creating numerical control programs for industrial machines is challenging due to their unique grammar and complexity, especially for beginners, and existing methods requiring machine information input to generative AI devices can be burdensome.

Method used

A program creation support device that acquires machine and operation information, generates question sentences for a generative AI device, and presents response results with supplementary information to facilitate the creation of NC programs with minimal operator effort.

Benefits of technology

Enables efficient generation of NC programs by reducing operator input labor and ensuring accurate, understandable response results through supplementary machine information presentation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024001089_24072025_PF_FP_ABST
    Figure JP2024001089_24072025_PF_FP_ABST
Patent Text Reader

Abstract

The present invention generates, with a minimum effort by a worker, a question sentence to be inputted to a generative AI device and acquires an NC program which realizes a desired operation of an industrial machine. This program creation assistance device assists in creating a numerical control program which causes an industrial machine to operate. The program creation assistance device comprises: a machine information acquisition unit which acquires machine information regarding the industrial machine; a question sentence generation unit which acquires operation information regarding desired operation contents of the industrial machine, and generates a question sentence for a generative AI device by combining the operation information with the machine information acquired by the machine information acquisition unit; a transmission unit which transmits, to the generative AI device, the question sentence generated by the question sentence generation unit; a reception unit which receives a first response result from the generative AI device; and a presentation unit which presents the first response result.
Need to check novelty before this filing date? Find Prior Art

Description

Programming aid

[0001] The present disclosure relates to a program creation assist device that assists in creating a numerical control program.

[0002] The technology of operating industrial machinery using numerical control programs (hereinafter also referred to as "NC programs") is widely used. NC programs have unique grammar and are often difficult to understand, especially for beginners. In this regard, a technology for an operator interface for control programs has been proposed, which is achieved for robots by using a programming language for describing robot operations and an intuitive interactive environment for creating, editing, and executing programs. See, for example, Patent Document 1. It is also believed that this problem can be solved by using technologies such as AI chatbots (hereinafter also referred to as "generative AI devices"). Specifically, it is believed that by describing the operation of an industrial machine using natural language prompts and inputting them into a generative AI device, an NC program that realizes the operation can be easily created.

[0003] Special Publication No. 4-507022

[0004] To achieve a desired operation of an industrial machine, an operator can obtain an NC program that achieves that operation by inputting the minimum necessary questions into the AI ​​generator. However, in order to have the AI ​​generator correctly output an NC program that achieves the desired operation so that the industrial machine does not malfunction, it is necessary to input not only the operation content but also machine information about the industrial machine (e.g., model name, current position of each axis, control mode, etc.) into the AI ​​generator. Another possible method is for the operator to input machine information about the industrial machine in the form of questions from the AI ​​generator, but this method actually places a burden on the operator.

[0005] Therefore, it is desirable to generate questions to be input to a generation AI device with the minimum amount of effort required by the worker, and to obtain an NC program that will realize the desired operation of industrial machinery.

[0006] One aspect of the program creation assistance device disclosed herein is a program creation assistance device that assists in the creation of a numerical control program for operating an industrial machine, and includes a machine information acquisition unit that acquires machine information regarding the industrial machine, a question generation unit that acquires operation information regarding the desired operation content of the industrial machine and combines the operation information acquired by the machine information acquisition unit to generate a question to be sent to a generation AI device, a transmission unit that transmits the question generated by the question generation unit to the generation AI device, a receiving unit that receives a first response result from the generation AI device, and a presentation unit that presents the first response result.

[0007] 1 is a diagram showing an example of a functional block configuration of a program creation assistance system according to a first embodiment; FIG. 1 is a diagram showing an example of a keyword table; FIG. 2 is a diagram showing an example of a question template; FIG. 3 is a diagram showing an example of a machine table; FIG. 4 is a diagram showing an example of machine information; FIG. 5 is a diagram showing an example of a generated question; FIG. 6 is a diagram showing an example of a display screen for a response result; FIG. 7 is a flowchart illustrating assistance processing of the program creation assistance system; FIG. 8 is a diagram showing an example of a program creation assistance system in which two opposed twin-spindle lathes of different types are arranged in the same factory; FIG. 9 is a diagram showing an example of a question template for opposed twin-spindle lathes; FIG. 10 is a diagram showing an example of machine information acquired by a machine information acquisition unit; FIG. 11 is a diagram showing an example of a generated question; FIG. 12 is a diagram showing an example of a functional block configuration of a program creation assistance system according to a second embodiment; FIG. 13 is a diagram showing an example of a display screen for a response result; 20A. FIG. 20B is a flowchart illustrating detailed processing contents of the radial retraction amount determination process in the XY plane in step S33 shown in FIG. 19A. FIG. 20C is a flowchart illustrating detailed processing contents of the radial retraction amount determination process in the ZX plane in step S34 shown in FIG. 19A. FIG. 20D is a flowchart illustrating detailed processing contents of the radial retraction amount determination process in the YZ plane in step S35 shown in FIG. 20A. FIG. 20E is a flowchart illustrating detailed processing contents of the axial retraction amount determination process in the XY plane in step S42 shown in FIG. 20A. FIG. 20F is a flowchart illustrating detailed processing contents of the axial retraction amount determination process in the ZX plane in step S43 shown in FIG. 20A. FIG. 20F is a flowchart illustrating detailed processing contents of the axial retraction amount determination process in the YZ plane in step S44 shown in FIG. 20A. FIG. 20F is a diagram illustrating an example of a display screen of a response result.

[0008] First Embodiment A program creation assistance system according to a first embodiment will be described in detail below with reference to the accompanying drawings. FIG. 1 illustrates an example of a functional block configuration of the program creation assistance system according to the first embodiment. Here, a vertical 3-axis machining center is used as an example of industrial machinery. The present invention is also applicable to various other industrial machinery, such as a vertical 5-axis machining center, industrial robots, service robots, forging machines, and injection molding machines. In the case of industrial robots, the NC program is a robot program. As shown in FIG. 1 , the program creation assistance system 1 includes a program creation assistance device 10 and a generation AI device 20. The program creation assistance device 10 and the generation AI device 20 may be interconnected and communicate via a network (not shown), such as a local area network (LAN) or the Internet. In this case, the program creation assistance device 10 and the generation AI device 20 include a communication unit (not shown) for communicating with each other via such a connection. In addition, the program creation assistance device 10 and the generation AI device 20 may be directly connected to each other via a connection interface not shown.

[0009] <Generation AI Device 20> The generation AI device 20 is, for example, a computer or a web server known to those skilled in the art. The generation AI device 20 accepts text data such as a question sentence and inputs it into a trained language model (for example, a large-scale language model (LLM) such as ChatGPT (registered trademark)). The generation AI device 20 generates response sentence data such as an NC program for the question sentence and a request sentence requesting additional information for generating the NC program. The generation AI device 20 transmits the generated response sentence data to the program creation assistance device 10. Note that the trained language model (for example, a large-scale language model) may be, for example, a learning model trained using a large amount of data on the web as training data, and in particular, the learning model may be a learning model provided externally. Furthermore, the trained language model may be a learning model that has undergone additional learning related to a specialized field such as a machining program, for example, learning using question sentences (prompts) and / or fine-tuning, transfer learning, etc., on a provided learning model.

[0010] 1 , the program creation assistance device 10 includes a control unit 11, an input unit 12, a storage unit 13, and a display unit 14. The control unit 11 also includes a machine information acquisition unit 110, a question generation unit 111, a transmission unit 112, a reception unit 113, a response result regeneration unit 114, and a presentation unit 115.

[0011] <Input Unit 12> The input unit 12 is a keyboard, a mouse, a touch panel arranged on the front of the display unit 14 (described later), or the like, and receives input operations from the worker. The input unit 12 may also be, for example, a microphone, and may receive the worker's voice as an input operation. Alternatively, the input unit 12 may be, for example, a digital camera, and may receive a video including the worker's movements and voice as an input operation.

[0012] <Storage unit 13> The storage unit 13 is, for example, a solid state drive (SSD) or a hard disk drive (HDD), and stores an operating system, application programs, etc. executed by the control unit 11. The storage unit 13 also stores a keyword table 131 related to keywords included in the input of the worker received via the input unit 12, template data 132 of question templates prepared in advance for each work content (question content) identified from the keywords, and a machine table 133 of machine information such as the current position of each industrial machine that is required to generate a question.

[0013] The keyword table 131 stores keywords extracted by the question generation unit 111 (described later) using a known method from the input content of the operator received via the input unit 12, and work details of an industrial machine such as a vertical three-axis machining center (not shown). FIG. 2 is a diagram illustrating an example of the keyword table 131. The keyword table 131 has storage areas for “keywords” extracted by the question generation unit 111 (described later) from the input content of the operator received via the input unit 12, and “work details” identified based on the keywords. The “keyword” storage area in the keyword table 131 stores, for example, a conditional expression for determining work details stored in the “work details” storage area (described later) from multiple keywords in the input content of the operator extracted by the question generation unit 111 (described later). The “work details” storage area in the keyword table 131 stores work details such as “approaching the tool to the workpiece,” “retracting the tool from the workpiece,” “positioning the left spindle at 0°,” and “positioning the right spindle at 0°.”

[0014] The template data 132 stores a template of a question prepared in advance for each task (question) identified by the question generator 111 (described later) from the operator's input. FIGS. 3A and 3B are diagrams showing examples of the template of a question. FIG. 3A shows a template of a question for removing a tool from a workpiece in a vertical three-axis machining center. FIG. 3B shows a template of a question for removing a tool from a workpiece in a vertical five-axis machining center. Note that the [****] in the template of the question shown in FIGS. 3A and 3B stores numerical values ​​and other information about the machine information of the vertical three-axis machining center (not shown) acquired by the machine information acquisition unit 110 based on the machine table 133, as described later. Furthermore, the [XY plane / ZX plane / YZ plane], [Left side / Right side], and [Positive direction / Negative direction] in the template of the question shown in FIG. 3B indicate options for each industrial machine selected based on the machine table 133.

[0015] Although the program creation assistance device 10 stores the question template in the template data 132, the question template may be generated by learning the correspondence between keywords and work content in advance.

[0016] The machine table 133 stores, for each industrial machine, numerical values ​​to be stored in the question template and information required for selecting an option. FIG. 4 is a diagram showing an example of the machine table 133. The machine table 133 has storage areas for a "machine type" that indicates the type of industrial machine, and "required information" that is information required for selecting an option and numerical values ​​to be stored in the question template for each industrial machine. The "machine type" storage area in the machine table 133 stores, for example, "vertical three-axis machining center," "horizontal three-axis machining center," "vertical five-axis machining center," and "opposed twin-spindle lathe." The "required information" storage area in the machine table 133 stores, from the machine information acquired by the machine information acquisition unit 110 (described later), numerical values ​​to be stored in the question template for each industrial machine, and information required for selecting an option, such as "current position" and "retract position."

[0017] <Display Unit 14> The display unit 14 is, for example, a liquid crystal display included in the program creation assist device 10, and displays the created NC program and the like.

[0018] The control unit 11 includes a CPU, ROM, RAM, CMOS memory, etc., which are configured to communicate with each other via a bus and are well known to those skilled in the art. The CPU is a processor that controls the entire program creation assistance device 10. The CPU reads system programs and application programs stored in the ROM via the bus and controls the entire program creation assistance device 10 in accordance with the system programs and application programs. As a result, as shown in FIG. 1 , the control unit 11 is configured to implement the functions of a machine information acquisition unit 110, a question generation unit 111, a transmission unit 112, a reception unit 113, a response result regeneration unit 114, and a presentation unit 115. The RAM stores various data, such as temporary calculation data and display data. The CMOS memory is backed up by a battery (not shown) and is configured as a non-volatile memory that retains its stored state even when the power to the numerical control device (not shown) is turned off.

[0019] The machine information acquisition unit 110 acquires, for example, machine information related to a vertical three-axis machining center (not shown) from the vertical three-axis machining center, a numerical control device (not shown) that controls the vertical three-axis machining center, or a server (not shown) in a factory. FIG. 5 is a diagram showing an example of machine information. The machine information acquired by the machine information acquisition unit 110 includes acquired information on the "machine tool type," "axis configuration," "machining type," and "control status," as well as information on the source of acquisition of these information. That is, the "machine tool type" stores "vertical three-axis machining center" as the "acquired information," and stores information indicating that the information was acquired based on machine catalog data stored in a server (not shown) in a factory as the "acquired source." The "axis configuration" stores "X / Y / Z three axes" as the "acquired information," and stores information indicating that the information was acquired based on a backup performed on a server (not shown) in a factory at machine startup as the "acquired source." In addition, "machining type" stores "Z-axis direction drilling using a drill tool" as "acquired information," and stores the fact that it was acquired based on the tool identification information and Z-axis direction drilling mode in a numerical control device (not shown) as "acquired information." In addition, in "control state," stores "command mode: incremental (G91), current position: Z = -10.000, position after retraction: Z = 100.000" as "acquired information," and stores the numerical control device (not shown) as "acquired source."

[0020] The question generation unit 111 acquires operation information regarding the desired operation of a vertical three-axis machining center (not shown) and combines it with the machine information acquired by the machine information acquisition unit 110 to generate a question for the generation AI device 20. Specifically, for example, if an operator notices an abnormal noise or the like during machining on the vertical three-axis machining center and interrupts the machining, the input unit 12 accepts input of operation information from the operator, such as "I want to move the cutting tool away from the workpiece." The question generation unit 111 extracts keywords, such as "tool," "workpiece," and "remove," from the input operation information, such as "I want to move the cutting tool away from the workpiece," using a known method. Based on the extracted keywords, such as "tool," "workpiece," and "remove," and the keyword table 131, the question generation unit 111 identifies the operation content (question content), such as "retract the tool from the workpiece." The question generation unit 111 acquires the template shown in FIG. 3A from the template data 132 based on the identified operation content (question content). The question generation unit 111 generates a question (prompt) based on the question template of FIG. 3A and the machine information of FIG. 5. FIG. 6 is a diagram showing an example of a generated question. As shown in FIG. 6, the [****] portion in the question template of FIG. 3A is replaced with the numerical values ​​of the "current position" and the "position after retraction" in the "control state" of the machine information of FIG. 5. In this way, the program creation assistance device 10 can generate a question to be input to the generation AI device 20 with the minimum effort required by the operator, such as "I want to move the cutting tool away from the workpiece."

[0021] The transmitting unit 112 is, for example, a network interface, and transmits the question generated by the question generating unit 111 to the generating AI device 20. For example, the transmitting unit 112 transmits the question shown in FIG. 6 to the generating AI device 20, causing the generating AI device 20 to generate an NC program response result for the question shown in FIG. 6. However, since the question shown in FIG. 6 does not include information on the current command mode (e.g., incremental mode (G91) in the "control state" in the machine information shown in FIG. 5), the generating AI device 20 generates a message indicating that it was unable to determine whether the mode was absolute mode (G90) or incremental mode (G91), as well as the response results of the NC programs corresponding to G90 / G91 as response candidates. In other words, the generating AI device 20 generates an NC program called "G90 Z100.0" because the retracted position can be reached in absolute mode (G90) by simply commanding the retracted position. Furthermore, since the AI ​​generating device 20 can reach the retracted position by commanding the relative position after retraction from the current position in incremental mode (G91), it generates an NC program called "G91 Z110.0." The command value is calculated by "(position after retraction) - (current position)."

[0022] The receiving unit 113 is, for example, a network interface, and receives the NC program response result (first response result) in response to the question (prompt) sent from the generating AI device 20. For example, as described above, the generating AI device 20 outputs a response result in response to the question in Figure 6, which is a message indicating that it was unable to determine whether the mode is absolute (G90) or incremental (G91), and two NC program response candidates, "G90 Z100.0" and "G91 Z110.0". The receiving unit 113 receives the response result.

[0023] The response result regeneration unit 114 generates a response result (second response result) by supplementing the response result (first response result) received by the receiving unit 113 with the machine information acquired by the machine information acquisition unit 110. Specifically, the response result regeneration unit 114 checks the machine information in Fig. 5 based on, for example, a message included in the response result received by the receiving unit 113 indicating that it was not possible to determine whether the mode is absolute mode (G90) or incremental mode (G91). Since the current command mode is incremental mode (G91) in the machine information in Fig. 5, the response result regeneration unit 114 determines that the NC program "G91 Z110.0" is more appropriate. The response result regeneration unit 114 assigns a priority of "1" to the NC program "G91 Z110.0" and a priority of "2" to the NC program "G90 Z100.0", and generates a response result (second response result) that supplements the reason why the current command mode is the incremental mode. The response result regeneration unit 114 outputs the generated response result to the presentation unit 115.

[0024] The presentation unit 115 displays the response results on the display unit 14. FIG. 7 shows an example of a display screen of the response results. As shown in FIG. 7, the display screen displayed on the display unit 14 displays two NC programs along with their priorities and supplemental information. When the operator selects "G91 Z110.0" with priority "1" via the input unit 12, the program creation assistance device 10 outputs the selected NC program to a numerical control device (not shown). The numerical control device (not shown) can control a vertical three-axis machining center (not shown) to move the cutting tool away from the workpiece. By presenting the prioritized response results on the display unit 14 in this way, the operator can save time by carefully examining the NC program. Furthermore, the program creation assistance device 10 (the response result regeneration unit 114) displays the response results supplemented with the used machine information, etc., on the display unit 14, allowing the operator to understand the basis on which the NC program was obtained and take measures to prevent hallucination.

[0025] <Assistance Processing of Program Creation Assist System 1> Next, the flow of assistance processing of the program creation assistance system 1 will be described with reference to Fig. 8. Fig. 8 is a flowchart illustrating assistance processing of the program creation assistance system 1.

[0026] In step S11, the machine information acquisition unit 110 acquires machine information related to a vertical three-axis machining center (not shown) from a numerical control device (not shown), a server (not shown) in the factory, or the like.

[0027] In step S12, the question generation unit 111 identifies the work content based on the input of the worker's operation information via the input unit 12 and the machine information acquired in step S11, and acquires a question template from the template data 132 based on the identified work content.

[0028] In step S13, the question generation unit 111 generates a question based on the question template acquired in step S12 and the machine information acquired in step S11.

[0029] In step S14, the transmission unit 112 transmits the question generated in step S13 to the generation AI device 20.

[0030] In step S15, the receiving unit 113 receives a response result to the question sent in step S14 from the generating AI device 20.

[0031] In step S16, if the response result received in step S15 contains multiple NC programs, the response result regeneration unit 114 generates a supplemented response result by assigning priorities to the multiple NC programs based on the machine information acquired in step S11.

[0032] In step S17, the presentation unit 115 displays the response result generated in step S16 on the display unit 14 for presentation.

[0033] As described above, the program creation assistance device 10 according to the first embodiment generates a query to be input to the AI ​​generation device 20 with minimal effort on the part of the worker, and can obtain an NC program that realizes the desired operation of the industrial machine. Furthermore, the program creation assistance device 10 presents what information has been added to the query to the AI ​​generation device 20 and the response results from the AI ​​generation device 20, allowing the worker to easily confirm the validity of the created program and take measures to prevent hallucination. The first embodiment has been described above.

[0034] <Modification of First Embodiment> In the first embodiment described above, the industrial machine is a vertical three-axis machining center, but this is not limiting. For example, the industrial machine may be a twin-spindle lathe. FIG. 9 is a diagram illustrating an example of a program creation assistance system 1 in which two different types of twin-spindle lathes are installed in the same factory. In FIG. 9 , the program creation assistance system 1 includes, for example, a program creation assistance device 10 and a generation AI device 20 configured on a single server, which is connected to a numerical control device (not shown) for the twin-spindle lathe A and a numerical control device (not shown) for the twin-spindle lathe B. However, in FIG. 9 , the M-codes for positioning the left spindle (or right spindle) at 0° are different between the twin-spindle lathe A and the twin-spindle lathe B. That is, for example, the opposed twin spindle lathe A uses the M code "M14" in the NC program to position the left spindle AL at 0°, and the M code "M15" in the NC program to position the right spindle AR at 0°. On the other hand, the opposed twin spindle lathe B uses the M code "M14 P11" in the NC program to position the left spindle BL at 0°, and the M code "M14 P12" in the NC program to position the right spindle BR at 0°.

[0035] In such a case, when the question generation unit 111 receives input of operation information such as "I want to position the left main spindle at 0°" from the operator via the input unit 12, the question generation unit 111 extracts the keywords "left main spindle," "0°," and "positioning" from the input operation information using a known method. The question generation unit 111 identifies the work content (question content) of "position the left main spindle at 0°" based on the extracted keywords "left main spindle," "0°," and "positioning" and the keyword table 131. The question generation unit 111 acquires the template shown in FIG. 10 from the template data 132 based on the identified work content (question content) and the machine table 133.

[0036] The question generator 111 generates a question based on the question template of FIG. 10 and the machine information shown in FIG. 11 . FIG. 11 is a diagram illustrating an example of machine information acquired by the machine information acquirer 110. As shown in FIG. 11 , the acquired machine information includes a "machine tool type" and an "identification ID," as well as information on the source of acquisition of these information. That is, "opposed twin-spindle lathe" is stored as the "acquired information" for the "machine tool type," and information indicating that the information was acquired based on machine catalog data stored in a server (not shown) within the factory is stored as the "acquired information" for the "identification ID." Furthermore, the ID "ABCD-1234-abcd-5678," unique to opposed twin-spindle lathe B, is stored as the "acquired information" and information indicating that the information was acquired from a numerical control device (not shown) is stored as the "acquired source." FIG. 12 is a diagram illustrating an example of a generated question. As shown in FIG. 12, the generated question is the same as the question template in FIG. 10, except that the [****] part is replaced with "Twin Opposed Spindle Lathe B" based on the "Identification ID" of the machine information in FIG. 11.

[0037] The transmitting unit 112 transmits the question of Fig. 12 generated by the question generating unit 111 to the generating AI device 20. The receiving unit 113 receives the response result of the NC program "M14 P11" to the question of Fig. 12 transmitted from the generating AI device 20. Note that since there is only one response result, the NC program "M14 P11", the response result regenerating unit 114 may output the response result to the presenting unit 115 without performing any processing on it. The presenting unit 115 displays a display screen of the response result on the display unit 14.

[0038] Second Embodiment Next, a second embodiment will be described. As described above, in the first embodiment, when the program creation assistance device 10 receives multiple NC program response candidates as response results from the generation AI device 20 along with a message indicating that the current command mode is unknown, the program creation assistance device 10 confirms the current command mode based on the machine information. The program creation assistance device 10 generates a supplemental response result by adding priorities to the multiple NC programs. In contrast, in the second embodiment, when the program creation assistance device 10A receives a request for additional information regarding the current command mode from the generation AI device 20 before receiving the NC program response result, the program creation assistance device 10A determines whether the additional information can be provided from the machine information. If the program creation assistance device 10A determines that the additional information can be provided, the program creation assistance device 10A differs from the first embodiment in that it transmits the additional information to the generation AI device 20. This allows the program creation assistance device 10A to generate a query to be input to the generation AI device 20 with minimal effort from the operator and obtain an NC program that realizes the desired operation of the industrial machine. The second embodiment will now be described.

[0039] FIG. 13 is a diagram showing an example of a functional block configuration of a program creation assistance system according to the second embodiment. Elements having similar functions to those of the program creation assistance system 1 of FIG. 1 are designated by the same reference numerals, and detailed descriptions thereof are omitted. As shown in FIG. 13, the program creation assistance system 1 includes a program creation assistance device 10A and a generation AI device 20. The program creation assistance device 10A and the generation AI device 20 are connected to each other via a network (not shown), such as a LAN or the Internet, for communication. In this case, the program creation assistance device 10A and the generation AI device 20 are provided with a communication unit (not shown) for communicating with each other via such a connection. The program creation assistance device 10A and the generation AI device 20 may also be directly connected to each other via a connection interface (not shown). The generation AI device 20 has similar functions to the generation AI device 20 of the first embodiment.

[0040] The program creation assistance device 10A is, for example, a known information processing device (computer) or the like, similar to the program creation assistance device 10 of the first embodiment, and has a control unit 11a, an input unit 12, a memory unit 13, and a display unit 14, as shown in FIG. 13 . The control unit 11a also has a machine information acquisition unit 110, a question generation unit 111, a transmission unit 112a, a reception unit 113, a response result regeneration unit 114a, and a presentation unit 115. The input unit 12, the memory unit 13, and the display unit 14 have the same functions as the input unit 12, the memory unit 13, and the display unit 14 of the first embodiment. The keyword table 131, the template data 132, and the machine table 133 are similar to the keyword table 131, the template data 132, and the machine table 133 of the first embodiment.

[0041] The control unit 11a includes a CPU, ROM, RAM, CMOS memory, etc., which are configured to communicate with each other via a bus and are well known to those skilled in the art. The CPU is a processor that controls the entire program creation assistance device 10A. The CPU reads system programs and application programs stored in the ROM via the bus and controls the entire program creation assistance device 10A in accordance with the system programs and application programs. As a result, as shown in FIG. 13 , the control unit 11a is configured to implement the functions of a machine information acquisition unit 110, a question generation unit 111, a transmission unit 112a, a reception unit 113, a response result regeneration unit 114a, and a presentation unit 115. The machine information acquisition unit 110, the question generation unit 111, the reception unit 113, and the presentation unit 115 have the same functions as the machine information acquisition unit 110, the question generation unit 111, the reception unit 113, and the presentation unit 115 of the first embodiment.

[0042] As in the first embodiment, when the response result regeneration unit 114a receives a request for additional information regarding the current command mode as a response result from the generation AI device 20 via the receiving unit 113 due to the question sentence of FIG. 6 being sent to the generation AI device 20 without information regarding the current command mode, the response result regeneration unit 114a determines whether additional information can be provided to the generation AI device 20 based on the machine information of FIG. 5. Since the response result regeneration unit 114a can confirm that the current command mode is incremental mode (G91) in the "control state" of the machine information of FIG. 5, the response result regeneration unit 114a determines that additional information can be provided. The response result regeneration unit 114a generates additional information indicating that the current command mode is incremental mode (G91). Note that, if the machine information does not contain information regarding the current command mode, the response result regeneration unit 114a may display a query regarding the current command mode on the display unit 14 and accept input of the current command mode from the operator via the input unit 12.

[0043] The transmitting unit 112a transmits the additional information generated by the response result regeneration unit 114a to the generating AI device 20.

[0044] The response result regeneration unit 114a receives the response result of the NC program "G91 Z110.0" from the generating AI device 20 via the receiving unit 113. In this way, the program creation assistance device 10A (response result regeneration unit 114a) can reduce communication between the worker and the generating AI device 20 by responding to requests for additional information from the generating AI device 20.

[0045] The presentation unit 115 displays the response result display screen shown in Fig. 14 on the display unit 14. In this way, by presenting the response result supplemented with the used machine information, etc., the operator can avoid spending time examining the NC program. Furthermore, by presenting the response result supplemented with the used machine information, etc., on the display unit 14, the presentation unit 115 displays the response result supplemented with the used machine information, etc., so that the operator can understand the basis on which the NC program of the response result was obtained and can take measures against hallucination.

[0046] <Assistance Processing of Program Creation Assist System 1> Next, the flow of assistance processing of the program creation assistance system 1 will be described with reference to Fig. 15. Fig. 15 is a flowchart illustrating assistance processing of the program creation assistance system 1. Note that the processing of steps S21 to S25 and step S2C is similar to the processing of steps S11 to S15 and step S17 in Fig. 8, and therefore description thereof will be omitted.

[0047] In step S26, the response result regeneration unit 114a determines whether the response result received in step S25 is a request for additional information. If the received response result is a request for additional information, the process proceeds to step S27. On the other hand, if the received response result is not a request for additional information, the process proceeds to step S2C.

[0048] In step S27, the response result regeneration unit 114a determines whether additional information can be provided to the generation AI device 20 based on the machine information. If additional information can be provided, the process proceeds to step S29. If additional information cannot be provided, the process proceeds to step S28.

[0049] In step S28, the response result regeneration unit 114a displays the inquiry from the generation AI device 20 on the display unit 14 and accepts input from the worker via the input unit 12 as a response to the inquiry.

[0050] In step S29, the response result regeneration unit 114a generates additional information based on the machine information or the operator's input received in step S28.

[0051] In step S2A, the transmitting unit 112a transmits the additional information generated in step S29 to the generating AI device 20.

[0052] In step S2B, the response result regeneration unit 114a receives the response result based on the additional information via the receiving unit 113.

[0053] As described above, the program creation assistance device 10A according to the second embodiment generates a query to be input to the AI ​​generation device 20 with minimal effort on the part of the operator, and can obtain an NC program that realizes the desired operation of the industrial machine. Furthermore, the program creation assistance device 10A presents what information has been added to the query to the AI ​​generation device 20 and the response from the AI ​​generation device 20, allowing the operator to easily confirm the validity of the created program and take measures to prevent hallucination. The second embodiment has been described above.

[0054] <Modification of Second Embodiment> In the second embodiment described above, the industrial machine is a vertical three-axis machining center. However, this is not limiting. For example, the industrial machine may be a vertical five-axis machining center. In this case, for example, when the question generator 111 receives input of operation information from the operator via the input unit 12, such as "I want to move the cutting tool away from the workpiece," the question generator 111 extracts keywords, such as "tool," "workpiece," and "move away," from the input operation information using a known method. Based on the extracted keywords, such as "tool," "workpiece," and "move away," and the keyword table 131 of FIG. 2, the question generator 111 identifies the operation content (question), such as "retract the tool from the workpiece." Based on the identified operation content (question) and the machine table 133, the question generator 111 acquires the template of the question shown in FIG. 3B from the template data 132.

[0055] The question generator 111 generates a question based on the question template of FIG. 3B and the machine information of a vertical five-axis machining center (not shown) shown in FIG. 16. FIG. 16 is a diagram showing an example of machine information acquired by the machine information acquirer 110. As shown in FIG. 16, the acquired machine information includes "machine tool type," "control status," "machine tool settings," and "position of each axis," as well as information on the source of acquisition of these. That is, "machine tool type" stores "vertical five-axis machining center" as "acquired information," and stores information that the information was acquired based on machine catalog data in a server (not shown) in the factory as "acquired information." Furthermore, "control status" stores "coordinate system: workpiece coordinate system (X W -Y W -Z W), plane selection: XY plane, tool axis offset: positive direction, tool radial offset: right side, tool travel direction: +X axis direction" are stored, and a numerical control device (not shown) is stored as the "obtaining source." Furthermore, in "machine tool settings," "axial retract amount: 10.000 mm, radial retract amount: 0.400 mm, retract speed: 1000 mm / min" are stored as the "obtaining information," and a numerical control device (not shown) is stored as the "obtaining source." Furthermore, in "position of each axis," "X = 5.678 mm, Y = 0.400 mm, Z = -4.000 mm, A = 0.0000 deg, B = 45.0000 deg" are stored as the "obtaining information," and a numerical control device (not shown) is stored as the "obtaining source." FIG. 17 shows the machine coordinate system (X M -Y M -Z M ) and the work coordinate system (X W -Y W -Z W ) is a diagram showing an example of the relationship between the workpiece coordinate system (X W -Y W -Z W ) is the machine coordinate system (X M -Y M -Z M ) is a coordinate system that has been translated and / or rotated.

[0056] FIG. 18 is a diagram showing an example of a generated question. As shown in FIG. 18, the generated question is obtained by replacing the [****] and option portions of the question template of FIG. 3B with the numerical values ​​and settings of the "control state," "machine tool settings," and "position of each axis" of the machine information in FIG. 16. When generating the question shown in FIG. 18, the question generation unit 111 may combine multiple pieces of machine information in FIG. 16 to complement the question content. For example, the question generation unit 111 may determine the radial retraction amount according to the flows shown in FIGS. 19A to 19D and may also determine the axial retraction amount according to the flows shown in FIGS. 20A to 20D.

[0057] <Processing for Determining the Amount of Retraction in the Radial Direction by the Question Generator 111> FIGS. 19A to 19D are flowcharts illustrating processing for determining the amount of retraction in the radial direction by the question generator 111. FIG.

[0058] In step S31, the question generator 111 acquires a vector V (=(1,0,0)) of the tool travel direction based on the "+X-axis direction" of the "tool travel direction" in the "control state" of the machine information in Fig. 16. Note that the vector V is a normalized vector (length = 1 mm).

[0059] In step S32, the question generator 111 determines whether the plane is the XY plane, the ZX plane, or the YZ plane based on the setting of "Plane Selection" from the "Control Status" of the machine information in Fig. 16. If the plane selection is the XY plane, the process proceeds to step S33. If the plane selection is the ZX plane, the process proceeds to step S34. If the plane selection is the YZ plane, the process proceeds to step S35.

[0060] In step S33, the question generator 111 executes a process for determining the amount of retraction in the radial direction on the XY plane to determine the amount of retraction in the radial direction on the XY plane. Note that the detailed flow of the process for determining the amount of retraction in the radial direction on the XY plane will be described later.

[0061] In step S34, the question generator 111 executes a process for determining the amount of retraction in the radial direction on the ZX plane to determine the amount of retraction in the radial direction on the ZX plane. The detailed flow of the process for determining the amount of retraction in the radial direction on the ZX plane will be described later.

[0062] In step S35, the question generator 111 executes a process for determining the amount of retraction in the radial direction in the YZ plane to determine the amount of retraction in the radial direction in the YZ plane. The detailed flow of the process for determining the amount of retraction in the radial direction in the YZ plane will be described later.

[0063] FIG. 19B is a flowchart illustrating the detailed processing of determining the retraction amount in the radial direction on the XY plane in step S33 shown in FIG. 19A.

[0064] In step S331, the question generator 111 determines whether the "tool radial offset" is set to the left or right side based on the "control state" of the machine information in Fig. 16. If the "tool radial offset" is set to the left side, the process proceeds to step S332. On the other hand, if the "tool radial offset" is set to the right side, the process proceeds to step S333.

[0065] In step S332, the question generation unit 111 rotates the vector V by +90° around the Z axis to calculate a vector W in the retract direction.

[0066] In step S333, the question generation unit 111 rotates the vector V by −90° around the Z axis to calculate the vector W in the retract direction.

[0067] FIG. 19C is a flowchart illustrating the detailed processing of determining the retraction amount in the radial direction on the ZX plane in step S34 shown in FIG. 19A.

[0068] In step S341, the question generator 111 determines whether the "tool radial offset" is set to the left or right side based on the "control state" of the machine information in Fig. 16. If the "tool radial offset" is set to the left side, the process proceeds to step S342. On the other hand, if the "tool radial offset" is set to the right side, the process proceeds to step S343.

[0069] In step S342, the question generation unit 111 rotates the vector V by +90° around the Y axis to calculate a vector W in the retract direction.

[0070] In step S343, the question generation unit 111 rotates the vector V by −90° around the Y axis to calculate the vector W in the retract direction.

[0071] FIG. 19D is a flowchart illustrating the detailed processing of determining the retraction amount in the radial direction on the YZ plane in step S35 shown in FIG. 19A.

[0072] In step S351, the question generation unit 111 determines whether the "tool radial offset" is set to the left or right side based on the "control state" of the machine information in Fig. 16. If the "tool radial offset" is set to the left side, the process proceeds to step S352. On the other hand, if the "tool radial offset" is set to the right side, the process proceeds to step S353.

[0073] In step S352, the question generation unit 111 rotates the vector V by +90° around the X axis to calculate a vector W in the retract direction.

[0074] In step S353, the question generation unit 111 rotates the vector V by −90° around the Z axis to calculate the vector W in the retract direction.

[0075] For example, since "Plane selection" is "XY plane" and "Tool radial offset" is "Right side" in the machine information in Fig. 16, the question generation unit 111 executes step S333 in Fig. 19B of the radial retraction amount determination process and calculates the retraction direction vector W = (0, -1, 0) from the vector V = (1, 0, 0). Since the "radial retraction amount" in the machine information in Fig. 16 is "0.400 mm," the question generation unit 111 calculates the radial retraction vector as (0.000, -0.400, 0.000).

[0076] <Axial Retraction Amount Determination Processing of Question Generator 111> FIGS. 20A to 20D are flowcharts illustrating axial retraction amount determination processing of the question generator 111. FIG.

[0077] In step S41, the question generator 111 determines whether the plane is the XY plane, the ZX plane, or the YZ plane based on the setting of "Plane Selection" from the "Control Status" of the machine information in Fig. 16. If the plane selection is the XY plane, the process proceeds to step S42. If the plane selection is the ZX plane, the process proceeds to step S43. If the plane selection is the YZ plane, the process proceeds to step S44.

[0078] In step S42, the question generator 111 executes a process for determining the amount of retraction in the axial direction on the XY plane, and determines the amount of retraction in the axial direction on the XY plane. Note that the detailed flow of the process for determining the amount of retraction in the axial direction on the XY plane will be described later.

[0079] In step S43, the question generator 111 executes a process for determining the amount of retraction in the axial direction on the ZX plane to determine the amount of retraction in the axial direction on the ZX plane. Note that the detailed flow of the process for determining the amount of retraction in the axial direction on the ZX plane will be described later.

[0080] In step S44, the question generator 111 executes a process for determining the amount of retraction in the axial direction on the YZ plane, and determines the amount of retraction in the axial direction on the YZ plane. Note that the detailed flow of the process for determining the amount of retraction in the axial direction on the YZ plane will be described later.

[0081] FIG. 20B is a flowchart illustrating the detailed processing contents of the process of determining the retraction amount in the axial direction on the XY plane in step S42 shown in FIG. 20A.

[0082] In step S421, the question generator 111 determines whether the "tool axis offset" setting is positive or negative based on the "control state" of the machine information in Fig. 16. If the "tool axis offset" setting is positive, the process proceeds to step S422. On the other hand, if the "tool axis offset" setting is negative, the process proceeds to step S423.

[0083] In step S422, the question generation unit 111 sets the vector W in the retract direction to (0, 0, +1).

[0084] In step S423, the question generation unit 111 sets the vector W in the retract direction to (0, 0, -1).

[0085] FIG. 20C is a flowchart illustrating the detailed processing contents of the process of determining the retraction amount in the axial direction on the ZX plane in step S43 shown in FIG. 20A.

[0086] In step S431, the question generator 111 determines whether the "tool axis offset" setting is positive or negative based on the "control state" of the machine information in Fig. 16. If the "tool axis offset" setting is positive, the process proceeds to step S432. On the other hand, if the "tool axis offset" setting is negative, the process proceeds to step S433.

[0087] In step S432, the question generation unit 111 sets the vector W in the retract direction to (0, +1, 0).

[0088] In step S433, the question generation unit 111 sets the vector W in the retract direction to (0, -1, 0).

[0089] FIG. 20D is a flowchart illustrating the detailed processing contents of the process for determining the retraction amount in the axial direction on the YZ plane in step S44 shown in FIG. 20A.

[0090] In step S441, the question generator 111 determines whether the "tool axis offset" setting is positive or negative based on the "control state" of the machine information in Fig. 16. If the "tool axis offset" setting is positive, the process proceeds to step S442. On the other hand, if the "tool axis offset" setting is negative, the process proceeds to step S443.

[0091] In step S442, the question generation unit 111 sets the vector W in the retract direction to (+1, 0, 0).

[0092] In step S443, the question generation unit 111 sets the vector W in the retract direction to (-1, 0, 0).

[0093] For example, since the "Plane Selection" is "XY Plane" and the "Tool Axis Direction Offset" is "Positive Direction" in the machine information of FIG. 16 , the question generation unit 111 executes step S422 of the axial retraction amount determination process in FIG. 20B and sets the retraction direction vector W to (0, 0, +1). Since the "Axial Retraction Amount" in the machine information of FIG. 16 is "10.000 mm," the question generation unit 111 calculates the axial retraction vector to be (X = 0.000, Y = 0.000, Z = 10.000). Then, by combining this with the result of the radial retraction amount determination process, the question generation unit 111 calculates the retraction vector to be (0.000, -0.400, 10.000), as shown in the question of FIG. 18 .

[0094] The transmitting unit 112a transmits the question of Fig. 18 generated by the question generating unit 111 to the generating AI device 20. Since the question of Fig. 18 did not contain information regarding the order of retraction, the receiving unit 113 receives a request for additional information regarding the order of retraction, whether the retraction is from the radial direction to the axial direction or from the axial direction to the radial direction.

[0095] The response result regeneration unit 114a receives a request for additional information as a response result from the generation AI device 20 via the receiving unit 113, and therefore determines whether or not additional information can be provided to the generation AI device 20 based on the machine information in Figure 16. The response result regeneration unit 114a determines that additional information cannot be provided because the machine information in Figure 16 does not include a retraction order (i.e., retraction from radial to axial, or from axial to radial). In this case, the response result regeneration unit 114a displays an inquiry about the retraction order on the display unit 14, accepts input regarding the retraction order (e.g., from radial to axial) from the operator via the input unit 12, and generates additional information.

[0096] The transmitting unit 112a transmits the additional information generated by the response result regeneration unit 114a to the generating AI device 20.

[0097] The response result regeneration unit 114a receives the NC program "G91 G01 Y-0.4 F1000 Z10.0" for the radial to axial direction from the generation AI device 20 as a response result via the receiving unit 113. Here, G01 indicates the cutting feed mode, and the number following F specifies the feed rate per minute (amount of movement per minute (unit: mm / min)) while in cutting feed mode. In this NC program, the feed rate per minute is 1000 mm / min, which corresponds to the retract speed in FIG. 18.

[0098] Instead of a request for additional information, the response result regeneration unit 114a may receive a message from the generation AI device 20 indicating that it was not possible to determine whether the retraction order was from the radial direction to the axial direction or from the axial direction to the radial direction, and may receive, as response results, the NC program "G91 G01 Y-0.4 F1000 Z10.0" for the radial direction to the axial direction order and the NC program "G91 G01 Z10.0 F1000 Y-0.4" for the axial direction to the radial direction order. In this case, the response result regeneration unit 114a may check the machine information in FIG. 16 and, since there is no information regarding the retraction order, display a query regarding the retraction order on the display unit 14 and accept input regarding the retraction order (e.g., from the radial direction to the axial direction) from the operator via the input unit 12. The response result regeneration unit 114a may generate a response result in which a priority of "1" is assigned to the NC programs in the radial to axial order, and a priority of "2" is assigned to the NC programs in the axial to radial order, based on the operator's input. The presentation unit 115 may present a display screen showing the two NC programs and their priorities on the display unit 14, as shown in FIG.

[0099] As described above in the first embodiment, the modified example of the first embodiment, the second embodiment, and the modified example of the second embodiment, the program creation assistance device 10, 10A of the present disclosure can generate questions to be input to the generation AI device with the minimum effort required by the worker, and can obtain an NC program that realizes the desired operation of the industrial machinery.

[0100] <Modification 1> In the first embodiment, the modification of the first embodiment, the second embodiment, and the modification of the second embodiment, the industrial machine is a vertical three-axis machining center, a twin-opposed spindle lathe, or a vertical five-axis machining center, but is not limited thereto. For example, the industrial machine may be a machine tool, an industrial robot, a service robot, a forging machine, an injection molding machine, etc.

[0101] <Variation 2> For example, in the above-described first embodiment, variation of the first embodiment, second embodiment, and variation of the second embodiment, the program creation assistance device 10, 10A is a device different from the generation AI device 20, but this is not limited to this. For example, the program creation assistance device 10, 10A may include the generation AI device 20. Alternatively, as shown in FIG. 11 , the program creation assistance device 10, 10A may be included in a single server together with the generation AI device 20.

[0102] <Variation 3> Also, for example, in the above-described first embodiment, variation of the first embodiment, second embodiment, and variation of the second embodiment, the program creation assistance device 10, 10A (response result regeneration unit 114, 114a) presented a response result (second response result) by adding a priority or supplementing machine information to the response result (first response result) received from the generation AI device 20, but this is not limited to this. For example, the program creation assistance device 10, 10A may omit the function of the response result regeneration unit 114, 114a and present the response result (first response result) received from the generation AI device 20 by the receiving unit 113.

[0103] Note that the functions included in the program creation assistance devices 10 and 10A in the modified first embodiment, the second embodiment, and the modified second embodiment can be realized by hardware, software, or a combination of these. Here, "realized by software" means that the functions are realized by a computer reading and executing a program.

[0104] The program can be stored and supplied to a computer using various types of non-transitory computer-readable media. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs). The program may be provided to the computer by various types of transient computer-readable media. Examples of transient computer-readable media include electrical signals, optical signals, and electromagnetic waves. The transient computer-readable media can provide the program to the computer via a wired communication path such as an electrical wire or optical fiber, or via a wireless communication path.

[0105] The step of executing the program recorded on the recording medium includes not only processes that are performed in chronological order, but also processes that are not necessarily performed in chronological order but are performed in parallel or individually. Also, the step of writing the program may be performed by cloud computing.

[0106] Although the present disclosure has been described in detail, the present disclosure is not limited to the individual embodiments described above. Various additions, substitutions, modifications, partial deletions, etc. are possible in these embodiments without departing from the gist of the present disclosure or the spirit of the present disclosure derived from the content of the claims and their equivalents. These embodiments can also be implemented in combination. For example, in the above-described embodiments, the order of each operation and the order of each process are shown as examples and are not limited to these. The same applies when numerical values ​​or mathematical expressions are used in the description of the above-described embodiments.

[0107] The following supplementary notes are further disclosed regarding the above-described embodiments and modifications. (Supplementary Note 1) The program creation assistance device (10) is a program creation assistance device that assists in the creation of a numerical control program for operating an industrial machine, and includes a machine information acquisition unit (110) that acquires machine information related to the industrial machine, a question generation unit (111) that acquires operation information related to a desired operation content of the industrial machine and combines the operation information acquired by the machine information acquisition unit (110) to generate a question to be sent to the generation AI device (20), a transmission unit (112) that transmits the question generated by the question generation unit (111) to the generation AI device (20), a reception unit (113) that receives a first response result from the generation AI device (20), and a presentation unit (115) that presents the first response result. (Supplementary Note 2) The program creation assistance device (10, 10A) of Supplementary Note 1 includes a response result regeneration unit (114, 114a) that generates a second response result by supplementing the first response result received by the receiving unit (113) with machine information acquired by the machine information acquisition unit (110), and the presentation unit (115) presents the second response result generated by the response result generation unit (114, 114a). (Supplementary Note 3) In the program creation assistance device (10, 10A) of Supplementary Note 2, when the receiving unit (113) receives two or more numerical control programs from the generation AI device (20) as first response results in response to a question generated by the question generation unit (113), the response result regeneration unit (114, 114a) generates a second response result in which priority is assigned to the two or more numerical control programs based on machine information of the industrial machinery, and the presentation unit (115) presents the second response result to which priority is assigned. (Supplementary Note 4) In the program creation assistance device (10A) of Supplementary Note 2 or Supplementary Note 3, when the receiving unit (113) receives a request for additional information from the generation AI device (20) in response to a question generated by the question generation unit (111), the response result regeneration unit (114a) determines whether the additional information can be provided from the machine information, and if it determines that the additional information can be provided, transmits the additional information to the generation AI device (20) via the transmitting unit (112a). (Supplementary Note 5) In the program creation assistance device (10, 10A) of Supplementary Note 1 or Supplementary Note 2, the presentation unit (115) presents the machine information used when the question generation unit (111) generated the question.(Supplementary Note 6) In the program creation assistance device (10, 10A) of Supplementary Note 2, the presentation unit (115) presents the machine information supplemented by the response result regeneration unit (114, 114a). (Supplementary Note 7) In the program creation assistance device (10, 10A) of Supplementary Note 1 or Supplementary Note 2, the machine information acquired by the machine information acquisition unit (110) includes at least one of identification information of the industrial machine, the type of the industrial machine, the configuration of each axis that constitutes the industrial machine, the position of each axis that constitutes the industrial machine, and the control state that controls the industrial machine.

[0108] 1 Program creation assistance system 10, 10A Program creation assistance device 11, 11a Control unit 110 Machine information acquisition unit 111, Question sentence generation unit 112, 112a Transmission unit 113 Reception unit 114, 114a Response result regeneration unit 115 Presentation unit 12 Input unit 13 Storage unit 131 Keyword table 132 Template data 133 Machine table 14 Display unit 20 Generation AI device

Claims

1. A program creation assistance device for assisting in creating a numerical control program for operating an industrial machine, comprising: a machine information acquisition unit that acquires machine information regarding the industrial machine; a question generation unit that acquires operation information regarding a desired operation content of the industrial machine and generates a question sentence for the AI device in combination with the machine information acquired by the machine information acquisition unit; a transmission unit that transmits the question sentence generated by the question generation unit to the AI device; a reception unit that receives a first response result from the AI device; and a presentation unit that presents the first response result.

2. The program creation assistance device according to claim 1, further comprising a response result regeneration unit that generates a second response result by supplementing the first response result received by the reception unit with the machine information acquired by the machine information acquisition unit, and the presentation unit presents the second response result generated by the response result generation unit.

3. When the reception unit receives two or more numerical control programs from the AI device as the first response result for the question sentence generated by the question generation unit, the response result regeneration unit generates the second response result by assigning priorities to the two or more numerical control programs based on the machine information of the industrial machine, and the presentation unit presents the second response result with priorities assigned thereto. The program creation assistance device according to claim 2.

4. When the reception unit receives a request for additional information from the AI device for the question sentence generated by the question generation unit, the response result regeneration unit determines whether the additional information can be provided from the machine information, and if it is determined that the additional information can be provided, the response result regeneration unit transmits the additional information to the AI device via the transmission unit. The program creation assistance device according to claim 2 or claim 3.

5. The program creation assistance device according to claim 1 or claim 2, wherein the presentation unit presents the machine information used in generating the question sentence in the question generation unit.

6. The program creation assistance device according to claim 2, wherein the presentation unit presents the machine information supplemented by the response result regeneration unit.

7. The machine information acquired by the machine information acquisition unit includes at least any one of identification information of the industrial machine, the type of the industrial machine, the configuration of each axis constituting the industrial machine, the position of each axis constituting the industrial machine, and the control state for controlling the industrial machine. The program creation support device according to claim 1 or claim 2.

Citation Information

Patent Citations

  • Robot programming support device, robot programming support program, and robot programming support method

    JP2023087457A

  • Programming support device, robot system, programming support method, and program generation method

    JP6455646B1

  • Website creation support device, website creation support system, and website creation support program

    JP7378003B1

Cited By

  • Control system, control method, and program

    JP7900101B1