Information generating device and computer-readable storage medium

The information generating device addresses the challenge of understanding control status in industrial machinery by associating program elements with additional information and images, facilitating easy comprehension of the control state.

JP7758759B2Active Publication Date: 2025-10-22FANUC LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2023575016
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-01-21
Publication Date
2025-10-22
Estimated Expiration
2042-01-21

AI Technical Summary

Technical Problem

Conventional systems struggle to enable operators to easily understand the control status of industrial machinery by displaying various signals on a viewing screen, making it difficult for inexperienced operators to comprehend the operations being performed.

Method used

An information generating device that includes a program acquisition unit, extraction unit, dictionary creation unit, image acquisition unit, and output unit to associate program elements with additional information and images, allowing for easy understanding of the control state.

Benefits of technology

Enables operators to visually and easily comprehend the control state of industrial machinery by displaying associated images and additional information, reducing the need for operator experience and workload.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007758759000001
    Figure 0007758759000001
  • Figure 0007758759000002
    Figure 0007758759000002
  • Figure 0007758759000003
    Figure 0007758759000003
Patent Text Reader

Abstract

This information generation device includes: a program acquisition unit acquiring a program executed in a control device that controls industrial machinery; an extraction unit extracting, from the program acquired by the program acquisition unit, elements constituting the program and additional information added to the elements; and a dictionary creation unit creating a dictionary in which the elements and additional information extracted by the extraction unit are associated with one another.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to an information generating device and a computer-readable storage medium. [Background technology]

[0002] Conventionally, a system is known that displays various signals indicating the control status of industrial machinery on a viewing screen (Patent Document 1). In this system, the input / output timings of multiple types of signals are displayed on the viewing screen. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2020-175534 Summary of the Invention [Problem to be solved by the invention]

[0004] However, in conventional systems, even if various signals are displayed on a viewing screen, it is difficult for an operator to understand the control status of the control device. For example, an operator needs a lot of experience to understand what operations are being performed in the industrial machinery by looking at the status of various signals displayed on the viewing screen. In other words, it is difficult for an inexperienced operator to understand the operations being performed in the industrial machinery by looking at the status of various signals.

[0005] The present disclosure aims to provide an information generating device and a computer-readable storage medium that enable an operator to easily understand the control state of a control device. [Means for solving the problem]

[0006] The information generating device includes a program acquisition unit that acquires a program to be executed in a control device that controls an industrial machine, an extraction unit that extracts elements that constitute the program and additional information added to the elements from the program acquired by the program acquisition unit, and a dictionary creation unit that creates a dictionary that associates the elements extracted by the extraction unit with the additional information. an image acquisition unit that acquires an image showing the state of the industrial machine; an association unit that associates the image acquired when a control state related to the element in the control device changes with additional information associated with the element in the dictionary; and an output unit that outputs the associated image and additional information; Equipped with.

[0007] A computer-readable storage medium acquires a program to be executed in a control device that controls an industrial machine, extracts elements constituting the program and additional information added to the elements from the acquired program, and creates a dictionary that associates the extracted elements with the additional information; acquiring an image showing a state of an industrial machine, associating the acquired image with additional information associated with the element in a dictionary when a control state related to the element changes in a control device, and outputting the associated image and additional information; The program stores instructions for causing a computer to execute the above. [Effects of the Invention]

[0008] One aspect of the present disclosure makes it possible for an operator to easily understand the control state of a control device. [Brief explanation of the drawings]

[0009] [Figure 1] FIG. 2 is a block diagram illustrating an example of a hardware configuration of an industrial machine. [Figure 2] FIG. 2 is a block diagram showing an example of functions of an information generating device implemented in a control device. [Figure 3] FIG. 10 is a diagram showing an example of a machining program. [Figure 4] FIG. 10 is a diagram illustrating an example of information registered in a dictionary. [Figure 5] FIG. 10 is a diagram illustrating an example of a ladder program. [Figure 6] FIG. 10 is a diagram illustrating an example of information registered in a dictionary. [Figure 7] FIG. 10 illustrates an example of an embedded program. [Figure 8] FIG. 10 is a diagram illustrating an example of information registered in a dictionary. [Figure 9] FIG. 10 is a diagram showing an example of a display mode of an image and additional information. [Figure 10] 10 is a flowchart illustrating an example of a process flow for generating a dictionary. [Figure 11] 10 is a flowchart illustrating an example of processing executed by the information generating device. [Figure 12] FIG. 2 is a block diagram showing an example of functions of an information generating device including a receiving unit. [Figure 13A] FIG. 10 is a diagram illustrating an example of editing a dictionary. [Figure 13B] FIG. 10 is a diagram illustrating an example of editing a dictionary. [Figure 14] FIG. 10 is a diagram illustrating an example of a ladder program. [Figure 15] FIG. 10 is a diagram illustrating an example of information registered in a dictionary. DETAILED DESCRIPTION OF THE INVENTION

