Parameter adjustment device and parameter adjustment method
Patent Information
- Application Number
- JP2023568589
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-28
- Publication Date
- 2025-01-02
- Estimated Expiration
- 2043-06-28
AI Technical Summary
Existing parameter adjustment methods for machine tools are time-consuming and complex, often requiring repetitive trial and error to align with operator preferences, especially when the test program differs from the workpiece shape, leading to inaccurate adjustments.
A parameter adjustment device and method that utilize a feature amount calculation unit, evaluation index calculation unit, and an optimal solution search unit to simulate machine tool operations, calculate evaluation indices, and optimize command value generation parameters based on operator preferences, using a neural network to infer and display optimal parameter sets.
Facilitates faster convergence of command value generation parameters to match operator preferences, reducing effort and time required for adjustments while ensuring high precision and accuracy in machining operations.
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a parameter adjustment device and a parameter adjustment method for adjusting parameters related to command value generation in a command value generating device that generates a tool movement command for driving a driving device of a machine tool based on a machining program. [Background technology]
[0002] When machining a workpiece into a desired shape using a machine tool, it is common to create a machining program using CAM (Computer Aided Manufacturing) or similar. The machining program describes information about the machining shape, the tool feed speed, the tool rotation speed, and so on. A command value generating device reads this machining program and calculates the tool path by performing coordinate conversion, tool length compensation, tool diameter compensation, machine error compensation, and so on. The command value generating device further performs processing such as acceleration and deceleration, and calculates interpolation points, which are command points on the tool path for each unit time. In many cases, a numerical control device (Numerical Control: NC) is used as the command value generating device.
[0003] The command value generating device is equipped with many functions for performing machining by a machine tool at higher speed and higher accuracy. The operator must decide whether to prioritize the cycle time, i.e., machining time, the machining accuracy, which is the shape accuracy of the machined surface, or the surface quality, which is the surface accuracy of the machined surface, depending on the shape, use, etc. of the workpiece to be machined, and adjust a huge number of parameters related to these functions. For this reason, there is a problem that the parameter adjustment work of the command value generating device takes a huge amount of time or the adjustment work becomes complicated, making it difficult to adjust according to the operator's preferences. In such a case, a technology is disclosed in Patent Document 1 that supports parameter adjustment by executing a test program with multiple parameter settings and selecting a parameter set that provides the best value for an evaluation index determined from the machining accuracy and machining time. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 5956619 Summary of the Invention [Problem to be solved by the invention]
[0005] However, in the technology described in Patent Document 1, if the test program used for parameter adjustment is different from the shape of the workpiece machined by the worker, the accuracy of the parameter adjustment deteriorates and adjustment results that match the worker's preferences cannot be obtained. On the other hand, if the accuracy of the parameter adjustment is to be maintained in order to obtain adjustment results that match the worker's preferences, it is necessary to repeat a series of operations such as changing the test program or correcting the adjustment range of each parameter and restarting the parameter adjustment work from the first step many times to converge to the worker's preferences. Conventionally, when parameters were to converge to the worker's preferences, it was necessary to perform parameter adjustment work by trial and error, which resulted in additional labor and time being borne by the worker. For this reason, a technology that can converge the parameters to the worker's preferences compared to the conventional technology was required.
[0006] The present disclosure has been made in consideration of the above, and has an object to provide a parameter adjustment device that can cause parameters related to command values that match the preferences of an operator to converge more quickly than in the past. [Means for solving the problem]
[0007] In order to solve the above-mentioned problems and achieve the object, the parameter adjustment device disclosed herein is a parameter adjustment device that adjusts a command value generation parameter set, which is a plurality of parameters used to generate a tool movement command constituted by a group of interpolation points for each unit time on a tool path calculated based on a machining program for machining a workpiece, and includes a feature amount calculation unit, an evaluation index calculation unit, a first optimal solution search unit, and a display control unit. The feature amount calculation unit simulates the operation of a machine tool to be controlled from the tool movement command and calculates a feature amount of machining. The evaluation index calculation unit calculates one or more evaluation index values for evaluating a machining result from the feature amount of machining. The first optimal solution search unit infers an evaluation index value corresponding to a command value generation parameter set for the first search using a first learning result for inferring an evaluation index value from a command value generation parameter set learned using the command value generation parameter set and the evaluation index value, and searches for command value generation parameter set candidates, which are a plurality of command value generation parameter sets that simultaneously optimize each evaluation index value using the inferred result. The display control unit displays on the display unit the candidate command value generation parameter sets in a command value generating device that generates a tool movement command and the calculated machining features and their respective evaluation index values when the command value generating device is operated in correspondence with each other. Effect of the Invention
[0008] The parameter adjustment device according to the present disclosure has an effect of being able to converge parameters related to command values that match the preferences of an operator more quickly than in the past. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a diagram showing an example of the configuration of a parameter adjustment device according to a first embodiment. [Diagram 2] FIG. 1 is a diagram showing an example of a processing target shape. [Diagram 3] FIG. 1 is a diagram showing an example of a processing target shape. [Figure 4] FIG. 1 is a diagram showing an example of a processing target shape. [Diagram 5]FIG. 5 is a diagram showing an example of a machining program for machining the machining target shapes shown in FIGS. [Figure 6] FIG. 13 is a diagram showing an example of a change in acceleration / deceleration waveform when the allowable acceleration is changed. [Figure 7] FIG. 13 is a diagram showing an example of a change in a movement path when an allowable path error is changed. [Figure 8] FIG. 13 is a diagram showing an example of a change in acceleration / deceleration waveform when the allowable path error is changed. [Figure 9] FIG. 13 is a diagram showing an example of a change in the tool movement path when the filter time constant is changed. [Figure 10] FIG. 13 is a diagram showing an example of a change in acceleration / deceleration waveform when the filter time constant is changed. [Figure 11] FIG. 13 is a diagram showing an example of a mapping diagram of the amount of machining error of a machining surface in a machining target shape when a machining operation generated based on the first to fourth command value generating parameter sets is performed, and a relationship with the machining time. [Figure 12] FIG. 1 is a diagram showing an example of a neural network used in the learning process of the first embodiment; [Figure 13] FIG. 13 is a diagram showing an example of a command value generating parameter set for a machining surface searched for by a first optimum solution search unit in the first embodiment; [Figure 14] FIG. 14 shows an example of preference information set by an operator for one command value generation parameter set candidate selected from the categories of machining time priority mode, machining accuracy priority mode, surface quality priority mode, and balance mode for the machining surface shown in FIG. 13. [Figure 15] A flowchart showing an example of a procedure of a parameter adjustment method according to the first embodiment. [Figure 16] A diagram showing an example of how a blade-shaped member is processed. [Figure 17] FIG. 13 is a diagram showing an example of the configuration of a parameter adjustment device according to a second embodiment. [Figure 18] A flowchart showing an example of a procedure of a parameter adjustment method according to a second embodiment. [Figure 19] FIG. 1 is a diagram showing an example of the configuration of a computer system that realizes a parameter adjustment device according to the first and second embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A parameter adjustment device and a parameter adjustment method according to embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
[0011] Embodiment 1 1 is a diagram showing an example of the configuration of a parameter adjustment device according to embodiment 1. The parameter adjustment device 1 is a device that adjusts a command value generation parameter set, which is a plurality of parameters used to generate a tool movement command constituted by a group of interpolation points for each unit time on a tool path calculated based on a machining program for machining a workpiece. The tool movement command is a command for driving a driving device such as a servo motor of a machine tool.
[0012] The command value generating device 3 outputs a tool movement command for each unit time to the parameter adjusting device 1 in accordance with an externally input machining program 310. The machining program 310 is a computer program in which a tool path movement command corresponding to a machining target shape 320 and a movement speed command at this time are described. The tool path movement command is specified by a G code such as G0 or G1 that specifies the coordinate value and the movement mode at this time, and the tool path movement speed command is specified by an F code in which a speed value is described.
[0013] The machining target shape 320 is target shape data of a processing object including a processing curved surface which is a curved surface to be processed. The machining target shape 320 is externally input to the parameter adjusting device 1. In one example, the machining target shape 320 is input to the parameter adjusting device 1 by a method such as input by data conversion from CAD (Computer Aided Design) data, or graphic input by an operator operating a keyboard or the like.
[0014] 2 to 4 are diagrams showing an example of a machining target shape. FIG. 2 is a perspective view of the machining target shape 320, FIG. 3 is a front view of the machining target shape 320, and FIG. 4 is a top view of the machining target shape 320. The machining target shape 320 has a hemispherical protrusion 322 on the upper surface 321a of a rectangular parallelepiped block 321, and has a shape in which one corner of the upper surface 321a is cut off by a plane. When the upper surface 321a is taken into consideration, the machining target shape 320 has a machining curved surface S1 forming the hemispherical protrusion 322, a planar machining curved surface S2 forming an area other than the machining curved surface S1 of the upper surface 321a, and a machining curved surface S3 on the plane at the position where the corner is cut off. In addition, a circular machining edge E1 exists at the boundary between the machining curved surface S1 and the machining curved surface S2, and a linear machining edge E2 exists at the boundary between the machining curved surface S2 and the machining curved surface S3.
[0015] Fig. 5 is a diagram showing an example of a machining program for machining the machining target shape shown in Fig. 2 to Fig. 4. A machining program 310 describes a process for operating a machine tool so that an upper surface 321a of a rectangular parallelepiped block 321 becomes the machining target shape 320 shown in Fig. 2 to Fig. 4. In the example shown in Fig. 5, a machining path for scanning line machining is used as an example, but contour line machining may also be used. Furthermore, the machining direction is not limited.
[0016] The command value generating device 3 performs analysis processing, acceleration / deceleration processing, smoothing processing, smoothing processing, interpolation processing, etc., when outputting a tool movement command for each unit time according to the externally input machining program 310. The analysis processing is processing for outputting a movement path and a feed rate on the movement path based on the machining program 310. The acceleration / deceleration processing is processing for calculating an acceleration / deceleration waveform between a stopped state and a feed rate state based on a preset allowable acceleration. The smoothing processing is processing for outputting a movement command in which the movement path is smoothed based on a preset allowable path error and an acceleration / deceleration waveform. The smoothing processing is processing for smoothing the speed waveform after the smoothing processing. The smoothing processing is also called moving average filter processing. The interpolation processing is processing for calculating an interpolation point, which is the tool position for each unit time when moving at the speed after the smoothing processing. Here, each of the tool movement commands for each unit time is called an interpolation point.
[0017] Each process in the command value generating device 3 operates according to the parameters. The parameters will be described below.
[0018] In the acceleration / deceleration process, the acceleration / deceleration waveform changes depending on the set allowable acceleration. In other words, the allowable acceleration is a parameter. FIG. 6 is a diagram showing an example of the change in the acceleration / deceleration waveform when the allowable acceleration changes. In this diagram, the horizontal axis indicates time, and the vertical axis indicates speed. The graph shown by the solid line is the acceleration / deceleration waveform when the allowable acceleration is high, and the graph shown by the dashed line is the acceleration / deceleration waveform when the allowable acceleration is low. According to FIG. 6, it can be seen that by lowering the allowable acceleration, a smoother acceleration / deceleration waveform with lower acceleration can be obtained compared to when the allowable acceleration is high, but the processing time increases.
[0019] In the smoothing process, the movement command and the speed waveform change depending on the allowable path error to be set. That is, the allowable path error becomes a parameter. FIG. 7 is a diagram showing an example of the change in the movement path when the allowable path error changes, and FIG. 8 is a diagram showing an example of the change in the acceleration / deceleration waveform when the allowable path error changes. In FIG. 8, the horizontal axis indicates time, and the vertical axis indicates speed. In FIG. 7, the movement path of the tool on the machining program 310 advances along the X-axis and then along the Y-axis as shown by the dotted line. The movement path shown by the solid line is the movement path when the allowable path error is large, and the movement path shown by the dashed line is the movement path when the allowable path error is small. In FIG. 8, the acceleration / deceleration waveform in the X-axis direction and the acceleration / deceleration waveform in the Y-axis direction when machining is performed along the movement path in FIG. 7 are shown. Also, the acceleration / deceleration waveform in the Y-axis direction shown by the solid line indicates the case where the allowable path error is large, and the dashed line indicates the case where the allowable path error is small. According to Figs. 7 and 8, it can be seen that as the allowable path error increases, the machining time can be shortened compared to when the allowable path error is small, but the path error of the tool increases.
[0020] In the smoothing process, the tool movement command and speed waveform are changed so as to be smoother depending on the time constant of the moving average filter that is set. Hereinafter, the time constant of the moving average filter is referred to as the filter time constant. In this process, the filter time constant is a parameter. The interpolation point x on the path after the moving average filter, i.e., the path of the tool movement command, is expressed as the average value of the point X on the path before the moving average filter, i.e., the path of the machining program 310, and can be expressed by the following formula (1).
[0021]
number
[0022] Here, n indicates the number of the interpolation points from the start point to the end point, and m is the filter time constant of the moving average filter, which is set by a parameter.
[0023] FIG. 9 is a diagram showing an example of a change in the moving path of the tool when the filter time constant is changed, and FIG. 10 is a diagram showing an example of a change in the acceleration / deceleration waveform when the filter time constant is changed. In FIG. 10, the horizontal axis indicates time, and the vertical axis indicates speed. In FIG. 9, the moving path of the tool on the machining program 310 advances along the X-axis and then along the Y-axis as shown by the dotted line. The moving path shown by the solid line is the moving path when the filter time constant is small, and the moving path shown by the dashed line is the moving path when the filter time constant is large. In FIG. 10, the acceleration / deceleration waveform in the X-axis direction and the acceleration / deceleration waveform in the Y-axis direction when machining is performed along the moving path of FIG. 9 are shown. In addition, the dashed line shows the case where the filter time constant is large, and the solid line shows the case where the filter time constant is small. According to FIG. 9 and FIG. 10, it can be seen that by increasing the filter time constant of the moving average filter, a smoother acceleration / deceleration waveform can be obtained compared to when the filter time constant is small, but the machining time and the path error of the tool increase.
[0024] As described below, in the first embodiment, the parameter adjustment device 1 handles a total of three command value generation parameter sets, namely, the allowable acceleration, the allowable path error, and the filter time constant. In other words, the parameter adjustment device 1 handles these three command value generation parameter sets as targets for parameter adjustment. However, the parameters are not limited to the three parameters handled in the first embodiment, and all parameters that affect the interpolation points generated by the command value generating device 3 can be handled as targets for parameter adjustment.
[0025] The command value generating device 3 operates according to the setting values of a command value generation parameter set stored in advance in a setting value storage unit of the command value generating device 3. The setting values in the setting value storage unit can be rewritten by an external input from the parameter adjusting device 1.
[0026] Returning to FIG. 1, the parameter adjustment device 1 includes a feature calculation unit 11, an evaluation index calculation unit 12, an evaluation index information storage unit 13, a first optimal solution search unit 14, a candidate information storage unit 15, a preference information setting unit 16, a display unit 17, a second optimal solution search unit 18, and an adjusted command value generation parameter set storage unit 19.
[0027] The feature amount calculation unit 11 simulates the operation of the machine tool to be controlled from the tool movement command generated by the command value generation device 3, and calculates the feature amount of machining. Examples of the feature amount of machining are the amount of machining error which is the distance between the machining target shape 320 and the tool placed at the position of the tool center point, the speed of the tool center point, the acceleration of the tool center point, the jerk of the tool center point, each position of a plurality of drive axes of the machine tool, each speed of a plurality of drive axes of the machine tool, each acceleration of a plurality of drive axes of the machine tool, each jerk of a plurality of drive axes of the machine tool, and each reversal position of a plurality of drive axes of the machine tool.
[0028] Here, when the entire workpiece is machined under the same conditions, the processing is performed as described above, but it is also possible to divide the workpiece into a plurality of parts and change the conditions for machining for each divided part. In this case, the feature amount calculation unit 11 simulates the operation of the machine tool to be controlled from the tool movement command generated by the command value generation device 3 to obtain the tool center point, and calculates the machining feature amount, which is information on machining at the tool center point, for each of one or more machining surfaces or machining edges of the machining target shape 320. The one or more machining surfaces or machining edges of the machining target shape 320 correspond to shape components.
[0029] The feature amount calculation unit 11 first performs a tool center point estimation process to estimate the tool center point, and then performs a feature amount calculation process to calculate the feature amount of machining at the tool center point. The tool center point estimation process and the feature amount calculation process will be described in order below.
[0030] <Tool center point estimation processing> The feature amount calculation unit 11 estimates the tool tip point using result information obtained from the drive control unit of the machine tool, which is the control target that is actually driven or simulated, so as to follow the tool movement command generated by the command value generation unit 3. When using the result of the simulation, the feature amount calculation unit 11 simulates the behavior of the machine tool on a computer and estimates the actual tool tip point from the interpolation point that is the output of the command value generation unit 3. Specifically, the parameters of the inertia, viscosity, and elasticity of the machine tool, the resonance frequency or anti-resonance frequency caused by the inertia, viscosity, and elasticity, the parameters of the backlash or lost motion at the time of axis reversal, the parameters of the thermal displacement, the parameters of the amount of displacement caused by the reaction force during machining, and the like are set in advance to simulate the operation of the machine tool. Here, the estimation accuracy of the tool tip point calculated by the simulation can be changed. For example, when an estimation accuracy equivalent to the drive axis of the machine tool is required, the position information of the drive axis may be used as the tool tip point, and when an estimation accuracy equivalent to the interpolation point is required, the interpolation point may be used as the tool tip point. Moreover, when using the results of an actual operation, the feature amount calculation unit 11 operates an actual machine tool to obtain information corresponding to the tool tip point.
[0031] <Feature Calculation Processing> The feature calculation section 11 calculates, for each of the tool center points determined in the tool center point estimation process, a feature amount of machining at the tool center point in association with a machining curved surface or machining edge of the machining target shape 320. Below, a method of calculating the machining error amount, the speed of the tool center point, the acceleration of the tool center point, the jerk of the tool center point, the position of each of the multiple drive shafts of the machine tool, the speed of each of the multiple drive shafts of the machine tool, the acceleration of each of the multiple drive shafts of the machine tool, the jerk of each of the multiple drive shafts of the machine tool, and the reversal position of each of the multiple drive shafts of the machine tool, which are examples of the feature amount of machining, will be described.
[0032] The machining error amount can be calculated as the shortest distance between the position of the cutting point corresponding to the tool center point and the contour surface of the tool arranged according to the position of the tool center point and the tool direction. The position of the tool center point is calculated from information obtained by simulating the behavior of the machine tool to be controlled, or is obtained by operating the machine tool to be controlled.
[0033] The speed, acceleration and jerk of the tool center point can be calculated as follows: Among the tool center points from the start point to the end point, if the position of the nth tool center point is PT(n) and the position of the n+1th tool center point advanced by a time Δt of a predetermined control cycle is PT(n+1), then the speed VT(n) of the nth tool center point can be calculated by dividing the distance between the two tool center point positions PT(n+1), PT(n) by the time Δt of the predetermined control cycle, as expressed in the following equation (2).
[0034]
number
[0035] Similarly, the acceleration AT(n) of the nth tool center point is calculated by dividing the difference between the velocities VT(n+1), VT(n) at the two tool center points by the time Δt of a specified control cycle, as expressed in the following equation (3).
[0036]
number
[0037] Similarly, the jerk JT(n) of the nth tool center point is calculated by dividing the difference between the accelerations AT(n+1), AT(n) of the two tool center points by the time Δt of a specified control cycle, as expressed in the following equation (4).
[0038]
number
[0039] Moreover, the position, speed, acceleration and jerk of each of the multiple drive axes of the machine tool can be calculated as follows. The position PM1(n) of the first drive axis corresponding to the nth tool center point can be acquired from time-series data of the operation information of the machine tool. The operation information is information that indicates the operating state when the machine tool is operated. The operation information includes information obtained from the machine tool, a numerical control device that controls the machine tool, i.e., command value generating device 3, or a sensor attached to the machine tool. In this example, the operation information includes position data of each of the multiple drive axes of the machine tool.
[0040] If the position of the first drive axis corresponding to the tool center point at the (n+1)th position, advanced by a time Δt in a predetermined control cycle, is PM1(n+1), then the speed VM1(n) of the first drive axis corresponding to the tool center point at the nth position at time t is calculated by the following equation (5).
[0041]
number
[0042] Similarly, if the speed of the first drive axis corresponding to the (n+1)th tool center point, which has advanced by a time Δt of a predetermined control cycle, is VM1(n+1), the acceleration AM1(n) of the first drive axis corresponding to the nth tool center point is calculated by the following equation (6).
[0043]
number
[0044] Similarly, if the acceleration of the first drive axis corresponding to the (n+1)th tool center point advanced by a time Δt in a predetermined control cycle is denoted as AM1(n+1), the jerk JM1(n) of the first drive axis corresponding to the nth tool center point is calculated by the following equation (7).
[0045]
number
[0046] The position, velocity, acceleration, and jerk of each of the other drive axes other than the first drive axis can be calculated in a similar manner.
[0047] The reversal positions of each of the multiple drive axes of a machine tool can be calculated as follows. Using the above-mentioned method, the speed VM1(n) of the first drive axis corresponding to the nth tool center point and the speed VM1(n+1) of the first drive axis corresponding to the n+1th tool center point advanced by a predetermined control cycle time Δt are calculated. At this time, the sign of the speed VM1(n) and the sign of the speed VM1(n+1) are compared, and the position corresponding to the time when the sign is reversed can be determined as the reversal position of the first drive axis. Note that the reversal positions of each of the drive axes other than the first drive axis can also be calculated using a similar method.
[0048] The feature amount calculation unit 11 associates the feature amount of machining with the machining curved surface or machining edge of the machining target shape 320. In one example, in the machining target shape 320, an ID number, which is identification information for identifying the machining curved surface and the machining edge, is assigned in advance to each piece of information on the machining curved surface and the machining edge, so that it is possible to identify the machining feature amount of the corresponding ID number.
[0049] The feature amount calculation unit 11 outputs the feature amount of machining calculated as described above to the evaluation index calculation unit 12. When the entire workpiece is machined under one condition, the feature amount calculation unit 11 outputs the feature amount of machining for the machining target shape 320 to the evaluation index calculation unit 12. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the feature amount calculation unit 11 outputs the feature amount of machining for each machining surface or each machining edge of the machining target shape 320 to the evaluation index calculation unit 12.
[0050] The evaluation index calculation unit 12 calculates one or more evaluation index values for evaluating the machining result from the machining feature amount calculated by the feature amount calculation unit 11. In the following explanation, an example is given in which the machining result is the machining time, which is the cycle time, the machining accuracy, which is the shape accuracy of the machined surface, and the surface quality, which is the surface accuracy of the machined surface. Note that there is a trade-off relationship between the machining time, the machining accuracy, and the surface quality.
[0051] As an example, the evaluation index value Qt for the machining time can use the deceleration rate of the tool center point speed calculated from the result information for the command speed described in the machining program 310, and is calculated by the following equation (8).
[0052]
number
[0053] Here, the circle represents the machining curved surface or machining edge of the machining target shape 320. In the case of the machining target shape 320 of Fig. 2 to Fig. 4, the circle represents the machining curved surfaces S1-S3 and the machining edges E1 and E2. Also, N indicates the number of data points of the tool center point corresponding to each of the machining curved surfaces and the machining edges, and F c indicates the command speed, and F indicates the speed of the tool center point.
[0054] According to equation (8), the tool center point speed F is the command speed F c The smaller the evaluation index value Qt of the machining time, the better the command value generation parameter set in the parameter adjusting device 1 is in terms of machining time. In other words, in the first embodiment, the smaller the evaluation index value Qt, the better the machining time. However, the evaluation index value Qt is not limited to the one specified by the formula (8) as long as it can evaluate the machining time. In one example, the evaluation index value Qt may be the number of data points N of the tool center point corresponding to each of the specific machining surface and machining edge, or the time calculated by multiplying the number of data points N by the execution unit may be used.
[0055] In addition, in formula (8), the tool center point speed is used to calculate the evaluation index value Qt of the machining time, but it is also possible to use the average speed or maximum speed of the tool center point, or the average speed or maximum speed of each of the multiple drive axes of the machine tool.
[0056] Generally, when the machining time is shortened, the average acceleration, maximum acceleration, average jerk, and maximum jerk tend to increase, so it is also possible to use the average acceleration, maximum acceleration, average jerk, and maximum jerk of the tool tip point, the average acceleration, maximum acceleration, average jerk, and maximum jerk of each of the multiple drive axes of the machine tool, etc. as the evaluation index value Qt for the machining time. However, in this case, it is determined that the larger the evaluation index value Qt, the better the command value generation parameter set in the parameter adjusting device 1 is in terms of machining time.
[0057] As an example, the evaluation index value Qa regarding the machining accuracy can use the average value of the machining error amount, which is the distance between the machining target shape 320 and the tool placed at the position of the tool center point, and is calculated by the following equation (9).
[0058]
number
[0059] Here, ◯ represents the machining curved surface or machining edge of the machining target shape 320. In the case of the machining target shape 320 in Fig. 2 to Fig. 4, ◯ represents the machining curved surfaces S1-S3 and the machining edges E1, E2. Also, N indicates the number of data points of the tool center point corresponding to each of the machining curved surface and the machining edge, and e indicates the amount of machining error calculated as the feature amount of machining.
[0060] According to formula (9), the smaller the machining error amount e, the smaller the evaluation index value Qa of the machining accuracy. In other words, in the first embodiment, it can be said that the smaller the evaluation index value Qa, the better the command value generation parameter set in the parameter adjusting device 1 is in terms of machining accuracy. However, the evaluation index value Qa is not limited to the one specified by formula (9) as long as it can evaluate the machining accuracy. As an example, it may be a value indicating the degree of mechanical vibration or the tracking ability of a tool.
[0061] In addition, in formula (9), the machining error amount corresponding to each of the machining curved surface and the machining edge is used to calculate the evaluation index value Qa of the machining accuracy, but it is also possible to use the maximum and minimum values of the machining error amount corresponding to each of a specific machining curved surface and machining edge.
[0062] In general, when machining accuracy deteriorates, the average acceleration, maximum acceleration, average jerk, and maximum jerk tend to increase, so it is also possible to use the maximum and minimum acceleration values at the tool tip point, the maximum and minimum jerk values at the tool tip point, the maximum and minimum acceleration values of each of the multiple drive axes of the machine tool, the maximum and minimum jerk values of each of the multiple drive axes of the machine tool, or the like as the evaluation index value Qa for machining accuracy.
[0063] Furthermore, it may be determined that the larger the evaluation index value Qa, the better the command value generating parameter set in the parameter adjusting device 1 is in terms of machining accuracy.
[0064] As an example, the evaluation index value Qq for surface quality can use the variance of the machining error amount, which is the distance between the machining target shape 320 and the tool placed at the tool center point position, and is calculated by the following equation (10).
[0065]
number
[0066] Here, ◯ represents the machining curved surface or machining edge of the machining target shape 320. In the case of the machining target shape 320 of Fig. 2 to Fig. 4, ◯ represents the machining curved surfaces S1-S3 and the machining edges E1, E2. Also, N represents the number of data points of the tool center point corresponding to each of the machining curved surfaces and the machining edges, e represents the amount of machining error calculated as the feature amount of machining, and e a indicates the average value of the processing error.
[0067] According to formula (10), the smaller the variance of the machining error amount e, the smaller the evaluation index value Qq of the surface quality. That is, in the first embodiment, it can be said that the smaller the evaluation index value Qq is, the better the command value generating parameter set in the parameter adjusting device 1 is in terms of surface quality. However, the evaluation index value Qq may be anything that can evaluate the surface quality, and is not limited to the one specified by formula (10). In one example, it may be a value indicating the degree of mechanical vibration.
[0068] In addition, in formula (10), the difference between the amount of machining error corresponding to each of the machined curved surface and the machining edge and the average value of the machining error is used to calculate the evaluation index value Qq of the surface quality. However, it is also possible to use the difference between the maximum and minimum amounts of machining error corresponding to each of a specific machined curved surface and machining edge, the difference between the maximum and minimum values of acceleration at the tool center point, the difference between the maximum and minimum values of jerk at the tool center point, the difference between the maximum and minimum values of acceleration of each of a plurality of drive axes of the machine tool, the difference between the maximum and minimum values of jerk of each of a plurality of drive axes of the machine tool, etc.
[0069] Furthermore, it may be determined that the larger the evaluation index value Qq, the better the command value generating parameter set in the parameter adjusting device 1 is in terms of surface quality.
[0070] Here, three evaluation indexes related to the processing time, the processing accuracy, and the surface quality are calculated, but one or more evaluation indexes of the processing time, the processing accuracy, and the surface quality may be calculated according to the preferences of the worker.
[0071] The evaluation index information storage unit 13 stores evaluation index information in which the evaluation index values regarding the machining time, machining accuracy, and surface quality calculated by the evaluation index calculation unit 12 are associated with the command value generation parameter set for each of the machining curved surface or machining edge of the machining target shape 320. Note that the evaluation index information may have the corresponding machining feature amount in addition to the evaluation index values regarding the machining time, machining accuracy, and surface quality and the command value generation parameter set.
[0072] The first optimal solution search unit 14 uses a first learning result for inferring an evaluation index value from a command value generation parameter set learned using a command value generation parameter set and an evaluation index value to infer an evaluation index value corresponding to the command value generation parameter set for the first search, and searches for command value generation parameter set candidates that are multiple command value generation parameter sets that simultaneously optimize each evaluation index value using the inferred result. When searching for multiple command value generation parameter set candidates, command value generation parameter set candidates that simultaneously optimize each evaluation index value are searched for so that the balance of the evaluation index values in a trade-off relationship is different. In one example, the balance is the ratio of each evaluation index value to the sum of the evaluation index values of the machining time, machining accuracy, and surface quality. In another example, the balance of the evaluation index values is referred to as being different when at least one evaluation index value out of three evaluation index values of the command value generation parameter set candidate is different from the corresponding evaluation index value of the other command value generation parameter set candidate by a predetermined ratio or more. In this example, the first optimal solution search unit 14 searches for one or more command value generation parameter set candidates that simultaneously minimize each evaluation index value. Here, "simultaneous minimization" means finding a solution in which, among three evaluation index values that are in a trade-off relationship, improving one evaluation index value results in the deterioration of the other objective functions.
[0073] The following describes a learning process for learning the relationship between a command value generating parameter set and an evaluation index value, and a search process for searching for a parameter set using the learning result.
[0074] <Learning process> In the learning process, the first optimum solution search unit 14 receives as input evaluation index values and parameter ranges related to machining time, machining accuracy, and surface quality, learns the relationship between the command value generating parameter set and the evaluation index value calculated by the evaluation index calculation unit 12, and outputs the learning result. That is, the first optimum solution search unit 14 uses learning data including the command value generating parameter set and evaluation index values related to machining time, machining accuracy, and surface quality to generate a first learning result for inferring the evaluation index value from the command value generating parameter set.
[0075] Specifically, a neural network is configured that receives the command value generating parameter set as input and outputs the evaluation index value, and the first optimal solution search unit 14 updates the weighting coefficients of the neural network to perform learning. When learning is performed with the weighting coefficients updated, the neural network outputs a good estimate of the evaluation index value corresponding to the command value generating parameter set. The first optimal solution search unit 14 uses the neural network to obtain a function that receives the command value generating parameter set as input and outputs the evaluation index value, thereby obtaining a first learning result that is a relational equation between the command value generating parameter set and the evaluation index value as the learning result.
[0076] The first optimum solution searching unit 14 selects and outputs a command value generating parameter set for executing the next machining operation from within a specified parameter range for the machining target shape 320. When selecting the next command value generating parameter set, the first optimum solution searching unit 14 may select a command value generating parameter set showing a good evaluation index value based on the learning result, or may select each command value generating parameter set in order from the points of a grid spaced at equal intervals. The first optimum solution searching unit 14 has a function of updating a function for calculating evaluation index values related to machining time, machining accuracy, and surface quality based on the command value generating parameter set.
[0077] Here, the process in which the operation of the first optimal solution searching unit 14 is executed four times to evaluate up to the fourth set of command value generation parameter sets will be described. The first set of command value generation parameter sets is denoted as Pr1, the second set of command value generation parameter sets is denoted as Pr2, the third set of command value generation parameter sets is denoted as Pr3, and the fourth set of command value generation parameter sets is denoted as Pr4. Each of the four sets of command value generation parameter sets has three parameters: an allowable acceleration, an allowable path error, and a filter time constant.
[0078] FIG. 11 is a diagram showing an example of a mapping diagram of the machining error amount of the machined curved surface in the machining target shape when the machining operation generated based on the first to fourth command value generating parameter sets is performed and the relationship with the machining time. In FIG. 11, a mapping diagram of the machining error amount of the machined curved surface S1 is shown. The mapping diagram Ma shows the machining error amount and machining time of the machined curved surface S1 when the first command value generating parameter set is used. The mapping diagram Mb shows the machining error amount and machining time of the machined curved surface S1 when the second command value generating parameter set is used. The mapping diagram Mc shows the machining error amount and machining time of the machined curved surface S1 when the third command value generating parameter set is used. The mapping diagram Md shows the machining error amount and machining time of the machined curved surface S1 when the fourth command value generating parameter set is used. In addition, the distribution of the machining error amount in the machined curved surface S1 indicates the surface quality. If the amount of machining error is uniform on the machined surface S1, the surface quality is considered to be high, and if the amount of machining error is not uniform, the surface quality is considered to be low. The hatching on the machined surface S1 of these mapping diagrams Ma-Md indicates the amount of error, and a legend for the amount of error is shown in the "Amount of Error" on the right side of each mapping diagram Ma-Md. The machining time is also shown by the slide bar in the "Takt" on the right side of each mapping diagram Ma-Md.
[0079] When the first optimum solution searching unit 14 receives evaluation index values Qt1, Qa1, Qq1 related to the machining time, machining accuracy, and surface quality for the machining surface S1 in the machining target shape 320 obtained by the result of the machining operation when the command value generating parameters are the first command value generating parameter set Pr1, the first optimum solution searching unit 14 changes the first command value generating parameter set Pr1 to the second command value generating parameter set Pr2. At this time, the second command value generating parameter set Pr2 may be selected based on the result of the machining operation in which the first command value generating parameter set Pr1 was used, or the second command value generating parameter set Pr2 may be selected as previously determined regardless of the result of the machining operation in which the first command value generating parameter set Pr1 was used.
[0080] The first optimal solution search unit 14 receives evaluation index values Qt2-Qt4, Qa2-Qa4, and Qq2-Qq4 corresponding to the second to fourth command value generating parameter sets Pr2-Pr4 in a similar procedure to that for the first command value generating parameter set Pr1.
[0081] 11 is obtained, the evaluation index value Qt1 is the smallest among the four evaluation index values Qt1-Qt4 in terms of machining time. In other words, it can be said that the first command value generation parameter set Pr1 is a command value generation parameter set that prioritizes machining time.
[0082] From the viewpoint of machining accuracy, the evaluation index value Qa2 is the smallest among the four evaluation index values Qa1-Qa4. In other words, the second command value generating parameter set Pr2 can be said to be a command value generating parameter set that prioritizes machining accuracy.
[0083] From the aspect of surface quality, the evaluation index value Qq3 is the smallest among the four evaluation index values Qq1-Qq4. In other words, it can be said that the third command value generation parameter set Pr3 is a command value generation parameter set that prioritizes surface quality.
[0084] The fourth command value generating parameter set Pr4 can be said to be a well-balanced command value generating parameter set in terms of all aspects of machining time, machining accuracy, and surface quality.
[0085] As described above, the first optimal solution search unit 14 repeatedly performs the operation of acquiring the evaluation index value corresponding to the command value generation parameter. The first optimal solution search unit 14 performs a learning operation using a neural network, using the command value generation parameter obtained by the repeated operation and the evaluation index value corresponding to the command value generation parameter as learning data. FIG. 12 is a diagram showing an example of a neural network used in the learning process of the first embodiment. The neural network has an input layer, an intermediate layer, and an output layer. A command value generation parameter set is input to the leftmost input layer, and an evaluation index value is output from the rightmost output layer. The weighting coefficients from each node of the input layer to each node of the intermediate layer can all be set independently, but in FIG. 12, they are all represented as the same weighting coefficient W1. Similarly, the weighting coefficients from each node of the intermediate layer to each node of the output layer can all be set independently, but in FIG. 12, they are all represented as the same weighting coefficient W2.
[0086] The output value of each node in the input layer is multiplied by a weighting factor W1, and a linear combination of the results obtained by the multiplication is input to each node in the intermediate layer. The output value of each node in the intermediate layer is multiplied by a weighting factor W2, and a linear combination of the results obtained by the multiplication is input to a node in the output layer. In each node in each layer, an output value may be calculated from an input value using a nonlinear function such as a sigmoid function. In the input layer and the output layer, the output value may be a linear combination of the input values.
[0087] The first optimal solution search unit 14 calculates the weighting coefficients W1 and W2 of the neural network using the command value generation parameter set and the evaluation index value. The weighting coefficients W1 and W2 of the neural network can be calculated using the backpropagation method or the gradient descent method. In one example, the neural network learns by inputting the command value parameter set to the input layer and adjusting the weighting coefficients W1 and W2 so that the result output from the output layer approaches the evaluation index value. However, the calculation method of the weighting coefficients W1 and W2 is not limited to the above-mentioned method as long as the calculation method can obtain the weighting coefficients of the neural network.
[0088] Once the weighting coefficients W1 and W2 of the neural network are determined, the relational expression between the command value generation parameters and the evaluation index value is obtained. Up to this point, an example of learning using a three-layer neural network has been shown. Learning using a neural network is not limited to the above example.
[0089] Through the above operations, a function that takes the command value generation parameter set, which is a relational expression by a neural network, as input and outputs the evaluation index value is obtained as the first learning result. The first learning result is a learning result for inferring the evaluation index value from the command value generation parameters.
[0090] By using this first learning result, it is possible to obtain evaluation index values Qt, Qa, Qq for the machining time, machining accuracy, and surface quality corresponding to this new command value generation parameter set without performing machining operations for this new command value generation parameter set.
[0091] In the first embodiment, a neural network is used to construct a relational expression between the command value generation parameter set and the evaluation index value. However, a method other than the neural network may be used as long as the relationship between the command value generation parameter set and the evaluation index value can be obtained. In one example, a simple function such as a quadratic polynomial may be used to obtain the relationship between the command value generation parameter set and the evaluation index value, or a probability model such as a Gaussian process model may be used.
[0092] Furthermore, the prediction accuracy of the first learning result depends on the number of repetitions of the operation for acquiring the evaluation index value corresponding to the command value generation parameter set. If the number of repetitions is small, the first learning result can be obtained in a short time, but the error contained in the evaluation index value predicted from the command value generation parameter set tends to be large. On the other hand, if a sufficient number of repetitions is ensured, the error contained in the evaluation index value predicted from the command value generation parameter set becomes small, but it tends to take a long time to obtain a first learning result with good accuracy.
[0093] When performing the learning operation, it is better to ensure a sufficient number of repetitions for the operation of acquiring the evaluation index value corresponding to the command value generating parameter set for the vicinity of the boundary in the distribution of the evaluation index value where the evaluation index values for the machining time, machining accuracy, and surface quality are maximum or minimum. On the other hand, for the region other than the vicinity of the above-mentioned boundary, it is not necessary to ensure a sufficient number of repetitions for the operation of acquiring the evaluation index value corresponding to the command value generating parameter. In this case, it is sufficient to acquire the evaluation index value over a wide range within the specified parameter range, and a small number of repetitions is not a problem.
[0094] In this example, the learning process is performed for each machining surface or each machining edge in the machining target shape 320, but the learning process may be performed simultaneously for multiple machining surfaces and machining edges. In the example of the machining target shape 320 shown in Figs. 2 to 4, when machining surface S1, machining surface S2, and machining edge E1 surrounded by machining surface S1 and machining surface S2 are processed simultaneously, a new evaluation formula Q' is obtained by linearly combining the evaluation index values for the machining surfaces S1, S2, and machining edge E1. The evaluation index value for the machining surface S1 is Q(S1), the evaluation index value for the machining surface S2 is Q(S2), the evaluation index value for the machining edge E1 is Q(E1), and a S1 ,a S2 ,a E1 Assuming that is a coefficient, the new evaluation formula Q′ is expressed by the following formula (11).
[0095]
number
[0096] Here, □ represents the machining time, machining accuracy, or surface quality to be evaluated. In other words, the evaluation formula Q' represents the evaluation index values of the multiple machining surfaces and machining edges of the machining target shape 320, and in the examples of Figures 2 to 4, it represents the evaluation index values of any of the machining time, machining accuracy, and surface quality to be evaluated for the machining surfaces S1-S3 and the machining edges E1 and E2. This makes it possible to perform learning processing even when machining a shape component consisting of multiple machining surfaces or machining edges with one command value generation parameter set.
[0097] The learning data used by the first optimum solution search unit 14 when performing the learning process is the data on the control object used by the feature amount calculation unit 11 to calculate the feature amount.
[0098] <Search process> In the search process, the first optimal solution search unit 14 infers an evaluation index value corresponding to a command value generation parameter set for search using a first learning result for inferring an evaluation index value from a command value generation parameter set. The first optimal solution search unit 14 also uses the inferred result to search for a command value generation parameter set candidate that is a command value generation parameter set that simultaneously optimizes each evaluation index value. When the entire workpiece is machined under one condition, the first optimal solution search unit 14 searches for a command value generation parameter set candidate for the machining target shape 320. On the other hand, when the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the first optimal solution search unit 14 searches for a command value generation parameter set candidate for each machining curved surface or each machining edge of the machining target shape 320. The command value generation parameter set candidate may be one command value generation parameter set that simultaneously optimizes each evaluation index value, or may be a plurality of command value generation parameter sets. The command value generation parameter set for search used by the first optimal solution search unit 14 corresponds to the command value generation parameter set for the first search.
[0099] That is, the first optimum solution search unit 14 searches for one or more command value generating parameter set candidates for the machining target shape 320 or for each machining surface or each machining edge in the machining target shape 320, which are command value generating parameter sets that have different balances of evaluation index values related to the machining time, machining accuracy, and surface quality and that simultaneously minimize the evaluation index values related to the machining time, machining accuracy, and surface quality within the range of the determined command value generating parameters, by numerical calculation based on the first learning result that is a relational expression between the command value generating parameters and the evaluation index values. In one example, the first optimum solution search unit 14 searches for the command value generating parameter set using an optimization algorithm such as grid search, random search, Newton's method, Bayesian optimization, or evolutionary computation. Examples of evolutionary computation are NSGA-II (Non-dominated Sorting Genetic Algorithms II), AGE-MOEA (Adaptive Geometry Estimation based a MultiObjective Evolutional Algorithm), AGE-MOEA2, and R-NSGA-II (Reference point based NSGA-II). This command value generation parameter set becomes a command value generation parameter set for search. Then, by inputting the command value generation parameter set for search into the first learning result, evaluation index values for the machining time, machining accuracy, and surface quality are obtained, and the command value generation parameter set for search is associated with the evaluation index value. Among the combinations of the command value generation parameters for search and the corresponding evaluation index values, the command value generation parameter set corresponding to the best evaluation index value among those classified using the evaluation index values for the machining time, machining accuracy, and surface quality is set as a command value generation parameter candidate.
[0100] FIG. 13 is a diagram showing an example of a command value generation parameter set for a machining surface searched for by the first optimum solution search unit in the first embodiment. FIG. 13 shows a distribution diagram in which a combination of evaluation index values for the machining time, machining accuracy, and surface quality corresponding to the command value generation parameter set is plotted on an orthogonal coordinate system with the evaluation index values for the machining time, machining accuracy, and surface quality as axes. In addition, this example shows an example of a result of searching for a command value generation parameter set for the machining surface S1 of the machining target shape 320 in FIG. 2 to FIG. 4. The command value generation parameter set candidates extracted in FIG. 13 can be categorized into four types: a machining time priority mode, which is a command value generation parameter set candidate that prioritizes shortening the machining time among the three evaluation index values of the machining time, machining accuracy, and surface quality; a machining accuracy priority mode, which is a command value generation parameter set candidate that prioritizes improving the machining accuracy; a surface quality priority mode, which is a command value generation parameter set candidate that prioritizes improving the surface quality; and a balance mode, which is a command value generation parameter set candidate that improves the three evaluation indexes in a balanced manner. The evaluation index values other than these four modes are based on other command value generation parameter sets.
[0101] 13 shows an example in which one command value generating parameter set candidate is extracted for each of four categories, namely, the machining time priority mode, the machining accuracy priority mode, the surface quality priority mode, and the balance mode, but it is not necessary to extract command value generating parameter sets corresponding to all categories, and it is sufficient to extract a command value generating parameter set corresponding to at least one category. Also, multiple command value generating parameter sets corresponding to one category may be extracted.
[0102] In this way, the first optimum solution search unit 14 has a function of searching for a command value generation parameter set candidate including a command value generation parameter set that optimizes the remaining two evaluation index values of the machining time, machining accuracy, and surface quality under conditions that preferentially improve one of the evaluation index values within the range of the command value generation parameters, and a command value generation parameter set that improves the evaluation index values of the machining time, machining accuracy, and surface quality in a balanced manner within the range of the command value generation parameters, from a combination of the command value generation parameter set for search and the evaluation index value obtained when the command value generation parameter set for search is input to the first learning result. When the entire workpiece is machined under one condition, the command value generation parameter set candidate is searched for the machining target shape 320. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the command value generation parameter set candidate is searched for each machining surface or each machining edge. In addition, the first optimum solution search unit 14 can also perform the learning process and the inference process simultaneously.
[0103] Returning to FIG. 1, the candidate information storage unit 15 stores candidate information that associates the command value generation parameter set candidates extracted by the first optimal solution search unit 14 with the evaluation index value and the machining feature amount calculated by the feature amount calculation unit 11. In one example, when a plurality of command value generation parameter set candidates are extracted, the plurality of command value generation parameter set candidates are associated with the respective evaluation index values and the machining feature amount calculated by the feature amount calculation unit 11 and stored in the candidate information storage unit 15. When the entire workpiece is machined under one condition, the candidate information associates the command value generation parameter set candidates with the evaluation index value and the machining feature amount for each machining target shape 320. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the candidate information associates the command value generation parameter set candidates with the evaluation index value and the machining feature amount for each machining surface or each machining edge. In addition, the evaluation index values for all command value generation parameter sets obtained by the learning process and search process in the first optimal solution search unit 14 and the processing features calculated by the feature calculation unit 11 may be stored in the candidate information storage unit 15.
[0104] The preference information setting unit 16 controls the display unit 17 to display the feature values of machining calculated when the command value generation parameter set candidates are set in the command value generating device 3 that generates a tool movement command and the command value generating device 3 operates in association with each other and each evaluation index value. When the entire workpiece is machined under one condition, the preference information setting unit 16 displays the feature values of machining of the command value generation parameter set candidates for the machining target shape 320 in association with each evaluation index value on the display unit 17. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the preference information setting unit 16 displays the feature values of machining of the command value generation parameter set candidates in association with each evaluation index value on the display unit 17 for each machining surface or each machining edge. In addition, an actual machine tool may be operated according to the command value generation parameter set, and the actually machined workpiece having the machining target shape 320 may be presented to the operator in association with each evaluation index value, or image data of the machined workpiece having the machining target shape 320 may be displayed on the display unit 17 in association with each evaluation index value.
[0105] Moreover, the preference information setting unit 16 sets preference information for each evaluation index value of the command value generation parameter set candidate selected by the operator among the feature values of machining and their respective evaluation index values displayed on the display unit 17. In one example, the preference information setting unit 16 sets, as preference information, each evaluation index value of the command value generation parameter set candidate selected and adjusted by the operator among the feature values of machining and their respective evaluation index values displayed on the display unit 17. When the entire workpiece is machined under one condition, the preference information is set for the machining target shape 320. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the preference information is set for each machining curved surface or each machining edge of the machining target shape 320. The display control unit corresponds to the preference information setting unit 16.
[0106] Note that the preference information may be set in advance to the extent possible by the operator at the time of processing by the first optimal solution search unit 14. In this case, since the first optimal solution search unit 14 extracts command value generation parameter set candidates reflecting the preset preference information, the preference information setting unit 16 may set preference information other than the preset items, or the preference information setting unit 16 may reset the preset items.
[0107] In one example, the preference information setting unit 16 displays the command value generation parameter set candidates stored in the candidate information storage unit 15, and the evaluation index values and machining feature values associated with the command value generation parameter set candidates on the display unit 17. In this example, the command value generation parameter set candidates are a machining time priority mode, a machining accuracy priority mode, a surface quality priority mode, and a balance mode. The worker selects one command value generation parameter set candidate from four categories, the machining time priority mode, the machining accuracy priority mode, the surface quality priority mode, and the balance mode, based on the machining feature values calculated by the feature value calculation unit 11 via an input unit (not shown). In addition, the worker sets the preference information of the worker via the input unit, referring to the machining feature values obtained from the selected command value generation parameter set candidate and the evaluation index values related to the machining time, machining accuracy, and surface quality. The preference information is an evaluation index value set by the worker, that is, an evaluation index value related to the machining time, machining shape, and surface quality held by the worker. It can be said that the preference information is information indicating which of the machining time, machining accuracy, and surface quality the worker attaches importance to when machining. When the entire workpiece is machined under one condition, the worker sets preference information for the machining time, machining accuracy, and surface quality for the machining target shape 320. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the worker sets preference information for the machining time, machining accuracy, and surface quality for each machining surface or machining edge. In the latter case, the worker adjusts the evaluation index values for the machining time, machining accuracy, and surface quality for the selected command value generation parameter set candidate for the target machining surface or machining edge. This adjustment is based on the worker's preference. The preference information setting unit 16 sets the adjusted evaluation index values for the machining time, machining accuracy, and surface quality as preference information for the target machining surface or machining edge.
[0108] In the example shown in FIG. 2 to FIG. 4, the machining target shape 320 is composed of the machining curved surface S1-S3 and the machining edges E1, E2, and the operator selects a command value generation parameter set candidate that is closest to the operator's preference for each of the machining curved surface S1-S3 and the machining edges E1, E2. FIG. 14 is a diagram showing an example of preference information setting by the operator for one command value generation parameter set candidate selected from the categories of machining time priority mode, machining accuracy priority mode, surface quality priority mode, and balance mode for the machining surface shown in FIG. 13. FIG. 14 also shows an evaluation index value for the machining curved surface S1, as in FIG. 13. As shown in FIG. 14, as a specific process, when the operator specifies a position on the machining curved surface S1 of the machining target shape 320 in advance, the current machining time, machining accuracy, and surface quality evaluation index values for the specified machining curved surface S1 are displayed on the display unit 17. In one example, the evaluation index values for the machining time, machining accuracy, and surface quality associated with the command value generation parameter set candidate selected by the operator are displayed. The operator modifies the displayed current machining time, machining accuracy, and surface quality evaluation index values via the input unit. The preference information setting unit 16 sets the machining time, machining accuracy, and surface quality evaluation index values modified by the operator as preference information for the machining surface S1. In the example of Fig. 14, the surface quality priority mode is selected by the operator, and adjustments are made to shorten the machining time while maintaining the surface quality.
[0109] In this case, the method of specifying the machining surface may be, for example, to have the operator select a position on the machining surface of the machining target shape 320 using a pointing device such as a mouse or a touch panel. The specified position may be a specific point, a plurality of points, or a continuous area.
[0110] In addition, the evaluation index value may be corrected by, for example, inputting a numerical value, or by adjusting the current setting value using a GUI (Graphical User Interface) button such as a button or a bar. In this case, the inputtable range or adjustable range may be set from the maximum and minimum values of the evaluation index value corresponding to the command value generation parameter set candidates stored in the candidate information storage unit 15 of the parameter adjustment device 1.
[0111] Furthermore, the preference information setting unit 16 may predict a feature amount of processing obtained when the preference information is set based on the evaluation index values and feature amounts of processing corresponding to the command value generating parameter set candidates stored in the candidate information storage unit 15 of the parameter adjustment device 1, and display the predicted feature amount of processing on the display unit 17 or the like in association with the processing target shape 320. As an example, a conceivable method is to predict a feature amount of processing for the preference information after the setting by linearly interpolating a feature amount of processing at an evaluation index value closest to the preference information after the setting among the evaluation index values corresponding to the command value generating parameter set candidates stored in the candidate information storage unit 15 of the parameter adjustment device 1, and a feature amount of processing at an evaluation index value before the preference information is set.
[0112] The preference information may be set for all of the processing time, processing accuracy, and surface quality, or may be set for only some of them. If the preference information is not set by the worker, the preference information setting unit 16 sets the preference information by interpreting that the current evaluation index value is set as the selection information.
[0113] Returning to FIG. 1, the display unit 17 displays the stored information stored in the candidate information storage unit 15 according to an instruction from the preference information setting unit 16. In one example, the display unit 17 displays the feature amounts of machining of the command value generation parameter set candidates in association with their respective evaluation index values. When the entire workpiece is machined under one condition, the display unit 17 displays the feature amounts of machining of the command value generation parameter set candidates in association with their respective evaluation index values for the machining target shape 320. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the display unit 17 displays the feature amounts of machining of the command value generation parameter set candidates in association with their respective evaluation index values for each machining curved surface or each machining edge of the machining target shape 320.
[0114] The second optimal solution search unit 18 searches for a command value generating parameter set corresponding to an evaluation index value that minimizes the difference from the preference information. That is, the second optimal solution search unit 18 searches for one command value generating parameter set from among a plurality of command value generating parameter sets so that the evaluation index value approaches the preference information set in the preference information setting unit 16. Specifically, the second optimal solution search unit 18 repeatedly performs an operation of acquiring the difference between an evaluation index value that evaluates the machining time, machining accuracy, and surface quality corresponding to the command value generating parameter set, and the preference information of the operator regarding the machining time, machining accuracy, and surface quality, and obtains a command value generating parameter set that minimizes the difference between the evaluation index value and the preference information of the operator. The command value generating parameter set to be obtained may be one or more. When the entire workpiece is machined under one condition, the second optimal solution search unit 18 obtains a command value generating parameter set that minimizes the difference between the evaluation index value and the preference information of the operator for the machining target shape 320. In addition, when the entire workpiece is divided into multiple parts and each divided part is machined under different conditions, the second optimal solution search unit 18 finds a command value generation parameter set for each machining surface and each machining edge in the machining target shape 320 that minimizes the difference between the evaluation index value and the worker's preference information.
[0115] The second optimal solution search unit 18 performs a learning process using a neural network with the command value generation parameter set, the evaluation index value corresponding to the command value generation parameter set, and the difference between the evaluation index value and the preference information of the worker as learning data. If the relationship between the command value generation parameter and the difference between the evaluation index value and the preference information can be obtained, the relationship between the command value generation parameter set and the difference between the evaluation index value and the preference information may be learned using a method other than the method using a neural network. In one example, a simple function such as a quadratic polynomial may be used to obtain the relationship between the command value generation parameter set and the difference between the evaluation index value and the preference information, or a probability model such as a Gaussian process model may be used. In this way, the second optimal solution search unit 18 generates a second learning result for inferring the difference between the evaluation index value and the preference information corresponding to the command value generation parameter set from the command value generation parameter set, using the learning data including the command value generation parameter set and the difference between the evaluation index value and the preference information corresponding to the command value generation parameter set.
[0116] Furthermore, the difference between the evaluation index value and the worker's preference information is three-dimensional data of the processing time, processing accuracy, and surface quality, but it may be converted into one-dimensional data such as a norm and used as learning data.
[0117] Furthermore, the second learning result in the second optimal solution search unit 18 may use the first learning result obtained based on the learning process of the first optimal solution search unit 14, or may use a learning result obtained by performing an additional learning process on the first learning result obtained based on the learning process of the first optimal solution search unit 14.
[0118] The second optimal solution search unit 18 obtains a command value generating parameter set that minimizes the difference between the evaluation index value and the preference information of the operator with respect to the machining time, machining accuracy, and surface quality, by numerical calculation based on the relational expression between the command value generating parameter set, which is the learning result, and the difference between the evaluation index value and the preference information of the operator. In other words, the second optimal solution search unit 18 uses the second learning result, which is a relational expression for inferring the difference between the evaluation index value and the preference information corresponding to the command value generating parameter set for search, from the command value generating parameter set, to infer the difference between the evaluation index value and the preference information corresponding to the command value generating parameter set for search, and searches for one command value generating parameter set that minimizes the difference between the evaluation index value and the preference information using the inferred result. In one example, the second optimal solution search unit 18 obtains a command value generating parameter set for search using an optimization algorithm such as grid search, random search, Newton's method, Bayesian optimization, or evolutionary computation. Examples of evolutionary computation are NSGA-II, AGE-MOEA, AGE-MOEA2, and R-NSGA-II.
[0119] Then, the second optimal solution search unit 18 obtains the difference between the evaluation index value obtained by inputting the obtained command value generation parameter set for search into the relational expression and the preference information of the worker. Then, the command value generation parameter set that minimizes the difference between the evaluation index value and the preference information is obtained. At this time, it is desirable to obtain one command value generation parameter set that minimizes the difference between the value index value and the preference information. However, multiple command value generation parameter sets may be obtained in order from the one that minimizes the difference between the value index value and the preference information, or all command value generation parameter sets in which the difference between the evaluation index value and the preference information falls within a threshold value set by the worker may be obtained. In other words, the second optimal solution search unit 18 may search for a command value generation parameter set corresponding to an evaluation index value whose difference from the preference information falls within a certain value. In this case, the command value generation parameter set searched by the second optimal solution search unit 18 may be one or multiple. The command value generation parameter set obtained in this manner is called an adjusted command value generation parameter set. The second optimal solution searching unit 18 stores the calculated adjusted command value generating parameter set in the adjusted command value generating parameter set storage unit 19. The command value generating parameter set for search used by the second optimal solution searching unit 18 corresponds to the command value generating parameter set for the second search. The second optimal solution searching unit 18 can also perform the learning process and the inference process simultaneously.
[0120] The adjusted command value generating parameter set storage unit 19 stores the adjusted command value generating parameter set searched by the second optimal solution search unit 18. When the entire workpiece is machined under one condition, the adjusted command value generating parameter set storage unit 19 stores the adjusted command value generating parameter set calculated for the machining target shape 320. When the entire workpiece is divided into a plurality of parts and each divided part is machined under different conditions, the adjusted command value generating parameter set storage unit 19 stores the adjusted command value generating parameter set calculated for each machining surface and each machining edge in the machining target shape 320. The command value generating device 3 rewrites the set value of the command value generating parameter set to the adjusted command value generating parameter set extracted by the second optimal solution search unit 18. Then, the command value generating device 3 is operated to perform machining using the set command value generating parameters, thereby obtaining a machining result that matches the preferences of the operator.
[0121] Next, a parameter adjustment method in the parameter adjustment device 1 configured as above will be described. Fig. 15 is a flowchart showing an example of the procedure of the parameter adjustment method according to embodiment 1. Note that, here, an example is taken of a case where the entire workpiece is divided into a plurality of parts, and each divided part is machined under different conditions.
[0122] First, the parameter adjustment device 1 and the command value generating device 3 are initialized (step S11). Specifically, a machining target shape 320, which is a target shape of a workpiece including a machining curved surface that is a curved surface to be machined, is externally input to the parameter adjustment device 1. Also, in the command value generating device 3, a machining program 310 is externally input in which a tool path movement command corresponding to the machining target shape 320 and a movement speed command at this time are described.
[0123] Next, the command value generating device 3 outputs a tool movement command for each unit time in accordance with the externally input machining program 310 (step S12). After that, the feature amount calculating unit 11 simulates the behavior of the machine tool to be controlled on a computer, and estimates the actual tool tip point from the interpolation point output from the command value generating device 3 (step S13).
[0124] Next, the feature amount calculation unit 11 calculates the feature amount of machining at each of the tool center points estimated in step S13 in association with the machining curved surface or machining edge of the machining target shape 320 (step S14). After that, the evaluation index calculation unit 12 calculates evaluation index values for evaluating each of the machining time, machining accuracy, and surface quality based on the machining feature amount calculated in step S14 (step S15).
[0125] Next, the first optimum solution search unit 14 learns the relationship between the command value generation parameter set and the evaluation index value calculated by the evaluation index calculation unit 12 using the evaluation index value and parameter range for the machining time, machining accuracy, and surface quality as input, and outputs the first learning result (step S16). After that, the first optimum solution search unit 14 obtains command value generation parameter set candidates for each machining surface or machining edge in the machining target shape 320 by numerical calculation based on the relational expression between the command value generation parameter and the evaluation index value, which is the first learning result, that have different balances of the evaluation index values for the machining time, machining accuracy, and surface quality, and simultaneously optimize the evaluation index values for the machining time, machining accuracy, and surface quality (step S17). In one example, four command value generation parameter set candidates, namely, a machining time priority mode, a machining accuracy priority mode, a surface quality priority mode, and a balance mode, are obtained for each machining surface or machining edge. In addition, one or more command value generation parameter set candidates may be obtained for each machining surface or machining edge.
[0126] Thereafter, the preference information setting unit 16 displays the feature values of the command value generation parameter set candidates from which the feature values of machining have been acquired, as well as the evaluation index values of the machining time, machining accuracy, and surface quality, on the display unit 17 for each machining surface and each machining edge (step S18). That is, the preference information setting unit 16 displays the feature values of machining calculated when the command value generation parameter set candidates are set in the command value generating device 3 and the command value generating device 3 operates, in association with each evaluation index value, on the display unit 17. In this way, the feature values of machining for the command value generation parameter set candidates are displayed to the operator in association with each evaluation index value. After this, the operator can select the feature values of machining, i.e., the command value generation parameter set, corresponding to the evaluation index value that matches or is close to the operator's preference from among the displayed ones, and as a result, it becomes possible to converge the command value generation parameters to the operator's preference.
[0127] An operator selects one candidate command value generating parameter set for each machining surface and each machining edge based on the feature quantity of machining, and adjusts the evaluation index values of machining time, machining accuracy, and surface quality as necessary. The preference information setting unit 16 sets the evaluation index values of machining time, machining accuracy, and surface quality adjusted by the operator as preference information for each machining surface or each machining edge (step S19).
[0128] Next, the second optimal solution search unit 18 repeatedly performs an operation of obtaining the difference between the evaluation index value for evaluating the machining time, machining accuracy and surface quality corresponding to the command value generating parameter set and the preference information of the operator regarding the machining time, machining accuracy and surface quality based on the second learning result, and obtains an adjusted command value generating parameter set, which is a command value generating parameter set that minimizes the difference between the evaluation index value and the preference information of the operator, for each machining surface or machining edge in the machining target shape 320 (step S20).
[0129] Thereafter, the command value generating device 3 rewrites the setting values of the command value generation parameter set to the adjusted command value parameter set extracted by the second optimum solution searching unit 18, operates the device, and executes processing, thereby obtaining a processing result that matches the preferences of the worker. If the preferences of the worker change, it is possible to calculate an adjusted command value generation parameter set that is optimal for the worker whose preferences have changed in a short period of time by restarting the processing from step S18 to step S20, in which the preferences of the worker are reflected. This is the end of the parameter adjustment method. Here, an overview of each step has been described, but the details of each step are as described above.
[0130] In addition, when the entire workpiece is machined under one condition, in step S14, the feature amount calculation unit 11 calculates the feature amount of machining at the tool tip point in association with the machining target shape 320. In step S17, the first optimum solution search unit 14 obtains a command value generation parameter set candidate for the machining target shape 320. In step S18, the preference information setting unit 16 displays the machining feature amount of the command value generation parameter set candidate for the machining target shape 320 and the evaluation index values of the machining time, machining accuracy, and surface quality on the display unit 17. In step S19, the preference information setting unit 16 sets the evaluation index values of the machining time, machining accuracy, and surface quality adjusted by the operator to the machining target shape 320 as preference information. Then, in step S20, the second optimum solution search unit 18 obtains an adjusted command value generation parameter set for the machining target shape 320.
[0131] As described above, in the first embodiment, the evaluation index value corresponding to the command value generation parameter set for search is inferred using the first learning result for inferring one or more evaluation index values for evaluating the machining result from the command value generation parameter set, and a search is made for a plurality of command value generation parameter set candidates that simultaneously optimize the respective evaluation index values using the inferred result. Then, the feature values of machining calculated when the searched command value generation parameter set candidates are set in the command value generating device 3 and operated are associated with each other and displayed on the display unit 17. This allows the operator to view the evaluation index values and the feature values of machining for the plurality of command value generation parameter set candidates and select a command value generation parameter set that matches or is close to the operator's preference. Then, by using the selected command value generation parameter set, it is possible to converge to a command value generation parameter set that matches the operator's preference more quickly than in the past. In other words, it is possible to provide the operator with an environment in which it is possible to converge to a command value generation parameter set that matches the operator's preference more quickly than in the past.
[0132] Moreover, according to the first embodiment, the parameters for the machining target shape 320 can be automatically adjusted according to the operator's preference using the three evaluation indexes of machining time, machining accuracy, and surface quality. This makes it possible to achieve machining in the shortest machining time while satisfying the desired machining accuracy. In other words, an effect is achieved in that a command value generation parameter set that matches the operator's preference can be converged on more quickly than in the past.
[0133] Moreover, if an adjustment result that matches the operator's preference is not obtained, or if the operator's preference has changed, the process may be performed from step S18 to step S20 in Fig. 15. This allows the operator to finely adjust and correct the command value generation parameter set with little effort and time.
[0134] Furthermore, in the technology described in Patent Document 1, it is possible to check the operation with a plurality of parameter sets and select the most appropriate parameter set among them, but the parameter set of one condition is applied throughout a series of machining. In other words, in the technology described in Patent Document 1, it is not possible to set partially optimal parameters. FIG. 16 is a diagram showing an example of the state of machining a blade-shaped member. As shown in FIG. 16, in one example, when machining a blade-shaped member 400 using a tool 40, if it is desired to machine the rounded end portions 401 with high precision and to machine the flat portion 402 between the end portions 401 at high speed, a parameter set of one condition cannot be used. Furthermore, if the test program used for parameter adjustment is different from the work shape machined by the operator, the accuracy of the parameter adjustment deteriorates and adjustment results that match the operator's preferences cannot be obtained. However, in the first embodiment, when the entire work is divided into a plurality of parts and each divided part is machined under different conditions, an adjusted command value generation parameter set that reflects the operator's preferences is obtained for each machining surface and each machining edge of the machining target shape 320. In the example of Fig. 16, different adjusted command value generating parameters that reflect the preferences of the operator are obtained for both end portions 401 and a flat portion 402. This allows the command value generating parameter set corresponding to the evaluation index value that matches the preferences of the operator to converge more quickly than in the past while taking into account the overall or partial shape of the workpiece. In addition, this has the effect of allowing each portion of a workpiece to be machined according to the preferences of the operator.
[0135] The learning data used by the second optimal solution search unit 18 may be data obtained from the same control object as the learning data used by the first optimal solution search unit 14. The learning data used by the second optimal solution search unit 18 may be data obtained from a control object different from the learning data used by the first optimal solution search unit 14. That is, the learning results of the first optimal solution search unit 14 and the second optimal solution search unit 18 in the first embodiment may be learning results obtained from different control objects. In one example, the second optimal solution search unit 18 may be a learning result obtained from an actual machine tool, and the first optimal solution search unit 14 may be a learning result obtained by a simulation that simulates the behavior of this machine tool on a computer. By adopting such a configuration, even if a state change occurs in the machine tool due to aging or thermal mutation, the parameters can be automatically adjusted to match the preferences of the operator by adjusting them to a certain extent in the simulation and then adjusting them highly accurately with a small number of adjustments in the actual machine tool.
[0136] Embodiment 2 17 is a diagram showing an example of the configuration of a parameter adjustment device according to embodiment 2. The same components as those in embodiment 1 are given the same reference numerals, and their description will be omitted, and only the parts different from embodiment 1 will be described. The parameter adjustment device 1A further includes, in addition to the configuration of embodiment 1, a shape analysis unit 20 that analyzes shape information, which is information indicating the shape of the machining curved surface or each machining edge of the machining target shape 320, from the feature amount of machining.
[0137] The shape analysis unit 20 analyzes shape information, which is information indicating the shape of each machining surface or each machining edge of the machining target shape 320, based on the machining feature amount calculated by the feature amount calculation unit 11. In one example, the shape analysis unit 20 extracts adjacent paths, which are tool center point paths adjacent to the tool center point path representing each machining surface or each machining edge of the machining target shape 320, and derives shape information from the machining feature amount corresponding to the extracted adjacent path. In one example, the shape analysis unit 20 sets the cumulative value of the tangent vector change calculated from the machining feature amount corresponding to the adjacent path as the shape information. Alternatively, the shape analysis unit 20 may set the average value of the tangent vector change derived from the machining feature amount as the shape information. The machining feature amount at this time is the speed of the tool center point. In another example, the shape analysis unit 20 sets the shape information to a function obtained by making the distance from the center of gravity of the adjacent path one-dimensional and fitting it. At this time, the shape information may be one obtained by fitting a simple function such as a quadratic polynomial.
[0138] As a method for extracting adjacent paths, in one example, the feature values of machining are associated with each machining surface or each machining edge in the machining target shape 320, and adjacent paths are extracted by grouping consecutive machining feature values in a time series.
[0139] The shape analysis unit 20 stores the shape information obtained based on the adjacent paths calculated as described above in the evaluation index information storage unit 13 in association with the command value generating parameter set and the evaluation index values related to the machining time, machining accuracy, and surface quality. In this manner, in the second embodiment, the evaluation index information associates the evaluation index values related to the machining time, machining accuracy, and surface quality, the command value generating parameter set, and shape information for each of the machining curved surface or machining edge of the machining target shape 320. Note that the evaluation index information may have the corresponding machining feature amount in addition to the evaluation index values related to the machining time, machining accuracy, and surface quality, the command value generating parameter set, and the shape information.
[0140] The first optimum solution searching unit 14 adds the shape information derived by the shape analyzing unit 20 to the relationship between the command value generating parameter set, which is a parameter set in the command value generating device 3, and the evaluation index value calculated by the evaluation index calculating unit 12, and performs learning to obtain a first learning result. The first optimum solution searching unit 14 uses the first learning result to search for one or more command value generating parameter sets that simultaneously optimize the evaluation index values of the machining time, machining accuracy, and surface quality. When searching for multiple command value generating parameter sets, the balance of the evaluation index values in a trade-off relationship is different, and a command value generating parameter set that simultaneously optimizes the evaluation index values of the machining time, machining accuracy, and surface quality is searched for.
[0141] Here, we will explain the learning process of the first optimum solution searching unit 14. The first optimum solution searching unit 14 receives evaluation index values related to the machining time, machining accuracy, and surface quality, a command value generating parameter set, and shape information as inputs, learns the relationship between the command value generating parameters, the evaluation index values calculated by the evaluation index calculation unit 12, and the shape information, and outputs a first learning result.
[0142] Specifically, a neural network is configured that receives the command value generating parameter set and shape information and outputs the evaluation index value, and the first optimal solution searching unit 14 updates the weighting coefficients of this neural network and performs learning.
[0143] The first optimum solution searching unit 14 selects and outputs a command value generating parameter set for executing the next machining operation from within a specified parameter range for the machining target shape 320. When selecting the next command value generating parameter set, the first optimum solution searching unit 14 may select a command value generating parameter set that shows a good evaluation index value based on the first learning result, or may select each command value generating parameter set in order from points on a grid that is spaced at equal intervals. The first optimum solution searching unit 14 has a function of updating a function that calculates evaluation index values related to machining time, machining accuracy, and surface quality based on the command value generating parameter set and shape information.
[0144] The first optimum solution search unit 14 repeatedly performs an operation of acquiring an evaluation index value corresponding to the command value generating parameter set and the shape information. The first optimum solution search unit 14 performs a learning process using a neural network as described in the first embodiment, using the command value generating parameter set, and the evaluation index value and the shape information corresponding to the command value generating parameter set as learning data.
[0145] By the above operation, a function that receives the command value generating parameter set and shape information, which are relational expressions based on a neural network, as inputs and outputs an evaluation index value, is obtained as the first learning result.
[0146] By using this first learning result, it is possible to obtain evaluation index values Qt, Qa, Qq regarding the machining time, machining accuracy, and surface quality corresponding to this new command value generation parameter set and shape information, without performing machining operations for this new command value generation parameter set and shape information.
[0147] In the second embodiment, a neural network is used to construct the relational expression between the command value generation parameter set, the shape information, and the evaluation index value. However, a method other than the neural network may be used as long as the relationship between the command value generation parameter set, the shape information, and the evaluation index value can be obtained. In one example, a simple function such as a quadratic polynomial may be used to obtain the relational expression between the command value generation parameter set, the shape information, and the evaluation index value, or a probability model such as a Gaussian process model may be used.
[0148] Next, a parameter adjustment method in the embodiment 2 will be described. Fig. 18 is a flowchart showing an example of the procedure of the parameter adjustment method according to the embodiment 2. Note that the same processes as those in Fig. 15 of the embodiment 1 are given the same step numbers and their description will be omitted.
[0149] In the second embodiment, after step S15, the shape analysis unit 20 analyzes shape information for each machining surface or each machining edge of the machining target shape 320 based on the machining feature amount calculated in step S14 (step S31). Next, instead of the process of step S16, the first optimum solution search unit 14 receives the evaluation index values related to the machining time, machining accuracy, and surface quality, the command value generation parameter set, and the shape information, learns the relationship between the command value generation parameter set, the evaluation index value calculated by the evaluation index calculation unit 12, and the shape information, and outputs the first learning result (step S32). After that, the process proceeds to step S17.
[0150] As described above, according to the second embodiment, the shape information of the machining surface or machining edge is added to the first embodiment, and the first learning result is obtained by learning. As a result, even if the operator changes the desired machining target shape 320, the parameters can be automatically adjusted according to the operator's preference for each machining surface or each machining edge in the machining target shape 320, using the three evaluation index values of machining time, machining accuracy, and surface quality.
[0151] The first learning result of the first optimal solution search unit 14 and the second learning result of the second optimal solution search unit 18 in the second embodiment may be the first learning result and the second learning result obtained for different control objects, similar to the first embodiment. In one example, the second optimal solution search unit 18 may use the second learning result using learning data obtained in an actual machine tool, and the first optimal solution search unit 14 may use the first learning result using learning data obtained in a simulation that simulates the behavior of the machine tool on a computer. By adopting such a configuration, even if a state change such as aging or thermal mutation of the machine tool occurs, it is possible to adjust the command value generation parameter set to the operator's preference to a certain extent in the simulation, and then adjust the actual machine tool with high accuracy with few adjustments, thereby automatically adjusting the command value generation parameter set to the operator's preference. Of course, the first learning result of the first optimal solution search unit 14 and the second learning result of the second optimal solution search unit 18 may be the first learning result and the second learning result obtained for the same control object.
[0152] Moreover, the first learning result of the first optimum solution searching unit 14 and the second learning result of the second optimum solution searching unit 18 in the second embodiment may be the first learning result and the second learning result obtained in different machining programs 310, respectively. In one example, the first optimum solution searching unit 14 may obtain the first learning result using a general-purpose machining program 310 that can handle various shape information, and the second optimum solution searching unit 18 may obtain the second learning result using the machining program 310 for the machining target shape 320 desired by the operator. In this way, even if the operator changes the desired machining target shape 320, the command value generation parameter set can be automatically adjusted with little effort and time for the operator.
[0153] Next, a description will be given of the hardware configuration of the parameter adjustment device 1, 1A. In the parameter adjustment device 1, 1A of the first and second embodiments, a computer system functions as the parameter adjustment device 1, 1A by executing a program, which is a computer program describing the processing in the parameter adjustment device 1, 1A, on the computer system.
[0154] Fig. 19 is a diagram showing an example of the configuration of a computer system that realizes the parameter adjustment device according to Embodiments 1 and 2. As shown in Fig. 19, this computer system includes a control unit 901, an input unit 902, a storage unit 903, a display unit 904, a communication unit 905, and an output unit 906, which are connected via a system bus 907.
[0155] In FIG. 19, the control unit 901 is, in one example, a processor such as a CPU (Central Processing Unit) and executes a program in which the processing in the parameter adjustment device 1, 1A of the first and second embodiments is described. The input unit 902 is, in one example, composed of a keyboard, a mouse, and the like, and is used by a user of the computer system to input various information. The storage unit 903 includes various memories such as a RAM (Random Access Memory) and a ROM (Read Only Memory) and a storage device such as a hard disk, and stores the program to be executed by the control unit 901, necessary data obtained in the process of processing, and the like. The storage unit 903 is also used as a temporary storage area for the program. The display unit 904 is composed of a display, a liquid crystal display panel, and the like, and displays various screens to the user of the computer system. In one example, the input unit 902 and the display unit 904 may be composed of a touch panel in which the input unit 902 and the display unit 904 are integrally formed. The communication unit 905 is a receiver and a transmitter that perform communication processing. The output unit 906 is a printer, a speaker, and the like. Note that FIG. 19 is just an example, and the configuration of the computer system is not limited to the example of FIG.
[0156] Here, an example of the operation of the computer system until the program is in an executable state will be described. In the computer system having the above-mentioned configuration, the program is installed in the storage unit 903 from, for example, a CD-ROM or DVD-ROM set in a CD (Compact Disc)-ROM drive or DVD (Digital Versatile Disc)-ROM drive (not shown). Then, when the program is executed, the program read from the storage unit 903 is stored in the main storage area of the storage unit 903. In this state, the control unit 901 executes the process as the parameter adjustment device 1, 1A of the first and second embodiments according to the program stored in the storage unit 903.
[0157] In the above description, a program describing the processing in the parameter adjustment device 1, 1A is provided on a CD-ROM or DVD-ROM as a recording medium, but this is not limiting. Depending on the configuration of the computer system and the capacity of the program to be provided, for example, a program provided over a transmission medium such as the Internet via the communication unit 905 may be used.
[0158] The feature amount calculation unit 11, the evaluation index calculation unit 12, the first optimal solution search unit 14, the preference information setting unit 16, and the second optimal solution search unit 18 of the parameter adjustment device 1, 1A shown in Fig. 1 and Fig. 17, and the shape analysis unit 20 shown in Fig. 17 are realized by executing a program stored in the storage unit 903 shown in Fig. 19 by the control unit 901 shown in Fig. 19. The feature amount calculation unit 11, the evaluation index calculation unit 12, the first optimal solution search unit 14, the preference information setting unit 16, the second optimal solution search unit 18, and the shape analysis unit 20 are realized by the storage unit 903 shown in Fig. 19. The evaluation index information storage unit 13, the candidate information storage unit 15, and the adjusted command value generation parameter set storage unit 19 are realized by the storage unit 903 shown in Fig. 19. The display unit 17 is realized by the display unit 904 shown in Fig. 19.
[0159] The configurations shown in the above embodiments are merely examples, and may be combined with other known technologies, or the embodiments may be combined with each other. Also, parts of the configurations may be omitted or modified without departing from the spirit of the invention. [Explanation of symbols]
[0160] 1,1A parameter adjustment device, 3 command value generation device, 11 feature calculation unit, 12 evaluation index calculation unit, 13 evaluation index information storage unit, 14 first optimal solution search unit, 15 candidate information storage unit, 16 preference information setting unit, 17 display unit, 18 second optimal solution search unit, 19 adjusted command value generation parameter set storage unit, 20 shape analysis unit, 310 machining program, 320 machining target shape, 321 block, 321a upper surface, 322 protrusion portion, E1,E2 machining edge, S1,S2,S3 machining surface.
Claims
1. A parameter adjustment device that adjusts a command value generation parameter set, which is a plurality of parameters used to generate a tool movement command constituted by a group of interpolation points per unit time on a tool path calculated based on a machining program for machining a workpiece, comprising: a feature amount calculation unit that simulates an operation of a machine tool to be controlled based on the tool movement command and calculates a feature amount of machining; an evaluation index calculation unit that calculates one or more evaluation index values for evaluating a processing result from the feature amount of the processing; a first optimum solution search unit that uses a first learning result for inferring the evaluation index value from the command value generating parameter set learned using the command value generating parameter set and the evaluation index value, infers the evaluation index value corresponding to a command value generating parameter set for a first search, and searches for command value generating parameter set candidates that are a plurality of command value generating parameter sets that simultaneously optimize each of the evaluation index values using the inference result; a display control unit that displays, on a display unit, the feature amounts of machining calculated when the command value generating device that generates the tool movement command is set in the command value generating device and the command value generating device is operated, in association with each of the evaluation index values; and A parameter adjustment device comprising:
2. 2. The parameter adjusting device according to claim 1, wherein the display control unit sets preference information for each of the evaluation index values of the command value generation parameter set candidates selected by an operator from among the processing feature values and the respective evaluation index values displayed on the display unit.
3. 3. The parameter adjustment device according to claim 2, further comprising a second optimum solution search unit that searches for a command value generating parameter set corresponding to an evaluation index value that has a smallest difference from the preference information.
4. 3. The parameter adjustment device according to claim 2, further comprising a second optimum solution search unit that searches for a command value generation parameter set corresponding to an evaluation index value whose difference from the preference information falls within a certain value.
5. 5. The parameter adjustment device according to claim 3 or 4, wherein the second optimal solution search unit infers a difference between the evaluation index value corresponding to the command value generating parameter set for the second search and the preference information using a second learning result for inferring from the command value generating parameter set a difference between the evaluation index value corresponding to the command value generating parameter set and the preference information, and searches for a command value generating parameter set for which the difference between the evaluation index value and the preference information is smallest using the inference result.
6. 6. The parameter adjusting device according to claim 5, wherein the second optimal solution search unit has a function of generating the second learning result by using learning data including the command value generation parameter set and a difference between an evaluation index value corresponding to the command value generation parameter set and the preference information.
7. 5. The parameter adjusting device according to claim 3, wherein the first optimal solution search unit has a function of generating the first learning result by using learning data including the command value generation parameter set and the evaluation index value.
8. 8. The parameter adjustment device according to claim 7, wherein the learning data used in the second optimal solution search unit is data obtained from the same control target as the learning data used in the first optimal solution search unit.
9. 8. The parameter adjustment device according to claim 7, wherein the learning data used in the second optimal solution search unit is data obtained from a control object different from the learning data used in the first optimal solution search unit.
10. the feature amount calculation unit calculates the feature amount of the processing for each of one or more shape components of a processing target shape, which is target shape data of a processing object including a processing curved surface, which is a curved surface to be processed; the first optimum solution search unit searches for the command value generation parameter set candidates for each of the shape components; 3. The parameter adjustment device according to claim 2, wherein the display control unit sets the evaluation index value of each of the command value generation parameter set candidates selected and adjusted by the operator as preference information for each of the shape components.
11. the feature value of the machining is a speed of a tool center point; One of the evaluation index values is an evaluation index value related to a processing time, 2. The parameter adjustment device according to claim 1, wherein the evaluation index value relating to the machining time is a deceleration rate of the speed of the tool center point with respect to a command speed described in the machining program.
12. the feature amount of machining is a machining error amount which is a distance between a machining target shape which is target shape data of a workpiece including a machining curved surface which is a curved surface to be machined, and a tool arranged at a position of a tool center point, One of the evaluation index values is an evaluation index value related to processing accuracy, 2 . The parameter adjusting device according to claim 1 , wherein the evaluation index value regarding the machining accuracy is an average value of the amounts of machining error.
13. the feature amount of machining is a machining error amount which is a distance between a machining target shape which is target shape data of a workpiece including a machining curved surface which is a curved surface to be machined, and a tool arranged at a position of a tool center point, one of the evaluation index values is an evaluation index value related to surface quality, 2 . The parameter adjusting device according to claim 1 , wherein the evaluation index value relating to the surface quality is a variance value of the amount of processing error.
14. a shape analysis unit that analyzes shape information that is information indicating a shape of each of the shape constituent elements of the machining target shape based on the machining feature amount calculated by the feature amount calculation unit, The first optimal solution search unit is generating the first learning result by adding the shape information to the relationship between the command value generating parameter set and the evaluation index value; 11. The parameter adjusting device according to claim 10, wherein the first learning result is used to infer a command value generating parameter set for the first search and the evaluation index value corresponding to the shape information.
15. 15. The parameter adjusting device according to claim 14, wherein the shape analysis unit sets as the shape information a cumulative value of tangent vector changes calculated from the machining feature amounts corresponding to an adjacent path, which is a tool center point path adjacent to a tool center point path representative of each of the shape components, or a function obtained by linearizing and fitting a distance from a center of gravity of the adjacent path.
16. A parameter adjustment method for a parameter adjustment device that adjusts a command value generation parameter set, which is a plurality of parameters used to generate a tool movement command constituted by a group of interpolation points per unit time on a tool path calculated based on a machining program for machining a workpiece, comprising: a feature value calculation step of simulating an operation of a machine tool to be controlled based on the tool movement command and calculating a feature value of machining; an evaluation index calculation step of calculating one or more evaluation index values for evaluating a processing result from the feature amount of the processing; a first optimum solution search step of inferring the evaluation index value corresponding to a command value generating parameter set for a first search using a first learning result for inferring the evaluation index value from the command value generating parameter set learned using the command value generating parameter set and the evaluation index value, and searching for command value generating parameter set candidates which are a plurality of command value generating parameter sets that simultaneously optimize the respective evaluation index values using the inference result; a display control step of displaying, on a display unit, the feature amounts of machining calculated when the command value generating device which generates the tool movement command is set in the command value generating device which generates the tool movement command and the command value generating device is operated, in association with the respective evaluation index values; A parameter adjustment method comprising:
