Machining program creation support device, machining system, machining program creation support method, and machining method

By extracting and grouping machining process sequences, template editing support is provided, which solves the problem of time and energy consumption of operators when creating new machining programs, improves the efficiency and accuracy of program reuse, and maintains the program structure.

CN119317883APending Publication Date: 2025-01-14MITSUBISHI ELECTRIC CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202280096783.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-06-10
Publication Date
2025-01-14

AI Technical Summary

Technical Problem

In the prior art, when creating new machining programs, operators need a lot of time and effort, and when reusing existing programs, they fail to effectively extract machining process information, resulting in program specificity and structure loss.

Method used

A machining program creation support device is designed to provide template machining program editing support by extracting and storing machining process sequences, grouping machining programs based on similarity, reducing the burden on the operator, and maintaining the program structure.

Benefits of technology

It reduces the burden on operators when creating new machining programs, improves the efficiency and accuracy of program reuse, and maintains the structure and specificity of the original program.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119317883A_ABST
    Figure CN119317883A_ABST
Patent Text Reader

Abstract

There is provided a machining program creation support apparatus including: a machining process sequence extraction module (103) that extracts a machining process sequence from each of machining programs stored in a machining program storage module (102), the machining process sequence of the machining programs being a list of machining process elements, the machining process elements are arranged according to the appearance sequence of the machining process elements in the machining program; a machining program grouping module (105) for grouping the machining programs on the basis of the degree of similarity of the machining process sequences of the machining programs; a group storage module (106) that stores a result of the grouping of the machining programs; and a finished shape display module (109) that causes a display unit (12) to display finished machining shapes of the machining programs divided into groups on the basis of the grouping result.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a machining program creation support device, a machining system, a machining program creation support method, and a machining method for creating a machining program by reusing an existing machining program. Background Art

[0002] The machining program created by the machining program creation device is used to numerically control a machining tool so as to machine a workpiece. In recent years, the machining program creation device includes a function to support an operator and facilitate the creation of a new machining program. As part of the support function, some machining program creation devices provide an option to reuse an already existing machining program generated and used in the past, or a part of an existing machining program.

[0003] However, the existing machining programs to be reused are usually selected based only on the similarity of the 3D model of the completed machined shape, without considering the actual machining program and the machining process operations it includes. When only the completed machined shape is considered, the details of the machining program, as well as the knowledge and habits of the operator who created the machining program cannot be extracted, which leads to a loss of machining program specificity. Therefore, merely reusing the existing machining program selected based on the completed machined shape is not enough to support the operator in creating a new machining program.

[0004] In order to address this deficiency in existing machining program reuse methods, it is necessary to extract machining process information from the machining program and reuse it as a basis for writing new machining programs.

[0005] Patent document 1 proposes a programming support device that extracts modules from multiple existing programs and reuses these modules. The patent focuses on a judgment program for a CAD model. The method finds and extracts modules that are defined as common parts of two or more existing programs, and reuses these modules to create a new program.

[0006] However, in the method of patent document 1, the module to be reused is selected by the operator through a search interface using keywords while creating a new program. Therefore, the operator needs to have sufficient knowledge to find appropriate keywords and combine them in the correct order, which takes time and effort.

[0007] Furthermore, the structure of the original program from which the module has been extracted is not considered in the module selection. Therefore, the structure of the modules in the original program is lost.

[0008] Citation List

[0009] Patent Literature

[0010] PTL 1: PCT International Application Publication No. 2013-504695 Summary of the invention

[0011] Technical issues

[0012] In the above conventional technology, creating a new machining program requires the knowledge and effort of the operator. Therefore, the task is difficult and time-consuming, which becomes a burden on the operator.

[0013] The present disclosure has been made in view of the above, and an object thereof is to obtain a machining program creation support device that can reduce the burden on an operator when creating a new machining program.

[0014] Solution to the problem

[0015] In order to solve the above-mentioned problems, a machining program creation support device according to the present disclosure includes: a machining program storage module, the machining program storage module stores a plurality of machining programs; a machining process sequence extraction module, the machining process sequence extraction module extracts a machining process sequence from each of the machining programs stored in the machining program storage module, the machining process sequence of the machining program being a list of machining process elements, the machining process elements being arranged in the order of their appearance in the machining program; a machining process sequence storage module, the machining process sequence storage module stores the machining process sequences extracted by the machining process sequence extraction module; and a machining program grouping module, the machining program grouping module uses the information stored in the machining program storage module to group the machining process elements. A machining process sequence in a process sequence storage module, which groups the machining programs stored in the machining program storage module based on the degree of similarity of the machining process sequences of the machining programs; a group storage module, which stores the result of grouping the machining programs by the machining program grouping module; a completed shape storage module, which stores the completed machining shapes of the machining programs stored in the machining program storage module; and a completed shape display module, which enables a display unit to display the completed machining shapes of the machining programs stored in the machining program storage module, which are divided into groups based on the grouping results stored in the group storage module, from the completed shape storage module.

[0016] Advantageous Effects of the Invention

[0017] The machining program creation support device according to the present disclosure achieves an effect of alleviating the burden on the operator when creating a new machining program. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 is a block diagram illustrating an exemplary configuration of a machining program creation support device according to the first embodiment of the present disclosure.

[0019] Figure 2 2 is a diagram illustrating an exemplary configuration of a machining system of the present disclosure.

[0020] Figure 3 An exemplary hardware configuration for realizing the machining program support device is shown.

[0021] Figure 4 This is a flowchart for explaining a process executed by the machining program support device.

[0022] Figure 5 1 is a diagram illustrating an example of a machining program and a machining process sequence extracted therefrom.

[0023] Figure 6 is a flowchart for explaining the process of grouping machining programs.

[0024] Figure 7 It is a scheme for explaining an example of common pattern extraction and similarity measurement.

[0025] Figure 8 A scheme is an example of grouping machining programs and storing data in a group storage module.

[0026] Fig. 9 An example of the main window is shown.

[0027] Fig.10 2 is a diagram illustrating the configuration of a group representative display area.

[0028] Fig.11 2 is a diagram illustrating the configuration of a sub-group representative display area.

[0029] Fig.12 1 is a diagram illustrating the configuration of the display area for the completed machined shape of the sub-group.

[0030] Fig.13 This is a diagram illustrating the configuration of the template machining program selection confirmation area.

[0031] Fig.14 FIG. 2 is a diagram illustrating the configuration of the filter function area.

[0032] Fig.15 is a diagram illustrating the configuration of the longest common pattern display window.

[0033] Fig.16 is a diagram illustrating the configuration of the longest common pattern display window.

[0034] Fig.17 FIG. 2 is a diagram illustrating an example of the summary display window.

[0035] Fig.18 FIG. 2 is a diagram illustrating an example of the summary display window.

[0036] Fig.19 2 is a diagram illustrating an example of the longest common pattern and a summary comparison window.

[0037] Fig. 20 2 is a diagram illustrating an example of the longest common pattern and a summary comparison window.

[0038] Fig.21 2 is a diagram illustrating an example of the longest common pattern and a summary comparison window.

[0039] Fig. 22 2 is a diagram illustrating an example of the longest common pattern and a summary comparison window.

[0040] Fig.23 : is a diagram illustrating an example of a machining process sequence display window.

[0041] Fig.24 : is a diagram illustrating an example of a machining process sequence display window.

[0042] Fig.25 2 is a diagram illustrating an example of a machining process sequence comparison window.

[0043] Fig.26 is a block diagram illustrating an exemplary configuration of a machining program creation support device according to a second embodiment of the present disclosure.

[0044] Fig. 27 is a flow chart used to illustrate the group modification process.

[0045] Fig.28 is a flowchart for explaining a process performed by the machining program support device according to the second embodiment. DETAILED DESCRIPTION

[0046] First embodiment