[0010] An information generating device according to an embodiment of the present disclosure will be described below with reference to the drawings. Note that not all combinations of features described in the following embodiments are necessarily required to solve the problem. In addition, more detailed description than necessary may be omitted. Furthermore, the following description of the embodiments and the drawings are provided to enable those skilled in the art to fully understand the present disclosure, and are not intended to limit the scope of the claims.

[0011] The information generating device is implemented in, for example, a control device that controls industrial machinery. The information generating device may also be implemented in a server, a personal computer (PC), or a portable tablet that is connected to the control device via a wired or wireless connection.

[0012] The industrial machines include machine tools, injection molding machines, wire electric discharge machines, and industrial robots. The machine tools are, for example, lathes, machining centers, drilling centers, and multi-tasking machines. The control device is, for example, a numerical control device that controls the industrial machines. Below, an embodiment will be described in which the information generating device is implemented in a control device that controls the machine tool.

[0013] FIG. 1 is a block diagram showing an example of a hardware configuration of a machine tool equipped with a control device.

[0014] The machine tool 1 includes a control device 2, an input / output device 3, a servo amplifier 4, a servo motor 5, a spindle amplifier 6, a spindle motor 7, an auxiliary device 8, and an imaging element 9.

[0015] The control device 2 is a device that controls the entire machine tool 1. The control device 2 includes a hardware processor 201, a bus 202, a ROM (Read Only Memory) 203, a RAM (Random Access Memory) 204, and a non-volatile memory 205.

[0016] The hardware processor 201 is a processor that controls the entire control device 2 in accordance with a system program. The hardware processor 201 reads the system program stored in the ROM 203 via the bus 202 and performs various processes based on the system program. The hardware processor 201 controls the servo motor 5 and the spindle motor 7 based on the machining program. The hardware processor 201 is, for example, a CPU (Central Processing Unit) or an electronic circuit.

[0017] The hardware processor 201 analyzes the machining program and outputs control commands to the servo motor 5 and the spindle motor 7, for example, for each control period.

[0018] The bus 202 is a communication path that connects the various pieces of hardware within the control device 2. The various pieces of hardware within the control device 2 exchange data via the bus 202.

[0019] The ROM 203 is a storage device that stores a system program for controlling the entire control device 2. The ROM 203 may store an information generation program. The information generation program is a program executed by the information generating device. The ROM 203 is a computer-readable storage medium.

[0020] The RAM 204 is a storage device that temporarily stores various data and functions as a work area for the hardware processor 201 to process various data.

[0021] Nonvolatile memory 205 is a storage device that retains data even when machine tool 1 is turned off and power is not supplied to control device 2. Nonvolatile memory 205 stores, for example, machining programs and various parameters. Nonvolatile memory 205 is a computer-readable storage medium. Nonvolatile memory 205 is, for example, a battery-backed memory or an SSD (Solid State Drive).

[0022] The control device 2 further includes a first interface 206 , an axis control circuit 207 , a spindle control circuit 208 , a PLC (Programmable Logic Controller) 209 , an I / O unit 210 , and a second interface 211 .

[0023] The first interface 206 connects the bus 202 and the input / output device 3. The first interface 206 sends various data processed by the hardware processor 201 to the input / output device 3, for example.

[0024] The input / output device 3 is a device that receives and displays various data via the first interface 206. The input / output device 3 also accepts input of various data and sends the data to, for example, the hardware processor 201 via the first interface 206.

