Machining program generation device, machining program generation method, and machine learning method
By storing the processing programs related to the operator through machine learning devices, parsing and generating learning models, the problem of difficult processing program generation in the existing technology is solved, and the rapid generation of processing programs and efficiency improvement are achieved.
Patent Information
- Application Number
- CN202180034269.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-01-13
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2041-01-13
AI Technical Summary
When generating a machining program, the existing technology cannot correctly infer the parameter values expected by the operator, resulting in the machining program being difficult and time-consuming to generate.
A machine learning device is used to store the machining program related to the operator, analyze and extract the first and second parameters, and generate a learning model to infer the value of the first parameter, thereby simplifying the machining program generation process.
The rapid generation of machining programs is achieved, the workload and time of generating machining programs are reduced, and the generation efficiency is improved.
Smart Images

Figure CN116569117B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a machine learning device, a machining program generating device, and a machine learning method used in generating a machining program for numerically controlling a machine tool. Background Art
[0002] In recent years, in the field of machine tools controlled by numerically controlled devices, the structure of machine tools has become increasingly complex to precisely process complex shapes, and the number of axes controlled by the machine tools has increased. Consequently, the number of numerically controlled objects to be processed has increased, and machining programs have become more complex. This increased complexity has also led to a greater variety of parameters requiring adjustment when creating machining programs, increasing the workload and time required to create these programs.
[0003] Patent Document 1 discloses a machining program generation device that uses machine learning to adjust machining program parameters during program generation. The technology in Patent Document 1 determines the values of various parameters through inference using a learning model, thereby reducing the workload and time required to generate machining programs.
[0004] Patent Document 1: Japanese Patent No. 6599069 Summary of the Invention
[0005] A machining program generated by a machining program generation device can reflect different characteristics for each operator who edits the machining program. According to the prior art disclosed in Patent Document 1, the machining program generation device cannot always accurately infer the operator's desired parameter values, and the operator may need to change the parameter values. Therefore, the prior art sometimes makes it difficult to easily generate machining programs.
[0006] The present invention has been made in view of the above-mentioned circumstances, and an object of the present invention is to provide a machine learning device capable of easily generating a machining program for numerically controlling a machine tool.
[0007] In order to solve the above-mentioned problems and achieve the purpose, the machine learning device involved in the present invention has: a processing program storage unit, which stores the processing program for numerically controlling the working machine in association with the operator who has edited the processing program; a processing program analysis unit, which analyzes the processing program associated with the operator, thereby extracting the first parameter that is the adjustment object in the editing of the processing program and the second parameter that is not the adjustment object in the editing of the processing program and is used in the adjustment of the first parameter from the processing program; and a machine learning unit, which generates a learning model for inferring the value of the first parameter based on the second parameter of the processing program edited by the operator by learning using a data set including the extracted first parameter and second parameter.
[0008] Effects of the Invention
[0009] The machine learning device according to the present invention has the effect of being able to easily generate a machining program for numerically controlling a machine tool. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 This is a block diagram showing a configuration example of a numerical control device including the machine learning device and the machining program generation device according to the first embodiment.
[0011] Figure 2 It means by Figure 1 A flowchart showing the procedure of a learning model generation process performed by a machine learning device is shown.
[0012] Figure 3 It means by Figure 1 Flowchart showing the procedure of machining program generation processing performed by the machining program generation device.
[0013] Figure 4 It means that Figure 1 The flowchart shown is a process flow chart of the machine learning device and the machining program generation device when generating a learning model based on the content of the editing operation.
[0014] Figure 5 It means by Figure 1 A flowchart showing details of a learning model generation process performed by a machine learning device is shown.
[0015] Figure 6 It means by Figure 1 FIG. 1 is a diagram showing an example of a machining program read by a machine learning device.
[0016] Figure 7 It means by Figure 1 Flowchart showing details of machining program generation processing performed by the machining program generation unit shown.
[0017] Figure 8 Is based on Figure 1 A perspective view of the shape of the object after processing generated using the CAD data shown.
[0018] Figure 9 Is based on Figure 1 A perspective view of the raw material shape generated from the CAD data shown.
[0019] Figure 10 It means by Figure 1 The perspective view of the machining removal shape generated by the machining program generation unit is shown.
[0020] Figure 11 It means by Figure 1 The perspective view of the first step shape generated by the machining program generation unit is shown.
[0021] Figure 12 It means by Figure 1 The perspective view of the second step shape generated by the machining program generation unit is shown.
[0022] Figure 13 It means by Figure 1 The perspective view of the third step shape generated by the machining program generation unit is shown.
[0023] Figure 14 It means by Figure 1 The perspective view of the fourth step shape generated by the machining program generation unit is shown.
[0024] Figure 15 This is a flowchart showing the procedure of the editing operation analysis process and the additional learning process in the second embodiment.
[0025] Figure 16 Yes Figure 1 The hardware structure of the machine learning device and the processing program generation device shown. DETAILED DESCRIPTION
[0026] Hereinafter, the machine learning device, the processing program generation device, and the machine learning method according to the embodiment will be described in detail based on the drawings.
[0027] Implementation method 1.
[0028] Figure 1 This is a block diagram showing a configuration example of a numerical control device 100 including the machine learning device 10 and the machining program generating device 20 according to the first embodiment.
[0029] The numerical control device 100 includes a machine learning device 10, a machining program generation device 20, a dialogue operation processing unit 30, an instruction input unit 40, and a display unit 50. The numerical control device 100 is mounted on a machine tool (not shown) or connected to the machine tool to numerically control the operation of the machine tool according to a machining program. Here, the machining program is used to cut the object from its raw material state into a designed shape. The machine tool is, for example, a machining center.
[0030] In addition, Figure 1 In the illustrated example, the machine learning device 10 and the machining program generation device 20 are installed in the numerical control device 100. However, Embodiment 1 is not limited to this example. For example, the machine learning device 10 and the machining program generation device 20 may be separate devices from the numerical control device 100. Furthermore, the machine learning device 10 may be separate devices from the machining program generation device 20.
[0031] The machine learning device 10 generates a learning model based on a plurality of previously created machining programs 1, which is then used by the machining program generation device 20 when generating machining programs. Specifically, the machining programs 1 input to the machine learning device 10 are learning programs, while the machining programs generated by the machining program generation device 20 are new machining programs created for numerical control of a machine tool.
[0032] The machining program generation device 20 generates a machining program based on machining shape data input from outside the numerical control device 100. The machining shape data represents a designed shape and is, for example, CAD (Computer-Aided Design) data 2. When generating the machining program, the machining program generation device 20 uses the learning model generated by the machine learning device 10.
[0033] The interactive operation processing unit 30 serves as an interface between the numerical control device 100 and the operator, and also as an interface between the machine learning device 10 or the machining program generation device 20 and the operator. The interactive operation processing unit 30 transmits instruction information input by the operator via the instruction input unit 40 to the machine learning device 10 or the machining program generation device 20. Furthermore, the interactive operation processing unit 30 displays instruction information input by the operator via the instruction input unit 40 on the display unit 50.
[0034] The instruction input unit 40 is composed of input devices such as a mouse and a keyboard. The instruction input unit 40 receives instruction information from an operator and transmits the instruction information to the interactive operation processing unit 30.
[0035] The display unit 50 is a display device such as a liquid crystal monitor, and displays the machining program 1, the CAD data 2, and instruction information input by the operator via the instruction input unit 40. Furthermore, the display unit 50 can display various information related to the processing performed by the numerical control device 100, the machine learning device 10, and the machining program generation device 20.
[0036] The machine learning device 10 includes a machining program input unit 11 , a machining program storage unit 12 , a machining program analysis unit 13 , a machine learning unit 14 , and a learning model storage unit 15 .
[0037] A machining program 1 is input from an external device to the machine learning device 10 of the numerical control device 100. The machining program input unit 11 receives the machining program 1 input from the external device and inputs the received machining program 1 into the machining program storage unit 12. The machining program 1 is a computer program for numerically controlling a machine tool (not shown) and includes information related to machining methods, tools, cutting conditions, tool paths, material shape, and material quality.
[0038] The processing program storage unit 12 stores the processing program 1. The processing program storage unit 12 associates the processing program 1 with the operator who edited it and stores the processing program 1. Storing the processing program 1 in association with the operator means storing information identifying the operator along with the processing program 1. Information identifying the operator includes the operator's name or user name, a number pre-assigned to each operator, and the like. Editing the processing program 1 refers to the work performed by the operator to generate the processing program 1. Editing the processing program 1 also includes the work of modifying the generated processing program 1.
[0039] The machining program analysis unit 13 extracts the first and second parameters from machining program 1. The first and second parameters are parameters used within machining program 1. The first parameter is a parameter subject to adjustment during the editing of machining program 1. The second parameter is a parameter not subject to adjustment during the editing of machining program 1 and is used to adjust the first parameter. Parameter adjustment refers to determining the parameter value. The value of the first parameter is determined when machining program 1 is generated.
[0040] Examples of first parameters include parameters indicating the machining method, machining sequence, tool type, feed, cutting speed, radial feed, and axial feed. Second parameters include parameters whose values are determined based on, for example, the raw material shape, raw material material, and the machined shape. These second parameters include adjusted parameters. Each first parameter is associated with a second parameter used when adjusting the first parameter. First parameters are adjusted based on the second parameter corresponding to the first parameter.
[0041] The machining program analyzing unit 13 determines the second parameter to be extracted for each first parameter and extracts the determined second parameter. The machining program analyzing unit 13 inputs the first parameter and the second parameter extracted for each machining program 1 into the machine learning unit 14 .
[0042] The machine learning unit 14 generates a learning model by learning using a data set containing the extracted first and second parameters. The machine learning unit 14 generates a learning model for inferring the value of the first parameter based on the second parameter of the machining program edited by the operator. In the first embodiment, the machine learning unit 14 performs supervised learning to generate the learning model. The machine learning unit 14 inputs the generated learning model into the learning model storage unit 15.
[0043] The learning algorithm used by the machine learning unit 14 can be any learning algorithm. Examples include neural networks and SVM (Support Vector Machine) algorithms. Neural networks can be deep learning algorithms with multi-layer structures. Alternatively, the learning algorithm used by the machine learning unit 14 can be genetic programming, inductive logic programming, support vector machines, and the like. Machine learning is the process of optimizing parameters such as weights and biases in a neural network.
[0044] The learning model storage unit 15 stores the learning model as the learning result of the machine learning unit 14. The learning model shows the relationship between the optimal first parameter and the input second parameter.
[0045] The machining program generating device 20 includes a machining shape data input unit 21 , a machining shape data storage unit 22 , a machining program generating unit 23 , a parameter selecting unit 24 , a machining program storing unit 25 , an editing operation analyzing unit 26 , and an estimating unit 27 .
[0046] CAD data 2, which is machining shape data, is input from an external device of the numerical control device 100 to the machining program generation device 20. A machining shape data input unit 21 receives the CAD data 2 input from the external device and inputs the received CAD data 2 to a machining shape data storage unit 22. The machining shape data storage unit 22 stores the CAD data 2.
[0047] The machining shape data includes information indicating the final shape of the machined product (i.e., the design shape) and the material of the raw material. The raw material is the object to be machined to obtain the design shape represented by the CAD data 2. The machining shape data is not limited to the CAD data 2; any data that can be interpreted by the machining program generation device 20 may be used.
[0048] The machining program generation unit 23 generates a machining program for cutting the designed shape shown in the CAD data 2 from the raw material. The parameter selection unit 24 obtains the machining program from the machining program generation unit 23 and generates input data for input into the learning data in the inference unit 27. Alternatively, the parameter selection unit 24 may read the CAD data 2 from the machining shape data storage unit 22 and generate input data for input into the learning data based on the machining shape shown in the CAD data 2. The parameter selection unit 24 extracts the second parameter used in the machining program from the machining program and generates input data including the second parameter. The parameter selection unit 24 inputs the generated input data into the inference unit 27.
[0049] The parameter selection unit 24 generates input data for each of the plurality of first parameters used to generate the machining program. The parameter selection unit 24 specifies each of the plurality of first parameters and sends the input data to the estimation unit 27, thereby instructing the estimation unit 27 to estimate the first parameters.
[0050] Input data including the second parameter is input to the inference unit 27. Using the learning model, the inference unit 27 infers the value of the first parameter based on the second parameter. The inference unit 27 returns the inference result to the parameter selection unit 24. The inference unit 27 outputs a plurality of values of the first parameter as the inference result.
[0051] The parameter selection unit 24 receives multiple values as inference results from the inference unit 27. The parameter selection unit 24 presents the multiple values and accepts a selection from the multiple values. In the first embodiment, the parameter selection unit 24 outputs the multiple values received from the inference unit 27 to the display unit 50 via the dialogue operation processing unit 30, thereby causing the multiple values to be displayed on the display unit 50. As described above, the parameter selection unit 24 displays the multiple values on the display unit 50, thereby presenting the multiple values. The operator operates the instruction input unit 40 to select a value from the multiple values displayed on the display unit 50. The selected value is input to the inference unit 27 via the dialogue operation processing unit 30. The parameter selection unit 24 inputs the selected value to the machining program generation unit 23.
[0052] The machining program generation unit 23 generates a machining program based on the value of the first parameter received from the parameter selection unit 24. That is, the machining program generation unit 23 generates a machining program based on the value selected from a plurality of values by the parameter selection unit 24. The machining program generation unit 23 inputs the generated machining program into the machining program storage unit 25. The machining program storage unit 25 stores the machining program.
[0053] The editing operation analysis unit 26 analyzes the editing operation performed by the operator. The editing operation analysis unit 26 determines the second parameter to be extracted from the processing program for each first parameter edited by the operator. The editing operation analysis unit 26 extracts the determined second parameter from the processing program. The editing operation analysis unit 26 obtains a value selected from a plurality of values of the first parameter from the processing program generation unit 23. The editing operation analysis unit 26 obtains the value selected from a plurality of values of the first parameter and extracts the second parameter corresponding to the first parameter from the processing program, thereby generating a data set containing the first parameter and the second parameter and used to generate or update the learning model. The editing operation analysis unit 26 inputs the data set to the machine learning unit 14 for each editing operation performed by the operator.
[0054] Next, the operation of the numerical control device 100 will be described. The operation of the numerical control device 100 includes a learning model generation process performed by the machine learning device 10 and a machining program generation process performed by the machining program generation device 20 .
[0055] Figure 2 It means by Figure 1 Flowchart showing the procedure of the learning model generation process performed by the machine learning device 10. In the learning model generation process, a learning model for generating a machining program is generated based on the machining program 1.
[0056] In step S1, the machining program input unit 11 reads a plurality of machining programs 1 from a storage area (not shown). The machining program storage unit 12 stores the machining programs 1 while associating the machining programs 1 with the workers who edited them.
[0057] In step S2 , the machining program analyzing unit 13 extracts the first parameter from the machining program 1 associated with the worker. The machining program analyzing unit 13 extracts a plurality of first parameters used in the machining program 1 .
[0058] In step S3, the machining program analysis unit 13 extracts a second parameter for each of the extracted first parameters. At this point, the machining program analysis unit 13 determines the second parameter to be extracted for each first parameter and extracts the determined second parameter. The machining program analysis unit 13 performs steps S2 and S3 for each machining program 1. For each machining program 1, the machining program analysis unit 13 inputs the extracted first and second parameters to the machine learning unit 14.
[0059] In step S4, the machine learning unit 14 performs machine learning processing using the input first parameter and second parameter. The machine learning unit 14 generates a data set based on the first parameter and the second parameter, and performs machine learning according to the generated data set. The data set is a group of data that associates the first parameter of the adjustment object with the second parameter that is a parameter outside the adjustment object and is used to determine the value of the first parameter. The machine learning unit 14 uses a predetermined benchmark to generate an optimized model as a learning model. The machine learning unit 14 generates a learning model as a learning result. The learning model storage unit 15 stores the generated learning model. The above is the end of the machine learning device 10. Figure 2 The order shown involves the learning model generation process.
[0060] Figure 3 It means by Figure 1 Flowchart showing the procedure of machining program generation processing performed by the machining program generation device 20. The machining program generation device 20 estimates machining program parameters using the learning results of the machine learning device 10 and generates a machining program using the estimation results.
[0061] In step S11, the machining shape data input unit 21 reads the machining shape data, ie, the CAD data 2, from a storage area (not shown). The machining shape data storage unit 22 stores the CAD data 2. In step S12, the machining program generation unit 23 generates a machining program based on the CAD data 2.
[0062] The parameter selection unit 24 obtains the machining program from the machining program generation unit 23. Alternatively, the parameter selection unit 24 obtains the CAD data 2 from the machining shape data storage unit 22. The parameter selection unit 24 obtains the second parameter for estimating the first parameter from the machining program or the CAD data 2. The parameter selection unit 24 inputs the second parameter as input data to the estimation unit 27.
[0063] In step S13, the inference unit 27 uses the second parameter as input data and the learning model read from the learning model storage unit 15 to infer the first parameter. The inference unit 27 outputs the inference result to the parameter selection unit 24. In step S14, the parameter selection unit 24 displays multiple values of the first parameter on the display unit 50, thereby presenting the value of the first parameter as the inference result. The multiple values displayed on the display unit 50 are candidate values for the first parameter set in the machining program. When the operator selects a value, the parameter selection unit 24 inputs the selected value to the machining program generation unit 23.
[0064] In step S15, the machining program generating unit 23 generates the machining program steps based on the value of the selected first parameter. In step S16, the machining program storage unit 25 stores the machining program generated by the machining program generating unit 23. Figure 3 The machining program generation process is performed according to the procedure shown.
[0065] Next, a description will be given of the processing performed by the machine learning device 10 and the machining program generating device 20 when generating a learning model based on the content of the editing operation to the machining program generating device 20 . Figure 4 It means that Figure 1 The flowchart shows the process steps performed by the machine learning device 10 and the machining program generation device 20 when generating a learning model based on the content of the editing operation. The machining program generation device 20 uses the learning results of the machine learning device 10 to infer machining program parameters and generates a machining program using the inference results.
[0066] In step S21, the parameter selection unit 24 obtains the value of the first parameter selected by the operator. The value of the first parameter selected by the input operation to the instruction input unit 40 is input to the parameter selection unit 24 via the interactive operation processing unit 30. The processing program generation unit 23 generates a processing program based on the value of the first parameter received from the parameter selection unit 24.
[0067] In step S22, the editing operation analysis unit 26 extracts the second parameter corresponding to the selected first parameter value from the machining program or CAD data 2. Specifically, the editing operation analysis unit 26 extracts the second parameter corresponding to the first parameter. The editing operation analysis unit 26 inputs the first parameter value selected by the operator and the extracted second parameter to the machine learning unit 14.
[0068] In step S23, the machine learning unit 14 performs machine learning processing using the input value of the first parameter and the second parameter. The machine learning unit 14 generates a data set including the first parameter and the second parameter. The machine learning unit 14 reads the learning model from the learning model storage unit 15. The machine learning unit 14 performs additional learning based on the data set, thereby updating the learning model. The learning model storage unit 15 stores the learning model updated by the additional learning. In addition, when the learning model storage unit 15 does not store the learning model, the machine learning unit 14 generates a new learning model according to the learning based on the data set. The learning model storage unit 15 stores the new learning model. As described above, the machine learning device 10 and the processing program generation device 20 complete the processing of generating or updating the learning model according to the content of the editing operation.
[0069] Next, the details of the learning model generation process performed by the machine learning device 10 will be described. Figure 5 It means by Figure 1 Flowchart of details of the learning model generation process performed by the machine learning device 10 shown in FIG. Figure 6 The processing program shown is Figure 5 The actions shown are explained. Figure 6 It means by Figure 1 FIG. 1 is a diagram showing an example of a machining program read by the machine learning device 10 . Figure 6 The machining program shown is a numerical control program for performing tapping, and includes parameter names and parameter values for each of a plurality of parameters.
[0070] In step S31, the machining program input unit 11 reads a plurality of machining programs 1 from a storage area (not shown). The machining program storage unit 12 associates the machining programs 1 with the workers who edited them and stores the machining programs 1. In step S32, the machining program analysis unit 13 extracts parameters from each of the plurality of machining programs 1 stored in the machining program storage unit 12.
[0071] from Figure 6 The parameters extracted from the machining program shown include parameters related to the material, machining, tool, and machining position. The material-related parameters include material material "FC250," material outer diameter "438," material inner diameter "352," material length "530," material end face "30," and material rotation speed "100." The machining-related parameters include unit number "9," machining type "tapping," machining mode "XC," tapping nominal model "M16," outer diameter "16," pitch "2," thread depth "45," and chamfer "0.9." Tool-related parameters include tool number "2," tool type "drill," nominal diameter "14," tool number "8," hole diameter "14," hole depth "42.7," drill diameter "0," drill depth "100," drilling method "deep hole drilling," depth per pass "7.1," peripheral speed "60," feed "0.22," and M code "M45." Parameters related to the machining position include shape pattern "arc," start position coordinates x "202.5," start position coordinates y "225," start position coordinates z "0," number "2," and angle "90." The extracted parameters also include the name of the operator who edited the machining program and the type of machine using the program.
[0072] Back to Figure 5In step S33, the machining program analyzing unit 13 filters the second parameter, which is a parameter not to be adjusted, for each first parameter to be adjusted from among the extracted parameters.
[0073] exist Figure 6 In the example shown, "Drilling Method" is the first parameter, and its value can be any of four values: "0" to "3." "0" indicates a drilling cycle, "1" indicates a high-speed deep hole cycle, "2" indicates a deep hole cycle, and "3" indicates an ultra-deep hole cycle. In this case, the second parameter selected based on the first parameter is: material material "FC250," material outer diameter "438," material inner diameter "352," material length "530," material end surface "30," machining type "tapping," machining hole diameter "14," and machining hole depth "42.7."
[0074] The first parameter, "Processing Order of Drill and End Face," indicates the order in which the drill and end face are cut. The value of "Processing Order of Drill and End Face" is "0" or "1." "0" indicates that the drill is cut first, followed by the end face, while "1" indicates that the end face is cut first, followed by the drill. In this case, the second parameter selected based on the first parameter can be material, outer diameter, inner diameter, length, end face, hole diameter, or hole depth.
[0075] The first parameter is "Processing Location," and its value can be any of four values: "0" to "3." "0" represents the outer diameter, "1" represents the inner diameter, "2" represents the front, and "3" represents the back. In this case, the second parameter selected based on the first parameter can be the material, outer diameter, inner diameter, radial machining allowance, and axial machining allowance.
[0076] The first parameter, "Bar Turning and Grooving," represents the turning method. The value for "Bar Turning and Grooving" is set to "0" or "1." "0" indicates bar turning, and "1" indicates groove turning. In this case, the second parameter, selected based on the first parameter, can be the material quality, material outer diameter, material inner diameter, radial machining allowance, and axial machining allowance.
[0077] In addition, the method of extracting parameters is a method of selecting features that are effective for machine learning from the parameters obtained by the input pattern, and includes a loop method, a forward successive feature selection method, a backward successive feature selection method, and the like. In addition, as a method of extracting parameters, there is also a machine learning method that updates the feature transformation parameters based on setting an evaluation function. By adding the L1 norm of the parameter as a regularization term to the evaluation function, a method called "Lasso" can be used to perform sparse feature transformation in which the values of a large number of parameters are zero. In addition, a method called "Group Lasso" has been proposed in which some parameters are grouped and "Lasso" is performed, thereby setting the value of each group to zero. In addition, there is also a method of extracting parameters based on the operator's experience.
[0078] The first parameter is "Processing Method," and its value can be any of 40 values from "0" to "39." "0" to "11" represent hole machining methods, "12" to "20" represent line machining methods, "21" to "28" represent surface machining methods, "29" to "36" represent turning methods, and "37" to "40" represent methods other than hole machining, line machining, surface machining, and turning. In this case, the machining program analyzer 13 can sequentially extract the "Processing Method" values from the beginning of machining program 1.
[0079] Furthermore, the first parameter can include not only "drilling method," "sequence of turning drills and end-face machining," "machining location," "bar turning and grooving," or "machining method," but also any parameter related to machining program generation, as long as it is an adjustable parameter. For example, the first parameter could be "rotational speed of the turning material," "nominal model of the turning tool," "feed-X," "feed-Z," "finishing allowance-X," "finishing allowance-Z," "circumferential speed," or "feed." The first parameter can include not only turning and drilling operations but also any other parameters related to machining programs, such as line machining, surface machining, head selection, and workpiece movement. Furthermore, the first parameter can be more than just an integer; if linear regression is used, it can also be a real value.
[0080] Back to Figure 5 In step S34 , the machining program analysis unit 13 generates a data set including the first parameter and the second parameter selected based on the first parameter. The machining program analysis unit 13 inputs the generated data set to the machine learning unit 14 .
[0081] In step S35, the machine learning unit 14 performs machine learning processing based on the data set input from the machining program analysis unit 13. Through the machine learning processing, the machine learning unit 14 generates a learning model representing the relationship between the first parameter and the second parameter for each first parameter. In step S36, the learning model storage unit 15 stores the generated learning model. The technology for generating a learning model based on the machining program 1 can use the technology disclosed in Japanese Patent No. 6599069, for example.
[0082] Next, details of the machining program generation process performed by the machining program generation device 20 will be described. Figure 7 It means by Figure 1 Flowchart showing details of the machining program generation process performed by the machining program generation unit 23. Next, an example of the machining program generation process related to milling machining in which a machining object is cut by moving the tool while rotating the tool will be described.
[0083] In step S41, the machining program generating unit 23 reads the CAD data 2 stored in the machining shape data storing unit 22. The CAD data 2 are design data including the shape of the material before machining and the shape of the machining object after machining. Figure 8 Is based on Figure 1 The oblique view of the shape of the object after processing is generated by the CAD data 2 shown. Hereinafter, the shape of the object after processing is referred to as the processing shape. Figure 8 A processed shape SH1 according to a specific example is shown.
[0084] Back to Figure 7 In step S42, the machining program generating unit 23 generates the machining program based on the read CAD data 2. Figure 8 The machining shape SH1 shown. The machining program generation unit 23 arranges the machining shape SH1 at the program origin. The program origin is the machining origin of the program coordinate system. In addition, in steps S42 to S45, the generation of the shape refers to the generation of the shape in the virtual space.
[0085] The program coordinate system is an orthogonal coordinate system consisting of the X, Y, and Z axes. The X-axis is horizontal in the diagram. The positive direction of the X-axis is right, which is horizontal. The Y-axis is front-to-back in the diagram. The positive direction of the Y-axis is rear, which is front-to-back. The Z-axis is vertical in the diagram. The positive direction of the Z-axis is upward, which is vertical.
[0086] The machining program generating unit 23 arranges the machining shape SH1 so that the portion with the minimum X-axis coordinate, the portion with the minimum Y-axis coordinate, and the portion with the maximum Z-axis coordinate in the machining shape SH1 coincide with the program origin, thereby arranging the machining shape SH1 at the program origin.
[0087] Back to Figure 7 In step S43, the machining program generation unit 23 generates the shape of the raw material before machining based on the read CAD data 2. Hereinafter, the shape of the raw material before machining is referred to as the raw material shape. Specifically, the raw material shape is a three-dimensional rectangular parallelepiped shape that includes the machining shape SH1 located at the program origin. The machining program generation unit 23 arranges the generated raw material shape in the program coordinate system in the same manner as the machining shape SH1.
[0088] Figure 9 Is based on Figure 1 The oblique view of the raw material shape is generated by the CAD data 2 shown. Figure 9 The material shape SH2 according to a specific example is shown. The size of the material shape SH2 can be obtained based on the maximum and minimum values of the coordinates of the processed shape SH1 in each of the X-axis direction, the Y-axis direction, and the Z-axis direction.
[0089] Because the upper surface of the processed shape SH1 is subjected to top surface processing, the size of the raw material shape SH2 in the Z-axis direction is set to be approximately 2 mm to 3 mm larger than the processed shape SH1. The processing program generation unit 23 arranges the raw material shape SH2 so that the upper surface of the raw material shape SH2 on the +Z-axis side coincides with the program origin. Therefore, the processing program generation unit 23 moves the processed shape SH1 parallel to the -Z-axis direction from the upper surface of the raw material shape SH2. Specifically, the processing program generation unit 23 moves the processed shape SH1 parallel to the -Z-axis direction by 2 mm to 3 mm. Here, the raw material shape SH2 is set to have a size of 80 mm in the X-axis direction, 60 mm in the Y-axis direction, and 23 mm in the Z-axis direction. The raw material material is set to S45C.
[0090] Back to Figure 7 In step S44, the machining program generating unit 23 generates the shape of the portion to be removed from the raw material shape SH2. Hereinafter, the shape of the portion to be removed is referred to as a machining removal shape. Figure 10 It means by Figure 1 The oblique view of the machining removal shape generated by the machining program generating unit 23 is shown. Figure 10The machining removal shape SH3 according to a specific example is shown. The machining program generation unit 23 can obtain the machining removal shape SH3 by performing a difference calculation by subtracting the solid model of the machining shape SH1 from the solid model of the material shape SH2.
[0091] Back to Figure 7 In step S45, the machining program generator 23 generates the shape of the portion to be removed for each process. Hereinafter, the shape of the portion to be removed for each process is referred to as the process shape. The machining shape SH1 is cut from the raw material shape SH2 through multiple processes. The process shape is the shape of the portion to be removed in each of the multiple processes.
[0092] Here, the shapes of the various steps are described for forming the processed shape SH1 through the steps of first and second surface machining (cutting the surfaces), hole machining (opening a hole), and countersinking (forming a countersink). The shape of the portion removed by first surface machining is referred to as the first step shape, the shape of the portion removed by second surface machining is referred to as the second step shape, the shape of the portion removed by hole machining is referred to as the third step shape, and the shape of the portion removed by countersinking is referred to as the fourth step shape.
[0093] Figure 11 It means by Figure 1 The perspective view of the first step shape generated by the machining program generating unit 23 is shown. Figure 11 The step shape SH4 shown is a specific example of the first step shape.
[0094] Figure 12 It means by Figure 1 The perspective view of the second step shape generated by the machining program generating unit 23 is shown. Figure 12 The step shape SH5 shown is a specific example of the second step shape. Figure 13 It means by Figure 1 The perspective view of the third step shape generated by the machining program generating unit 23 is shown. Figure 13 The step shape SH6 shown is a specific example of the third step shape. Figure 14 It means by Figure 1 The perspective view of the fourth step shape generated by the machining program generating unit 23 is shown.
[0095] Figure 14 The process shape SH7 shown is a specific example of the fourth process shape. The machining removal shape SH3 is a shape obtained by combining the process shape SH4, the process shape SH5, the process shape SH6, and the process shape SH7.
[0096] The process shape SH6 includes four cylindrical shapes SH61, SH62, SH63, and SH64. The process shape SH7 includes two stepped cylindrical shapes SH71 and SH72. The processing program generation unit 23 extracts a plurality of cylindrical shapes having a diameter less than or equal to a predetermined diameter from the processing removal shape SH3, and divides the plurality of cylindrical shapes into cylindrical shapes SH61, SH62, SH63, and SH64 and stepped cylindrical shapes SH71 and SH72. The stepped cylindrical shapes SH71 and SH72 are formed by making two cylindrical shapes of different diameters adjacent to each other in the Z-axis direction. The processing program generation unit 23 processes the adjacent cylindrical shapes as one shape. As described above, the processing program generation unit 23 generates the process shape SH6 and the process shape SH7.
[0097] Next, the machining program generation unit 23 removes the process shapes SH6 and SH7 from the machining removal shape SH3, thereby dividing the remaining step-shaped portion. The height direction of the steps in the step-shaped portion is the Z-axis direction. The machining program generation unit 23 divides the step-shaped portion into two portions using an XY plane perpendicular to the Z-axis direction. As described above, the machining program generation unit 23 generates the process shape SH4 and the process shape SH5. In addition, the first surface machining is the above-mentioned upper surface machining. The second surface machining is the machining of hollowing out the portion on the -Z-axis side of the process shape SH4 into a rectangle. The four corners of the rectangle are rounded.
[0098] Back to Figure 7 The parameter selection unit 24 obtains the second parameter for estimating the first parameter from the machining program or CAD data 2. The parameter selection unit 24 specifies the first parameter to be estimated and inputs the second parameter to the estimation unit 27. In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27.
[0099] Here, the parameter selection unit 24 specifies the first parameter to be estimated, namely the "surface processing method." As second parameters used to estimate the first parameter, the parameter selection unit 24 obtains the following parameters: the raw material material "S45C," the upper surface coordinates of process shape SH4 "80.0, 60.0, 0.0," the lower surface coordinates of process shape SH4 "0.0, 0.0, -3.0," the X-axis dimension of process shape SH4 "80.0," the Y-axis dimension of process shape SH4 "60.0," the Z-axis dimension of process shape SH4 "3.0," the shape "none" horizontally adjacent to process shape SH4, the number of mountain shapes contained in process shape SH4 "none," and the number of valley shapes contained in process shape SH4 "none." The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0100] The parameter selection unit 24 also acquires the material material set when generating the material shape as a second parameter. Furthermore, the parameter selection unit 24 analyzes the process shape SH4 to acquire the coordinates and dimensions of the process shape SH4. The parameter selection unit 24 can also acquire the operator name and machine type as the second parameter.
[0101] The parameter selection unit 24 obtains a plurality of values of the first parameter as an estimation result and the probability of use in the machining program associated with each of the plurality of values from the estimation unit 27. That is, the parameter selection unit 24 obtains a data set of the plurality of values of the first parameter and the probabilities.
[0102] Here, the parameter selection unit 24 obtains five values from "0" to "4" for the first parameter, "surface processing method," as an inference result. "0" indicates an end mill process in which a flat surface is processed by an end mill. "1" indicates an end mill process in which a flat surface is processed by an end mill. "2" indicates an end mill process in which a flat surface is processed by an end mill while a portion of the shape is retained. "3" indicates a pocket milling process in which a pocket is processed by an end mill. "4" indicates a pocket milling process in which a pocket is processed by an end mill while a portion of the shape is retained.
[0103] Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.8, "1": 0.15, "2": 0.0, "3": 0.05, and "4": 0.0 for each of these five values as estimation results. "0": 0.8 indicates that the probability of "0" being used in the machining program is 80%. "1": 0.15 indicates that the probability of "1" being used in the machining program is 15%. "2": 0.0 indicates that the probability of "2" being used in the machining program is 0%. "3": 0.05 indicates that the probability of "3" being used in the machining program is 5%. "4": 0.0 indicates that the probability of "4" being used in the machining program is 0%.
[0104] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA121. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0105] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the dialogue operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter. The display unit 50 can display the values and probabilities of the first parameter in any manner. The display unit 50 can display the values and probabilities of the first parameter in descending order of probability. The display unit 50 can display only the values of the first parameter whose probabilities are greater than or equal to a predetermined value. By presenting the values and probabilities of the first parameter together, the operator can easily select a value for the first parameter.
[0106] Furthermore, the parameter selection unit 24 may present the estimated machining time when multiple values are used in the machining program, along with the multiple values of the first parameter as the estimation result. The parameter selection unit 24 simulates machining of the process shape SH4, thereby determining the estimated machining time. Presenting the values of the first parameter together with the estimated machining time allows the operator to easily select the value of the first parameter.
[0107] If the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "0" for "end milling process" for the program generation parameter PA121, the parameter selection unit 24 acquires "0" for the first parameter "surface machining method." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0108] In step S49, the machining program generating unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generating unit 23 acquires "0" for the "surface machining method" and thereby generates an end mill step.
[0109] In step S50, the machining program generating unit 23 determines whether the generation of the steps is complete for all the first parameters used in the machining program. If the generation of the steps is not complete (step S50, No), the machining program generating device 20 returns the sequence to step S46.
[0110] The machining program generating device 20 repeats the processing from step S46 to step S50 until the generation of steps for all first parameters used in the machining program is completed. In other words, the machining program generating device 20 repeats the processing from step S46 to step S50 for the number of first parameters used in the machining program.
[0111] Next, the parameter selection unit 24 specifies the first parameter to be estimated, namely, the "end mill process finishing allowance." The parameter selection unit 24 then obtains the following parameters as second parameters for estimating the first parameter: the raw material material "S45C," the machining allowance -Z "3.0," the upper surface coordinates of process shape SH4 "80.0, 60.0, 0.0," the lower surface coordinates of process shape SH4 "0.0, 0.0, -3.0," the X-axis dimension of process shape SH4 "80.0," the Y-axis dimension of process shape SH4 "60.0," the Z-axis dimension of process shape SH4 "3.0," the shape horizontally adjacent to process shape SH4 "none," the number of hills contained in process shape SH4 "none," the number of valleys contained in process shape SH4 "none," and the bottom surface roughness of process shape SH4 "1.6." The parameter selection unit 24 inputs the input data, including these second parameters, to the estimation unit 27.
[0112] The parameter selection unit 24 also obtains bottom surface roughness information, which is an attribute of the surface of the processed shape SH1 corresponding to the lower surface of the process shape SH4, as the second parameter. For example, the parameter selection unit 24 obtains the value of the calculated average roughness Ra as the bottom surface roughness.
[0113] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the inference result from the inference unit 27. Here, the parameter selection unit 24 obtains the value of "0.3" as the first parameter, namely, the "finishing allowance," as the inference result. The combination of the multiple second parameters input to the inference unit 27 and the first parameter as the inference result is called the program generation parameter PA122. The inference unit 27 reads the learning model corresponding to the specified first parameter from the learning models stored in the learning model storage unit 15. The inference unit 27 outputs the value of the first parameter as the inference result to the parameter selection unit 24. When the first parameter is a continuous value, the inference unit 27 performs machine learning of regression and outputs the numerical value as the inference result to the parameter selection unit 24.
[0114] Next, in step S47, the parameter selection unit 24 presents the value of the first parameter as the estimation result. The parameter selection unit 24 transmits the value of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 presents the value of the first parameter by displaying it on the display unit 50.
[0115] If the operator directly determines the value of the first parameter displayed on the display unit 50 as the set value, or determines an arbitrary value as the set value instead of the value of the first parameter displayed on the display unit 50, in step S48, the parameter selection unit 24 obtains the set value via the interactive operation processing unit 30. For example, if the operator determines "0.3" as the set value for program generation parameter PA122, the parameter selection unit 24 obtains "0.3," which is the set value for "finishing allowance." The parameter selection unit 24 inputs the set value to the machining program generation unit 23.
[0116] In step S49, the machining program generating unit 23 generates a machining program step based on the setting value of the first parameter. The machining program generating unit 23 obtains the value of "0.3" as the "finishing allowance" and sets the finishing allowance Z value of the end mill step to 0.3.
[0117] Next, the parameter selection unit 24 specifies the "tool nominal diameter for the end mill process" as the first parameter to be estimated. The parameter selection unit 24 then obtains the following parameters as the second parameters used to estimate the first parameter: the material material "S45C," the machining allowance -Z "3.0," the upper surface coordinates of process shape SH4 "80.0, 60.0, 0.0," the lower surface coordinates of process shape SH4 "0.0, 0.0, -3.0," the X-axis dimension of process shape SH4 "80.0," the Y-axis dimension of process shape SH4 "60.0," the Z-axis dimension of process shape SH4 "3.0," the shape "none" horizontally adjacent to process shape SH4, the number of mountain shapes contained in process shape SH4 "none," the number of valley shapes contained in process shape SH4 "none," and the tool usage "roughing." The parameter selection unit 24 inputs the input data, including these second parameters, to the estimation unit 27.
[0118] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27. The parameter selection unit 24 obtains from the estimation unit 27 a plurality of values of the first parameter as the estimation result and the probability of use in the machining program associated with each of the plurality of values.
[0119] Here, the parameter selection unit 24 obtains four values, "30," "40," "50," and "60," for the first parameter, "nominal tool diameter for the end milling process," as inference results. Each value represents the nominal tool diameter for the end milling process. Furthermore, the parameter selection unit 24 obtains, as inference results, probabilities for each of these four values: "30": 0.7, "40": 0.1, "50": 0.1, and "60": 0.05. "30": 0.7 indicates a 70% probability that the nominal tool diameter for the end milling process is 30. "40": 0.1 indicates a 10% probability that the nominal tool diameter for the end milling process is 40. "50": 0.1 indicates a 10% probability that the nominal tool diameter for the end milling process is 50. "60": 0.1 indicates a 5% probability that the nominal tool diameter for the end milling process is 60.
[0120] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA123. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0121] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0122] If the operator selects any value from the multiple values for the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "30" for the program generation parameter PA123, the parameter selection unit 24 acquires "30," which is the value of the "tool nominal diameter for the end mill process" as the first parameter. The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0123] In step S49, the machining program generation unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generation unit 23 obtains "30" for the "tool nominal diameter for the end mill step," thereby setting the tool nominal diameter for rough machining in the end mill step to "30."
[0124] Next, the parameter selection unit 24 specifies the first parameter to be estimated, namely, the "end milling process machining method." The parameter selection unit 24 then obtains the following parameters as second parameters for estimating the first parameter: the raw material material "S45C," the machining allowance -Z "3.0," the upper surface coordinates of process shape SH4 "80.0, 60.0, 0.0," the lower surface coordinates of process shape SH4 "0.0, 0.0, -3.0," the X-axis dimension of process shape SH4 "80.0," the Y-axis dimension of process shape SH4 "60.0," the Z-axis dimension of process shape SH4 "3.0," the shape horizontally adjacent to process shape SH4 "none," the number of mountain shapes contained in process shape SH4 "none," the number of valley shapes contained in process shape SH4 "none," and the machining purpose "rough machining." The parameter selection unit 24 inputs the input data, including these second parameters, to the estimation unit 27.
[0125] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27. The parameter selection unit 24 obtains from the estimation unit 27 a plurality of values of the first parameter as the estimation result and the probability of use in the machining program associated with each of the plurality of values.
[0126] Here, the parameter selection unit 24 acquires four values, "0" to "3," for the first parameter, "end milling process processing method," as the estimation result. "0" indicates cutting with the end mill reciprocating in the X-axis direction. "1" indicates cutting with the end mill reciprocating in the Y-axis direction. "2" indicates cutting with the end mill moving in one direction in the X-axis direction. "3" indicates cutting with the end mill moving in one direction in the Y-axis direction.
[0127] Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.8, "1": 0.1, "2": 0.05, and "3": 0.05 for each of the four values as estimation results. "0": 0.8 indicates that the probability of "0" being used in the machining program is 80%. "1": 0.1 indicates that the probability of "1" being used in the machining program is 10%. "2": 0.05 indicates that the probability of "2" being used in the machining program is 5%. "3": 0.05 indicates that the probability of "3" being used in the machining program is 5%.
[0128] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA124. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0129] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0130] If the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "0" for cutting with the end mill reciprocating in the X-axis direction for program generation parameter PA124, the parameter selection unit 24 acquires the selected value, "0." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0131] In step S49, the machining program generation unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generation unit 23 obtains "0" for the "machining method of the end mill step," thereby setting the machining method for rough machining in the end mill step to "reciprocating in the X-axis direction."
[0132] Next, the parameter selection unit 24 specifies the "tool nominal diameter for the end mill process" as the first parameter to be estimated. The parameter selection unit 24 then obtains the following parameters as the second parameters used to estimate the first parameter: the material material "S45C," the machining allowance -Z "3.0," the upper surface coordinates of process shape SH4 "80.0, 60.0, 0.0," the lower surface coordinates of process shape SH4 "0.0, 0.0, -3.0," the X-axis dimension of process shape SH4 "80.0," the Y-axis dimension of process shape SH4 "60.0," the Z-axis dimension of process shape SH4 "3.0," the shape "none" horizontally adjacent to process shape SH4, the number of mountain shapes contained in process shape SH4 "none," the number of valley shapes contained in process shape SH4 "none," and the tool usage "finishing." The parameter selection unit 24 inputs the input data, including these second parameters, to the estimation unit 27.
[0133] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27. The parameter selection unit 24 obtains from the estimation unit 27 a plurality of values of the first parameter as the estimation result and the probability of use in the machining program associated with each of the plurality of values.
[0134] Here, the parameter selection unit 24 obtains four values, "30," "40," "50," and "60," for the first parameter, "nominal tool diameter for the end mill process," as inference results. Each value represents the nominal tool diameter of the end mill. Furthermore, the parameter selection unit 24 obtains the probabilities of "30": 0.8, "40": 0.2, "50": 0.0, and "60": 0.0 for each of these four values as inference results. "30": 0.8 indicates an 80% probability that the nominal tool diameter for the end mill process is set to 30. "40": 0.2 indicates a 20% probability that the nominal tool diameter for the end mill process is set to 40. "50": 0.0 indicates a 0% probability that the nominal tool diameter for the end mill process is set to 50. "60": 0.0 indicates a 0% probability that the nominal tool diameter for the end mill process is set to 60.
[0135] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA125. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0136] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0137] When the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "30" for the program generation parameter PA125, the parameter selection unit 24 acquires the value "30" for the first parameter, namely, the "tool nominal diameter for the end milling process." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0138] In step S49, the machining program generation unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generation unit 23 obtains "30" for the "tool nominal diameter for the end mill step," thereby setting the tool nominal diameter for the finish machining in the end mill step to "30."
[0139] If process generation is not complete (step S50, No), the parameter selection unit 24 next specifies the first parameter to be estimated, namely, the "end mill machining method." The parameter selection unit 24 then obtains the following parameters as the second parameters used to estimate the first parameter: the raw material material "S45C," the machining allowance -Z "3.0," the upper surface coordinates of the process shape SH4 "80.0, 60.0, 0.0," the lower surface coordinates of the process shape SH4 "0.0, 0.0, -3.0," the X-axis dimension of the process shape SH4 "80.0," the Y-axis dimension of the process shape SH4 "60.0," the Z-axis dimension of the process shape SH4 "3.0," the shape "none" horizontally adjacent to the process shape SH4, the number of mountain shapes included in the process shape SH4 "none," the number of valley shapes included in the process shape SH4 "none," and the machining purpose "finishing." The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0140] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27. The parameter selection unit 24 obtains from the estimation unit 27 a plurality of values of the first parameter as the estimation result and the probability of use in the machining program associated with each of the plurality of values.
[0141] Here, the parameter selection unit 24 acquires four values, "0" to "3," for the first parameter, "end mill machining method," as the estimation result. "0" indicates cutting with the end mill reciprocating in the X-axis direction. "1" indicates cutting with the end mill reciprocating in the Y-axis direction. "2" indicates cutting with the end mill moving in one direction in the X-axis direction. "3" indicates cutting with the end mill moving in one direction in the Y-axis direction.
[0142] Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.9, "1": 0.1, "2": 0.0, and "3": 0.0 for each of the four values as estimation results. "0": 0.9 indicates a 90% probability of using "0" in the machining program. "1": 0.1 indicates a 10% probability of using "1" in the machining program. "2": 0.0 indicates a 0% probability of using "2" in the machining program. "3": 0.0 indicates a 0% probability of using "3" in the machining program.
[0143] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA126. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0144] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0145] When the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "0" for the program generation parameter PA126, the parameter selection unit 24 acquires the selected value, "0." The parameter selection unit 24 inputs the selected value to the machining program generation unit 23.
[0146] In step S49, the machining program generation unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generation unit 23 obtains "0" for "machining method of end mill step", thereby setting the machining method in the end mill step finish machining to "reciprocating in the X-axis direction".
[0147] After the machining program generation device 20 completes the generation of the process related to the process shape SH4, the processing from step S46 to step S50 is repeated for the process shape SH5, similarly to the case of the process shape SH4. Thus, the machining program generation device 20 sets the finishing allowance of the pocket milling process, the tool nominal diameter during rough machining in the pocket milling process, the machining method during finish machining in the pocket milling process, the tool nominal diameter during finish machining in the pocket milling process, and the machining method during finish machining in the pocket milling process, for the process shape SH5.
[0148] Once the generation of the processes associated with process shapes SH4 and SH5 is complete, the parameter selection unit 24 specifies the first parameter to be estimated for process shape SH61, namely, the "hole machining method." The parameter selection unit 24 obtains the following parameters as the second parameter used to estimate the first parameter: the raw material material "S45C," the center coordinates of the upper surface of process shape SH61 "7.0, 7.0, -3.0," the center coordinates of the lower surface of process shape SH61 "7.0, 7.0, -23.0," the hole diameter of process shape SH61 "6.4," the hole depth of process shape SH61 "23.0," the countersink diameter of process shape SH61 "0.0," and the countersink depth of process shape SH61 "0.0." The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0149] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27. The parameter selection unit 24 obtains from the estimation unit 27 a plurality of values of the first parameter as the estimation result and the probability of use in the machining program associated with each of the plurality of values.
[0150] Here, the parameter selection unit 24 acquires four values, "0" to "3," for the first parameter, "hole machining method," as the estimation result. "0" indicates a drilling process in which a hole is drilled. "1" indicates a countersinking process in which a hole is countersunk to form a countersink. "2" indicates a reaming process in which finishing is performed by reaming. "3" indicates a tapping process in which a thread is cut by tapping.
[0151] Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.6, "1": 0.05, "2": 0.1, and "3": 0.25 for each of the four values as estimation results. "0": 0.6 indicates that the probability of "0" being used in the machining program is 60%. "1": 0.05 indicates that the probability of "1" being used in the machining program is 5%. "2": 0.1 indicates that the probability of "2" being used in the machining program is 10%. "3": 0.25 indicates that the probability of "3" being used in the machining program is 25%.
[0152] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA131. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0153] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0154] When the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "0" for the drilling process for program generation parameter PA131, the parameter selection unit 24 acquires the selected value, "0." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0155] In step S49, the machining program generation unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generation unit 23 obtains "0" for "hole machining method" and sets the hole machining method of the process shape SH61 to "drilling process."
[0156] Next, the parameter selection unit 24 specifies the "nominal diameter of the drill bit" as the first parameter to be estimated. The parameter selection unit 24 obtains the following parameters as the second parameters used to estimate the first parameter: the raw material material "S45C," the hole diameter of the process shape SH61 "6.4," the hole depth of the process shape SH61 "23.0," the countersink diameter of the process shape SH61 "0.0," and the countersink depth of the process shape SH61 "0.0." The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0157] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the inference result from the inference unit 27. Here, the parameter selection unit 24 obtains the value "6.0" as the first parameter, namely, the "nominal diameter of the drill bit," as the inference result. The combination of the multiple second parameters input to the inference unit 27 and the first parameter as the inference result is referred to as program-generated parameter PA132. The inference unit 27 reads the learning model corresponding to the specified first parameter from the learning models stored in the learning model storage unit 15. The inference unit 27 outputs the value of the first parameter as the inference result to the parameter selection unit 24. The inference unit 27 performs machine learning using regression. The inference unit 27 can also perform machine learning using classification.
[0158] Next, in step S47, the parameter selection unit 24 presents the value of the first parameter as the estimation result. The parameter selection unit 24 transmits the value of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 presents the value of the first parameter by displaying it on the display unit 50.
[0159] If the operator directly sets the value of the first parameter displayed on the display unit 50 as the set value, or sets an arbitrary value as the set value instead of the value of the first parameter displayed on the display unit 50, in step S48, the parameter selection unit 24 obtains the set value via the interactive operation processing unit 30. For example, if the operator sets "6.0" as the set value for the program generation parameter PA132, the parameter selection unit 24 obtains "6.0," which is the set value related to the "nominal diameter of the drill bit." The parameter selection unit 24 inputs the set value to the machining program generation unit 23.
[0160] In step S49, the machining program generator 23 generates machining program steps based on the setting value of the first parameter. The machining program generator 23 obtains the value "6.0" for the "nominal diameter of the drill" and sets the nominal diameter of the drill in the drilling step to 6.0.
[0161] Next, the parameter selection unit 24 specifies the "drilling method" as the first parameter to be estimated. The parameter selection unit 24 obtains the following parameters as the second parameters used to estimate the first parameter: the raw material material "S45C," the hole diameter "6.4" of the process shape SH61, the hole depth "23.0" of the process shape SH61, the countersink diameter "0.0" of the process shape SH61, the countersink depth "0.0" of the process shape SH61, and the hole type "through hole" of the process shape SH61. The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0162] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27. The parameter selection unit 24 obtains from the estimation unit 27 a plurality of values of the first parameter as the estimation result and the probability of use in the machining program associated with each of the plurality of values.
[0163] Here, the parameter selection unit 24 obtains "0" or "1" as the first parameter, "Drilling Method," as the result of the estimation. "0" indicates a drilling cycle that performs a single drilling operation. "1" indicates a deep hole cycle that performs drilling, and when a specified feed rate is reached, raises the drill head to a predetermined position and performs drilling again.
[0164] The parameter selection unit 24 also obtains the probabilities of "0": 1.0 and "1": 0.0 for the two values as estimation results. "0": 1.0 indicates that the probability of using "0" in the machining program is 100%. "1": 0.0 indicates that the probability of using "1" in the machining program is 0%.
[0165] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA133. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0166] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0167] When the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "0," which indicates a drilling cycle for a single drilling operation, for program generation parameter PA133, the parameter selection unit 24 acquires the selected value, "0." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0168] In step S49, the machining program generation unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generation unit 23 obtains "0" for "drilling method" and sets the drilling method to "drilling cycle for performing drilling once."
[0169] When the generation of the process related to the process shape SH61 is completed, the machining program generating device 20 repeats the processing from step S46 to step S50 for the process shapes SH62 , SH63 , and SH64 in the same manner as for the process shape SH61 .
[0170] Once the generation of the processes associated with process shapes SH4, SH5, and SH6 is complete, the parameter selection unit 24 specifies the first parameter to be estimated for process shape SH71, namely, the "hole machining method." The parameter selection unit 24 obtains the following parameters as the second parameters used to estimate the first parameter: the raw material material "S45C," the center coordinates of the top surface of process shape SH71 "55.0, 30.0, -13.0," the center coordinates of the bottom surface of process shape SH71 "55.0, 30.0, -23.0," the hole diameter of process shape SH71 "6.6," the hole depth of process shape SH71 "10.0," the countersink diameter of process shape SH71 "11.6," and the countersink depth of process shape SH71 "4.3." The parameter selection unit 24 inputs the input data, including these second parameters, to the estimation unit 27.
[0171] In step S46, the parameter selection unit 24 obtains the value of the first parameter as the estimation result from the estimation unit 27. The parameter selection unit 24 obtains from the estimation unit 27 a plurality of values of the first parameter as the estimation result and the probability of use in the machining program associated with each of the plurality of values.
[0172] Here, the parameter selection unit 24 acquires four values, "0" to "3," for the first parameter, "hole machining method," as the estimation result. "0" indicates a drilling process in which a hole is drilled. "1" indicates a countersinking process in which a hole is countersunk to form a countersink. "2" indicates a reaming process in which finishing is performed by reaming. "3" indicates a tapping process in which a thread is cut by tapping.
[0173] Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.0, "1": 0.6, "2": 0.1, and "3": 0.3 for each of the four values as estimation results. "0": 0.0 indicates that the probability of "0" being used in the machining program is 0%. "1": 0.6 indicates that the probability of "1" being used in the machining program is 60%. "2": 0.1 indicates that the probability of "2" being used in the machining program is 10%. "3": 0.3 indicates that the probability of "3" being used in the machining program is 30%.
[0174] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA134. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0175] Next, in step S47, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0176] When the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value in step S48. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "1" for the countersinking process in program generation parameter PA134, the parameter selection unit 24 acquires the selected value, "1." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0177] In step S49, the machining program generating unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generating unit 23 obtains "1" for "hole machining method" and sets the hole machining method of the step shape SH71 to "countersinking step."
[0178] Next, the parameter selection unit 24 specifies the "nominal diameter of the drill bit" as the first parameter to be estimated. The parameter selection unit 24 then obtains the following parameters as the second parameter used to estimate the first parameter: the raw material material "S45C," the hole diameter of the process shape SH71 "6.6," the hole depth of the process shape SH71 "10.0," the countersink diameter of the process shape SH71 "11.6," the countersink depth of the process shape SH71 "4.3," and the hole machining method "countersinking." The parameter selection unit 24 inputs the input data, including these second parameters, to the estimation unit 27.
[0179] In step S46, the parameter selection unit 24 obtains the value of the first parameter, which is the estimation result, from the estimation unit 27. Here, the parameter selection unit 24 obtains the value "6.6" as the first parameter, namely, the "nominal diameter of the drill bit," as the estimation result. The combination of the multiple second parameters input to the estimation unit 27 and the first parameter, which is the estimation result, is referred to as the program-generated parameter PA135. The estimation unit 27 reads the learning model corresponding to the specified first parameter from the learning models stored in the learning model storage unit 15. The estimation unit 27 outputs the value of the first parameter, which is the estimation result, to the parameter selection unit 24.
[0180] Next, in step S47, the parameter selection unit 24 presents the value of the first parameter as the estimation result. The parameter selection unit 24 transmits the value of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 presents the value of the first parameter by displaying it on the display unit 50.
[0181] If the operator directly sets the value of the first parameter displayed on the display unit 50 as the set value, or sets an arbitrary value as the set value instead of the value of the first parameter displayed on the display unit 50, in step S48, the parameter selection unit 24 obtains the set value via the interactive operation processing unit 30. For example, if the operator sets "6.6" as the set value for the program generation parameter PA135, the parameter selection unit 24 obtains "6.6," which is the set value for the "nominal diameter of the drilling bit." The parameter selection unit 24 inputs the set value to the machining program generation unit 23.
[0182] In step S49, the machining program generator 23 generates a machining program step based on the set value of the first parameter. The machining program generator 23 obtains the value of "6.6" for the "nominal diameter of the drilling bit," thereby setting the nominal diameter of the drilling bit in the countersinking step to 6.6.
[0183] Next, the parameter selection unit 24 specifies the "nominal diameter of the countersink end mill" as the first parameter to be estimated. The parameter selection unit 24 then obtains the following parameters as the second parameter used to estimate the first parameter: the material material "S45C," the hole diameter of the process shape SH71 "6.6," the hole depth of the process shape SH71 "10.0," the countersink diameter of the process shape SH71 "11.6," the countersink depth of the process shape SH71 "4.3," and the hole machining method "countersinking." The parameter selection unit 24 inputs the input data, including these second parameters, to the estimation unit 27.
[0184] In step S46, the parameter selection unit 24 obtains the value of the first parameter, which is the estimation result, from the inference unit 27. Here, the parameter selection unit 24 obtains the value "8.0" as the first parameter, namely, the "nominal diameter of the countersink end mill," as the estimation result. The combination of the plurality of second parameters input to the inference unit 27 and the first parameter, which is the estimation result, is referred to as program-generated parameter PA136. The inference unit 27 reads the learning model corresponding to the specified first parameter from the learning models stored in the learning model storage unit 15. The inference unit 27 outputs the value of the first parameter, which is the estimation result, to the parameter selection unit 24.
[0185] Next, in step S47, the parameter selection unit 24 presents the value of the first parameter as the estimation result. The parameter selection unit 24 transmits the value of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 presents the value of the first parameter by displaying it on the display unit 50.
[0186] If the operator directly sets the value of the first parameter displayed on the display unit 50 as the set value, or sets an arbitrary value as the set value instead of the value of the first parameter displayed on the display unit 50, in step S48, the parameter selection unit 24 obtains the set value via the interactive operation processing unit 30. For example, if the operator sets "8.0" as the set value for program generation parameter PA136, the parameter selection unit 24 obtains "8.0," which is the set value for the "nominal diameter of the countersink end mill." The parameter selection unit 24 inputs the set value to the machining program generation unit 23.
[0187] In step S49, the machining program generator 23 generates a machining program step based on the setting value of the first parameter. The machining program generator 23 obtains the value "8.0" for the "nominal diameter of the countersinking end mill" and sets the nominal diameter of the countersinking end mill in the countersinking step to 8.0.
[0188] When the generation of the process related to the process shape SH71 is completed, the machining program generating device 20 repeats the processing from step S46 to step S50 for the process shape SH72 as in the case of the process shape SH71 .
[0189] When the generation of the steps is completed for all the first parameters used in the machining program (step S50, Yes), the machining program generating device 20 ends the process. Figure 7 The processing of generating a machining program in the order involved.
[0190] The machining program generating unit 23 performs Figure 7 By referring to the program generation parameters PA121-PA126, the surface machining steps for cutting the machining shape SH1 desired by the operator from the raw material can be generated. In addition, the machining program generation unit 23 can efficiently generate a plurality of different surface machining steps for cutting the machining shape SH1.
[0191] The machining program generating unit 23 performs Figure 7 By referring to the program generation parameters PA131-PA136, the machining process for cutting the machining shape SH1 desired by the operator from the raw material can be generated. In addition, the machining program generation unit 23 can efficiently generate multiple different machining processes for cutting the machining shape SH1.
[0192] According to the first embodiment, the machine learning device 10 generates a learning model based on a machining program previously generated by an operator's editing. The machining program generation device 20 uses the learning model to determine the first parameter. The machining program generated by the operator's editing has accumulated the operator's knowledge and experience. Therefore, the machining program generation device 20 can efficiently and easily generate the same machining program as when the operator generates the machining program manually. The machining program generation device 20 can also easily generate a machining program even when a variety of parameters need to be adjusted when generating the machining program.
[0193] Implementation method 2.
[0194] In the second embodiment, the details of the editing operation analysis process performed by the machining program generation device 20 and the additional learning process performed by the machine learning device 10 are described. The numerical control device 100 according to the second embodiment has the same structure as the numerical control device 100 according to the first embodiment. In the second embodiment, the operation of the numerical control device 100 includes the learning model generation process performed by the machine learning device 10 and the machining program generation process performed by the machining program generation device 20, as in the first embodiment.
[0195] Figure 15 This is a flowchart showing the order of editing operation analysis processing and additional learning processing in Implementation 2. Figure 11 Taking the process shape SH4 shown in FIG. 4 as an example, the editing operation analysis process and the additional learning process will be described. The machine learning device 10 generates a learning model. Since the overview of the learning model generation process is the same as in the first embodiment, its description will be omitted here. Furthermore, the machining program generation device 20 generates a machining program. Since the overview of the machining program generation process is also the same as in the first embodiment, its description will be omitted here.
[0196] Here, the parameter selection unit 24 specifies the first parameter to be estimated, namely the "surface processing method." As second parameters used to estimate the first parameter, the parameter selection unit 24 obtains the following parameters: the raw material material "S45C," the upper surface coordinates of process shape SH4 "80.0, 60.0, 0.0," the lower surface coordinates of process shape SH4 "0.0, 0.0, -3.0," the X-axis dimension of process shape SH4 "80.0," the Y-axis dimension of process shape SH4 "60.0," the Z-axis dimension of process shape SH4 "3.0," the shape "none" horizontally adjacent to process shape SH4, the number of mountain shapes contained in process shape SH4 "none," and the number of valley shapes contained in process shape SH4 "none." The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0197] The parameter selection unit 24 obtains a plurality of values of the first parameter as an estimation result and the probability of use in the machining program associated with each of the plurality of values from the estimation unit 27. That is, the parameter selection unit 24 obtains a data set of the plurality of values of the first parameter and the probabilities.
[0198] Here, the parameter selection unit 24 obtains six values from "0" to "5" for the first parameter, "surface processing method", as an inference result. "0" represents an end mill process for performing plane processing with an end mill. "1" represents an end mill process for performing plane processing with an end mill. "2" represents an end mill mountain process for performing plane processing with an end mill while retaining a part of the shape. "3" represents a pocket milling process for performing pocket processing with an end mill. "4" represents a pocket mountain process for performing pocket processing with an end mill while retaining a part of the shape. "5" represents a line processing process for performing contour processing with an end mill or an end mill.
[0199] Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.8, "1": 0.15, "2": 0.0, "3": 0.05, "4": 0.0, and "5": 0.0 for each of the six values as estimation results. "0": 0.8 indicates that the probability of "0" being used in the machining program is 80%. "1": 0.15 indicates that the probability of "1" being used in the machining program is 15%. "2": 0.0 indicates that the probability of "2" being used in the machining program is 0%. "3": 0.05 indicates that the probability of "3" being used in the machining program is 5%. "4": 0.0 indicates that the probability of "4" being used in the machining program is 0%. "5": 0.0 indicates that the probability of "5" being used in the machining program is 0%.
[0200] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA141. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0201] Next, the parameter selection unit 24 presents the value and probability of the first parameter, which is the inference result, together. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the dialogue operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter. The display unit 50 can display the values and probabilities of the first parameter in any manner. The display unit 50 can display the values and probabilities of the first parameter in descending order of probability. The display unit 50 can display only the values of the first parameter whose probabilities are greater than or equal to a predetermined value. By presenting the values and probabilities of the first parameter together, the operator can easily select a value for the first parameter.
[0202] When the operator selects any value from the multiple values of the first parameter displayed on the display unit 50, the parameter selection unit 24 obtains the selected first parameter value. The parameter selection unit 24 obtains the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "5" for "Line Machining Step" for the program generation parameter PA141, the parameter selection unit 24 obtains "5" for the first parameter "Surface Machining Method." The parameter selection unit 24 inputs the selected value to the machining program generation unit 23.
[0203] The machining program generating unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generating unit 23 acquires "5" for "surface machining method" and thereby generates a line machining step.
[0204] Here, the machining program generating unit 23 inputs the designated first parameter "surface machining method" and its value "5" to the editing operation analyzing unit 26. Thus, in step S51, the editing operation analyzing unit 26 obtains the value of the first parameter from the editing operation.
[0205] Next, in step S52, the machining program generation unit 23 obtains the value of the second parameter from the machining program and process shape SH4. Specifically, the machining program generation unit 23 selects the second parameter based on the specified first parameter. As the second parameter required for program generation parameter PA141, the machining program generation unit 23 obtains the following parameters: the raw material material "S45C", the upper surface coordinates of process shape SH4 "80.0, 60.0, 0.0", the lower surface coordinates of process shape SH4 "0.0, 0.0, -3.0", the X-axis dimension of process shape SH4 "80.0", the Y-axis dimension of process shape SH4 "60.0", the Z-axis dimension of process shape SH4 "3.0", the shape "none" horizontally adjacent to process shape SH4, the number of mountain shapes contained in process shape SH4 "none", and the number of valley shapes contained in process shape SH4 "none". Furthermore, the machining program generation unit 23 obtains the adjusted parameter, namely, the surface machining method "line machining", as the second parameter. The machining program generating unit 23 inputs the acquired second parameter to the editing operation analyzing unit 26 .
[0206] In step S53 , the editing operation analysis unit 26 generates a data set including the first parameter and the second parameter selected based on the first parameter. The editing operation analysis unit 26 inputs the generated data set to the machine learning unit 14 .
[0207] The machine learning unit 14 reads the learning model from the learning model storage unit 15. In step S54, the machine learning unit 14 performs additional learning processing, i.e., machine learning processing, on the learning model according to the data set input from the editing operation analysis unit 26. The machine learning unit 14 updates the learning model through the additional learning processing. The machine learning unit 14 updates the learning model representing the relationship between the first parameter and the second parameter for each first parameter through the additional learning processing. In step S55, the learning model storage unit 15 stores the learning model updated through the additional learning. Thus, the machine learning device 10 and the machining program generation device 20 end. Figure 15 The editing operation analysis process and the additional learning process involved in the shown sequence.
[0208] Next, for each first parameter pair to be inferred Figure 15 The editing operation analysis process and additional learning process involved in the sequence shown are explained. Here, as the first parameter to be inferred, the "nominal diameter of the tool for the wire machining process" is specified. The parameter selection unit 24 obtains the raw material material "S45C", the machining allowance -Z "3.0", the upper surface coordinates of the process shape SH4 "80.0, 60.0, 0.0", the lower surface coordinates of the process shape SH4 "0.0, 0.0, -3.0", the X-axis direction dimension of the process shape SH4 "80.0", the Y-axis direction dimension of the process shape SH4 "60.0", the Z-axis direction dimension of the process shape SH4 "3.0", the shape adjacent to the process shape SH4 in the horizontal direction "none", the mountain shape contained in the process shape SH4 "none", the valley shape contained in the process shape SH4 "none", the surface processing method "wire machining", and the tool use "rough machining" as the second parameter for inferring the first parameter. The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27 .
[0209] Here, the parameter selection unit 24 obtains six values of "0," "1," "30," "40," "50," and "60" for the first parameter, "nominal tool diameter for the wire machining process," as the estimation results. Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.4, "1": 0.6, "30": 0.25, "40": 0.25, "50": 0.25, and "60": 0.25 for each of these six values as the estimation results.
[0210] "0" represents an end mill tool. "1" represents an end mill tool. "0": 0.4 indicates the probability of using "0" in the machining program, that is, the probability of using an end mill tool in the online machining process is 40%. "1": 0.6 indicates the probability of using "1" in the machining program, that is, the probability of using an end mill tool in the online machining process is 60%. "30", "40", "50", and "60" each represent the nominal diameter of the tool. "30": 0.25 indicates the probability of setting the nominal diameter of the tool to 30 is 25%. "40": 0.25 indicates the probability of setting the nominal diameter of the tool to 40 is 25%. "50": 0.25 indicates the probability of setting the nominal diameter of the tool to 50 is 25%. "60": 0.25 indicates the probability of setting the nominal diameter of the tool to 60 is 25%.
[0211] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA142. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0212] Next, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0213] When the operator selects any value from among the multiple values for the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "60" for the program generation parameter PA142, the parameter selection unit 24 acquires the value "60" for the first parameter, namely, "Nominal tool diameter for the wire machining process." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0214] The machining program generating unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generating unit 23 obtains "60" for the "tool nominal diameter for the line machining step" and sets the tool nominal diameter for rough machining in the line machining step to "60."
[0215] Here, the machining program generation unit 23 inputs the designated first parameter, "tool nominal diameter for the wire machining process," and the value of "tool nominal diameter for the wire machining process," "60," to the editing operation analysis unit 26. Thus, in step S51, the editing operation analysis unit 26 obtains the value of the first parameter from the editing operation.
[0216] Next, in step S52, the machining program generation unit 23 obtains the value of the second parameter from the machining program and process shape SH4. Specifically, the machining program generation unit 23 selects the second parameter based on the first parameter. As the second parameter required for program generation parameter PA142, the machining program generation unit 23 obtains the following parameters: raw material material "S45C", machining allowance -Z "3.0", process shape SH4 upper surface coordinates "80.0, 60.0, 0.0", process shape SH4 lower surface coordinates "0.0, 0.0, -3.0", process shape SH4 X-axis dimension "80.0", process shape SH4 Y-axis dimension "60.0", process shape SH4 Z-axis dimension "3.0", shape "none" horizontally adjacent to process shape SH4, "none" of mountain shapes included in process shape SH4, and "none" of valley shapes included in process shape SH4. Furthermore, the machining program generating unit 23 acquires the adjusted parameter, ie, the surface machining method “line machining”, as the second parameter. The machining program generating unit 23 inputs the acquired second parameter to the editing operation analyzing unit 26 .
[0217] In step S53 , the editing operation analysis unit 26 generates a data set including the first parameter and the second parameter selected based on the type of the first parameter. The editing operation analysis unit 26 inputs the generated data set to the machine learning unit 14 .
[0218] The machine learning unit 14 reads the learning model from the learning model storage unit 15. In step S54, the machine learning unit 14 performs additional learning processing, i.e., machine learning processing, on the learning model according to the data set input from the editing operation analysis unit 26. The machine learning unit 14 updates the learning model through the additional learning processing. The machine learning unit 14 updates the learning model representing the relationship between the first parameter and the second parameter for each first parameter through the additional learning processing. In step S55, the learning model storage unit 15 stores the learning model updated through the additional learning. Thus, the machine learning device 10 and the machining program generation device 20 end. Figure 15 The editing operation analysis process and the additional learning process involved in the shown sequence.
[0219] Next, Figure 14Taking the process shape SH71 shown in FIG. 1 as an example, the editing operation analysis process and the additional learning process will be described. The machine learning device 10 generates a learning model. Since the overview of the learning model generation process is the same as in the first embodiment, its description will be omitted here. Furthermore, the machining program generation device 20 generates a machining program. Since the overview of the machining program generation process is also the same as in the first embodiment, its description will be omitted here.
[0220] Here, the parameter selection unit 24 specifies the type of the first parameter to be estimated, namely, "hole machining method." The parameter selection unit 24 obtains the following parameters as the second parameters used to estimate the first parameter: the raw material material "S45C," the center coordinates of the upper surface of process shape SH71 "55.0, 30.0, -13.0," the center coordinates of the lower surface of process shape SH71 "55.0, 30.0, -23.0," the hole diameter of process shape SH71 "6.6," the hole depth of process shape SH71 "10.0," the countersink diameter of process shape SH71 "11.6," and the countersink depth of process shape SH71 "4.3." The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0221] The parameter selection unit 24 obtains a plurality of values of the first parameter as an estimation result and the probability of use in the machining program associated with each of the plurality of values from the estimation unit 27. That is, the parameter selection unit 24 obtains a data set of the plurality of values of the first parameter and the probabilities.
[0222] Here, the parameter selection unit 24 acquires four values, "0" to "3," for the first parameter, "hole machining method," as the estimation result. "0" indicates a drilling process in which a hole is drilled. "1" indicates a countersinking process in which a hole is countersunk to form a countersink. "2" indicates a reaming process in which finishing is performed by reaming. "3" indicates a tapping process in which a thread is cut by tapping.
[0223] Furthermore, the parameter selection unit 24 obtains the probabilities of "0": 0.0, "1": 0.6, "2": 0.1, and "3": 0.3 for each of the four values as estimation results. "0": 0.0 indicates that the probability of "0" being used in the machining program is 0%. "1": 0.6 indicates that the probability of "1" being used in the machining program is 60%. "2": 0.1 indicates that the probability of "2" being used in the machining program is 10%. "3": 0.3 indicates that the probability of "3" being used in the machining program is 30%.
[0224] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA143. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0225] Next, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0226] When the operator selects any value from among the multiple values for the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "3" for "tapping process" in the program generation parameter PA143, the parameter selection unit 24 acquires "3" for the first parameter "hole machining method." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0227] The machining program generating unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generating unit 23 obtains "3" for the "hole machining method" and thereby generates a tapping step.
[0228] Here, the machining program generator 23 inputs the designated first parameter type, "hole machining method," and its value, "3," to the edit operation analyzer 26. Thus, in step S51, the edit operation analyzer 26 acquires the value of the first parameter from the edit operation.
[0229] Next, in step S52, the machining program generation unit 23 obtains the value of the second parameter from the machining program and process shape SH4. Specifically, the machining program generation unit 23 selects the second parameter based on the type of the first parameter. As the second parameter required for program generation parameter PA143, the machining program generation unit 23 obtains the following: the raw material material "S45C," the center coordinates of the upper surface of process shape SH71 "55.0, 30.0, -13.0," the center coordinates of the lower surface of process shape SH71 "55.0, 30.0, -23.0," the hole diameter of process shape SH71 "6.6," the hole depth of process shape SH71 "10.0," the countersink diameter of process shape SH71 "11.6," and the countersink depth of process shape SH71 "4.3." The machining program generation unit 23 inputs the obtained second parameter to the editing operation analysis unit 26.
[0230] In step S53 , the editing operation analysis unit 26 generates a data set including the first parameter and the second parameter selected based on the first parameter. The editing operation analysis unit 26 inputs the generated data set to the machine learning unit 14 .
[0231] The machine learning unit 14 reads the learning model from the learning model storage unit 15. In step S54, the machine learning unit 14 performs additional learning processing, i.e., machine learning processing, on the learning model according to the data set input from the editing operation analysis unit 26. The machine learning unit 14 updates the learning model through the additional learning processing. The machine learning unit 14 updates the learning model representing the relationship between the first parameter and the second parameter for each first parameter through the additional learning processing. In step S55, the learning model storage unit 15 stores the learning model updated through the additional learning. Thus, the machine learning device 10 and the machining program generation device 20 end. Figure 15 The editing operation analysis process and the additional learning process involved in the shown sequence.
[0232] Next, we will describe the case where the "nominal diameter of the drill bit" is specified as the type of the first parameter to be estimated. The parameter selection unit 24 obtains the following parameters as the second parameters used to estimate the first parameter: the raw material material "S45C", the hole diameter of the process shape SH71 "6.6", the hole depth of the process shape SH71 "10.0", the countersink diameter of the process shape SH71 "11.6", and the countersink depth of the process shape SH71 "4.3". The parameter selection unit 24 inputs the input data including these second parameters to the estimation unit 27.
[0233] The parameter selection unit 24 obtains the value of the first parameter as the inference result from the inference unit 27. Here, the parameter selection unit 24 obtains the value "6.0" as the first parameter, namely, the "nominal diameter of the drill bit for drilling a hole," as the inference result. The combination of the multiple second parameters input to the inference unit 27 and the first parameter as the inference result is called program-generated parameter PA144. The inference unit 27 reads the learning model corresponding to the specified first parameter from the learning models stored in the learning model storage unit 15. The inference unit 27 outputs the value of the first parameter as the inference result to the parameter selection unit 24. When the first parameter is a continuous value, the inference unit 27 performs machine learning by regression and outputs the numerical value as the inference result to the parameter selection unit 24. The inference unit 27 can perform machine learning by classification using multiple drill bit nominal diameters.
[0234] Next, the parameter selection unit 24 presents the value of the first parameter as the inference result. The parameter selection unit 24 transmits the value of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 presents the value of the first parameter by displaying the value of the first parameter on the display unit 50.
[0235] When the operator directly sets the value of the first parameter displayed on the display unit 50 as the set value, or sets an arbitrary value as the set value instead of the value displayed on the display unit 50, the parameter selection unit 24 obtains the set value via the interactive operation processing unit 30. For example, if the operator sets "6.5" as the set value for program generation parameter PA144, the parameter selection unit 24 obtains "6.5," which is the set value associated with the "nominal diameter of the drilling bit." The parameter selection unit 24 inputs the set value to the machining program generation unit 23.
[0236] The machining program generating unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generating unit 23 obtains "6.5" for the "nominal diameter of the drilling drill" and thereby sets the nominal diameter of the drilling drill in the tapping step to "6.5."
[0237] Here, the machining program generation unit 23 inputs the designated first parameter, "hole machining method," and the value of "nominal diameter of drilling bit," "6.5," to the editing operation analysis unit 26. Thus, in step S51, the editing operation analysis unit 26 obtains the value of the first parameter from the editing operation.
[0238] Next, in step S52, the machining program generation unit 23 obtains the value of the second parameter from the machining program and process shape SH71. Specifically, the machining program generation unit 23 selects the second parameter based on the specified first parameter. The machining program generation unit 23 obtains the following as the second parameter required for program generation parameter PA144: the raw material material "S45C," the center coordinates of the upper surface of process shape SH71 "55.0, 30.0, -13.0," the center coordinates of the lower surface of process shape SH71 "55.0, 30.0, -23.0," the hole diameter of process shape SH71 "6.6," the hole depth of process shape SH71 "10.0," the countersink diameter of process shape SH71 "11.6," and the countersink depth of process shape SH71 "4.3." Furthermore, the machining program generation unit 23 obtains the adjusted parameter, namely, the hole machining method "tapping," as the second parameter. The machining program generating unit 23 inputs the acquired second parameter to the editing operation analyzing unit 26 .
[0239] In step S53 , the editing operation analysis unit 26 generates a data set including the first parameter and the second parameter selected based on the first parameter. The editing operation analysis unit 26 inputs the generated data set to the machine learning unit 14 .
[0240] The machine learning unit 14 reads the learning model from the learning model storage unit 15. In step S54, the machine learning unit 14 performs additional learning processing, i.e., machine learning processing, on the learning model according to the data set input from the editing operation analysis unit 26. The machine learning unit 14 updates the learning model through the additional learning processing. The machine learning unit 14 updates the learning model representing the relationship between the first parameter and the second parameter for each first parameter through the additional learning processing. In step S55, the learning model storage unit 15 stores the learning model updated through the additional learning. Thus, the machine learning device 10 and the machining program generation device 20 end. Figure 15 The editing operation analysis process and the additional learning process involved in the shown sequence.
[0241] Next, we will describe a case where the parameter selection unit 24 specifies the "nominal diameter of the countersink end mill" as the first parameter to be estimated. The parameter selection unit 24 obtains the following parameters as second parameters for estimating the first parameter: the material material "S45C," the hole diameter of the process shape SH71 "6.6," the hole depth of the process shape SH71 "10.0," the countersink diameter of the process shape SH71 "11.6," and the countersink depth of the process shape SH71 "4.3." The parameter selection unit 24 then inputs the input data, including these second parameters, to the estimation unit 27.
[0242] The parameter selection unit 24 obtains the value of the first parameter, which is the estimation result, from the inference unit 27. Here, the parameter selection unit 24 obtains the value "8.0" as the first parameter, namely, the "nominal diameter of the countersink end mill," as the estimation result. The combination of the plurality of second parameters input to the inference unit 27 and the first parameter, which is the estimation result, is referred to as program-generated parameter PA145. The inference unit 27 reads the learning model corresponding to the specified first parameter from the learning models stored in the learning model storage unit 15. The inference unit 27 outputs the value of the first parameter, which is the estimation result, to the parameter selection unit 24.
[0243] Next, the parameter selection unit 24 presents the value of the first parameter as the inference result. The parameter selection unit 24 transmits the value of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 presents the value of the first parameter by displaying the value of the first parameter on the display unit 50.
[0244] When the operator directly sets the value of the first parameter displayed on the display unit 50 as the set value, or sets an arbitrary value as the set value instead of the value displayed on the display unit 50, the parameter selection unit 24 obtains the set value via the interactive operation processing unit 30. For example, if the operator sets "10.0" as the set value for program generation parameter PA145, the parameter selection unit 24 obtains "10.0," which is the set value for the "nominal diameter of the countersink end mill." The parameter selection unit 24 inputs the set value to the machining program generation unit 23.
[0245] The machining program generating unit 23 generates machining program steps based on the selected first parameter value. The machining program generating unit 23 obtains "10.0" for the "nominal diameter of the countersink end mill" and sets the nominal diameter of the countersink end mill in the tapping step to "10.0."
[0246] Here, the machining program generation unit 23 inputs the designated first parameter, "hole machining method," and the value "10.0" of "nominal diameter of countersink end mill," to the editing operation analysis unit 26. Thus, in step S51, the editing operation analysis unit 26 obtains the value of the first parameter from the editing operation.
[0247] Next, in step S52, the machining program generation unit 23 obtains the value of the second parameter from the machining program and process shape SH71. Specifically, the machining program generation unit 23 selects the second parameter based on the specified first parameter. As the second parameter required for program generation parameter PA145, the machining program generation unit 23 obtains the raw material material "S45C," the center coordinates of the upper surface of process shape SH71 "55.0, 30.0, -13.0," the center coordinates of the lower surface of process shape SH71 "55.0, 30.0, -23.0," the hole diameter of process shape SH71 "6.6," the hole depth of process shape SH71 "10.0," the countersink diameter of process shape SH71 "11.6," and the countersink depth of process shape SH71 "4.3." Furthermore, the machining program generation unit 23 obtains the adjusted parameter, namely, the hole machining method "tapping," as the second parameter. The machining program generating unit 23 inputs the acquired second parameter to the editing operation analyzing unit 26 .
[0248] In step S53 , the editing operation analysis unit 26 generates a data set including the first parameter and the second parameter selected based on the first parameter. The editing operation analysis unit 26 inputs the generated data set to the machine learning unit 14 .
[0249] The machine learning unit 14 reads the learning model from the learning model storage unit 15. In step S54, the machine learning unit 14 performs additional learning processing, i.e., machine learning processing, on the learning model according to the data set input from the editing operation analysis unit 26. The machine learning unit 14 updates the learning model through the additional learning processing. The machine learning unit 14 updates the learning model representing the relationship between the first parameter and the second parameter for each first parameter through the additional learning processing. In step S55, the learning model storage unit 15 stores the learning model updated through the additional learning. Thus, the machine learning device 10 and the machining program generation device 20 end. Figure 15 The editing operation analysis process and the additional learning process involved in the shown sequence.
[0250] Next, we will describe the case where the parameter selection unit 24 specifies the "nominal tapping diameter," the first parameter to be estimated. The parameter selection unit 24 obtains the following parameters as second parameters for estimating the first parameter: the material material "S45C," the hole diameter of the process shape SH71 "6.6," the hole depth of the process shape SH71 "10.0," the countersink diameter of the process shape SH71 "11.6," and the countersink depth of the process shape SH71 "4.3." The parameter selection unit 24 then inputs the input data, including these second parameters, to the estimation unit 27.
[0251] The parameter selection unit 24 obtains a plurality of values of the first parameter as an estimation result and the probability of use in the machining program associated with each of the plurality of values from the estimation unit 27. That is, the parameter selection unit 24 obtains a data set of the plurality of values of the first parameter and the probabilities.
[0252] Here, the parameter selection unit 24 acquires three values, "0" to "2," for the first parameter, "nominal tap diameter," as the estimation result. "0" represents "M7×1," meaning a nominal model number "7" and a pitch of "1" for a metric thread. "1" represents "M7×0.75," meaning a nominal model number "7" and a pitch of "0.75" for a metric thread. "2" represents "M7×0.5," meaning a nominal model number "7" and a pitch of "0.5" for a metric thread.
[0253] Furthermore, the parameter selection unit 24 obtains the probabilities "0": 0.1, "1": 0.1, and "2": 0.8 for each of the three values as estimation results. "0": 0.1 indicates that the probability of using "0" in the machining program is 10%. "1": 0.1 indicates that the probability of using "1" in the machining program is 10%. "2": 0.8 indicates that the probability of using "2" in the machining program is 80%.
[0254] Here, the combination of the plurality of second parameters input to the inference unit 27 and the first parameter resulting from the inference is referred to as program-generated parameter PA146. The inference unit 27 reads the learning model corresponding to the designated first parameter from among the learning models stored in the learning model storage unit 15. Using the read learning model and the second parameter as input data, the inference unit 27 calculates the probability for each value of the first parameter. The inference unit 27 outputs the inference result, a dataset of the values and probabilities of the first parameter, to the parameter selection unit 24.
[0255] Next, the parameter selection unit 24 presents the value and probability of the first parameter as the inference result. The parameter selection unit 24 transmits the values and probabilities of the first parameter to the display unit 50 via the interactive operation processing unit 30. The parameter selection unit 24 displays a list of the values and probabilities of the first parameter on the display unit 50, thereby presenting the values and probabilities of the first parameter.
[0256] When the operator selects any value from among the multiple values for the first parameter displayed on the display unit 50, the parameter selection unit 24 acquires the selected first parameter value. The parameter selection unit 24 acquires the selected first parameter value via the interactive operation processing unit 30. For example, if the operator selects "0" for "M7×1" for program generation parameter PA146, the parameter selection unit 24 acquires "0" for the first parameter, "nominal diameter of tapping." The parameter selection unit 24 inputs the selected value into the machining program generation unit 23.
[0257] The machining program generating unit 23 generates a machining program step based on the value of the selected first parameter. The machining program generating unit 23 obtains "0" for "nominal diameter of tapping" and thereby sets the nominal diameter of tapping in the tapping step to "M7×1."
[0258] Here, the machining program generating unit 23 inputs the designated first parameter "surface machining method" and the value "0" of "tap nominal diameter" to the editing operation analyzing unit 26. Thus, in step S51, the editing operation analyzing unit 26 obtains the value of the first parameter from the editing operation.
[0259] Next, in step S52, the machining program generation unit 23 obtains the value of the second parameter from the machining program and process shape SH71. Specifically, the machining program generation unit 23 selects the second parameter based on the specified first parameter. As the second parameter required for program generation parameter PA146, the machining program generation unit 23 obtains the raw material material "S45C," the center coordinates of the upper surface of process shape SH71 "55.0, 30.0, -13.0," the center coordinates of the lower surface of process shape SH71 "55.0, 30.0, -23.0," the hole diameter of process shape SH71 "6.6," the hole depth of process shape SH71 "10.0," the countersink diameter of process shape SH71 "11.6," and the countersink depth of process shape SH71 "4.3." Furthermore, the machining program generation unit 23 obtains the adjusted parameter, namely, the hole machining method "tapping," as the second parameter. The machining program generating unit 23 inputs the acquired second parameter to the editing operation analyzing unit 26 .
[0260] In step S53 , the editing operation analysis unit 26 generates a data set including the first parameter and the second parameter selected based on the type of the first parameter. The editing operation analysis unit 26 inputs the generated data set to the machine learning unit 14 .
[0261] The machine learning unit 14 reads the learning model from the learning model storage unit 15. In step S54, the machine learning unit 14 performs additional learning processing, i.e., machine learning processing, on the learning model according to the data set input from the editing operation analysis unit 26. The machine learning unit 14 updates the learning model through the additional learning processing. The machine learning unit 14 updates the learning model representing the relationship between the first parameter and the second parameter for each first parameter through the additional learning processing. In step S55, the learning model storage unit 15 stores the learning model updated through the additional learning. Thus, the machine learning device 10 and the machining program generation device 20 end. Figure 15 The editing operation analysis process and the additional learning process involved in the shown sequence.
[0262] Next, the hardware configurations of the machine learning device 10 and the machining program generating device 20 will be described. Figure 16 Yes Figure 1 FIG. 2 is a diagram showing the hardware configuration of the machine learning device 10 and the machining program generating device 20. Figure 1 The functional units shown include a processor 61; a memory 62 used by the processor 61 as a workspace; a storage device 63 storing computer programs describing the functions of the numerical control device 100; an input device 64 serving as an input interface with the operator; a display device 65 serving as an output device for displaying information to the operator; and a communication device 66 capable of communicating with controlled equipment or other numerical control devices. The processor 61, memory 62, storage device 63, input device 64, display device 65, and communication device 66 are interconnected via a data bus 67.
[0263] Processor 61 is a processing device, a computing device, a microprocessor, a microcomputer, a CPU (Central Processing Unit), or a DSP (Digital Signal Processor). Memory 62 is a nonvolatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), or EEPROM (registered trademark) (Electrically EPROM), a magnetic disk, a floppy disk, an optical disk, a compact disk, a minidisc, or a DVD (Digital Versatile Disc).
[0264] The machining program analysis unit 13 and the machine learning unit 14 can be implemented, for example, by the processor 61 reading and executing a computer program stored in the memory 62. Alternatively, multiple processors 61 and multiple memories 62 may collaborate to implement the aforementioned functions. Alternatively, some of the functions of the machine learning unit 14 may be implemented as electronic circuits, while the remaining functions may be implemented using the processor 61 and memory 62. The functions of the machining program input unit 11 are implemented by the communication device 66. The functions of the machining program storage unit 12 and the learning model storage unit 15 are implemented by the storage device 63.
[0265] The machining shape data storage unit 22, machining program generation unit 23, parameter selection unit 24, editing operation analysis unit 26, and inference unit 27 are implemented by the processor 61 reading and executing computer programs stored in the memory 62. Alternatively, multiple processors 61 and multiple memories 62 may collaborate to implement the aforementioned functions. Alternatively, some of the functions of the machining shape data input unit 21, machining shape data storage unit 22, machining program generation unit 23, parameter selection unit 24, editing operation analysis unit 26, and inference unit 27 may be implemented as electronic circuits, while the remaining functions may be implemented using the processor 61 and memory 62. The processor 61 and memory 62 used to implement the functions of the machining shape data input unit 21, machining shape data storage unit 22, machining program generation unit 23, parameter selection unit 24, editing operation analysis unit 26, and inference unit 27 may be the same as the processor 61 and memory 62 used to implement the machine learning unit 14, or different processors 61 and memories 62 may be used. The function of the machining shape data input unit 21 is realized by the communication device 66. The functions of the machining shape data storage unit 22 and the machining program storage unit 25 are realized by the storage device 63.
[0266] As described above, the machine learning device 10 according to Embodiments 1 and 2 acquires a first parameter capable of machine learning based on a machining program 1. For each acquired first parameter, the machine learning device 10 extracts a second parameter used to estimate the first parameter, thereby automatically generating a learning model. Since this learning model is generated based on a previously created machining program, the machine learning device 10 can generate a learning model that incorporates past knowledge and experience accumulated within the machining program.
[0267] Furthermore, the machining program generation device 20 according to Embodiments 1 and 2 uses the learning model generated by the machine learning device 10 to infer the first parameter. Using the inference results, the operator can easily set the values of multiple first parameters. The machining program generation device 20 can generate a machining program using the knowledge and experience accumulated by the operator in previously created machining programs. Consequently, the machining program generation device 20 can easily generate the high-quality machining program desired by the operator.
[0268] Furthermore, the machining program generation device 20 according to Embodiments 1 and 2 outputs multiple values of the first parameter as an estimation result. The operator can easily adjust the value of the first parameter by selecting a value from the multiple values. Thus, the machining program generation device 20 can reduce the workload and time required to generate a machining program.
[0269] Furthermore, the machine learning device 10 and machining program generation device 20 according to Embodiment 2 analyze the operator's editing work on the first parameter and perform additional learning based on the value of the first parameter selected by the operator. This improves the accuracy of the learning model of the machine learning device 10.
[0270] In Embodiments 1 and 2, an example is shown in which the machine learning device 10 and the machining program generation device 20 are incorporated into the same numerical control device 100, but the present invention is not limited to this example. The machine learning device 10 and the machining program generation device 20 may also be independently provided outside the numerical control device 100. In Embodiments 1 and 2, the machining program is described as an example in which the machine tool being numerically controlled is a machining center. However, the machine tool being numerically controlled is not limited to a machining center and may also be another machine tool.
[0271] The structures shown in the above embodiments illustrate an example of the content of the present invention. The structures of the embodiments can be combined with other known technologies. The structures of the embodiments can also be appropriately combined with each other. A part of the structure of the embodiments can be omitted or changed without departing from the scope of the present invention.
[0272] Description of the label
[0273] 1 Machining program, 2 CAD data, 10 Machine learning device, 11 Machining program input unit, 12 Machining program storage unit, 13 Machining program analysis unit, 14 Machine learning unit, 15 Learning model storage unit, 20 Machining program generation unit, 21 Machining shape data input unit, 22 Machining shape data storage unit, 23 Machining program generation unit, 24 Parameter selection unit, 25 Machining program storage unit, 26 Editing operation analysis unit, 27 Inference unit, 30 Dialogue operation processing unit, 40 Instruction input unit, 50 Display unit, 61 Processor, 62 Memory, 63 Storage device, 64 Input device, 65 Display device, 66 Communication device, 67 Data bus, 100 CNC device.
Claims
1. A machining program generating device that generates a machining program for numerically controlling a machine tool using a learning model. The processing program generating device is characterized by having: an inference unit that receives as input a value of a second parameter, uses the learning model to infer a value of a first parameter based on the second parameter, and outputs a plurality of values of the first parameter as inference results, the second parameter being a parameter used in adjusting the first parameter that is an adjustment target in editing the machining program and being a parameter not to be adjusted in editing the machining program; a parameter selection unit that presents the plurality of values and thereby receives a selection of a value from the plurality of values; a machining program generating unit configured to generate the machining program based on a value selected from the plurality of values; as well as An editing operation analyzing unit analyzes the editing operation of the machining program. The parameter selection unit presents the plurality of values together with the probability of use of each of the plurality of values in the machining program. The editing operation analysis unit obtains a value selected from the multiple values of the first parameter and extracts the second parameter corresponding to the first parameter from the processing program, thereby generating a data set including the first parameter and the second parameter and used to generate or update the learning model.
2. A machining program generating device that generates a machining program for numerically controlling a machine tool using a learning model. The processing program generating device is characterized by having: an inference unit that receives as input a value of a second parameter, uses the learning model to infer a value of a first parameter based on the second parameter, and outputs a plurality of values of the first parameter as inference results, the second parameter being a parameter used in adjusting the first parameter that is an adjustment target in editing the machining program and being a parameter not to be adjusted in editing the machining program; a parameter selection unit that presents the plurality of values and thereby receives a selection of a value from the plurality of values; a machining program generating unit configured to generate the machining program based on a value selected from the plurality of values; as well as An editing operation analyzing unit analyzes the editing operation of the machining program. The parameter selection unit presents the plurality of values together with the machining time expected when each of the plurality of values is used in the machining program. The editing operation analysis unit obtains a value selected from the multiple values of the first parameter and extracts the second parameter corresponding to the first parameter from the processing program, thereby generating a data set including the first parameter and the second parameter and used to generate or update the learning model.
3. A machining program generation method, wherein a machining program generation device generates a machining program for numerically controlling a machine tool using a learning model. The processing program generation method is characterized by comprising the following steps: A value of a second parameter is inputted, and a value of a first parameter is inferred based on the second parameter using the learning model, and a plurality of values of the first parameter are output as inference results. The second parameter is a parameter used in adjusting the first parameter that is an adjustment target in editing the machining program and is a parameter not to be adjusted in editing the machining program. prompting the plurality of values, thereby receiving a selection of a value from the plurality of values; generating the machining program based on a value selected from the plurality of values; as well as Analyze the editing operation of the processing program, In the step of accepting a selection of a value from the plurality of values, a probability of use in the machining program associated with each of the plurality of values is presented together with the plurality of values. In the step of analyzing the editing operation, a value selected from the multiple values of the first parameter is obtained, and the second parameter corresponding to the first parameter is extracted from the processing program, thereby generating a data set containing the first parameter and the second parameter and used to generate or update the learning model.
4. A machining program generation method, wherein a machining program generation device generates a machining program for numerically controlling a machine tool using a learning model. The processing program generation method is characterized by comprising the following steps: A value of a second parameter is inputted, and a value of a first parameter is inferred based on the second parameter using the learning model, and a plurality of values of the first parameter are output as inference results. The second parameter is a parameter used in adjusting the first parameter that is an adjustment target in editing the machining program and is a parameter not to be adjusted in editing the machining program. prompting the plurality of values, thereby receiving a selection of a value from the plurality of values; generating the machining program based on a value selected from the plurality of values; as well as Analyze the editing operation of the processing program, In the step of accepting the selection of a value from the plurality of values, a machining time expected when each of the plurality of values is used in the machining program is presented together with the plurality of values. In the step of analyzing the editing operation, a value selected from the multiple values of the first parameter is obtained, and the second parameter corresponding to the first parameter is extracted from the processing program, thereby generating a data set containing the first parameter and the second parameter and used to generate or update the learning model.
5. A machine learning method, comprising: generating a learning model used by the machining program generating device according to claim 1 or 2 by a machine learning device; The machine learning method is characterized by comprising the following steps: parsing a machining program to extract, from the machining program, a first parameter that is an adjustment target during editing of the machining program and a second parameter that is not an adjustment target during editing of the machining program and is used in adjusting the first parameter, the machining program being used to numerically control a machine tool and associated with an operator who edited the machining program; and The learning model for estimating the value of the first parameter based on the second parameter of the machining program edited by the operator is generated by learning using a data set including the extracted first parameter and second parameter.
Citation Information
Patent Citations
Machine and method for automated detection of cables, wires and profiles in or on cable processing machines
CN102067397A
Method for checking precision of numerical control program
CN110096033A