Parameter adjustment device and parameter adjustment method
The parameter adjustment device optimizes command value generation parameters for machine tools by simulating operations and inferring evaluation indices, addressing the inefficiencies of existing methods by enabling faster convergence to operator preferences in machining time, accuracy, and surface quality.
Patent Information
- Application Number
- PCT/JP2023/024058
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-28
- Publication Date
- 2025-01-02
AI Technical Summary
Existing parameter adjustment methods for machine tools are time-consuming and labor-intensive, often requiring repeated trials to match operator preferences, especially when the test program differs from the workpiece shape, leading to inaccurate adjustments.
A parameter adjustment device that uses a feature amount calculation unit, evaluation index calculation unit, and optimal solution search unit to simulate machine tool operations, calculate machining features, and infer evaluation indices, allowing for the optimization of command value generation parameters to match operator preferences more efficiently.
The device converges parameters to match operator preferences faster by simultaneously optimizing machining time, accuracy, and surface quality, reducing the need for repeated trials and improving adjustment accuracy.
Smart Images

Figure JP2023024058_02012025_PF_FP_ABST
Abstract
Description
Parameter adjustment device and parameter adjustment method
[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 generation device that generates tool movement commands for driving a drive device of a machine tool based on a machining program.
[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 contains information about the machining shape, the tool feed rate, 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 also performs processing such as acceleration and deceleration, and calculates interpolation points, which are command points on the tool path per unit time. In many cases, a numerical control (NC) is used as the command value generating device.
[0003] Command value generating devices are equipped with numerous functions for enabling machine tools to perform machining at higher speeds and with higher accuracy. Depending on the shape and application of the workpiece to be machined, an operator must determine whether to prioritize cycle time (i.e., machining time), machining accuracy (i.e., shape accuracy of the machined surface), or surface quality (i.e., surface accuracy of the machined surface), and adjust the numerous parameters related to these functions. This poses a problem: adjusting the parameters of the command value generating device requires a significant amount of time or is complicated, making it difficult to adjust the parameters to suit the operator's preferences. Patent Document 1 discloses a technology for supporting parameter adjustment in such cases by running a test program with multiple parameter settings and selecting a parameter set that provides the best value for an evaluation index determined from machining accuracy and machining time.
[0004] Patent No. 5956619
[0005] However, with the technology described in Patent Document 1, if the test program used for parameter adjustment differs from the workpiece shape being machined by the operator, the accuracy of the parameter adjustment deteriorates, making it impossible to obtain adjustment results that match the operator's preferences. On the other hand, to maintain the accuracy of parameter adjustment and obtain adjustment results that match the operator's preferences, it is necessary to repeatedly perform a series of steps, such as changing the test program or modifying the adjustment range of each parameter and restarting the parameter adjustment process from the beginning, until the parameters converge to the operator's preferences. Conventionally, parameter adjustment work required trial and error to converge to the operator's preferences, which required additional effort and time for the operator. Therefore, there is a need for a technology that can converge parameter adjustment to the operator's preferences more effectively than conventional methods.
[0006] The present disclosure has been made in consideration of the above, and aims to provide a parameter adjustment device that can converge parameters related to command values that match the preferences of an operator more quickly than conventional devices.
[0007] In order to solve the above-mentioned problems and achieve the object, a parameter adjusting device disclosed herein 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, 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 based on the tool movement command and calculates a machining feature amount. The evaluation index calculation unit calculates one or more evaluation index values for evaluating a machining result from the machining feature amount. 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 uses the inference result to search for candidate command value generation parameter sets, which are a plurality of command value generation parameter sets that simultaneously optimize each evaluation index value. The display control unit displays on the display unit the candidate command value generation parameter sets in a command value generation device that generates tool movement commands and the calculated machining features and their respective evaluation index values when the command value generation device operates after the candidate command value generation parameter sets are set in the command value generation device that generates tool movement commands.
[0008] The parameter adjustment device according to the present disclosure has the effect of being able to converge parameters related to command values that match the preferences of an operator more quickly than before.
[0009] FIG. 1 shows an example of the configuration of a parameter adjustment device according to embodiment 1. FIG. 2 shows an example of a machining target shape. FIG. 3 shows an example of a machining target shape. FIG. 4 shows an example of a machining program for machining the machining target shapes shown in FIGS. 2 to 4. FIG. 5 shows an example of a change in acceleration / deceleration waveform when allowable acceleration changes. FIG. 6 shows an example of a change in the movement path when an allowable path error changes. FIG. 7 shows an example of a change in acceleration / deceleration waveform when an allowable path error changes. FIG. 8 shows an example of a change in the tool movement path when a filter time constant changes. FIG. 9 shows an example of a change in acceleration / deceleration waveform when a filter time constant changes. FIG. 10 shows an example of a mapping diagram of the amount of machining error of the machining surface in the machining target shape when machining operations generated based on the first to fourth command value generation parameter sets are performed, and an example of the relationship with machining time. Learning in embodiment 1 13. A diagram showing an example of a neural network used in the processing. A diagram showing an example of a command value generation parameter set for a machining surface searched for by a first optimum solution search unit in embodiment 1. A diagram showing an example of setting preference information 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. A flowchart showing an example of the procedure of a parameter adjustment method according to embodiment 1. A diagram showing an example of how a blade-shaped member is machined. A diagram showing an example of the configuration of a parameter adjustment device according to embodiment 2. A flowchart showing an example of the procedure of a parameter adjustment method according to embodiment 2. A diagram showing an example of the configuration of a computer system that realizes the parameter adjustment device according to embodiments 1 and 2.
[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. Fig. 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 that time are written. The tool path movement command specifies coordinate values and a movement mode at that time by G codes such as G0 and G1, and the tool path movement speed command is specified by an F code in which a speed value is written.
[0013] The machining target shape 320 is target shape data of a workpiece including a machining curved surface, which is a curved surface to be machined. 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 one corner of the upper surface 321a is cut off by a flat surface. Focusing on the upper surface 321a, the machining target shape 320 has a machining curved surface S1 forming the hemispherical protrusion 322, a planar machining curved surface S2 forming the area of the upper surface 321a other than the machining curved surface S1, and a machining curved surface S3 on the plane where the corner is cut off. In addition, an annular 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. The machining program 310 describes a process for operating a machine tool so that the 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, interpolation processing, etc. when outputting a tool movement command for each unit time in accordance with an 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 has been smoothed based on a preset allowable path error and an acceleration / deceleration waveform. The smoothing processing is processing for smoothing the velocity waveform after the smoothing processing. The smoothing processing is also referred to as 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 velocity after the smoothing processing. Here, each of the tool movement commands for each unit time is referred to as an interpolation point.
[0017] Each process in the command value generating device 3 operates according to a parameter. The parameters will be explained 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 is changed. In this diagram, the horizontal axis represents time and the vertical axis represents 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. As can be seen from FIG. 6, 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 machining time increases.
[0019] In the smoothing process, the movement command and velocity waveform change depending on the set allowable path error. In other words, the allowable path error serves as a parameter. FIG. 7 is a diagram showing an example of a change in the movement path when the allowable path error changes, and FIG. 8 is a diagram showing an example of a change in the acceleration / deceleration waveform when the allowable path error changes. In FIG. 8, the horizontal axis represents time, and the vertical axis represents speed. In FIG. 7, the movement path of the tool in 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 a movement path when the allowable path error is large, and the movement path shown by the dashed line is a movement path when the allowable path error is small. FIG. 8 shows acceleration / deceleration waveforms in the X-axis direction and the Y-axis direction when machining is performed along the movement path shown in FIG. 7. Furthermore, the solid line acceleration / deceleration waveform in the Y-axis direction indicates a case where the allowable path error is large, and the dashed line indicates a case where the allowable path error is small. 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 velocity 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 serves as a parameter. The interpolation point x on the path after the moving average filter, i.e., on 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., on the path of the machining program 310, and can therefore be expressed by the following equation (1):
[0021]
[0022] Here, n indicates the number of 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 shows an example of a change in the tool movement path when the filter time constant is changed, and FIG. 10 shows an example of a change in acceleration / deceleration waveforms when the filter time constant is changed. In FIG. 10 , the horizontal axis represents time, and the vertical axis represents speed. In FIG. 9 , the tool movement path in 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 filter time constant is small, and the movement path shown by the dashed line is the movement path when the filter time constant is large. FIG. 10 shows acceleration / deceleration waveforms in the X-axis direction and the Y-axis direction when machining is performed along the movement path of FIG. 9 . The dashed line indicates the case when the filter time constant is large, and the solid line indicates the case when the filter time constant is small. It can be seen from FIGS. 9 and 10 that increasing the filter time constant of the moving average filter results in smoother acceleration / deceleration waveforms compared to when the filter time constant is small, but increases the machining time and tool path error.
[0024] As will be described below, in the first embodiment, the parameter adjustment device 1 handles a total of three command value generation parameter sets: the allowable acceleration, the allowable path error, and the filter time constant. In other words, the parameter adjustment device 1 adjusts these three command value generation parameter sets as the targets of 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 generator 3 can be adjusted as the targets of 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 amounts of machining. Examples of the feature amounts 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, the positions of each of the multiple drive axes of the machine tool, the speeds of each of the multiple drive axes of the machine tool, the accelerations of each of the multiple drive axes of the machine tool, the jerk of each of the multiple drive axes of the machine tool, and the reversal positions of each of the multiple 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 multiple parts and change the conditions for machining for each 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 determine the tool center point, and calculates the machining feature amount, which is information about 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 value calculation unit 11 estimates the tool center point using result information obtained from the drive control unit of the machine tool, which is the control target and is driven actually or by simulation, so as to follow the tool movement command generated by the command value generation unit 3. When using the results of a simulation, the feature value calculation unit 11 simulates the behavior of the machine tool on a computer and estimates the actual tool center point from the interpolation point output by the command value generation unit 3. Specifically, the operation of the machine tool is simulated by setting in advance parameters such as the inertia, viscosity, and elasticity of the machine tool, the resonance frequency or anti-resonance frequency caused by the inertia, viscosity, and elasticity, the backlash or lost motion parameter during axis reversal, the thermal displacement parameter, and the displacement amount parameter caused by the reaction force during machining. Here, the estimation accuracy of the tool center point calculated by the simulation can be changed. For example, if 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 center point. If an estimation accuracy equivalent to the interpolation point is required, the interpolation point may be used as the tool center point. When using the results of actual operation, the feature amount calculation unit 11 operates the actual machine tool to obtain information corresponding to the tool center point.
[0031] <Feature Amount Calculation Processing> For each of the tool center points determined in the tool center point estimation processing, the feature amount calculation unit 11 calculates a feature amount of machining at the tool center point in association with the machining curved surface or machining edge of the machining target shape 320. Below, a description will be given of a method for calculating the amount of machining error, 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 axes of the machine tool, the speed of each of the multiple drive axes of the machine tool, the acceleration of each of the multiple drive axes of the machine tool, the jerk of each of the multiple drive axes of the machine tool, and the reversal position of each of the multiple drive axes of the machine tool, which are examples of the feature amount of machining.
[0032] The machining error 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 velocity, acceleration, and jerk of the tool center point can be calculated as follows: Of the tool center points from the start point to the end point, if the position of the nth tool center point is defined as PT(n) and the position of the (n+1)th tool center point advanced by a time Δt in a predetermined control cycle is defined as PT(n+1), then the velocity 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 in the predetermined control cycle, as expressed in the following equation (2).
[0034]
[0035] Similarly, the acceleration AT(n) of the nth tool center point is calculated by dividing the difference between the velocities VT(n+1) and VT(n) at the two tool center points by the time Δt of a predetermined control cycle, as expressed in the following equation (3):
[0036]
[0037] Similarly, the nth jerk JT(n) of the tool center point is calculated by dividing the difference between the accelerations AT(n+1) and AT(n) of the two tool center points by the time Δt of a predetermined control cycle, as expressed in the following equation (4):
[0038]
[0039] Furthermore, 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, the numerical control device that controls the machine tool, i.e., the command value generating device 3, or sensors 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 (n+1)th tool center point, which is advanced by a time Δt in a predetermined control cycle, is defined as PM1(n+1), the velocity VM1(n) of the first drive axis corresponding to the nth tool center point at time t is calculated by the following equation (5).
[0041]
[0042] Similarly, if the speed of the first drive axis corresponding to the (n+1)th tool center point, which is advanced by the 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]
[0044] Similarly, if the acceleration of the first drive axis corresponding to the (n+1)th tool center point, which is advanced by the time Δt of a predetermined control cycle, is defined 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]
[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 reverse rotation positions of each of the multiple drive axes of a machine tool can be calculated as follows. Using the method described above, 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 the time Δt of a predetermined control cycle are calculated. At this time, the signs of the speed VM1(n) and the speed VM1(n+1) are compared, and the position corresponding to the time when the signs are reversed can be determined as the reverse rotation position of the first drive axis. Note that the reverse rotation positions of each of the drive axes other than the first drive axis can also be determined in a similar manner.
[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. As an example, in the machining target shape 320, by assigning ID numbers, which are identification information for identifying the machining curved surface and machining edge, to each piece of information on the machining curved surface and machining edge in advance, it is possible to identify the feature amount of machining with 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 divides the feature amount of machining for each machining curved surface or each machining edge of the machining target shape 320 and outputs the divided feature amount 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 results from the feature amounts of machining calculated by the feature amount calculation unit 11. In the following explanation, an example will be given in which the machining results are 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 between the machining time, the machining accuracy, and the surface quality.
[0051] As an example, the evaluation index value Qt related to 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]
[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 shown in Figs. 2 to 4, the circle represents the machining curved surfaces S1-S3 and the machining edges E1 and E2. Furthermore, N represents the number of data points of the tool center point corresponding to each of the machining curved surface and the machining edge, and F c indicates the command velocity, and F indicates the velocity of the tool center point.
[0054] According to equation (8), the tool center point speed F is equal to the command speed F c The more closely it matches, the smaller the evaluation index value Qt of the machining time becomes. In other words, in the first embodiment, the smaller 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. However, the evaluation index value Qt is not limited to that specified by equation (8) as long as it can evaluate the machining time. In one example, the evaluation index value Qt may be the number N of data points of the tool center point corresponding to each of the specific machining surface and machining edge, or the time calculated by multiplying the number N of data points by the execution unit may be used.
[0055] Furthermore, in equation (8), the speed of the tool center point is used to calculate the evaluation index value Qt of the machining time, but it is also possible to use the average speed of the tool center point, the maximum speed, or the average speed and maximum speed of each of the multiple drive axes of the machine tool.
[0056] Furthermore, since the average acceleration value, maximum acceleration value, average jerk value, and maximum jerk value generally tend to increase when the machining time is shortened, it is also possible to use the average acceleration value, maximum acceleration value, average jerk value, maximum jerk value at the tool center point, the average acceleration value, maximum acceleration value, average jerk value, and maximum jerk value of each of the multiple drive axes of the machine tool as the evaluation index value Qt for the machining time. However, in this case, the larger the evaluation index value Qt, the better the command value generation parameter set in the parameter adjusting device 1 is determined to be in terms of machining time.
[0057] As an example, the evaluation index value Qa for machining accuracy can be calculated using the average value of the machining error amount, which is the distance between the machining target shape 320 and the tool placed at the tool center point, using the following equation (9).
[0058]
[0059] 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 in Figures 2 to 4, the circle represents the machining curved surfaces S1-S3 and the machining edges E1 and E2. Furthermore, N represents the number of data points of the tool center point corresponding to each of the machining curved surface and the machining edge, and e represents the amount of machining error calculated as a feature amount of machining.
[0060] According to equation (9), the smaller the machining error amount e, the smaller the evaluation index value Qa for machining accuracy. In other words, in the first embodiment, 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 need only be something that can evaluate machining accuracy, and is not limited to the one specified by equation (9). 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 equation (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 center point, the maximum and minimum jerk values at the tool center point, the maximum and minimum acceleration values of each of the multiple drive axes of the machine tool, and the maximum and minimum jerk values of each of the multiple drive axes of the machine tool 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 value of the machining error amount, which is the distance between the machining target shape 320 and the tool placed at the tool center point, and is calculated by the following equation (10).
[0065]
[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 in Figs. 2 to 4, ◯ represents the machining curved surfaces S1-S3 and the machining edges E1 and E2. Furthermore, N represents the number of data points of the tool center point corresponding to each of the machining curved surface and the machining edge, e represents the amount of machining error calculated as a feature amount of machining, and e a indicates the average value of the amount of machining error.
[0067] According to equation (10), the smaller the variance of the machining error amount e, the smaller the evaluation index value Qq of surface quality. In other words, in the first embodiment, the smaller the evaluation index value Qq, the better the command value generation parameter set in the parameter adjusting device 1 is in terms of surface quality. However, the evaluation index value Qq need only be something that can evaluate surface quality, and is not limited to that specified by equation (10). In one example, it may be a value indicating the degree of mechanical vibration.
[0068] Furthermore, in formula (10), the difference between the machining error amount corresponding to each of the machined curved surface and the machined edge and the average value of the machining errors 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 values of the machining error amount corresponding to each of a specific machined curved surface and machined edge, the difference between the maximum and minimum values of the acceleration at the tool center point, the difference between the maximum and minimum values of the jerk at the tool center point, the difference between the maximum and minimum values of the acceleration at each of a plurality of drive axes of the machine tool, the difference between the maximum and minimum values of the jerk at each of a plurality of drive axes of the machine tool, or the like.
[0069] Furthermore, it may be determined that the larger the evaluation index value Qq, the better the command value generation parameter set in the parameter adjusting device 1 is in terms of surface quality.
[0070] Here, three evaluation indexes related to processing time, processing accuracy, and surface quality are calculated, but one or more evaluation indexes of processing time, processing accuracy, and surface quality may be calculated according to the preferences of the worker.
[0071] The evaluation index information storage unit 13 stores evaluation index information that associates the evaluation index values related to the machining time, machining accuracy, and surface quality calculated by the evaluation index calculation unit 12 with the command value generation parameter set for each of the machining curved surfaces or machining edges of the machining target shape 320. Note that the evaluation index information may have corresponding machining feature amounts in addition to the evaluation index values related to 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 the command value generation parameter set and the evaluation index value to infer an evaluation index value corresponding to the command value generation parameter set for the first search, and uses the inference result to search for command value generation parameter set candidates, which are multiple command value generation parameter sets that simultaneously optimize each evaluation index value. When searching for multiple command value generation parameter set candidates, the search unit 14 searches for command value generation parameter set candidates that simultaneously optimize each evaluation index value so that the balance of the trade-off evaluation index values is different. In one example, the balance is defined as the ratio of each evaluation index value to the sum of the evaluation index values for the machining time, machining accuracy, and surface quality. In another example, the balance of the evaluation index values is defined as when at least one of the three evaluation index values of a command value generation parameter set candidate differs by a predetermined ratio or more from the corresponding evaluation index values of the other command value generation parameter set candidates. 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 will result in the deterioration of the other objective functions.
[0073] The following describes a learning process for learning the relationship between a command value generation 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 searching 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 calculating unit 12, and outputs the learning result. That is, the first optimum solution searching unit 14 uses learning data including the command value generating parameter set and the 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 a command value generation parameter set as input and outputs an evaluation index value, and the first optimal solution search unit 14 updates the weighting coefficients of the neural network to perform learning. After learning is performed with the updated weighting coefficients, the neural network outputs a good estimate of the evaluation index value corresponding to the command value generation parameter set. The first optimal solution search unit 14 uses the neural network to obtain a function that receives a command value generation parameter set as input and outputs an evaluation index value, thereby obtaining a first learning result, which is a relational expression between the command value generation 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 that shows a good evaluation index value based on the learning results, 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 functions that calculate 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 search unit 14 is executed four times and up to four sets of command value generation parameter sets are evaluated 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] 11 is a diagram showing an example of a mapping diagram of the amount of machining error of a machined surface in a machining target shape when machining operations generated based on the first to fourth command value generating parameter sets are performed, and the relationship with the machining time. FIG. 11 shows a mapping diagram of the amount of machining error of the machined surface S1. Mapping diagram Ma shows the amount of machining error and the machining time of the machined surface S1 when the first command value generating parameter set is used. Mapping diagram Mb shows the amount of machining error and the machining time of the machined surface S1 when the second command value generating parameter set is used. Mapping diagram Mc shows the amount of machining error and the machining time of the machined surface S1 when the third command value generating parameter set is used. Mapping diagram Md shows the amount of machining error and the machining time of the machined surface S1 when the fourth command value generating parameter set is used. The distribution of the amount of machining error on the machined surface S1 indicates the surface quality. If the amount of machining error is uniform on the machined curved 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 curved surface S1 in these mapping diagrams Ma-Md indicates the amount of error, and a legend for the amount of error is shown in the "Error Amount" column on the right side of each mapping diagram Ma-Md. The machining time is also shown by the slide bar in the "Takt" column 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 curved surface S1 of the machining target shape 320 obtained by the result of the machining operation when the command value generating parameters are the first set of command value generating parameter set Pr1, the first optimum solution searching unit 14 changes the first set of command value generating parameter set Pr1 to the second set of command value generating parameter set Pr2. At this time, the second set of command value generating parameter set Pr2 may be selected based on the result of the machining operation in which the first set of command value generating parameter set Pr1 was used, or the second set of command value generating parameter set Pr2 may be selected as predetermined regardless of the result of the machining operation in which the first set of command value generating parameter set Pr1 was used.
[0080] The first optimal solution search unit 14 receives the evaluation index values Qt2-Qt4, Qa2-Qa4, and Qq2-Qq4 corresponding to the second to fourth sets of command value generation parameter sets Pr2-Pr4 in the same procedure as in the case of the first set of command value generation 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, the first command value generation parameter set Pr1 can be said to be a command value generation parameter set that prioritizes machining time.
[0082] From the perspective of machining accuracy, the evaluation index value Qa2 is the smallest of 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 perspective of surface quality, the evaluation index value Qq3 is the smallest among the four evaluation index values Qq1-Qq4. In other words, the third command value generating parameter set Pr3 can be said to be a command value generating 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 including machining time, machining accuracy, and surface quality.
[0085] As described above, the first optimal solution search unit 14 repeatedly performs an operation to acquire evaluation index values corresponding to command value generation parameters. The first optimal solution search unit 14 performs a learning operation using a neural network, using the command value generation parameters and the evaluation index values corresponding to the command value generation parameters obtained through the repeated operations as learning data. FIG. 12 is a diagram illustrating 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 for each node in the input layer and each node in the intermediate layer can all be set independently, but in FIG. 12, they are all represented by the same weighting coefficient W1. Similarly, the weighting coefficients for each node in the intermediate layer and each node in the output layer can all be set independently, but in FIG. 12, they are all represented by the same weighting coefficient W2.
[0086] The output value of each node in the input layer is multiplied by a weighting coefficient 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 coefficient 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 the input value using a nonlinear function such as a sigmoid function, for example. 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 backpropagation or gradient descent. 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 for the weighting coefficients W1 and W2 is not limited to the above method as long as it is a calculation method that can obtain the weighting coefficients of the neural network.
[0088] Once the weighting coefficients W1 and W2 of the neural network are determined, the relationship between the command value generation parameters and the evaluation index values is obtained. So far, 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 based on a neural network, as input and outputs an 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 the relational expression between the command value generation parameter set and the evaluation index value. However, a method other than a 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 to obtain an 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 an accurate first learning result.
[0093] When performing the learning operation, it is better to ensure a sufficient number of repetitions for the operation of acquiring evaluation index values corresponding to the command value generation parameter set near the boundary in the distribution of evaluation index values where the evaluation index values for the machining time, machining accuracy, and surface quality are maximum or minimum. On the other hand, for areas other than near the boundary, it is not necessary to ensure a sufficient number of repetitions for the operation of acquiring evaluation index values corresponding to the command value generation parameters. In this case, it is sufficient to acquire evaluation index values 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 a plurality of machining surfaces and machining edges. In the example of the machining target shape 320 shown in Figures 2 to 4, when the machining surface S1 and the machining surface S2 and the machining edge E1 surrounded by the machining surface S1 and the 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 the 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 S1 , a S2 , a E1 Assuming that is a coefficient, the new evaluation formula Q′ is expressed by the following formula (11).
[0095]
[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 in the calculation of the feature quantities by the feature quantity calculation unit 11 .
[0098] <Search Process> In the search process, the first optimal solution search unit 14 infers an evaluation index value corresponding to a search command value generation parameter set using the 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 candidate command value generation parameter sets, which are command value generation parameter sets that simultaneously optimize each evaluation index value. When the entire workpiece is machined under a single condition, the first optimal solution search unit 14 searches for candidate command value generation parameter sets for the machining target shape 320. On the other hand, when the entire workpiece is divided into multiple parts and each part is machined under different conditions, the first optimal solution search unit 14 searches for candidate command value generation parameter sets for each machining surface or each machining edge of the machining target shape 320. The candidate command value generation parameter sets may be one command value generation parameter set that simultaneously optimizes each evaluation index value, or may be multiple 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 searching unit 14 uses numerical calculations based on the first learning result, which is a relational expression between the command value generating parameters and the evaluation index values, to find one or more candidate command value generating parameter sets for the machining target shape 320 or for each machining surface or each machining edge of 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 ranges of the specified command value generating parameters. In one example, the first optimum solution searching unit 14 finds 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 computing include 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 search command value generation parameter set. Then, by inputting the search command value generation parameter set into the first learning result, evaluation index values related to the machining time, machining accuracy, and surface quality are obtained, and the search command value generation parameter set and the evaluation index value are associated with each other. Among the combinations of the search command value generation parameters and the corresponding evaluation index values, the command value generation parameter set corresponding to the best evaluation index value classified using the evaluation index values related to the machining time, machining accuracy, and surface quality is determined as a command value generation parameter candidate.
[0100] 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 combinations of evaluation index values for machining time, machining accuracy, and surface quality corresponding to the command value generation parameter sets are plotted on an orthogonal coordinate system with the evaluation index values for machining time, machining accuracy, and surface quality as axes. This example also shows an example of the results of searching for command value generation parameter sets for the machining surface S1 of the machining target shape 320 shown in FIGS. 2 to 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 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 determined by other command value generation parameter sets.
[0101] 13 shows an example in which one command value generation parameter set candidate is extracted for each of four categories, namely, machining time priority mode, machining accuracy priority mode, surface quality priority mode, and balance mode, but it is not necessary to extract command value generation parameter sets that correspond to all categories, and it is sufficient to extract a command value generation parameter set that corresponds to at least one category. Also, multiple command value generation parameter sets that correspond to one category may be extracted.
[0102] In this way, the first optimal solution search unit 14 has a function of searching, from a combination of a search command value generation parameter set and an evaluation index value obtained when the search command value generation parameter set is input to the first learning result, for a command value generation parameter set that optimizes the machining time, machining accuracy, and surface quality evaluation index values under conditions that prioritize improving one of the remaining two evaluation index values within the range of the command value generation parameters, and for a command value generation parameter set candidate that includes one of the command value generation parameter sets that improves the machining time, machining accuracy, and surface quality evaluation index values in a balanced manner within the range of the command value generation parameters. When the entire workpiece is machined under a single condition, the command value generation parameter set candidate is searched for the machining target shape 320. When the entire workpiece is divided into multiple parts and each part is machined under different conditions, the command value generation parameter set candidate is searched for each machining surface or each machining edge. The first optimal solution search unit 14 can also perform learning processing and inference processing simultaneously.
[0103] Returning to FIG. 1 , the candidate information storage unit 15 stores candidate information, which is information that associates the command value generation parameter set candidates extracted by the first optimal solution search unit 14 with the evaluation index values and the machining feature values calculated by the feature value 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 values calculated by the feature value 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 values and the machining feature values 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 values and the machining feature values 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, in association with each other, machining feature values 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, and to display the corresponding evaluation index values. When the entire workpiece is machined under one condition, the preference information setting unit 16 displays, in association with each other, the machining feature values of the command value generation parameter set candidates for the machining target shape 320 and the corresponding evaluation index values on the display unit 17. When the entire workpiece is divided into a plurality of parts and the divided parts are machined under different conditions, the preference information setting unit 16 displays, in association with each other, the machining feature values of the command value generation parameter set candidates for the machining target shape 320 and the corresponding evaluation index values 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 of 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 of the machining target shape 320 may be displayed on the display unit 17 in association with each evaluation index value.
[0105] Furthermore, the preference information setting unit 16 sets preference information for each evaluation index value of the candidate command value generation parameter set selected by the operator from among the machining feature amounts 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 candidate command value generation parameter set selected and adjusted by the operator from among the machining feature amounts 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 multiple parts and each divided part is machined under different conditions, the preference information is set for each machining 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 preference information may be set in advance to the extent possible by the operator at the time of processing by the first optimal solution searching unit 14. In this case, the first optimal solution searching unit 14 extracts command value generation parameter set candidates that reflect the preset preference information, so 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, as well as 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 operator selects one command value generation parameter set candidate from four categories, namely, 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). The operator also sets the operator's preference information 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 the evaluation index values set by the operator, i.e., the operator's evaluation index values related to the machining time, machining shape, and surface quality. The preference information can be said to be information indicating which of the machining time, machining accuracy, and surface quality the operator prioritizes during machining. When machining the entire workpiece under one condition, the operator sets preference information for the machining time, machining accuracy, and surface quality for the machining target shape 320. When dividing the entire workpiece into multiple parts and machining each part under different conditions, the operator sets preference information for the machining time, machining accuracy, and surface quality for each machining surface or machining edge. In the latter case, the operator 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 operator'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 FIGS. 2 to 4 , the machining target shape 320 is composed of machining surfaces S1-S3 and machining edges E1 and 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 surfaces S1-S3 and the machining edges E1 and E2. FIG. 14 is a diagram showing an example of preference information set 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 surfaces shown in FIG. 13 . FIG. 14 also shows an evaluation index value for the machining surface S1, similar to FIG. 13 . As shown in FIG. 14 , in specific processing, when the operator specifies a position on the machining 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 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 machining surface may be specified by, for example, having 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, multiple points, or a continuous area.
[0110] Furthermore, 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 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 the processing feature amounts obtained when the preference information is set based on the evaluation index values and processing feature amounts corresponding to the command value generation parameter set candidates stored in the candidate information storage unit 15 of the parameter adjustment device 1, and may display the predicted processing feature amounts on the display unit 17 or the like in association with the processing target shape 320. As an example, a conceivable method may be to predict the processing feature amounts for the preference information after setting by linearly interpolating the processing feature amount for the evaluation index value closest to the preference information after setting among the evaluation index values corresponding to the command value generation parameter set candidates stored in the candidate information storage unit 15 of the parameter adjustment device 1, and the processing feature amount for the evaluation index value before setting the preference information.
[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 worker does not set preference information, the preference information setting unit 16 interprets this as meaning that the current evaluation index value has been set as the selection information, and sets the preference information accordingly.
[0113] Returning to Fig. 1 , the display unit 17 displays the stored information stored in the candidate information storage unit 15 in accordance with an instruction from the preference information setting unit 16. In one example, the display unit 17 displays the machining feature amounts of the candidate command value generation parameter sets in association with their respective evaluation index values. When the entire workpiece is machined under one condition, the display unit 17 displays the machining feature amounts of the candidate command value generation parameter sets 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 machining feature amounts of the candidate command value generation parameter sets 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 multiple command value generating parameter sets so that the evaluation index value approaches the preference information set by the preference information setting unit 16. Specifically, the second optimal solution search unit 18 repeatedly performs an operation of acquiring 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 held by the operator regarding the machining time, machining accuracy, and surface quality, and searches for a command value generating parameter set that minimizes the difference between the evaluation index value and the operator's preference information. The number of command value generating parameter sets to be searched may be one or more. When the entire workpiece is machined under one condition, the second optimal solution search unit 18 searches for a command value generating parameter set that minimizes the difference between the evaluation index value and the operator's preference information for the machining target shape 320. In addition, when the entire workpiece is divided into multiple parts and each 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, using 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 worker's preference information as learning data. As long as the relationship between the command value generation parameter set 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 a neural network method. In one example, a simple function such as a quadratic polynomial or a probability model such as a Gaussian process model 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. In this way, the second optimal solution search unit 18 generates a second learning result for inferring the difference between the evaluation index value corresponding to the command value generation parameter set and the preference information 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 corresponding to the command value generation parameter set and the preference information.
[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 performs numerical calculations based on the relational expressions between the command value generating parameter set, which is the learning result, and the difference between the evaluation index value and the preference information to find a command value generating parameter set that minimizes the difference between the evaluation index value and the preference information of the worker with respect to machining time, machining accuracy, and surface quality. 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, 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 uses the inference result to search for one command value generating parameter set that minimizes the difference between the evaluation index value and the preference information. In one example, the second optimal solution search unit 18 finds the command value generating parameter set for search using an optimization algorithm such as grid search, random search, Newton's method, Bayesian optimization, or evolutionary computing. Examples of evolutionary computation are NSGA-II, AGE-MOEA, AGE-MOEA2, and R-NSGA-II.
[0119] The second optimal solution search unit 18 then calculates the difference between the evaluation index value obtained by inputting the calculated search command value generation parameter set into the relational expression and the worker's preference information. The second optimal solution search unit 18 then calculates the command value generation parameter set that minimizes the difference between the evaluation index value and the preference information. In this case, it is desirable to calculate one command value generation parameter set that minimizes the difference between the evaluation index value and the preference information. However, multiple command value generation parameter sets may be calculated in descending order of the difference between the evaluation index value and the preference information, or all command value generation parameter sets for which the difference between the evaluation index value and the preference information is within a threshold value set by the worker may be calculated. 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 is within a certain value. In this case, the second optimal solution search unit 18 may search for one or more command value generation parameter sets. The command value generation parameter set calculated in this manner is referred to as 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 for by the second optimal solution searching 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 setting values of the command value generating parameter set to the adjusted command value generating parameter set extracted by the second optimal solution searching unit 18. Then, by operating the command value generating device 3 to perform machining using the set command value generating parameters, machining results that suit the operator's preferences can be obtained.
[0121] Next, a parameter adjustment method in the parameter adjustment device 1 having such a configuration 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 given in which the entire workpiece is divided into a plurality of parts, and each divided part is machined under different conditions.
[0122] First, the parameter adjusting 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, which is a curved surface to be machined, is externally input to the parameter adjusting device 1. Furthermore, a machining program 310, in which a tool path movement command corresponding to the machining target shape 320 and a movement speed command at that time are written, is externally input to the command value generating device 3.
[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). Thereafter, 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 interpolated point output by the command value generating device 3 (step S13).
[0124] Next, the feature amount calculation unit 11 calculates, for each of the tool center points estimated in step S13, the feature amount of machining at the tool center point in association with the machining curved surface or machining edge of the machining target shape 320 (step S14). Thereafter, 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 feature amount of machining calculated in step S14 (step S15).
[0125] Next, the first optimum solution search unit 14 receives the evaluation index values and parameter ranges for the machining time, machining accuracy, and surface quality, learns the relationship between the command value generation parameter set and the evaluation index values calculated by the evaluation index calculation unit 12, and outputs a first learning result (step S16). Then, based on the relational expression between the command value generation parameters and the evaluation index values, which is the first learning result, the first optimum solution search unit 14 performs numerical calculations to determine candidate command value generation parameter sets for each machining surface or machining edge of the machining target shape 320, which have different balances between 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 candidate command value generation parameter sets are determined for each machining surface or machining edge: a machining time priority mode, a machining accuracy priority mode, a surface quality priority mode, and a balance mode. One or more candidate command value generation parameter sets may be determined for each machining surface or machining edge.
[0126] Thereafter, the preference information setting unit 16 displays, for the command value generation parameter set candidates from which the machining feature quantities have been acquired, the machining feature quantities of the command value generation parameter set candidates, as well as the evaluation index values of the machining time, machining accuracy, and surface quality, for each machining curved surface and each machining edge on the display unit 17 (step S18). That is, the preference information setting unit 16 displays, on the display unit 17, the machining feature quantities and the respective evaluation index values 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 is operated, in association with each other. In this manner, the machining feature quantities and the respective evaluation index values for the command value generation parameter set candidates are associated and displayed to the operator. Thereafter, the operator can select, from the displayed list, a machining feature quantity, i.e., a command value generation parameter set, corresponding to an evaluation index value that matches or is close to the operator's preference, and as a result, it becomes possible to converge the command value generation parameters to the operator's preference.
[0127] The operator selects one candidate command value generation parameter set for each machining surface and each machining edge based on the feature quantities of machining, and adjusts the evaluation index values for the machining time, machining accuracy, and surface quality as necessary. The preference information setting unit 16 sets the evaluation index values for the 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 optimum 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 generation 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, for each machining surface or machining edge in the machining target shape 320, an adjusted command value generation parameter set that is the command value generation parameter set that minimizes the difference between the evaluation index value and the preference information of the operator (step S20).
[0129] Thereafter, the command value generating device 3 rewrites the setting values of the command value generation parameter set with the adjusted command value parameter set extracted by the second optimal solution searching unit 18, and operates the device to execute machining, thereby obtaining machining results that suit the preferences of the worker. Note that if the preferences of the worker change, by restarting the processing from step S18 to step S20, in which the preferences of the worker are reflected, it becomes 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. This completes the parameter adjustment method. Note that an overview of each step has been described here, but the details of each step are as described above.
[0130] Furthermore, when the entire workpiece is machined under one condition, in step S14, the feature amount calculation unit 11 calculates the machining feature amount at the tool center point in association with the machining target shape 320. In step S17, the first optimum solution search unit 14 obtains candidate command value generating parameter sets for the machining target shape 320. In step S18, the preference information setting unit 16 displays the machining feature amounts of the candidate command value generating parameter sets for the machining target shape 320, as well as the evaluation index values for 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 for 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 generating parameter set for the machining target shape 320.
[0131] As described above, in the first embodiment, the first learning result for inferring one or more evaluation index values for evaluating a machining result from a command value generation parameter set is used to infer an evaluation index value corresponding to a search command value generation parameter set, and the inference result is used to search for multiple command value generation parameter set candidates that simultaneously optimize the respective evaluation index values. Then, when the searched command value generation parameter set candidates are set in the command value generating device 3 and operated, the calculated machining feature values and the respective evaluation index values are associated and displayed on the display unit 17. This allows the operator to view the evaluation index values and machining feature values for the multiple 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, convergence to a command value generation parameter set that matches the operator's preference can be achieved more quickly than in the past. In other words, it is possible to provide the operator with an environment in which convergence to a command value generation parameter set that matches the operator's preference more quickly than in the past can be achieved.
[0132] Furthermore, according to the first embodiment, it is possible to automatically adjust the parameters for the machining target shape 320 in accordance with the preferences of the operator, using the three evaluation indices 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, it has the effect of enabling a command value generation parameter set that matches the preferences of the operator to converge more quickly than before.
[0133] Furthermore, if an adjustment result that meets the operator's preferences cannot be obtained, or if the operator's preferences have changed, the process can 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, while the technology described in Patent Document 1 allows for checking operation with multiple parameter sets and selecting the most appropriate parameter set, it applies a single parameter set throughout the entire machining process. In other words, the technology described in Patent Document 1 does not allow for partially optimal parameter settings. Figure 16 is a diagram illustrating an example of machining a blade-shaped member. As shown in Figure 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 the flat portion 402 between the end portions 401 at high speed, a single parameter set cannot be used. Furthermore, if the test program used for parameter adjustment differs from the workpiece shape to be machined by the operator, the accuracy of the parameter adjustment deteriorates, and adjustment results that meet the operator's preferences cannot be obtained. However, in the first embodiment, when the entire workpiece is divided into multiple portions and each portion is machined under different conditions, a post-adjustment command value generation parameter set that reflects the operator's preferences is determined for each machining surface and each machining edge of the target shape 320. 16, different adjusted command value generation parameters that reflect the operator's preferences are determined for both end portions 401 and flat portion 402. This allows the command value generation parameter set corresponding to the evaluation index value that matches the operator's preferences to converge more quickly than in the past, while taking into account the overall or partial shape of the workpiece. This also has the effect of allowing each portion of a single workpiece to be machined according to the operator's preferences.
[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 also 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. For example, the second optimal solution search unit 18 may be learning results obtained from an actual machine tool, and the first optimal solution search unit 14 may be learning results obtained from a simulation that simulates the behavior of the machine tool on a computer. With this configuration, even when changes in the machine tool's condition occur due to aging or thermal deformation, the parameters can be automatically adjusted to suit the operator's preferences by first adjusting them to a certain extent in a simulation and then adjusting them highly accurately with few adjustments on the actual machine tool.
[0136] Second Embodiment Fig. 17 is a diagram showing an example of the configuration of a parameter adjustment device according to a second embodiment. Note that the same components as those in the first embodiment are given the same reference numerals, and their description will be omitted, and only the parts that differ from the first embodiment will be described. The parameter adjustment device 1A further includes, in addition to the configuration of the first embodiment, a shape analysis unit 20 that analyzes shape information, which is information indicating the shape of each machining curved surface or machining edge of the machining target shape 320, from the feature amounts 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 values calculated by the feature value calculation unit 11. In one example, the shape analysis unit 20 extracts adjacent paths, which are tool center point paths adjacent to a representative tool center point path for each machining surface or each machining edge of the machining target shape 320, and derives shape information from the machining feature values corresponding to the extracted adjacent paths. In one example, the shape analysis unit 20 determines the shape information to be the cumulative value of tangent vector changes calculated from the machining feature values corresponding to the adjacent paths. Alternatively, the shape analysis unit 20 may determine the shape information to be the average value of tangent vector changes derived from the machining feature values. The machining feature value in this case is the tool center point speed. In another example, the shape analysis unit 20 determines the shape information to be a function obtained by fitting the distance from the center of gravity of the adjacent paths to one dimension. In this case, the shape information may be obtained by fitting a simple function such as a quadratic polynomial.
[0138] As an example of a method for extracting adjacent paths, since the corresponding processing feature is associated with each processing surface or each processing edge in the processing target shape 320, adjacent paths are extracted by grouping consecutive processing 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 association with the command value generation parameter set and evaluation index values related to the machining time, machining accuracy, and surface quality in the evaluation index information storage unit 13. As described above, in the second embodiment, the evaluation index information associates the evaluation index values related to the machining time, machining accuracy, and surface quality with the command value generation 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 include corresponding machining feature values in addition to the evaluation index values related to the machining time, machining accuracy, and surface quality, the command value generation 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, which are 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 as input evaluation index values related to machining time, machining accuracy, and surface quality, a command value generation parameter set, and shape information, learns the relationship between the command value generating parameters, the evaluation index values calculated by the evaluation index calculating unit 12, and the shape information, and outputs a first learning result.
[0142] Specifically, a neural network is constructed that receives a command value generation parameter set and shape information as input and outputs an evaluation index value, and the first optimal solution search unit 14 updates the weighting coefficients of this neural network to perform 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 functions that calculate 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 optimal solution search unit 14 repeatedly performs an operation of acquiring an evaluation index value corresponding to a command value generation parameter set and shape information. The first optimal solution search unit 14 performs a learning process using a neural network as described in the first embodiment, using the command value generation parameter set, and the evaluation index value and shape information corresponding to the command value generation parameter set as learning data.
[0145] Through the above operations, a function that receives the command value generation 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 related to 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 a 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 according to embodiment 2 will be described. Fig. 18 is a flowchart showing an example of the procedure of the parameter adjustment method according to embodiment 2. Note that the same steps as those in Fig. 15 of embodiment 1 are assigned 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 values calculated in step S14 (step S31). Next, instead of the processing of step S16, the first optimum solution search unit 14 receives evaluation index values related to machining time, machining accuracy, and surface quality, a command value generation parameter set, and shape information as inputs, learns the relationship between the command value generation parameter set, the evaluation index values calculated by the evaluation index calculation unit 12, and the shape information, and outputs a first learning result (step S32). Then, the processing proceeds to step S17.
[0150] As described above, according to the second embodiment, the first learning result is obtained by adding shape information of the machining curved surface or machining edge to the first embodiment and performing learning. As a result, even if the operator changes the desired machining target shape 320, it is possible to automatically adjust the parameters for each machining curved surface or machining edge in the machining target shape 320 according to the operator's preference, using the three evaluation index values of machining time, machining accuracy, and surface quality.
[0151] Note that 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, as in the first embodiment. For example, the second optimal solution search unit 18 may use the second learning result using learning data obtained from an actual machine tool, and the first optimal solution search unit 14 may use the first learning result using learning data obtained from a simulation that simulates the behavior of the machine tool on a computer. With this configuration, even if a change in the machine tool condition occurs due to aging or thermal deformation, the command value generation parameter set can be automatically adjusted to suit the operator's preferences by adjusting it to a certain extent in the simulation and then adjusting it with high accuracy with few adjustments on the actual machine tool. 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] Furthermore, 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 by different machining programs 310. 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 accommodate 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, we will explain the hardware configuration of the parameter adjustment node 1, 1A. In the parameter adjustment node 1, 1A of embodiments 1 and 2, a computer system functions as the parameter adjustment node 1, 1A by executing a computer program that describes the processing in the parameter adjustment node 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, for example, a processor such as a CPU (Central Processing Unit) that executes a program describing the processing in the parameter adjustment device 1 or 1A according to the first or second embodiment. The input unit 902 is, for example, composed of a keyboard, a mouse, etc., and is used by a user of the computer system to input various information. The memory unit 903 includes various types of memory, such as a RAM (Random Access Memory) and a ROM (Read Only Memory), and a storage device, such as a hard disk, and stores programs to be executed by the control unit 901, necessary data obtained during processing, etc. The memory unit 903 is also used as a temporary storage area for programs. The display unit 904 is, for example, composed of a display, a liquid crystal display panel, etc., and displays various screens to the user of the computer system. For example, the input unit 902 and the display unit 904 may be configured as a touch panel integrally formed with each other. The communication unit 905 is a receiver and a transmitter that perform communication processing. The output unit 906 is, for example, a printer, a speaker, etc. 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 ready to run will be described. In a computer system having the above configuration, for example, a program is installed into the storage unit 903 from a CD-ROM or DVD-ROM inserted in a CD (Compact Disc)-ROM drive or DVD (Digital Versatile Disc)-ROM drive (not shown). Then, when the program is executed, the program is read from the storage unit 903 and stored in the main storage area of the storage unit 903. In this state, the control unit 901 executes the processing as the parameter adjustment device 1 or 1A of the first or second embodiment in accordance with the program stored in the storage unit 903.
[0157] In the above explanation, a program describing the processing in the parameter adjustment device 1, 1A is provided using a CD-ROM or DVD-ROM as a recording medium, but this is not limiting. Depending on the configuration of the computer system, the capacity of the program to be provided, etc., it is also possible to use a program provided via a transmission medium such as the Internet via the communication unit 905.
[0158] The feature amount calculation unit 11, evaluation index calculation unit 12, first optimal solution search unit 14, preference information setting unit 16, and second optimal solution search unit 18 of the parameter adjustment device 1, 1A shown in FIGS. 1 and 17, as well as the shape analysis unit 20 shown in FIG. 17, are realized by a control unit 901 shown in FIG. 19 executing a program stored in a storage unit 903 shown in FIG. 19. The storage unit 903 shown in FIG. 19 is also used to realize the feature amount calculation unit 11, evaluation index calculation unit 12, first optimal solution search unit 14, preference information setting unit 16, second optimal solution search unit 18, and shape analysis unit 20. The evaluation index information storage unit 13, candidate information storage unit 15, and 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 a 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 different embodiments may be combined with each other. It is also possible to omit or modify parts of the configurations as long as they do not deviate from the gist of the invention.
[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 optimum solution search unit, 15 Candidate information storage unit, 16 Preference information setting unit, 17 Display unit, 18 Second optimum 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 curved surface.
Claims
1. A parameter adjusting 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 the operation of a machine tool to be controlled from the tool movement command and calculates a machining feature amount; an evaluation index calculation unit that calculates one or more evaluation index values for evaluating a machining result from the machining feature amount; a first optimal solution search unit that infers the evaluation index value corresponding to a command value generation parameter set for a first search using a first learning result for inferring the evaluation index value from the 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 which simultaneously optimize each of the evaluation index values using the inference result; and a display control unit that displays on a display unit the machining feature amounts and each of the evaluation index values calculated when the command value generation parameter set candidates are set in a command value generating device which generates the tool movement command and the command value generating device is operated, in association with each other.
2. The parameter adjustment device of claim 1, characterized in that the display control unit sets preference information for each of the evaluation index values of the command value generation parameter set candidates selected by the operator among the processing features and their respective evaluation index values displayed on the display unit.
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 that minimizes the difference with the preference information.
4. The parameter adjustment device according to claim 2, further comprising a second optimal 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. The parameter adjustment device described in claim 3 or 4, characterized in that the second optimal solution search unit infers the difference between the evaluation index value corresponding to the command value generation parameter set for the second search and the preference information using a second learning result for inferring the difference between the evaluation index value corresponding to the command value generation parameter set and the preference information from the command value generation parameter set, and searches for the command value generation parameter set for which the difference between the evaluation index value and the preference information is smallest using the inference result.
6. The parameter adjustment device described in claim 5, characterized in that the second optimal solution search unit has a function of generating the second learning result using learning data including the command value generation parameter set and the difference between the evaluation index value corresponding to the command value generation parameter set and the preference information.
7. A parameter adjustment device described in any one of claims 3 to 6, characterized in that the first optimal solution search unit has a function of generating the first learning result using learning data including the command value generation parameter set and the evaluation index value.
8. A parameter adjustment device as described in claim 7, characterized in that the learning data used in the second optimal solution search unit is data obtained from the same control object as the learning data used in the first optimal solution search unit.
9. A parameter adjustment device as described in claim 7, characterized in that 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. A parameter adjustment device as described in any one of claims 2 to 9, characterized in that the feature calculation unit calculates the feature of the processing for each of one or more shape components of a processing target shape, which is target shape data of the object to be processed including a processing surface, which is a surface to be processed; the first optimal solution search unit searches for the command value generation parameter set candidate for each of the shape components; and 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. A parameter adjustment device described in any one of claims 1 to 10, characterized in that the machining feature is the speed of the tool center point, one of the evaluation index values is an evaluation index value related to machining time, and the evaluation index value related to machining time is a deceleration rate of the speed of the tool center point relative to a command speed described in the machining program.
12. A parameter adjustment device according to any one of claims 1 to 11, characterized in that the feature amount of machining is a machining error amount which is the distance between a machining target shape which is target shape data of a workpiece including a machining surface which is a curved surface to be machined, and a tool placed at the position of the tool center point, and one of the evaluation index values is an evaluation index value relating to machining accuracy, and the evaluation index value relating to machining accuracy is an average value of the machining error amounts.
13. A parameter adjustment device as described in any one of claims 1 to 12, characterized in that the machining feature amount 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 surface which is a curved surface to be machined, and a tool placed at the position of the tool center point, and one of the evaluation index values is an evaluation index value related to surface quality, and the evaluation index value related to surface quality is a variance value of the machining error amount.
14. The parameter adjustment device described in claim 10, further comprising a shape analysis unit that analyzes shape information, which is information indicating the shape of each of the shape components of the machining target shape, based on the machining features calculated by the feature calculation unit, and the first optimal solution search unit generates the first learning result by adding the shape information to the relationship between the command value generation parameter set and the evaluation index value and learning, and uses the first learning result to infer the command value generation parameter set for the first search and the evaluation index value corresponding to the shape information.
15. The parameter adjustment device described in claim 14, characterized in that the shape analysis unit sets as the shape information a cumulative value of tangent vector change calculated from the machining features corresponding to an adjacent path, which is a tool center point path adjacent to the tool center point path representative of each of the shape components, or a function obtained by fitting a one-dimensional function to the distance from the center of gravity of the adjacent path.
16. A parameter adjustment method in a parameter adjustment device for adjusting 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 the operation of a machine tool to be controlled from the tool movement command and calculating a machining feature value; an evaluation index calculation step of calculating one or more evaluation index values for evaluating a machining result from the machining feature value; a first optimum solution search step of inferring the evaluation index value corresponding to a command value generation parameter set for a first search using a first learning result for inferring the evaluation index value from the command value generation parameter set learned using the command value generation parameter set and the evaluation index value, and searching for command value generation parameter set candidates which are a plurality of command value generation parameter sets which simultaneously optimize each of the evaluation index values using the inference result; and a display control step of displaying, on a display unit, the machining feature values calculated when the command value generation device is set in a command value generating device which generates the tool movement command and the command value generating device is operated, in association with each of the evaluation index values.
Citation Information
Patent Citations
Optimum parameter retrieving device for controller of plant control system
JP1983094004A
Adjusting method of operation parameter of object device, and operation parameter adjusting system
JP2023025723A
Machining program conversion device, numerical control device, and machining program conversion method
WO2021095170A1
Movement route determination device and computer program
WO2023002627A1
Cited By
Determination device, editing device, and control device
WO2026191081A1