[0025] The input / output device 3 is, for example, a touch panel. When the input / output device 3 is a touch panel, the input / output device 3 is, for example, a capacitive touch panel. Note that the touch panel is not limited to a capacitive touch panel and may be a touch panel of another type. The input / output device 3 is installed in an operation panel (not shown) in which the control device 2 is housed.

[0026] The axis control circuit 207 is a circuit that controls the servo motor 5. The axis control circuit 207 receives a control command from the hardware processor 201 and outputs a command to drive the servo motor 5 to the servo amplifier 4. The axis control circuit 207 sends, for example, a torque command to control the torque of the servo motor 5 to the servo amplifier 4.

[0027] The servo amplifier 4 receives a command from the axis control circuit 207 and supplies a current to the servo motor 5 .

[0028] The servo motor 5 is driven by receiving a current supply from the servo amplifier 4. The servo motor 5 is connected to, for example, a ball screw that drives a tool post. When the servo motor 5 is driven, structures of the machine tool 1, such as the tool post, move in the directions of the control axes. The servo motor 5 has a built-in encoder (not shown) that detects the position and feed rate of the control axis. Position feedback information and speed feedback information indicating the position and feed rate of the control axis, respectively, detected by the encoder are fed back to the axis control circuit 207. In this way, the axis control circuit 207 performs feedback control of the control axis.

[0029] The spindle control circuit 208 is a circuit for controlling the spindle motor 7. The spindle control circuit 208 receives a control command from the hardware processor 201 and sends a command to the spindle amplifier 6 to drive the spindle motor 7. The spindle control circuit 208 sends, for example, a spindle speed command to the spindle amplifier 6 to control the rotation speed of the spindle motor 7.

[0030] The spindle amplifier 6 receives a command from the spindle control circuit 208 and supplies a current to the spindle motor 7 .

[0031] The spindle motor 7 is driven by receiving a current supplied from the spindle amplifier 6. The spindle motor 7 is connected to the main shaft and rotates the main shaft.

[0032] The PLC 209 is a device that executes a ladder program to control the auxiliary device 8. The PLC 209 sends commands to the auxiliary device 8 via an I / O unit 210.

[0033] The I / O unit 210 is an interface that connects the PLC 209 and the auxiliary device 8. The I / O unit 210 sends a command received from the PLC 209 to the auxiliary device 8.

[0034] The auxiliary device 8 is a device that is installed in the machine tool 1 and performs auxiliary operations in the machine tool 1. The auxiliary device 8 operates based on commands received from the I / O unit 210. The auxiliary device 8 may also be a device that is installed in the periphery of the machine tool 1. The auxiliary device 8 is, for example, a tool changer, a cutting fluid injection device, or an opening / closing door drive device.

[0035] The second interface 211 connects the bus 202 and the image sensor 9. The second interface 211 sends image data captured by the image sensor 9 to the hardware processor 201.

[0036] The imaging element 9 is a component that converts light from a subject that enters through a lens into digital image data and outputs the digital image data. The imaging element 9 is also called an image sensor. The imaging element 9 is mounted in, for example, a camera.

[0037] Next, the functions of the information generating device 20 will be described.

[0038] 2 is a block diagram showing an example of the functions of the information generating device 20 implemented in the control device 2. The information generating device 20 includes a program acquiring unit 21, an extracting unit 22, a dictionary creating unit 23, a dictionary storage unit 24, an image acquiring unit 25, an associating unit 26, and an output unit 27.

[0039] The program acquisition unit 21, extraction unit 22, dictionary creation unit 23, image acquisition unit 25, association unit 26, and output unit 27 are realized, for example, by the hardware processor 201 performing arithmetic processing using the system program and information generation program stored in the ROM 203 and various data stored in the nonvolatile memory 205. The dictionary storage unit 24 is realized by storing various data in the RAM 204 or the nonvolatile memory 205.

[0040] The program acquisition unit 21 acquires a program to be executed in the control device 2 that controls the machine tool 1. The program acquisition unit 21 acquires the program, for example, from the non-volatile memory 205 of the control device 2. The program includes a machining program, a sequence program, a system program, and an embedded program.

[0041] The machining program is a program for operating each axis of the machine tool 1 to machine a workpiece.

[0042] A sequence program is a program that operates the PLC 209 through sequence control. Sequence control is a control that proceeds sequentially according to a predetermined order or logic. A sequence program includes a ladder program and function blocks.