[0047] Figure 1 1 is a block diagram illustrating an exemplary configuration of a machining program creation support device according to a first embodiment of the present disclosure. The machining program creation support device 10 is a device that supports the creation of a machining program. A machining program is a program for numerically controlling a machining tool in order to machine a workpiece. The machining program creation support device 10 is connected to an input unit 11 and a display unit 12. Each connection may be a wireless connection or a wired connection. Although Figure 1 It is shown where the input unit 11 and the display unit 12 are outside the machining program creation support apparatus 10 , but the machining program creation support apparatus 10 may include the input unit 11 and the display unit 12 .

[0048] The machining program creation support device 10 includes a machining program storage module 102, a machining process sequence extraction module 103, a machining process sequence storage module 104, a machining program grouping module 105, a group storage module 106, a completed shape generation module 107, a completed shape storage module 108, a completed shape display module 109, an input receiving module 100, a template acquisition module 110, a template machining program editing support module 111 and a sending / receiving module 112.

[0049] The machining program storage module 102 stores a plurality of machining programs. The machining process sequence extraction module 103 extracts a machining process sequence from the machining program. The machining process sequence storage module 104 stores the extracted machining process sequence. The machining program grouping module 105 divides the machining program into groups. The group storage module 106 stores the grouping result. The completed shape generation module 107 generates a completed machining shape from the machining program. The completed shape storage module 108 stores the generated completed machining shape. The completed shape display module 109 causes the display unit 12 to display the completed machining shape. The input receiving module 100 receives input commands and instructions from the operator via the input unit 11. The template acquisition module 110 acquires a machining program as a template from the machining program storage module 102 according to the selection of the machining program from the operator. The template machining program editing support module 111 is an editor in which the operator can edit the template machining program using the input unit 11 to create a new machining program. The transmission / reception module 112 transmits and receives data with another device or the like.

[0050] The machining program storage module 102 stores the machining program 101 input from the outside into the machining program creation support device 10. The machining program 101 is an already existing program that has been used in the past and for which machinability has been confirmed. Together with the machining program 101, the machining program storage module 102 can also store, for example, a program ID. The program ID can be manually added by the operator when adding the program to the machining program storage module 102, or automatically retrieved from the machining program when included in the program. The program ID can also be added in any other way. In addition, the machining program storage module 102 includes a flag for each of the machining programs 101, which is used to check whether each of the machining programs 101 has been processed by the machining program creation support device 10. All flags are initially set to "OFF".

[0051] Specifically, the input receiving module 100 receives an instruction from the operator via the input unit 11, and according to the instruction, causes the machining program storage module 102 to store the machining program 101. The machining program 101 can be input into the machining program creation support device 10, for example, from another device connected thereto. In this case, the machining program 101 is input from the sending / receiving module 112, and is stored in the machining program storage module 102. The machining program 101 can be input via an external data storage device attached to the machining program creation support device 10. In this case, a reader device (not illustrated) receives the machining program 101, and the machining program 101 is stored in the machining program storage module 102. At the end of the entire process performed in the machining program creation support device 10, a new machining program 113 is created.

[0052] Figure 2 1 is a diagram illustrating an exemplary configuration of a machining system of the present disclosure. The machining system includes a machining program support device 10, a numerical control device 40, and a machining device 50, and performs machining on a workpiece 80 (which is an object to be machined). The machining program support device 10, the numerical control device 40, and the machining device 50 are connected and can communicate with each other. Each of these devices is connected via a wired line or a wireless connection. Communication is performed by wired communication or wireless communication.

[0053] Figure 1 The new machining program 113 shown is sent from the sending / receiving module 112 of the machining program support device 10 to the numerical control device 40. The numerical control device 40 receives the new machining program 113, and executes the new machining program 113 to generate a machining command for causing the machining device 50 to perform machining. Then, the numerical control device 40 generates a control signal indicating the machining command, and sends the control signal to the machining device 50. The machining device 50 includes a drive unit 60 and a machining tool 70. The drive unit 60 includes a motor that drives the machining tool 70 and a servo amplifier that controls the motor. The illustration of the motor and the servo amplifier is omitted. The machining device receives the control signal, and drives the machining tool 70 according to the control signal to machine the workpiece 80.

[0054] Note that, before the above actual machining, the new machining program 113 may be sent to the numerical control device 40, and test machining may be performed. In the test machining, the new machining program 113 is actually executed, and it may be determined whether the machining tool 70 operates properly based on the new machining program 113. It is not necessarily necessary to actually process the workpiece 80, because it is sufficient if the machining tool 70 is confirmed to be proper.

[0055] The machining program support device 10 can be implemented by a computer system including a plurality of computers. Figure 1 A part of the machining program support device 10 may be implemented by a computer, and the other part may be implemented by another computer. Any combination of functions implemented in each computer is acceptable. Moreover, the numerical control device 40 may include a part of the functions of the machining program support device 10. In addition, the machining program support device 10 may be implemented, for example, by a cloud computer system, or on a server connected to the Internet. In this case, the machining program creation support device 10 is connected to the numerical control device 40 via the Internet.

[0056] Next, a hardware configuration for realizing the machining program support device 10 will be described. Figure 3 An exemplary hardware configuration for realizing the machining program support device 10 is shown. Figure 3 An input device 90, a processing circuit system 93 including a processor 91 and a memory 92, a display 94, and a transceiver 95 are illustrated. Figure 1 Among the modules of the machining program support device 10, the machining program storage module 102, the machining process sequence extraction module 103, the machining process sequence storage module 104, the machining program grouping module 105, the group storage module 106, the completed shape generation module 107, the completed shape storage module 108, the completed shape display module 109, the input receiving module 100, the template acquisition module 110, the template machining program editing support module 111, and a part of the sending / receiving module 112 are implemented by the processor 91 and the memory 92. The processor 91 and the memory 92 constitute the processing circuit system 93. In addition, Figure 1 The input unit 11 is implemented by an input device 90. The input device 90 includes, for example, a mouse, a keyboard, and the like. Figure 1 The display unit 12 is implemented by a display 94 . A part of the transmission / reception module 112 is implemented by a transceiver 95 .

[0057] The processor 91 is, for example, a central processing unit (CPU). The processor 91 may be an arithmetic device, a microprocessor, a microcomputer, or a digital signal processor (DSP). The memory 92 may be a volatile memory or a nonvolatile memory. Examples thereof include a random access memory (RAM), a read-only memory (ROM), a flash memory, an erasable programmable read-only memory (EPROM), and an electrically erasable programmable read-only memory (EEPROM).

[0058] The memory 92 also stores a creation support program for implementing the process executed by the machining program support device 10. The processor 91 reads the creation support program from the memory 92 and executes the program to implement the above-mentioned Figure 1The function of the module. In addition, the memory 92 is used for temporary storage when the processor 91 executes the function. Note that the creation support program can be provided in a state where the creation support program is stored in a storage medium. In this case, the storage medium is attached to the machining program support device 10, and the creation support program is copied to the memory 92. Alternatively, the creation support program can be downloaded to the memory 902 from another computer or a cloud computer system via a communication path (such as a LAN cable, the Internet, etc.).

[0059] Figure 4 1 is a flowchart for explaining the process performed by the machining program support device 10. In step S1, as described above, the input receiving module 100 receives a plurality of machining programs 101 and stores them in the machining program storage module 102. In step S2, the machining process sequence extraction module 103 reads the machining program 101 from the machining program storage module 102. The machining process sequence extraction module 103 extracts a machining process sequence from each of the machining programs 101 stored in the machining program storage module 102. Note that one machining process sequence is extracted from each machining program. The machining process sequence and the machining process element will be further described later.

[0060] The machining process sequence extraction module 103 stores the extracted machining process sequence together with the corresponding program ID in the machining process sequence storage module 104. In addition, the machining process sequence extraction module 103 sets the flag of the machining program from which the machining process sequence is extracted in the machining program storage module 102 to "ON". When the machining process sequence extraction module 103 determines that the machining process sequence is extracted from all the machining programs 101 stored in the machining program storage module 102, step S2 is completed and the process proceeds to step S3. Note that the machining process sequence storage module 104 can be accessed by any module of the present disclosure or by an operator at any step of the machining process.

[0061] In step S3, the machining program grouping module 105 performs hierarchical grouping of machining programs based on the degree of similarity between the machining process sequences using the machining process sequences stored in the machining process sequence storage module 104. The results of the hierarchical grouping and the degree of similarity obtained by the machining program grouping module 105 are then stored in the group storage module 106. The grouping and similarity results obtained by the machining program grouping module 105 can be accessed by any module of the present disclosure or by an operator at any step of the machining process with reference to the group storage module 106.

[0062] In parallel with steps S2 and S3, step S4 is performed. In step S4, the completed shape generation module 107 generates a completed machining shape for each of the machining programs stored in the machining program storage module 102. The completed machining shape is an image of the machined object. The completed machining shape is directly generated from each machining program using a known simulation technology. In addition, when the shape type of the workpiece is defined in each of the machining programs, the completed shape generation module 107 can generate an image according to the shape type. In such a case, the completed shape generation module 107 extracts the shape type from each of the machining programs. The completed shape generation module 107 further generates a typical image corresponding to the shape type, or selects a completed machining shape belonging to the shape type as a typical image of the type. Alternatively, the completed shape generation module 107 may have a typical image of the shape type in advance. Then, the completed shape generation module 107 stores the completed machining shapes and typical images associated with each other in the completed shape storage module 108 for each shape type. The stored completed machined shapes and representative images can be accessed by any module of the present disclosure or by an operator at any step of the process. Figure 4 In the embodiment, steps S2 and S3 are performed in parallel, but step S4 can be performed at any time, as long as step S4 is performed before step S5. For example, step S4 can be performed before step S2 or after step S3.

[0063] Next, in step S5, the completed shape display module 109 uses the data stored in the completed shape storage module 108 and the grouping and similarity measurement result data stored in the group storage module 106 to display the main window on the display unit 12. The main window shows the completed machining shape so that the operator can determine whether several machining programs belong to the same group or different groups. In addition, the completed shape display module 109 can also display information other than the completed machining shape in response to a request from the operator. The details of the main window and its operation will be described later.

[0064] The operator selects one of the machining programs displayed in the window to be used as a template machining program, and specifies the selected machining program from the input unit 11. In step S6, the input receiving module 100 receives the specification from the input unit 11, and notifies the completion display module 109 of the specification. Upon receiving the specification, the completion display module 109 sends information about the selected machining program to the template acquisition module 110 through an interactive command. The information may be, for example, the ID of the selected machining program, etc.

[0065] In step S7, the template acquisition module 110 receives the information and acquires a machining program corresponding to the received information as a template machining program from the machining program storage module 102. The template machining program is a machining program used as a basis for creating another new machining program. The template acquisition module 110 sends the acquired machining program to the template machining program editing support module 111.

[0066] Next, the template machining program editing support module 111 causes the display unit 12 to display the machining program received as the template machining program. The template machining program editing support module 111 is a program editor, and the operator can edit the machining program using the template machining program editing support module 111. The operator uses the input unit 11 to edit the displayed template machining program. When the editing is completed, the operator inputs a command indicating that the editing is completed. In step S8, the template machining program editing support module 111 receives the command indicating that the editing is completed. In this case, the template machining program editing support module 111 completes the editing; thereby, a new machining program 113 is created (step S9).

[0067] Figure 5 1 is a diagram illustrating an example of a machining program and a machining process sequence extracted therefrom. Figure 5 The machining programs "P1", "P2" and "P3" stored in the machining program storage module 102 are schematically shown. Here, "P3" is taken as an example. The machining program includes multiple machining operations described. "P3" includes machining operations "1" to "5" in its program description. "Machining operation 1" is specified as "front end face roughing", "spindle head angle" is specified as "90.0°", and "tool" is specified as "T01, turning tool, shank 20×20, corner 80°". Based on this program description of "P3", the machining process sequence extraction module 103 extracts the machining process sequence "SQ3".

[0068] The machining process sequence of a machining program is a list of machining process elements. In the machining process sequence, the machining process elements are arranged in the order of their appearance, that is, in the order of their description in the machining program. The machining process elements are created by the machining process sequence extraction module 103 for each machining operation from the program description of each machining program. The machining process element is an item that reflects the type of machining process of the machining operation associated with several element properties that define the machining operation. The machining process sequence extraction module 103 creates each machining process element based on a predetermined extraction rule that defines the information to be extracted (e.g., parameters, properties, values, etc.) and the order of the extracted information. The machining operation is, for example, a drilling operation, etc. The element properties, for example, define the area to be machined, etc.

[0069] exist Figure 5 In "SQ3" in FIG. 1 , five machining process elements are shown. The first machining process element that appears is illustrated as "Facing_90.0_FrontFace_TurningTool_Rough". This machining process element is created (i.e., extracted) from "Machining Operation 1" according to a predetermined rule. The predetermined rule defines the element properties to be extracted from the program description. The predetermined rule may further define the element properties for each type of machining program. The type of machining program varies depending on, for example, the purpose or application of the machining program. Such types can be determined with reference to some parameters in each machining program. Using such predetermined rules, the element properties that constitute the machining process elements may vary depending on the machining program stored in the machining program extraction module 102. Note that the predetermined rules are set in advance in the machining process sequence extraction module 103. In addition, the operator can set or change the rules via the input unit 11. The predetermined rules are prepared so that machining process elements that are useful for assisting the operator in selecting a template machining program can be created.

[0070] Figure 6 1 is a flowchart for illustrating the process of grouping machining programs. The process is performed by the machining program grouping module 105. The first step of the process is a rough grouping step S101 of machining process sequences. In step S101, the machining program grouping module 105 roughly classifies the machining process sequences stored in the machining process sequence storage module 104. The classification is performed, for example, according to the absence or presence of a certain type of machining process element in the machining process sequence, or according to a given parameter value in the machining program corresponding to the machining process sequence. For example, the machining process sequence can be classified according to the type of machine tool used for the machining process sequence. Examples of the type of machine tool include lathes, machining centers, etc. By performing the rough grouping step S101 of machining process sequences, it becomes possible to process the machining programs of the rough group that do not need to be compared with each other separately, and the amount of calculation required for the subsequent steps can be reduced. Subsequent steps S2 and S3 are performed to independently process each rough group formed by step S101.

[0071] After step S101, step S102 is performed to extract common patterns of machining process sequences. A common pattern is a subsequence of sorted machining process elements that can be found in one or several machining process sequences of the target group. The order of the machining process elements of the common pattern is the same as the order in the machining process sequence from which they are extracted. Multiple common patterns with different lengths and including different machining process elements can be extracted from a single machining process sequence. The common patterns are then used in a similarity measurement step S103, which calculates the degree of similarity between each pair of machining process sequences based on the absence or presence of each of the common patterns in the machining process sequences.

[0072] In the next step (hierarchical clustering step S104), the machining program grouping module 105 uses the similarity degree value calculated by step S103 to perform hierarchical clustering of the machining programs for each rough group. In the hierarchical clustering, the hierarchical relationship between all the machining programs is found to create a hierarchical tree, which groups the machining programs according to their similarity degrees. The hierarchical tree is generated so that machining programs with relatively high similarity degrees are placed under the same branch of the hierarchical tree. For example, machining programs with similarities equal to or higher than a certain threshold are grouped and placed under the same branch. Based on the hierarchical clustering result of step S104, in the group / subgroup formation step S105, the machining program grouping module 105 divides the machining programs into a fixed number of groups, and further divides each group into subgroups to obtain a temporary grouping result.

[0073] In the group / subgroup evaluation step S106, the machining program grouping module 105 evaluates the temporary grouping result obtained in step S105 by using a known clustering evaluation index to ensure the best grouping result. In the present embodiment, the number of hierarchical levels of grouping is two, i.e., groups and subgroups, and the group storage module 106 is created accordingly. However, the number of hierarchical levels can be any value, and the group storage module 106 can be created so that the number of hierarchical levels is one or more than two. The temporary grouping result of step S105 is modified to obtain a final grouping result that is optimal for the structure of the group storage module 106. Note that the total number of groups and the total number of subgroups can each be fixed or limited to a certain number. This is because if the total number is too large, the efficiency of the operator in checking the machining program is reduced.

[0074] Finally, after confirming that the groups and subgroups are optimal in step S106, a machining program is selected for each group and each subgroup in a representative selection step S107 to represent the group or subgroup to which the machining program belongs. The selected machining program is defined as a representative of the group or subgroup. The machining program is selected based on the degree of similarity between its own machining process sequence and the machining process sequences of other machining programs in the group or subgroup to which the selected machining program belongs, so that the group or subgroup representative can appropriately represent all other machining process sequences.

[0075] Figure 7 It is a scheme for explaining an example of common pattern extraction and similarity measurement. Figure 7 An example of the results obtained through step S102 (common pattern extraction) and step S103 (similarity measurement) is shown with respect to the machining program storage module 102 containing three machining programs (P1, P2, and P3). The three machining process sequences SQ1, SQ2, and SQ3 extracted by the machining process sequence extraction module 103 are stored in the machining process sequence storage module 104 together with the program IDs of the machining programs described above with respect to the machining program storage module 102.

[0076] The machining process sequence SQ1 of the machining program P1 includes six machining process elements in the following order: [abccde]; the machining process sequence SQ2 of the machining program P2 includes seven machining process elements in the following order: [abcddef]; the machining process sequence SQ3 of the machining program P3 includes five machining process elements in the following order: [acdef]. Five common patterns are extracted from P1, P2, and P3 through step S102: [acde] (Pat1, appearing in P1, P2, and P3), [abced] (Pat2, appearing in P1 and P2), [acdef] (Pat3, appearing in P2 and P3), [abccde] (Pat4, appearing in P1), and [abcddef] (Pat5, appearing in P2).

[0077] Figure 7A table showing the existence of a pattern for each of the machining programs P1, P2, and P3 is also illustrated. For example, "Yes" is shown in the column corresponding to "P1" and "Pat1", which means that the common pattern Pat1 exists in the machining program P1. On the other hand, "No" is shown in the column corresponding to "P3" and "Pat2", which means that the common pattern Pat2 does not exist (i.e., is missing) in the machining program P3. By considering the absence and presence of each of the common patterns Pat1, Pat2, Pat3, Part4, and Part5 in the machining process sequences of the machining programs P1, P2, and P3 in the similarity measurement step S103, the degree of similarity between each pair of machining programs is obtained.

[0078] The degree of similarity is indicated as a value between "0" and "1", for example. The degree of similarity can be expressed in any manner. In this case, a value of "0" indicates that the two machining programs are not similar, that is, the machining process sequences between the two programs have no common machining process elements. A value of "1" indicates that the two machining programs are equivalent, that is, the two machining programs have exactly the same machining process sequence. Figure 7 In the example present in , the machining program pair P2 and P3 has the highest similarity degree, a value of "0.5", which indicates that the machining programs P2 and P3 are the two most similar machining programs in the machining program storage module 102. In contrast, the machining program pair P1 and P3 shows the lowest value of the similarity degree, 0.25, which means that the machining programs P1 and P3 are less similar machining programs.

[0079] Figure 8 It is a scheme of examples of grouping and data storage in the group storage module. Figure 8 The data structure stored in the group storage module 106 through the process of the machining program grouping module 105 is shown. Figure 8 Also shown is an example of the final results obtained from steps S104 (hierarchical clustering), S105 (group / subgroup formation), and S107 (representative selection) with respect to the machining program storage module 102 containing 15 machining programs (P01 to P15). The hierarchical tree obtained in step S104 indicates the similarity and structure between each machining program and / or group of machining programs. In the hierarchical tree, branch lines connect several machining programs and / or groups of machining programs to construct the hierarchical tree.

[0080] From the tree obtained in this example, two groups (A and B) are formed by step S105, each of which has two subgroups (A1 and A2 for A, B1 and B2 for B). Subgroup A1 contains five machining programs: P05, P15, P02, P11 and P13. Subgroup A2 contains four machining programs: P01, P09, P06 and P04. Group A contains all the machining programs of the two subgroups A1 and A2. Subgroup B1 contains three machining programs: P12, P03 and P07. Subgroup B2 contains three machining programs: P10, P08 and P14. Group B contains all the machining programs of the two subgroups B1 and B2. For each group and subgroup, a representative machining program is selected in step S107: P02 for A, P15 for A1, P06 for A2, P03 for B, P12 for B1, and P14 for B2. The representative machining program of a group is not necessarily the representative machining program of a subgroup among the subgroups of the group. The groups and subgroups, their relationships, and their representative machining programs are all stored in the group storage module 106 at the end of the process of the machining program grouping module 105.

[0081] Each group and subgroup is added with a group ID (in this example, "A" and "B") and a subgroup ID (in this example, "A1", "A2", "B1", and "B2"). When "A", "B", etc. are used to refer to a group in the following description, it means the group ID. The same applies to the subgroup. Note that Figure 8 The structure of the group storage module 106 is briefly shown. Specifically, the group storage module 106 stores a group ID indicating a group, a subgroup ID indicating a subgroup belonging to one of the groups, and a program ID representing a machining program. The group ID and the subgroup ID are added by the machining program grouping module 105. The program ID representing the machining program is stored in the machining program storage module 102 in association with the corresponding machining program. The IDs of all machining programs belonging to each of the subgroups are also stored. For each machining program belonging to the subgroup, the ID of the machining program in the subgroup may be further added or not. The similarity measurement result obtained in step S103 is also stored in association with the program ID of the machining program.

[0082] Moreover, for each group and sub-group, the common pattern found in the machining process sequence with the most machining process elements of all machining programs of the group or sub-group is also extracted from step S103 and correspondingly defined as the group longest common pattern or the sub-group longest common pattern. In this example, only one longest common pattern is found for each group and sub-group. For sub-group A1, the longest common pattern is [abc], for sub-group A2, the longest common pattern is [ace], and for group A, the longest common pattern is [ac]. For sub-group B1, the longest common pattern is [cabe], for sub-group B2, the longest common pattern is [fcae], and for group B, the longest common pattern is [cae]. The longest common pattern of a group is a sub-pattern of the longest common pattern of its sub-groups. In other words, the longest common pattern of a group is a pattern included in the longest common pattern of the sub-groups belonging to the group. The group longest common pattern and the sub-group longest common pattern are stored in the group storage module 106 in association with the groups, sub-groups and their representative machining programs.

[0083] As previously explained, the completed shape display module 109 uses the results obtained by the machining program grouping module 105 and stored in the group storage module 106 to display the completed machining shape image from the completed shape storage module 108 in the interactive graphical user interface. Fig. 9 An example of a main window 1090 is shown. The completed shape display module 109 causes the main window 1090 to be displayed on the display unit 12. The main window 1090 serves as an interactive interface for an operator in cooperation with the input receiving module 100, the input unit 11, and the display unit 12. If a part of the input unit 11 and the display unit 12 are implemented as a touch panel or the like, the operator can operate the main window 1090 more intuitively.

[0084] The main window 1090 is divided into five areas: a group representative display area 10901, a sub-group representative display area 10902, a sub-group completed machining shape display area 10903, a comparison and template machining program selection confirmation area 10904, and a filter function area 10905. Fig. 9In the example presented in , the machining programs stored in the machining program storage module 102 have been divided into seven groups, A, B, C, D, E, F and G, by the machining program grouping module 105. In addition, group A has been divided into five sub-groups, A1, A2, A3, A4 and A5, wherein sub-group A1 contains nine machining programs, A1-1 to A1-9. As described above, although each machining program is shown with symbols such as A1-1, the symbol can be any one of the program ID, the ID of the machining program in the sub-group, and a combination thereof. If the machining program itself includes the name of the program, the name can also be shown in order to make it easy for the operator to identify. This also applies to the following description. If each sub-group contains more than nine machining programs, a scroll bar can be shown in area 10903, and the operator can check the remaining machining programs by using the scroll bar.

[0085] In this exemplary window, the number of groups is seven. The number of subgroups is five. The number of groups and the number of subgroups that can be displayed at one time on the main window are each fixed or limited to a predetermined number. These numbers can be predetermined in the screen design to optimize visibility for the operator, etc. If there are remaining groups or subgroups, another scroll bar can be further shown in area 10903 similar to the above, so that the operator can check the remaining groups or subgroups by using the scroll bar.

[0086] Fig.10 The example illustrates the configuration of the group representative display area. Fig.10 Show Fig. 9 10901. For each of the seven groups, the completed machined shapes of the group representative machining program are displayed together with several optional buttons. In this example, three buttons B01, B02 and B03 can be used for each group to use three different functions of the completed shape display module 109. Button B01 is used to open a window that displays the longest common mode of the corresponding group from the group storage module 106. Button B02 is used to open a window that displays the summary of the longest common mode of the group. The summary is a condensed version of the longest common mode that gives an overview of the group. The completed shape display module 109 creates a summary from the longest common mode when opening the window for displaying the summary. Finally, button B03 is used to add the longest common mode and summary of the group to the group comparison list.

[0087] Fig.11 2 is a diagram illustrating the configuration of a sub-group representative display area. Fig.11 Shown for Fig. 910902 of the subgroup representative display area 10902 of the group A of the same grouping example. For each of the five subgroups, the completed machined shape of the subgroup representative machining program is displayed together with several selectable buttons. The purposes of the three buttons B01a, B02a and B03a presented in this example are similar to the purposes of the buttons presented in the group representative display area 10901: B01a is used to open a window displaying the longest common mode of the corresponding subgroup, B02a is used to open a window displaying the summary of the subgroup, and B03a is used to add the longest common mode and summary of the subgroup to the subgroup comparison list.

[0088] Fig.12 1 is a diagram illustrating the configuration of the display area for the completed machined shape of the sub-group. Fig.12 Shown for Fig. 9 1-1 to A1-9 of the subgroup A1. For each of the nine machining programs A1-1 to A1-9 of the subgroup A1, the completed machining shape of the machining program is displayed together with several selectable buttons. In this example, three buttons B04, B05 and B06 can be used for each machining program to use three different functions of the completed shape display module 109. Button B04 is used to open a window that displays the machining process sequence of the corresponding machining program from the machining process sequence storage module 104. Button B05 is used to add the machining process sequence of the machining program to the machining program comparison list. Finally, button B06 is used to select a machining program as a template machining program for creating a new machining program.

[0089] Fig.13 This is a diagram illustrating the configuration of the template machining program selection confirmation area. Fig.13 Shown for Fig. 9 10904. Area 10904 is divided into two parts, a machining process sequence comparison part on the left and a template selection part on the right. The machining process sequence comparison part displays the IDs of the groups and subgroups, and the program IDs of the machining programs currently added to the comparison list. Buttons B07, B08, and B09 are used to open windows displaying the comparison results of the selected groups, subgroups, and machining programs, respectively. The template selection part is used to display the IDs of the machining programs currently selected as candidates for the template machining programs. In this example, two buttons are used in the template selection part: button B10, which is used to open a window showing the completed machining shape of the selected machining program; and button B11, which is used to confirm the selection of the template machining program. By confirming the selection with button B11, the interactive interface main window 1090 displayed by the completed shape display module 109 can be automatically closed. Then, the ID of the selected machining program is input to the template acquisition module 110.

[0090] Fig.14 FIG. 2 is a diagram illustrating the configuration of the filter function area. Fig.14 Shown for Fig. 9 10905. Through region 10905, the filtering function of the completed shape display module 109 can be applied to the machining programs displayed in the interactive interface main window 1090. The number of machining programs resulting from the current filtering appears in region 10905. This number is used to confirm the filtering applied before updating the display with B12. Fig.14 In the example of , two types of filtering can be applied to the machining program: process filtering and workpiece shape filtering. Process filtering is used to filter the machining program based on the presence of certain types of machining process elements in the machining process sequence. In this example, four types of machining process elements in button area B14 can be used as filters: hole operations, groove operations, cavity operations and thread operations. Different machining process elements can be combined by selecting "OR" or "AND" selections in button B13. Buttons B15 and B16 are used to select or deselect all machining process elements at once.

[0091] In addition, when the workpiece shape is defined in the machining program, the workpiece shape filter can also be applied to filter the machining program according to the workpiece shape. The number of shape types currently selected is shown in area 10905. The number of shape types can be determined by referring to the completed shape storage module 108. Button B17 can be used to open a type of shape window (not shown) to display a typical image of the selected shape type. When the window is opened, the completed shape display module 109 obtains the typical image stored in the completed shape storage module 109 for display. The shape selection window (not shown) can be accessed with button B18. When the shape selection window is opened, the completed shape display module 109 obtains all typical images stored in the completed shape storage module 108 and displays these images for selection.

[0092] Fig.15 and Fig.16 10901 ( Fig.10 ) is pressed, or when the group representative display area 10902 ( Fig.11 ) is pressed, the longest common pattern display window 1091 can be opened. In this example, the longest common pattern display window 1091 shows Fig.11The longest common pattern of the subgroup A1 of the machining programs belonging to the group or subgroup is thus accessed by button B01a of area 10902. A group or subgroup can have several longest common patterns, because several different common patterns with the same length can be found in the machining process sequences of the machining programs belonging to the group or subgroup. In this example, subgroup A1 has three different longest common patterns, each of which has seven machining process elements. Fig.15 and Fig.16 The contents of window 1901 are shown when a different longest common pattern is displayed. The following description of window 1901 can be applied to any group or sub-group.

[0093] In the upper part of the example window 1091, the ID of the subgroup and the length of its longest common pattern (that is, the number of machining process elements) are displayed. This part does not change even when the longest common pattern to be displayed is changed. The lower part of the window 1901 shows a list of machining process elements arranged in order, which form one of the longest common patterns of the subgroup. The tab button B19 is used to change the longest common pattern to be displayed. In Fig.15 In the figure, the "longest common pattern 1" is shown. Fig.16 , "Longest common pattern 2" is shown.

[0094] For each longest common pattern, a list of machining process elements is shown in a table. The table shows the following items: "Order", "Process Type", and details of the element properties considered in the machining process elements. "Order" indicates the processing order of the machining process elements, and "Process Type" indicates the process type of each machining process element. Fig. 9 The grouping example in Fig.15 and Fig.16 Four element properties are shown: "spindle head angle", "machining area" indicating the part to be machined, "tool type" indicating the type of tool used for each process element, and "status" indicating the machining status. The combination of process types and values ​​or settings of all element properties forms one machining process element. Here, examples of process types include "facing", "center drilling", "turning", "drilling", and "tapping".

[0095] In addition, as in Fig.16 As can be seen in FIG. 1 , when the details of “Longest Common Pattern 2” are displayed, machining process elements different from those included in the list of “Longest Common Pattern 1” are shown to distinguish from the shared machining process elements. Fig.16 In the example of , such differences in machining process elements are shown in bold and italics. For each longest common pattern, the first longest common pattern is used as a reference. The display order of the longest common patterns in window 1091 can be randomly selected or determined following a given rule.

[0096] Fig.17 and Fig.18 1092 is a diagram illustrating an example of the summary display window 1092. In this example, the summary display window 1092 displays a summary of the longest common pattern of the subgroup A1. Fig.11 When the button B02a is pressed, or in the case of a group Fig.10 This window can be opened when the button B02 of is pressed. The following description of window 1092 can be applied to any group or subgroup. Fig.17 In the figure, the outline of "Longest Common Pattern 1" is shown. Fig.18 The longest common pattern 2 is shown in FIG. Fig.15 and Fig.16 The upper portion of window 1092 is for Fig.17 and Fig.18 is the same. Each upper part shows the ID of the subgroup under consideration and the length of its longest common pattern. In this example, "7 process elements" is shown as the length. The number of machining programs included in the subgroup and their average similarity are also shown. The similarity of the machining programs in a group or subgroup corresponds to the ratio of the number of machining process elements in the longest common pattern to the number of machining process elements included in the machining program.