[0043] The system program is a program for running the OS (Operating System) of the control device 2. The system program is also a program that is installed in the control device 2 by the vendor of the control device 2.

[0044] The built-in program is a program that assists the system program and is used by users, including the operator of the control device 2, to customize the system program.

[0045] The extraction unit 22 extracts elements constituting a program and additional information added to the elements from the program acquired by the program acquisition unit 21. The elements constituting a program are various codes and symbols included in the program. The additional information added to the elements is a comment composed of a character string. The additional information may be a graphic. The additional information is information for explaining the element. The additional information may be a symbol name for identifying the element.

[0046] When the program is a machining program, the elements that make up the program include G code, M code, F code, and S code. The elements that make up the program may also include macro variables.

[0047] When the program is a sequence program, the elements that make up the program include character symbols, which include addresses that indicate the locations of devices.

[0048] If the program is a system program, the elements that make up the program are various codes included in the system program, and these codes are codes written in various programming languages.

[0049] When a program is an embedded program, the elements that make up the program are various codes included in the embedded program, which are codes written in various programming languages.

[0050] Figure 3 is a diagram showing an example of a machining program. The character strings enclosed in parentheses are additional information. "Update number of workpieces to be machined" is additional information explaining that the command written on the next line is a command to update the number of workpieces to be machined.

[0051] The string beginning with "#" on the line following "(Update number of workpieces to be machined)", i.e. "#2000", is a macro variable. As explained in the additional information, "#2000=#2000+1;" is a command to update the number of workpieces to be machined. In other words, each time workpiece machining starts or ends, the value of the macro variable "#2000" is incremented by 1.

[0052] "WORK LOAD BY ROBOT" is additional information that explains that the command written on the next line is a command to have the robot transport the workpiece. "M200;" is a command to have the robot transport the workpiece, as explained in the additional information.

[0053] "Step 1: Machine the top surface of the workpiece with tool 8" is additional information that explains that the command written on the next line onwards is a command to machine the top surface of the workpiece using tool number 8. "T8 M6;" is a command to change to tool number 8.

[0054] For example, the extraction unit 22 extracts a macro variable "#2000" and additional information "Update number of workpieces to be machined" as a set of elements constituting the program. The extraction unit 22 also extracts an element "M200;" constituting the program and additional information "WORK LOAD BY ROBOT" as a set. The extraction unit 22 also extracts an element "T8 M6;" constituting the program and additional information "Process 1: Machine the top surface of the workpiece with tool 8" as a set.

[0055] The extraction unit 22 extracts, for example, a character string enclosed in parentheses and a macro variable or command written on the line following this character string as additional information and an element constituting a program, respectively.

[0056] The dictionary creation unit 23 creates a dictionary that associates the elements that make up the program extracted by the extraction unit 22 with the additional information. "Associating" means registering the elements that make up the program and the additional information in correspondence with each other. The dictionary can also be considered a table that associates the elements that make up the program with the additional information.

[0057] 4 is a diagram showing an example of information registered in the dictionary. In the dictionary, the elements "#2000," "M200," and "T8 M6" that make up the program extracted by the extraction unit 22 are associated with the additional information "update the number of workpieces to be machined," "WORK LOAD BY ROBOT," and "Step 1: Machine the top surface of the workpiece with tool 8," respectively.

[0058] Figure 5 is a diagram showing an example of a ladder program. The lines extending horizontally are connection lines. The lines extending vertically on both sides of the connection lines are control bus lines. The circular symbol written on the connection line is a coil. The character string "Y001.0" written above the coil is a string representing an address. The character string written in the speech bubble next to the symbol is additional information.

[0059] The extraction unit 22 extracts the character string "COOLANT PUMP ON" written in the speech bubble and the address "Y001.0" written adjacent to the coil symbol as additional information and an element constituting the program, respectively.

[0060] The dictionary creation unit 23 creates a dictionary that associates the elements that make up the program extracted by the extraction unit 22 with additional information. When the extraction unit 22 extracts an address from the ladder program, the dictionary creation unit 23 may create a dictionary by adding the character string "=1" after the character string indicating the address. In this case, the dictionary associates the elements that make up the program, their control states, and additional information.