[0097] The lower part of the window 1092 shows, for each longest common pattern, a summary in the form of a condensed list of machining process elements in the longest common pattern. For the condensed list of machining process elements, the values ​​or settings of some of the element properties are not taken into account in order to group similar consecutive machining process elements. The number of consecutive machining process elements grouped together is shown in the "apparitions" column. In this example, "Tool Type" and "Status" are not taken into account in the summary, which makes it possible to Fig.15 The longest common pattern 1 shown in the window 1091 of FIG. 1 is shown in FIG. 109 . The difference between the longest common pattern (in this example, “longest common pattern 2”) and “longest common pattern 1” is shown in FIG. 109 . Fig.18 In this example, the process types and their order are the same in the longest common patterns 1 and 2, but the number of occurrences of some machining process elements is different.

[0098] Figures 19 to 22 FIG. 2 is a diagram illustrating an example of the longest common pattern and the summary comparison window. Fig.13When button B07 or B08 is pressed, the longest common pattern and summary comparison window 1093 is opened. Window 1093 displays the comparison of the longest common patterns and the summary about the group which has been selected by button B03 or the subgroup which has been selected by button B03a. Fig.19 Show about Fig. 9 1093 shows an example of a window 1093 of subgroups A1 and A3 of a grouping example. In this example, the window 1093 displays basic information (ID, length, number of included machining programs, and average similarity) of each of the subgroups in the upper portion, and displays the contents of the longest common pattern or profile for comparison in the lower portion. When the button tab B21 is selected, the display can be changed from the comparison of the longest common pattern to the comparison of the profiles. Fig.19 and Fig. 20 shows a comparison of the longest common pattern, while Fig.21 and Fig. 22 A comparison of profiles is shown. For each subgroup in each comparison, for subgroup A1, the longest common pattern or profile to be displayed is selected with button B22, and for subgroup A3, the longest common pattern or profile to be displayed is selected with button B23.

[0099] Fig.19 and Fig.21 The case where "Longest Common Pattern 1" is selected for subgroup A1 is shown. Fig. 20 and Fig. 22 The case where "Longest Common Pattern 2" is selected for subgroup A1 is shown. For subgroup A3, Figures 19 to 22 "Longest Common Pattern 1" is shown. In all comparisons, the longest common pattern or profile is presented in the same manner as in windows 1091 and 1092. However, the highlighted machining process elements shown in bold and italics in this example do not indicate differences between the longest common patterns or profiles of groups or subgroups, but rather indicate differences between two different groups or subgroups when considering the currently displayed longest common pattern or profile.

[0100] Fig.23 Figure and Fig.24 : is a diagram illustrating an example of a machining process sequence display window. Fig.23 The machining process sequence display window 1094 for machining program A1-6 is shown. Fig.15 and Fig.18 The machining programs included in the subgroup A1 used as an example in FIG. Fig.12 When the button B04 shown in FIG. 1 is pressed, the machining process sequence display window 1094 opens to display the machining process sequence of the machining program. Fig.23In the figure, the difference between the longest common pattern of the machining process sequence and the subgroup to which the machining program belongs is highlighted. The machining program contains eleven machining process elements. Therefore, machining program A1-6 is Fig.15 The longest common pattern of the subgroup A1 shown in FIG. 4 has four more machining process elements.

[0101] Similar to windows 1091 and 1092, window 1094 in this example is also roughly divided into two parts. The upper part shows the ID of the machining program, the length of the machining program indicated by the number of machining process elements, and an image of the completed machined shape. The lower part shows the detailed machining process sequence of machining programs A1-6 in the same manner as that shown in window 1091. In this example, a navigation bar is added to the table because all the machining process elements cannot be displayed together.

[0102] For each of the longest common patterns of the subgroup A1, the machining process elements of the machining program A1-6 that are not included in the selected longest common pattern are highlighted in the machining process element list. Fig.23 In the figure, machining process elements "5" and "8" are not included in "Longest Common Mode 1" and are therefore displayed in bold and italics. Fig.24 , machining process elements "4" and "8" are not included in "Longest Common Pattern 2" and are therefore displayed in bold and italics. For each of the button tabs B24, the items in the machining process element list do not change, only the highlighting of the machining process element changes.

[0103] Fig.25 2 is a diagram illustrating an example of a machining process sequence comparison window. Fig.25 The following example illustrates the Fig. 9 The machining process sequence comparison window 1095 is used to display the comparison of machining process sequences of several machining programs from the same subgroup. Fig.13 When button B09 is pressed, this window opens to show the Fig.12 Button B05 added for comparison between machining programs.

[0104] In this example, window 1095 is roughly divided into two parts in a similar manner to the examples of windows 1091 to 1094. The upper part shows basic information of each machining program (in this example, ID, length of the machining program, and image of the completed machined shape), and the number of machining process elements common to all machining programs being compared. In this example, machining programs A1-6 and A1-7 (both of which belong to the same subgroup A1) have seven machining process elements in common.

[0105] The lower portion of window 1095 displays a table showing the machining process elements of the machining process sequences to be compared, wherein the machining process elements are arranged in order. The differences in the machining process elements between different machining programs are highlighted. In this example, among the nine machining process elements shown in window 1095 for A1-6 (note that the remaining two machining process elements of A1-6 can be seen by using the navigation bar on the right side of the table), two machining process elements (element "5" and "8") are not found at the same position in the machining process sequence of machining program A1-7, or do not exist at that position. Machining process element "4" is the only difference highlighted in machining program A1-7 because all other machining process elements can be found in the machining process sequence of A1-6 in the same order as the machining process sequence of A1-7.

[0106] Note that the information displayed by the completed shape display module 109 and the display functions it includes are not limited to the above description. The structure of several windows (1090, 1091, 1092, 1093 and 1094) is not limited to the drawings presented only as visual examples of the present disclosure.

[0107] The machining program creation support device according to the present embodiment reuses the existing machining program and displays the completed shapes of the existing machining programs divided into groups. The machining programs are displayed in an optimized layout. Therefore, the burden on the operator, such as the time and effort required to search for the machining program referenced for creating a new machining program, can be reduced. Therefore, the machining program creation support device according to the present embodiment can support the operator in creating a new machining program.

[0108] Furthermore, machining process sequences are extracted from the machining program, and machining process elements are included in each of these machining process sequences in the order in which they appear in the machining program. Therefore, the basic structure of each of the existing machining programs can be maintained.

[0109] The machining programs are divided into groups not by considering the finished machined shape but by considering the machining process sequence. Therefore, the grouping result can reflect the programming habits included in the existing machining programs. According to the grouping, machining programs created by different operators for the same finished machined shape can be classified into different groups if their programming methods are different.

[0110] In addition, the machining program creation support device displays the completed shapes of the grouped machining programs divided into groups on the display unit. Therefore, the operator can refer to the completed shapes to determine whether the machining programs belong to the same group or different groups.

[0111] The machining program creation support device according to this embodiment can generate a completed machined shape directly from the machining program. Therefore, there is no need for the operator to prepare a CAD model for the machining program.

[0112] The machining program creation support device according to the present embodiment can accept the selection of one of the displayed machining programs to be used as a template machining program from the operator. Therefore, it becomes easier to create a new machining program because the operator can reuse the entire machining program sequence or a part thereof of the selected machining program, or use the selected machining program as a guide. Moreover, the use of such a template machining program that has been used for machining in the past and whose machinability is ensured can make the reliability of the machinability of the new machining program higher.

[0113] The machining program creation support device according to the present embodiment creates a grouping result using hierarchical grouping of machining programs based on the machining process sequence of the machining programs. Therefore, it is further convenient for the operator to select one of the machining programs that the operator considers to be optimal for the operator's programming method or efficient for creating a new machining program in addition to considering the machined shape to be formed.

[0114] Moreover, in the case where there are a large number of machining programs, using group or subgroup representatives in grouping simplifies the display of the groups or subgroups. In addition, using the longest common pattern in grouping makes it easy for the operator to understand the characteristics of each group representative or subgroup representative because the longest common pattern indicates that the machining operation reflected by the machining process element is shared by all the machining programs belonging to each group or subgroup. Therefore, it is possible to support the operator in selecting a machining program to be repeatedly used by displaying information necessary to understand the differences between the machining programs.

[0115] Because the group storage module allows any module or operator of the present embodiment to access the grouping results at any time in the process, the operator's task can be facilitated.

[0116] The graphical user interface, including a display unit on which the completed shape is displayed, provides an intuitive way for the operator to find the template machining program required for new programming. The organization of the machining programs into groups and subgroups further facilitates the search for machining programs.

[0117] Since filtering can be applied to the displayed completed machined shapes, the machining programs corresponding to the completed machined shapes displayed on the display can be limited according to the presence or absence of one or more machining process elements in the machining program. Therefore, the completed machined shapes suitable for the needs of the operator can be displayed. Since the number of completed machined shapes on the display is reduced, it becomes easier to find the best machining program to be repeatedly used as a template from the machining programs.

[0118] By displaying the machining process sequence of the selected machining program, the operator can clearly confirm the machining process elements used in the machining program and the execution order of the machining process elements in the machining program.

[0119] The machining program creation support device according to the present embodiment can cause the display unit to display the longest common pattern of machining process elements shared by all machining programs including a group or a sub-group. The longest common pattern indicates a basic structure that defines the characteristics of the group or the sub-group. Therefore, the operator can confirm the basic structure of the machining programs belonging to each group or the sub-group.

[0120] The machining program creation support device according to the present embodiment can cause the display unit to display the summary of the longest common pattern. The summary shows the simplified content of the longest common pattern. Therefore, the operator can confirm the condensed content of the basic structure of the group or subgroup.

[0121] The machining program creation support device according to the present embodiment can cause the display unit to display a comparison of machining process sequences. Therefore, the operator can easily check the differences between different machining process sequences, which facilitates the operator to decide which machining program to use as a template machining program for creating a new machining program.

[0122] The machining program creation support device according to the present embodiment can cause the display unit to display the comparison between the longest common pattern and the summary among several groups or subgroups. Therefore, the operator can easily understand the basic structural differences among several groups or several subgroups.

[0123] The machining program creation support device according to the present embodiment can obtain one of the existing machining programs according to the selection made by the operator and enable editing of the template machining program. Thus, the template machining program is modified according to the programming preference of the operator and new constraints (e.g., workpiece shape or tools that can be used to apply to the new machining program) are reflected, making it easier for the operator to create a new machining program.

[0124] Second embodiment

[0125] Fig.26: is a block diagram illustrating an exemplary configuration of a machining program creation support device according to a second embodiment of the present disclosure. Figure 1 The same components as those of the first embodiment are given the same reference numerals, and their description is omitted. Here, the differences from the first embodiment are described.

[0126] Apart from Figure 1 In addition to the configuration of , the machining program creation support device 20 further includes a group modification module 205. The group modification module 205 has a similar function to the group modification module 105. The difference is that the group modification module 105 initializes the group storage module 106; on the other hand, the group modification module 205 updates the group storage module 106. Note that, Figure 2 The illustrated machining system may include a machining program creation support device 20 instead of the machining program creation support device 10 .

[0127] exist Fig.26 In the example, the machining program 201 (which may be the machining program 113 created in the first embodiment) is newly input into the machining program creation support device 20 in response to the operator's instruction via the input unit 11 and the input receiving module 100. Note that, Fig.26 The machining program 201 is used as an example to illustrate the same; however, a plurality of machining programs 201 may be input. The new machining program 201 is then added to the machining program storage module 102 with a flag "OFF". Note that the new machining program 201 is stored in the machining program storage module 102 after its machinability is confirmed. The machinability of the new machining program 201 is checked by the test machining described in the first embodiment.

[0128] Fig. 272 is a flowchart for explaining the group modification process. The group modification is performed by the group modification module 205. The first step of the process is a new program rough group assignment step S201. In step S201, the machining process sequence of the machining program 201 is assigned to one of the rough groups created by step S101 of the first embodiment and stored in the group storage module 106. If the rough group suitable for the new machining program 201 is not found, the group modification module 105 creates a new rough group and classifies the new machining program 201 as belonging to the new rough group. After step S201, the machining process sequence is used in step S202 to find one or more new common patterns by reflecting the new machining process sequence to the already existing common patterns in the grouping results stored in the group storage module 106. In step S203, the degree of similarity between the new machining program and each of the machining programs in the same rough group is calculated from the extracted new common patterns. After the group modification module 205 completes the similarity measurement in step S203, the process proceeds to step S104. Using the updated similarity degree measure, the following steps are performed. The steps of S104 (hierarchical clustering step), S105 (group / subgroup forming step), S106 (group / subgroup evaluating step) and S107 (representative selecting step) are the same as those described in the first embodiment.

[0129] The hierarchical clustering obtained above may be different from the current hierarchical clustering, depending on the Fig. 27 In this case, some of the data in the group storage module 206 must be modified. The group modification module 205 updates the data in the group storage module 206 using the updated grouping results, which include groups and / or subgroups representing machining programs, and / or the longest common pattern. The group modification module 205 also stores the similarity results in the group storage module 106 in association with the program ID of the machining program.

[0130] Fig.28 is a flowchart for explaining the process performed by the machining program support device 20 according to the second embodiment. Figure 4 The method comprises the steps of step S3 to step S10, and further comprises steps S11 and S12. Figure 4 The process is the initialization process; on the other hand, Fig. 27 The operator inputs a command to execute initialization or update from the input unit 11. In the second embodiment, the machining program creation support device 20 is instructed to update.

[0131] exist Fig.28 In this example, step S2 is performed on the new machining program 201. Similar to the first embodiment, in Fig.28 In step S2, a machining process sequence is extracted from the new machining program 201, and the machining process sequence is added to the machining process sequence storage module 104. Next, in step S10, the group modification module 205 updates the grouping of the machining program by reflecting the machining program 201 to the grouping result already stored in the group storage module 106, and updates the grouping result in the group storage module 106.

[0132] exist Fig.28 , step S4 is performed on the machining program 201. After steps S4 and S10 are completed, step S5 is performed in the same manner as in the first embodiment, and based on the updated data of the group storage module 106, the main window 1090 is displayed on the display unit 12. The operator can operate the machining program creation support device 20 similarly to the operation of the machining program creation support device 10 in the first embodiment.

[0133] In addition to the process of step S10, in the second embodiment, the operator can also modify the data in the machining program storage module 102, the machining process sequence storage module 104, and the group storage module 106 through the main window 1090 for optimization. The operator checks the displayed machining programs in the main window 1090, and if there is a machining program that is determined to be no longer necessary, the operator can instruct to delete the machining program. The deletion determination is based on the operator's discretion. As an example of determining such deletion, it can be assumed that the operator finds a case where the machining programs are repeated with each other in view of the purpose of using the machining program as a template machining program. In addition, it can be assumed that the operator finds a case where one or more machining programs do not seem to be efficiently described.

[0134] For the purpose of the above deletion, Fig. 9The main window 1090 may further include, for example, a button (not illustrated) that enables deletion of each of the machining programs. If the operator instructs to delete some of the machining programs displayed in the main window 1090 (in step S11, "yes"), the input receiving module 100 receives the instruction and the process proceeds to step S12. In step S12, the input receiving module 100 deletes the indicated one or more machining programs from the machining program storage module 102 (step S12). In addition, because the completed shapes of the machining programs are no longer needed, the input receiving module 100 deletes the data of the completed shapes corresponding to the indicated one or more machining programs from the completed shape storage module 108 (step S12). In addition, because the machining process sequence stored in association with each machining program is specific to the machining program, the input receiving module 100 deletes the data of the machining process sequence corresponding to the indicated one or more machining programs from the machining process sequence storage module 104 (step S12). After step S12 , the process returns to step S10 for further updating, that is, reconstructing the grouping based on the updated machining process sequence storage module 104 .