[0061] Fig. 6 is a diagram showing an example of information registered in the dictionary. In the dictionary, the elements and control states constituting the program extracted by the extraction unit 22 are associated with additional information. Specifically, "Y001.0=1" is associated with "COOLANT PUMP ON." In other words, the additional information registered in the dictionary shown in Fig. 6 explains that the coolant pump is turned on when the state of "Y001.0" is "1."

[0062] Figure 7 shows an example of an embedded program. The character string following " / / " "Read key input and change machining program number" is additional information. The command "cnc_prog_no=read_keyinput();" written on the line following the additional information is a command to read key input and change the machining program number, as explained by the additional information.

[0063] The extraction unit 22 extracts the character string written after " / / " and the shared variable "cnc_prog_no" written in the line following this character string as additional information and an element constituting the program, respectively. Note that the shared variable means, for example, a memory area accessible from both the system program and the embedded program.

[0064] The dictionary creation unit 23 creates a dictionary that associates the elements that make up the program extracted by the extraction unit 22 with the additional information.

[0065] 8 is a diagram showing an example of information registered in the dictionary. In the dictionary, the element "cnc_prog_no" constituting the program extracted by the extraction unit 22 is associated with additional information "read key input and change machining program number."

[0066] The dictionary storage unit 24 stores the dictionary created by the dictionary creation unit 23. The dictionary storage unit 24 may store a dictionary received from outside the information generating device 20, in addition to the dictionary created by the dictionary creation unit 23.

[0067] The image acquisition unit 25 acquires images showing the state of the machine tool 1. The images showing the state of the machine tool 1 are, for example, images acquired from a camera that captures the exterior of the machine tool 1. The images include at least one of still images and videos. The image acquisition unit 25 acquires image data from, for example, a camera that captures an image of the machining area of ​​the workpiece. The image acquisition unit 25 sequentially acquires images captured at a predetermined frame rate from the camera.

[0068] The image showing the state of the machine tool 1 may be an image displayed on the display screen of the input / output device 3. In other words, the image acquired by the image acquisition unit 25 may be a captured image obtained by capturing an image displayed on the display screen of the input / output device 3. The image acquisition unit 25 acquires the image displayed on the input / output device 3 from a capture device (not shown). For example, when execution of a machining program is started in the machine tool 1, the image acquisition unit 25 starts acquiring the image displayed on the display screen of the input / output device 3.

[0069] The associating unit 26 associates an image acquired by the image acquiring unit 25 when a control state related to an element constituting a program in the control device 2 changes with additional information associated with the element constituting the program in the dictionary. The control state related to the element constituting the program includes at least one of the state of a signal, the state of a macro variable, and the state of a shared variable. In other words, a change in the control state includes a change in the value of a signal, a change in the value of a macro variable, and a change in the value of a shared variable.

[0070] When the control device 2 executes the machining program shown in Fig. 3, the control state changes when the value of the macro variable "#2000" changes. The control state also changes when a signal for executing workpiece transport based on the command "M200;" changes. The control state also changes when a signal for executing tool change based on the command "T8 M6;" changes.

[0071] The image acquired by the image acquisition unit 25 when the control state related to the element constituting the program changes is one frame acquired by the image acquisition unit 25 at the same timing as the timing when the control state related to the element constituting the program changes. Here, "same" does not have to be exactly the same, and may be shifted by a range of several milliseconds to several seconds.

[0072] The associating unit 26 associates the image acquired at the time the value of the macro variable "#2000" changes with the additional information "Update number of workpieces processed" associated with the element "#2000" in the dictionary shown in Figure 4.

[0073] The associating unit 26 associates the image acquired at the time when a predetermined signal related to the transport of the work by the robot based on the command "M200;" changes with the additional information "WORK LOAD BY ROBOT" associated with the element "M200;" in the dictionary shown in Figure 4.

[0074] The associating unit 26 associates the image acquired at the time when a predetermined signal related to tool replacement changes based on the command "T8 M6;" with the additional information "Step 1: Machine the top surface of the workpiece with tool 8" associated with the element "T8 M6;" in the dictionary shown in Figure 4.

[0075] When the control device 2 executes the ladder program shown in FIG. 5, the control state changes when the value of the signal at address "Y001.0" changes from 0 to 1.