[0135] Note that it is not necessary to perform the update every time a new machining program is added to the machining program storage module 102. For example, in the machining program storage module 102, for a machining program marked as "OFF", the update can be performed at any time. The update can be automatically performed according to a predetermined regular schedule without receiving a command from the operator. In this case, only steps S1, S2, S10 and S4 are performed. Fig.28 Step S4 need not necessarily be performed on a predetermined regular schedule, since the completed shape needs to be displayed to the operator. If deletion is not indicated (at step 11, "No"), then Fig.28 The process ends.

[0136] exist Fig.28 After all the steps, similar to the first embodiment, further execution may be performed according to instructions from the operator. Figure 4 In this case, the operator can operate the machining program creation support device 20 similarly to the machining program creation support device 10 described in the first embodiment. Finally, the machining program creation support device 20 generates a further new machining program 213.

[0137] The machining program creation support device according to the present embodiment can modify the previously generated grouping result when one or more machining programs are additionally inputted, thereby further enriching the grouping result and enhancing the support for the operator.

[0138] According to the machining program creation support device of this embodiment, when some machining programs are determined to be no longer needed according to instructions from an operator, the stored machining programs and corresponding data can be deleted. In this case, the grouping result can also be modified. Through this configuration, the data in the machining program creation support device can be optimized. In addition, the computational burden can be reduced and the storage capacity can be used efficiently.

[0139] Note that the configurations described in the above embodiments illustrate examples of the subject matter of the present disclosure. These embodiments do not limit the scope to these examples. Therefore, the configurations may be combined with another known technology, and the configurations may also be partially omitted or changed without departing from the scope of the present disclosure.

[0140] Label list

[0141] 10, 20 machining program creation support device; 11 input unit; 12 display unit; 40 digital control device; 50 machining device; 60 drive unit; 70 machining tool; 80 workpiece; 90 input device; 91 processor; 92 memory; 93 processing circuit system; 94 display; 95 transceiver; 100 input receiving module; 101, 201 machining program; 102 machining program storage module; 103 machining process sequence extraction module; 104 machining process sequence storage module; 105 machining program grouping module; 106 group Storage module; 107 completed shape generation module; 108 completed shape storage module; 109 completed shape display module; 110 template acquisition module; 111 template machining program editing support module; 112 send / receive module; 113, 213 new machining program; 205 group modification module; 1090 main window; 1091 longest common mode display window; 1092 summary display window; 1093 longest common mode and summary comparison display window; 1094 machining process sequence display window; 1095 machining process sequence comparison window.

Claims

1. A machining program creation support device, comprising: A machining program storage module, wherein the machining program storage module stores a plurality of machining programs; a machining process sequence extraction module, the machining process sequence extraction module extracting a machining process sequence from each of the machining programs stored in the machining program storage module, the machining process sequence of a machining program being a list of machining process elements arranged in the order in which they appear in the machining program; A machining process sequence storage module, wherein the machining process sequence storage module stores the machining process sequence extracted by the machining process sequence extraction module; a machining program grouping module that uses the machining process sequences stored in the machining process sequence storage module to group the machining programs stored in the machining program storage module based on the degree of similarity of the machining process sequences of the machining programs; a group storage module, the group storage module storing the result of grouping the machining programs by the machining program grouping module; a completed shape storage module, the completed shape storage module storing a completed machining shape of a machining program stored in the machining program storage module; as well as A completed shape display module causes a display unit to display the completed machined shapes of the machining programs stored in the machining program storage module, which are grouped based on the grouping result stored in the group storage module, from the completed shape storage module.

2. The machining program creation support device according to claim 1, further comprising: A finished shape generation module generates a finished machined shape from a machining program.

3. The machining program creation support device according to claim 1 or 2, further comprising: an input receiving module, the input receiving module receiving instructions from an operator; as well as A template acquisition module acquires a machining program to be used as a template machining program from the machining program storage module based on a selection made by the operator, and causes the display unit to display the selected template machining program.

4. The machining program creation support device according to any one of claims 1 to 3, wherein The machining program grouping module performs hierarchical clustering of the machining programs stored in the machining program storage module; creating groups and subgroups of machining programs based on the results of the hierarchical clustering; For each group and each subgroup, selecting a machining program representative of the group or subgroup and defining it as the group or subgroup representative; For each group and each subgroup, extract the subsequence with the largest number of machining process elements among the subsequences shared by all machining process sequences of the machining programs of the group or subgroup, and define it as the longest common pattern of the group or subgroup; and The relationship between the group and the subgroup, the group, the machining program contained in the group, the representative of the group and the longest common pattern of the group, as well as the subgroup, the machining program contained in the subgroup, the representative of the subgroup and the longest common pattern of the subgroup are stored as grouping results in the group storage module.

5. The machining program creation support device according to claim 4, wherein The completed shape display module causes the display unit to display the machining programs of the machining program storage module in which the completed machining shapes using the group representatives and the sub-group representatives are structured as groups and sub-groups based on the grouping result stored in the group storage module.

6. The machining program creation support device according to any one of claims 1 to 5, wherein In response to an instruction from the input receiving module, the completed shape display module applies filtering to the displayed completed machined shape according to whether a machining process sequence corresponding to a machining program displayed by the completed machined shape of the machining program includes a certain machining process element indicated from the input receiving module.

7. The machining program creation support device according to any one of claims 1 to 6, wherein In response to an instruction from the input receiving module, the completed shape display module retrieves a machining process sequence of a machining program from the machining process sequence storage module and causes the display unit to display the machining process sequence.

8. The machining program creation support device according to any one of claims 3 to 7, wherein In response to an instruction from the input receiving module, the completed shape display module retrieves the longest common pattern of one of the groups or sub-groups from the group storage module and causes the display unit to display the longest common pattern.

9. The machining program creation support device according to any one of claims 3 to 8, wherein In response to an instruction from the input receiving module, the completed shape display module retrieves the longest common pattern of one of the groups or sub-groups from the group storage module and causes the display unit to display a summary of the longest common pattern.

10. The machining program creation support device according to any one of claims 3 to 9, wherein In response to an instruction from the input receiving module, the completed shape display module retrieves machining process sequences of a plurality of machining programs from the machining process sequence storage module and causes the display unit to display a comparison between the machining process sequences.

11. The machining program creation support device according to any one of claims 3 to 10, wherein In response to an instruction from the input receiving module, the completed shape display module retrieves the longest common pattern of two or more of the groups or subgroups from the group storage module, and causes the display unit to display a comparison between the longest common pattern and the summary of the two or more groups or subgroups.

12. The machining program creation support device according to any one of claims 3 to 11, further comprising: A template machining program editing support module is configured to edit the template machining program acquired by the template acquiring module in response to an instruction from the input receiving module.

13. The machining program creation support device according to any one of claims 1 to 12, further comprising: A group modification module modifies the grouping result stored in the group storage module based on the machining program stored in the machining program storage module.

14. The machining program creation support device according to any one of claims 1 to 13, wherein When receiving an instruction for deleting one or more machining programs, the input receiving module deletes the indicated one or more machining programs from the machining program storage module and the machining process sequence storage module.

15. A machining system comprising: The machining program creation support device according to any one of claims 1 to 14; a numerical control device that receives a machining program transmitted from the machining program creation support device, executes the machining program to generate a machining command, creates a control signal indicating the machining command, and transmits the control signal; as well as A machining device includes a machining tool, receives the control signal, and drives the machining tool according to the control signal to machine a workpiece.

16. A machining program creation support method, comprising: Store multiple machining programs; extracting the machining process sequence from each of the machining programs, the machining process sequence of a machining program being a list of machining process elements arranged in the order in which they appear in the machining program; storing the extracted machining process sequence; using the stored machining process sequences, grouping the machining programs based on the degree of similarity of their machining process sequences; storing the grouped results of the machining programs; storing a completed machined shape of the machining program; as well as The completed machined shapes of the machining programs divided into groups based on the grouping result are displayed.

17. A machining method comprising: The machining program creation support method according to claim 16; Create new machining programs based on existing machining programs; executing the new machining program to generate machining commands, and creating control signals indicative of the machining commands; as well as The machining tool is driven according to the control signal to machine the workpiece.