[0076] The associating unit 26 associates the image acquired at the time when the value of the signal at address "Y001.0" changes from 0 to 1 with the additional information "COOLANT PUMP ON" associated with the element "Y001.0" in the dictionary shown in Figure 6.

[0077] When the control device 2 executes the built-in program shown in FIG. 7, the control state changes when the shared variable represented by "cnc_prog_no" is changed to the number entered by keyboard.

[0078] The associating unit 26 associates the image acquired at the time when the program number represented by "cnc_prog_no" is changed to the number entered by keyboard with the additional information "Read the keyboard input and change the machining program number" associated with the element "cnc_prog_no" in the dictionary shown in FIG. 8.

[0079] The signal states include signal states based on machining program commands and signal states based on sequence program commands. Signals based on machining program commands change when commands specified in the machining program are executed. An example of a command specified in the machining program is the tool change command "M6." Signals based on sequence program commands change when the sequence program is executed. A signal that changes when the sequence program is executed is, for example, a specific function in progress signal.

[0080] The output unit 27 outputs the image acquired by the image acquisition unit 25. The output unit 27 also outputs the additional information associated with the image by the association unit 26. The output unit 27 outputs the image and the additional information to the input / output device 3, for example.

[0081] The output unit 27 may output the additional information so that the additional information is superimposed on the image associated with the additional information by the associating unit 26 and on a predetermined number of images acquired subsequent to the associated image. As a result, the additional information is displayed on the display screen of the input / output device 3 for a predetermined period of time, superimposed on the image acquired by the image acquiring unit 25.

[0082] When the input / output device 3 receives the image and the additional information associated by the association unit 26, it displays the image and the additional information on the display screen.

[0083] 9 is a diagram showing an example of the display screen of the input / output device 3. On the display screen, additional information "Step 1: Machine the upper surface of the workpiece with tool 8" is displayed superimposed on the image acquired by the image acquisition unit 25. Note that the additional information may be displayed adjacent to the image acquired by the image acquisition unit 25.

[0084] Next, a description will be given of the processing executed by the information generating device 20. First, a description will be given of the flow of processing in which the information generating device 20 generates a dictionary.

[0085] 10 is a flowchart showing an example of the process flow for generating a dictionary by information generating device 20. First, program acquiring unit 21 acquires a program executed by control device 2 that controls machine tool 1 (step SA1).

[0086] Next, the extraction unit 22 extracts elements constituting the program and additional information added to the elements constituting the program from the program acquired by the program acquisition unit 21 (step SA2).

[0087] Next, the dictionary creating unit 23 creates a dictionary that associates the elements that make up the program extracted by the extracting unit 22 with the additional information (step SA3).

[0088] Next, the dictionary storage unit 24 stores the dictionary created by the dictionary creation unit 23 ( Steps SA4) The process ends. By executing the above process, the dictionary is created in the information generating device 20.

[0089] Next, the processing executed by information generating device 20 when machine tool 1 is in operation will be described.

[0090] 11 is a diagram showing an example of processing executed by information generating device 20 when machine tool 1 is operating. When execution of a machining program is started in machine tool 1, image acquiring unit 25 starts acquiring images of machine tool 1 (step SB1).

[0091] Next, the associating unit 26 associates the image acquired by the image acquiring unit 25 when the control state related to the element in the control device 2 changes with the additional information associated with the element in the dictionary (step SB2).

[0092] Next, output unit 27 outputs the image and additional information associated by association unit 26 (step SB3). When operation of machine tool 1 ends, information generating device 20 ends this process.

[0093] As described above, the information generating device 20 includes a program acquisition unit 21 that acquires a program to be executed in the control device 2 that controls the industrial machinery, an extraction unit 22 that extracts elements that constitute the program and additional information added to the elements from the program acquired by the program acquisition unit 21, and a dictionary creation unit 23 that creates a dictionary that associates the elements extracted by the extraction unit 22 with the additional information.

[0094] Therefore, the information generating device 20 can automatically generate a dictionary in which the elements constituting the program are associated with the additional information. Therefore, the operator does not need to create the dictionary in advance and store it in the storage unit. As a result, the workload of the operator can be reduced.

[0095] The information generating device 20 further includes an image acquiring unit 25 that acquires an image of the industrial machine captured by the image sensor 9, an associating unit 26 that associates the image acquired by the image acquiring unit 25 with additional information associated with the element in the dictionary when a control state related to the element changes in the control device 2, and an output unit 27 that outputs the image and additional information associated by the associating unit 26. Therefore, the information generating device 20 can make the operator easily understand the control state of the control device 2.

[0096] The control state includes at least one of a signal state, a macro variable state, and a shared variable state. Therefore, the information generating device 20 can display additional information together with the image in response to various changes in the control state of the control device 2.

[0097] The programs include at least one of a machining program, a sequence program, a system program, and an embedded program. Therefore, the information generating device 20 can display additional information along with the image in response to changes in the control state when various programs are executed.

[0098] The additional information includes at least one of a comment and a symbol name. Therefore, the information generating device 20 allows the operator to easily understand the control state of the control device 2 visually.

[0099] In the above-described embodiment, the information generating device 20 may further include a receiving unit that receives editing information for editing additional information associated with elements that constitute a program in the dictionary.

[0100] 12 is a block diagram showing an example of functions of the information generating device 20 including a receiving unit 28. The receiving unit 28 receives editing information for editing the additional information from the touch panel of the input / output device 3, for example.

[0101] 13A and 13B are diagrams illustrating dictionary editing. In the dictionary shown in FIG. 13A, the additional information "Direction Selection +A" is associated with the element "G100.3=1" constituting a program. In the dictionary, the additional information "Direction Selection +A" is also associated with the element "X010.3=1" constituting a program and stored. In this case, when the value of the signal at address "G100.3" changes from 0 to 1, the additional information "Direction Selection +A" is output. Similarly, when the value of the signal at address "X010.3" changes from 0 to 1, the additional information "Direction Selection +A" is also output. Therefore, an operator may not be able to determine whether the value of the signal at address "X010.3" or the value of the signal at address "G100.3" has changed, simply by looking at the displayed additional information. In this case, the operator can input editing information to the reception unit 28 via, for example, the input / output device 3.

[0102] FIG. 13B shows an example of the dictionary after editing. The character string "(CNC)" has been added to the additional information "Direction Selection +A" associated with the element "G100.3=1." In this case, the receiving unit 28 receives editing information for changing "Direction Selection +A" to "Direction Selection +A(CNC)." Furthermore, the character string "(Operation)" has been added to the additional information "Direction Selection +A" associated with the element "X010.3=1." In this case, the receiving unit 28 receives editing information for changing "Direction Selection +A" to "Direction Selection +A(Operation)." This allows the operator to easily understand whether the value of the signal at address "G100.3" has changed in accordance with processing by a CNC (Computerized Numerical Control) device or whether the value of the signal at address "X010.3" has changed based on an operation.

[0103] The receiving unit 28 may receive deletion information for deleting information registered in the dictionary. In this case, the receiving unit 28 receives the deletion information for deleting additional information from the touch panel of the input / output device 3. By deleting some of the information registered in the dictionary, it is possible to prevent similar additional information from being displayed simultaneously on the display screen.

[0104] 14 is a diagram showing an example of a ladder program. In the ladder program shown in FIG. 14, a contact indicated by address "X010.3" to which additional information "JOG +A" is added and a contact indicated by address "X010.4" to which additional information "JOG +4 TH The coil indicated by the address "G100.3" with "AXIS" added is placed on one connection line. In this ladder program, the signal value of address "X010.3" and the signal value of address "G100.3" change at the same time. Therefore, the combination of "X010.3" and "JOG +A", and the combination of "G100.3" and "JOG +4" TH If both the "AXIS" and "AXIS" pairs are registered in the dictionary, there is a risk that these pieces of additional information that are similar to each other will be displayed simultaneously on the display screen.

[0105] Therefore, when the receiving unit 28 receives deletion information for deleting any of the pairs registered in the dictionary, "JOG +A" and "JOG +4" can be deleted. TH This prevents "AXIS" from appearing on the display screen at the same time.

[0106] In the above-described embodiment, the dictionary creation unit 23 creates a dictionary by associating one piece of additional information with one element. However, the dictionary creation unit 23 may create a dictionary by associating multiple pieces of additional information with one element. Furthermore, when multiple pieces of additional information are associated with one element in the dictionary, the receiving unit 28 may receive selection information for selecting one of the multiple pieces of additional information registered in the dictionary. In this case, the receiving unit 28 receives selection information for selecting additional information from the touch panel of the input / output device 3.

[0107] For example, if the address "Y001.0" is associated with the additional information "coolant pump on" in both Japanese and English, the receiving unit 28 may receive additional information that selects the additional information in either language.

[0108] In addition, when the control state related to an element constituting a program changes at least between a first state and a second state, the dictionary creation unit 23 may create a dictionary that associates one element with two types of additional information: additional information indicating the first state and additional information indicating the second state.

[0109] FIG. 15 shows an example of a dictionary in which two types of additional information are associated with one element. For example, in a ladder program, the signal at address "Y002.0" changes between "10" and "100," and the additional information "feedrate" is added to address "Y002.0." The dictionary creation unit 23 associates the additional information "feedrate" with each possible value of "Y002.0." Furthermore, if it is predefined in a predetermined storage area that the signal at address "Y002.0" changes between "10" and "100," the dictionary creation unit 23 adds the possible values ​​of address "Y002.0" after the additional information "feedrate." This allows the additional information "feedrate 10" and "feedrate 100" to be displayed corresponding to the multiple values ​​"10" and "100" that a single element can take.

[0110] The present disclosure is not limited to the above-described embodiments, and can be appropriately modified without departing from the spirit and scope of the present disclosure. In the present disclosure, any component of the embodiments can be modified or omitted. [Explanation of symbols]

[0111] 1 Machine tools 2. Control device 20 Information generation device 21 Program Acquisition Department 22 Extraction part 23 Dictionary Creation Department 24 Dictionary storage unit 25 Image acquisition unit 26 Association section 27 Output section 28 Reception Department 201 Hardware Processor 202 Bus 203 ROM 204 RAM 205 Non-volatile memory 206 First Interface 207 Axis control circuit 208 Spindle control circuit 209 PLC 210 I / O units 211 Second Interface 3 Input / Output Devices 4 Servo amplifiers 5 Servo motors 6 Spindle amplifier 7 Spindle motor 8 Auxiliary equipment 9. Image sensor

Claims

1. a program acquisition unit that acquires a program to be executed in a control device that controls an industrial machine; an extracting unit that extracts elements constituting the program and additional information added to the elements from the program acquired by the program acquiring unit; a dictionary creation unit that creates a dictionary that associates the elements extracted by the extraction unit with the additional information; an image acquisition unit that acquires an image showing a state of the industrial machine; an associating unit that associates the image acquired by the image acquiring unit when a control state related to the element in the control device changes with the additional information associated with the element in the dictionary; an output unit that outputs the image and the additional information associated by the associating unit; An information generating device comprising:

2. The information generating device of claim 1, wherein the control state associated with the element changes between at least a first state and a second state, and the dictionary creation unit creates the dictionary in which the element is associated with the additional information indicating the first state and the additional information indicating the second state.

3. 3. The information generating device according to claim 1, wherein the control state includes at least one of a signal state, a macro variable state, and a shared variable state.

4. 4. The information generating device according to claim 1, wherein the program includes at least one of a machining program, a sequence program, a system program, and an embedded program.

5. 5. The information generating device according to claim 1, wherein the additional information includes at least one of a comment and a symbol name.

6. 6. The information generating device according to claim 1, further comprising a receiving unit that receives editing information for editing the additional information associated with the element in the dictionary.

7. Obtaining a program to be executed in a control device that controls an industrial machine; extracting elements constituting the program and additional information added to the elements from the acquired program; creating a dictionary that associates the extracted elements with the additional information; acquiring an image showing a state of the industrial machine; Associating the image acquired when a control state related to the element in the control device changes with the additional information associated with the element in the dictionary; outputting the associated image and the additional information; A computer-readable storage medium that stores instructions for causing a computer to execute the above.

Citation Information

Patent Citations

  • Numerical controller

    JP1993002204U

  • Numerical controller for machine tool

    JP2000066711A

  • Numerical controller

    JP2006099284A

  • Numerical controller for displaying additional information of machining program

    JP2010026920A

  • Numerical control device having program display function using plural images

    JP2016194843A