Numerical control device and machine learning device

文档序号:214440 发布日期:2021-11-05 浏览:2次 中文

阅读说明:本技术 数控装置及机器学习装置 (Numerical control device and machine learning device ) 是由 木全敏章 东俊博 于 2019-03-28 设计创作,主要内容包括:作为数控装置的NC装置(10),针对通过包含第1轴和第2轴在内的多个轴的驱动而使工件(3)和刀具(5)相对地移动的工作机械(1),对多个轴各自进行控制。数控装置具有:第1位置指令生成部(11),其生成用于对第1轴进行控制的第1位置指令;第2位置指令生成部(12),其生成用于对第2轴进行控制的第2位置指令;以及校正量计算部(14),其为了将由于与第2轴的驱动相伴的轴间干涉而发生的第1轴的振动抵消,基于第2轴的驱动中的加速度的变化率即急动度对第1位置指令的校正量进行计算。(An NC device (10) as a numerical control device controls each of a plurality of axes including a 1 st axis and a 2 nd axis with respect to a machine tool (1) in which a workpiece (3) and a tool (5) are relatively moved by driving the plurality of axes. The numerical control device is provided with: a 1 st position command generation unit (11) that generates a 1 st position command for controlling the 1 st axis; a 2 nd position command generation unit (12) that generates a 2 nd position command for controlling the 2 nd axis; and a correction amount calculation unit (14) that calculates a correction amount for the 1 st position command based on a jerk that is a rate of change in acceleration during the 2 nd axis drive, in order to cancel out the 1 st axis vibration that occurs due to the inter-axis interference associated with the 2 nd axis drive.)

1. A numerical control device for controlling each of a plurality of axes including a 1 st axis and a 2 nd axis with respect to a machine tool in which a workpiece and a tool are relatively moved by driving the plurality of axes,

the numerical control device is characterized by comprising:

a 1 st position command generating unit that generates a 1 st position command for controlling the 1 st axis;

a 2 nd position command generating unit that generates a 2 nd position command for controlling the 2 nd axis; and

and a correction amount calculation unit that calculates a correction amount of the 1 st position command based on a jerk that is a rate of change in acceleration during driving of the 2 nd axis in order to cancel out vibration of the 1 st axis that occurs due to inter-axis interference accompanying driving of the 2 nd axis.

2. The numerical control apparatus according to claim 1,

the system includes a jerk calculation unit that calculates the jerk based on the 2 nd position command or the 2 nd axis feedback.

3. The numerical control apparatus according to claim 1 or 2,

the correction amount calculation section calculates the correction amount by multiplying the jerk by a correction gain.

4. The numerical control apparatus according to claim 3,

has a correction gain calculation section for calculating the correction gain,

the correction gain calculation unit extracts a relative displacement signal peak value, which is a peak of a waveform of the relative displacement signal, based on a waveform of a relative displacement signal indicating a relative displacement between the workpiece and the tool caused by the inter-axis interference, extracts a jerk signal peak value, which is a peak of a waveform of the jerk signal, based on a waveform of the jerk signal indicating the jerk, and calculates the correction gain, which is a ratio of the jerk signal peak value and the relative displacement signal peak value.

5. The numerical control apparatus according to claim 4,

the correction gain changing unit changes the correction gain when the relative displacement exceeds a predetermined threshold.

6. The numerical control apparatus according to claim 3,

has a correction gain calculation section for calculating the correction gain,

the correction gain calculation unit includes:

a machine learning device that learns the correction gain; and

an intention determining unit that determines the correction gain based on a result of learning by the machine learning device,

the machine learning device includes:

a state observation unit that observes, as state variables, the relative displacement and the jerk of the workpiece and the tool caused by the inter-axis interference; and

and a learning unit that learns the correction gain in accordance with a training data set created based on the state variables.

7. The numerical control apparatus according to claim 1,

the reference waveform signal generating unit generates a reference waveform signal obtained by simulating a jerk signal indicating the jerk,

the correction amount calculation unit calculates the correction amount based on the reference waveform signal output at least one of a time of starting acceleration and a time of starting deceleration by the drive of the 2 nd axis.

8. A machine learning device which learns a correction condition of a 1 st position command for canceling vibration of a 1 st axis generated by inter-axis interference accompanying driving of a 2 nd axis with respect to a machine tool in which a workpiece and a tool are relatively moved by driving of a plurality of axes including the 1 st axis controlled by the 1 st position command and the 2 nd axis controlled by the 2 nd position command,

the machine learning device is characterized by comprising:

a state observation unit that observes, as state variables, jerks, which are rates of change in acceleration during driving of the 2 nd axis, and relative displacements of the workpiece and the tool; and

and a learning unit that learns the correction condition in accordance with a training data set created based on the state variables.

9. The machine learning apparatus of claim 8,

the correction condition is a correction gain multiplied by the jerk,

the correction amount of the 1 st position command is calculated by multiplying the correction gain learned by the learning section by the jerk.

Technical Field

The present invention relates to a numerical control device and a machine learning device that generate a command for controlling a machine tool.

Background

A machine tool machines a workpiece while driving a plurality of shafts as feed shafts to move a tool and the workpiece relative to each other. The numerical control device generates position commands for controlling each of the plurality of axes in accordance with a machining program.

Shaft-to-shaft interference sometimes occurs in the work machine. The inter-axis interference is a phenomenon in which the other axis among the plurality of axes receives vibration caused by driving of 1 among the plurality of axes and the other axis vibrates. When the position of the shaft is changed by the interference between the shafts, the machine tool may deteriorate the machining accuracy due to the fluctuation in the contact state between the tool and the workpiece, or may deteriorate the machined surface due to the excessive contact of the tool with the workpiece.

Patent document 1 discloses a motor control device that controls a horizontal axis for moving a movable unit of a machine tool in a horizontal direction and a vertical axis for moving the movable unit in a vertical direction, wherein inter-axis interference between the horizontal axis and the vertical axis is corrected. The motor control device according to patent document 1 calculates a correction amount for canceling a positional change of the vertical axis due to inter-axis interference based on information of the acceleration of the horizontal axis.

Patent document 1: japanese patent laid-open publication No. 2016-51398

Disclosure of Invention

The motor control device of patent document 1 calculates a correction amount of a position command for canceling a change in position of an axis due to inter-axis interference by multiplying the correction gain by the acceleration. Here, in the technique of patent document 1, there is a problem that it is difficult to improve the machining quality of the machine tool because the positional change of the other axis at the time of acceleration/deceleration of the axis is not offset by the correction.

The present invention has been made in view of the above circumstances, and an object thereof is to obtain a numerical control device capable of improving the machining quality of a machine tool.

In order to solve the above-described problems and achieve the object, a numerical control device according to the present invention controls each of a plurality of axes including a 1 st axis and a 2 nd axis with respect to a machine tool in which a workpiece and a tool are relatively moved by driving the plurality of axes. The numerical control device according to the present invention includes: a 1 st position command generating unit that generates a 1 st position command for controlling a 1 st axis; a 2 nd position command generating unit that generates a 2 nd position command for controlling the 2 nd axis; and a correction amount calculation unit that calculates a correction amount of the 1 st position command based on a jerk that is a rate of change in acceleration during driving of the 2 nd axis, in order to cancel out vibration of the 1 st axis that occurs due to inter-axis interference accompanying driving of the 2 nd axis.

ADVANTAGEOUS EFFECTS OF INVENTION

The numerical control device according to the present invention has an effect of improving the machining quality of the machine tool.

Drawings

Fig. 1 is a schematic diagram showing an example of a machine tool controlled by a numerical control device according to embodiment 1 of the present invention.

Fig. 2 is a block diagram showing a numerical control device and a machine tool according to embodiment 1.

Fig. 3 is a diagram for explaining relative displacement in the work machine shown in fig. 1.

Fig. 4 is a diagram showing an example in which elements for calculating a correction gain are added to the configuration shown in fig. 2.

Fig. 5 is a block diagram showing a numerical control device and a machine tool according to embodiment 2 of the present invention.

Fig. 6 is a block diagram showing a numerical control device and a machine tool according to embodiment 3 of the present invention.

Fig. 7 is a block diagram showing a numerical control device and a machine tool according to embodiment 4 of the present invention.

Fig. 8 is a block diagram showing a functional configuration of a machine learning device included in the numerical control device shown in fig. 7.

Fig. 9 is a flowchart showing an operation flow of a machine learning device using reinforcement learning according to embodiment 4.

Fig. 10 is a diagram showing an example of a hardware configuration in a case where the functions of the numerical control device according to embodiments 1 to 4 are realized using a computer system.

Detailed Description

The numerical control device and the machine learning device according to the embodiment of the present invention will be described in detail below with reference to the drawings. The present invention is not limited to the embodiments. In the following description, the numerical control device is sometimes referred to as an nc (numerical control) device.

Embodiment 1.

Fig. 1 is a schematic diagram showing an example of a machine tool controlled by a numerical control device according to embodiment 1 of the present invention. The machine tool 1 shown in fig. 1 drives a plurality of axes, which are feed axes, to machine a workpiece 3 while relatively moving a tool 5 and the workpiece 3.

The machine tool 1 includes: a base 2 that is a base of the work machine 1; a table 4 on which the workpiece 3 is placed; a head 6 that holds the cutter 5; and a column 7 disposed on the base 2 and supporting the head 6. The table 4 is movable in the horizontal direction on the base 2. The head 6 is vertically movable on the column 7. The machine tool 1 is a so-called vertical machining center in which a head 6 is provided at the tip of a column 7 that rises from a base 2.

The machine tool 1 has an X-axis, a Y-axis, and a Z-axis, which are 3 feed axes perpendicular to each other; a motor for driving the X axis; a motor for driving the Y axis; and a motor for driving the Z axis. The machine tool 1 moves the table 4 in the horizontal direction by driving the X-axis or the Y-axis. The work machine 1 moves the head 6 by driving the Z axis.

The X axis, the Y axis, and the Z axis are each a ball screw that rotates by receiving a driving force generated by a motor. The X-axis and the Y-axis are provided in the base 2. The Z-axis is provided to the column 7. The base 2 is provided with a mechanism for converting the rotational motion of the X axis into the linear motion in the X axis direction and a mechanism for converting the rotational motion of the Y axis into the linear motion in the Y axis direction. The column 7 is provided with a mechanism for converting the rotational movement of the Z axis into a linear movement in the Z axis direction. In fig. 1, the X, Y, and Z axes, motors for driving the axes, and mechanisms for converting the rotational motion of the axes into linear motion are not shown.

In the following description, the X-axis direction is a direction in which the table 4 moves by driving the X-axis. The Y-axis direction is a direction in which the table 4 moves by driving the Y-axis. The Z-axis direction is a direction in which the head 6 moves by driving the Z-axis. In fig. 1, the X-axis direction, the Y-axis direction, and the Z-axis direction are indicated by arrows. The X-axis direction and the Y-axis direction are horizontal directions. The Z-axis direction is the vertical direction.

The machine tool 1 moves the tool 5 and the workpiece 3 relatively in a 3-dimensional space by moving the table 4 in the X-axis direction and the Y-axis direction and moving the head 6 in the Z-axis direction. As described above, in the machine tool 1, the tool 5 and the workpiece 3 can be relatively moved in the X-axis direction, the Y-axis direction, and the Z-axis direction. The machine tool 1 may have a motor that rotates the table 4 in the horizontal plane.

Fig. 2 is a block diagram showing a numerical control device and a machine tool according to embodiment 1. Fig. 2 shows a functional configuration of the NC apparatus 10. The NC apparatus 10 generates position commands for controlling the X axis 16X, Y, the Z axis 16Y, and the Z axis 16Z, respectively.

In the NC apparatus 10, based on the occurrence characteristics of the inter-axis interference in the machine tool 1, the 1 st axis, which is an axis receiving vibration, of the X axis 16X, Y, the 16Y axis and the Z axis 16Z, and the 2 nd axis, which is an axis imparting vibration to the 1 st axis, of the X axis 16X, Y, the 16Y axis and the Z axis 16Z are defined.

In the work machine 1, a table 4 is provided on a base 2, and a head 6 is supported by a column 7 disposed on the base 2. In the above-described configuration of the work machine 1, vibration caused by driving of the X axis 16X or driving of the Y axis 16Y may be transmitted from the table 4 to the head 6 via the base 2 and the column 7. As described above, the machine tool 1 has a characteristic that inter-axis interference, which is vibration of the Z axis 16Z due to the Z axis 16Z receiving vibration caused by driving of the X axis 16X or the Y axis 16Y, may occur. Based on this characteristic, in the NC apparatus 10, the Z axis 16Z is defined as the 1 st axis described above, and the X axis 16X and the Y axis 16Y are defined as the 2 nd axis, respectively.

The 1 st axis driving unit 8 has a servo amplifier for controlling a motor for driving the 1 st axis, i.e., the Z axis 16Z. The 2 nd axis drive unit 9 includes a servo amplifier for controlling a motor for driving the 2 nd axis, i.e., the X axis 16X, and a servo amplifier for controlling a motor for driving the 2 nd axis, i.e., the Y axis 16Y.

The NC apparatus 10 includes: a 1 st position command generating unit 11 that generates a 1 st position command in accordance with a machining program; and a 2 nd position command generating unit 12 for generating a 2 nd position command in accordance with the machining program. The 1 st position command is a command for controlling the 1 st axis and specifying the position of the head 6 in the Z-axis direction. The 2 nd position command is a command for controlling the 2 nd axis, and is a command for specifying the position of the table 4 in the X-axis direction, and is a command for specifying the position of the table 4 in the Y-axis direction.

The NC apparatus 10 includes: a jerk calculation unit 13 that calculates a jerk, which is a rate of change in acceleration; a correction amount calculation unit 14 that calculates a correction amount of the 1 st position command; and an adder 15 that adds the correction amount to the position command value of the 1 st position command. The 1 st position command generating unit 11 outputs the generated 1 st position command to the adder 15. The 2 nd position command generating unit 12 outputs the generated 2 nd position command to the 2 nd axis driving unit 9. The correction amount calculation unit 14 calculates the correction amount of the 1 st position command based on the jerk in order to cancel out the 1 st-axis vibration generated by the inter-axis interference accompanying the 2 nd-axis drive.

The jerk calculation unit 13 calculates a jerk value based on the 2 nd position command generated by the 2 nd position command generation unit 12 or the position feedback information relating to the 2 nd axis drive unit 9. The position feedback information is the position information of the table 4 moved by the 2 nd axis driving. Fig. 2 shows an arrow indicating that the 2 nd position command generated by the 2 nd position command generating unit 12 is output to the jerk calculating unit 13, and an arrow indicating that the 2 nd position feedback information generated by the 2 nd axis driving unit 9 is output to the jerk calculating unit 13.

The jerk calculation unit 13 acquires position information of the table 4 in the X-axis direction from the 2 nd position command in the X-axis direction or the position feedback information in the X-axis direction. The jerk calculation unit 13 acquires position information of the table 4 in the Y-axis direction from the 2 nd position command in the Y-axis direction or the position feedback information in the Y-axis direction. The jerk calculation unit 13 represents the position of the table 4 as a position vector at an arbitrary time, and calculates the jerk by 3 rd order differentiation of the position based on the time. The jerk calculation unit 13 calculates the jerk in driving the X axis 16X based on the position information of the table 4 in the X axis direction. The jerk calculation unit 13 calculates a jerk in driving the Y axis 16Y based on the position information of the table 4 in the Y axis direction. The jerk calculation unit 13 outputs a jerk signal, which is a signal indicating a calculation result of the jerk, to the correction amount calculation unit 14.

The correction amount calculation unit 14 calculates the correction amount of the 1 st position command by multiplying the value of the calculation result of the jerk by a correction gain. Here, the correction gain is set to a predetermined constant. The correction gain is a relationship between a correction amount capable of correcting the relative displacement and the jerk, which is obtained by experiments or simulations, and can be set based on the relationship. The correction gain may be calculated by the NC apparatus 10. The method of calculating the relative displacement and the correction gain in the NC apparatus 10 will be described later.

The correction amount calculation unit 14 outputs the calculation result of the correction amount to the adder 15. The adder 15 adds the calculation result of the correction amount to the position command value of the 1 st position command. The adder 15 outputs the position command value corrected by adding the correction amount to the 1 st axis driving unit 8.

Next, a relative displacement caused by the inter-axis interference between the 1 st axis and the 2 nd axis will be described. The relative displacement is an amount of change in the position of the tool 5 when the position of the workpiece 3 is used as a reference. The relative change can be said to be a change amount of the position of the workpiece 3 in the case where the position of the tool 5 is set as a reference, or a difference between the change amount of the position of the workpiece 3 and the change amount of the position of the tool 5.

Fig. 3 is a diagram for explaining relative displacement in the work machine shown in fig. 1. In the following description, the horizontal axis refers to an X axis 16X or a Y axis 16Y, and the vertical axis refers to a Z axis 16Z. A curve L1 shown in fig. 3 is a graph showing the relationship between the speed of the table 4 in the horizontal direction and time. A curve L2 shown in fig. 3 is a graph showing the relationship between the acceleration of the table 4 in the horizontal direction and time. A curve L3 shown in fig. 3 is a graph showing the relationship between the jerk of the table 4 in the horizontal direction and time. A curve L4 shown in fig. 3 is a graph showing the relationship between the relative displacement and time.

The curve L1 represents the change in speed when the table 4 is accelerated from zero to a certain speed and the table 4 is decelerated from the certain speed to zero. The curve L2 represents the change in acceleration of the table 4 in the case where the speed of the table 4 changes as shown in the curve L1. The curve L3 shows the change in jerk when the acceleration of the table 4 changes as shown in the curve L2. The curve L4 shows the change in relative displacement in the case where the speed of the table 4 changes as shown by the curve L1.

As shown by the curve L4, the relative displacement greatly changes at the start of acceleration, at the end of acceleration, at the start of deceleration, and at the end of deceleration of the table 4. As shown by the curves L3 and L4, the relative displacement decreases in conjunction with the increase in the jerk and increases in conjunction with the decrease in the jerk. The correlation as described above holds between the change in jerk and the change in relative displacement.

When the table 4 is rapidly accelerated in the X-axis direction by the driving of the X-axis 16X, the inertial force generated by the acceleration is transmitted to the head 6 via the table 4, the base 2, and the column 7 during the acceleration of the table 4. At the end of the acceleration of the X axis 16X, the inertial force rapidly decreases, and thus only the reaction force against the inertial force momentarily remains at the head 6. The Z axis 16Z vibrates together with the head 6 in the direction indicated by the two arrows in fig. 1 by the residual reaction force. As described above, the Z axis 16Z receives an impact generated by a sudden change in the balance of forces, and thereby the relative displacement changes. When the table 4 is rapidly accelerated in the Y-axis direction by driving the Y-axis 16Y, the relative displacement changes as in the case of the X-axis 16X. Further, when the horizontal axis is decelerated rapidly, the vertical axis receives an impact caused by a rapid change in the balance of forces, and the relative displacement also changes.

In embodiment 1, the NC apparatus 10 calculates the correction amount based on the jerk having the correlation with the relative displacement, and adds the correction amount to the position command value of the Z axis 16Z, thereby being able to cancel the change in the relative displacement due to the inter-axis interference. The NC apparatus 10 cancels out the change in the relative displacement due to the inter-axis interference, thereby suppressing the positional change of the workpiece 3 and the tool 5, which is not related to the change in the relative position according to the machining program. This enables the NC apparatus 10 to improve the machining quality of the machine tool 1.

Next, a method of calculating the correction gain in the NC apparatus 10 will be described. The NC apparatus 10 may have an element for calculating a correction gain. Fig. 4 is a diagram showing an example in which elements for calculating a correction gain are added to the configuration shown in fig. 2.

The sensor unit 17 measures the above-described relative displacement. The sensor unit 17 includes a displacement sensor or an acceleration sensor. The sensor unit 17 detects the amount of change in the position of the workpiece 3 and the amount of change in the position of the tool 5, thereby measuring the relative displacement. The sensor unit 17 may measure the relative displacement by detecting the amount of change in the position of the head 6 and the amount of change in the position of the table 4. The method for measuring the relative displacement is not limited to the method described in embodiment 1.

The NC apparatus 10 is provided with a correction gain calculation unit 20 that is an element for calculating a correction gain. The correction gain calculation unit 20 includes a correction gain calculation unit 21 and a peak extraction unit 22. The sensor unit 17 outputs a relative displacement signal, which is a signal indicating the measurement result of the relative displacement, to the peak value extraction unit 22. The jerk calculation unit 13 outputs the jerk signal to the peak extraction unit 22.

The peak extraction unit 22 extracts a value of jerk at the apex of the waveform based on the waveform of the jerk signal. Here, the value of the jerk at the apex of the waveform is referred to as a jerk signal peak. The curve L3 described above is an example of a waveform showing a temporal change in jerk. The peak value extraction unit 22 obtains the jerk signal peak values in each period before and after acceleration start, before and after acceleration end, before and after deceleration start, and before and after deceleration end. The peak value extraction unit 22 determines each period before and after acceleration start, before and after acceleration end, before and after deceleration start, and before and after deceleration end based on an acceleration signal obtained by 1-order integration of a jerk signal performed with time or a velocity signal obtained by 2-order integration of a jerk signal performed with time.

Further, the peak extraction unit 22 extracts a value of the relative displacement at the vertex of the waveform based on the waveform of the relative displacement signal. Here, the value of the relative displacement at the vertex of the waveform is referred to as a relative displacement peak value. The curve L4 is an example of a waveform showing a temporal change in relative displacement. The peak value extraction unit 22 obtains the relative displacement peak values in each period before and after acceleration start, before and after acceleration end, before and after deceleration start, and before and after deceleration end.

The extraction of the jerk signal peak and the relative displacement peak may be performed by a method other than the method described in embodiment 1. The peak extracting unit 22 may extract the jerk signal peak and the relative displacement peak by a normal peak extracting method, an extremum searching method, or the like. The peak extracting unit 22 may apply filtering processing for removing noise to the jerk signal and the relative displacement signal. The peak extracting unit 22 may average the values before and after the peak and the peak in order to remove noise.

The peak value extraction unit 22 outputs the extracted jerk signal peak value and the extracted relative displacement peak value to the correction gain calculation unit 21. The correction gain calculation unit 21 accumulates the jerk signal peak and the relative displacement peak. The correction gain calculation unit 21 calculates a peak ratio, which is a ratio between the relative displacement peak and the jerk peak, by dividing the relative displacement peak by the jerk peak corresponding to the relative displacement peak. The correction gain calculation unit 21 averages the peak ratios associated with the respective relative displacement peaks to obtain an average value of the peak ratios. The average value of the peak ratios calculated by the correction gain calculation unit 21 as described above is used as a correction gain. The correction gain calculation unit 21 outputs the calculated correction gain to the correction amount calculation unit 14.

The correction gain calculation unit 21 divides the jerk signal peak value into appropriate ranges, and obtains a correction gain by fitting the peak ratio with respect to each relative displacement peak value for each of the ranges. The range for separating the jerk signal peaks is a range arbitrarily set. In addition, the range for dividing the jerk signal peak value may be set in accordance with the tendency of the change in the photo-alignment shift peak value with respect to the change in the jerk signal peak value. For example, a relative displacement peak value corresponding to a jerk signal peak value is plotted, and a range for dividing the jerk signal peak value is set with reference to a point at which the tendency of the magnitude of the relative displacement peak value changes sharply when the jerk signal peak value increases or decreases. The correction gain calculation unit 21 can calculate a more appropriate correction gain by fitting to each range of the jerk signal peak. In addition, fitting by the least square method or curve fitting can be used in the fitting.

Note that the correction gain may be calculated by an arithmetic device external to the NC apparatus 10, in addition to the correction gain calculation unit 20 included in the NC apparatus 10. In this case, the correction gain read from the arithmetic device to the NC apparatus 10 is set in the correction amount calculation unit 14. The computing device is a personal computer or the like. This arithmetic device has the same functional units as the correction amount calculation unit 14.

The jerk used for the calculation of the correction amount by the correction amount calculation unit 14 is not limited to the jerk calculation unit 13. The jerk obtained by actual measurement may be used for calculation of the correction amount. In this case, a jerk measuring sensor for measuring jerk is attached to the machine tool 1. The jerk measurement sensor outputs a jerk signal, which is a measurement result of the jerk, to the NC apparatus 10. The jerk obtained by 1 st order differentiation of the acceleration by time may be used in the calculation of the correction amount. In this case, the acceleration sensor is attached to the work machine 1. The acceleration sensor outputs an acceleration signal, which is a measurement result of acceleration, to the NC apparatus 10.

The machine tool 1 controlled by the NC apparatus 10 is not limited to the vertical machining center, and may be a machining center having a gate structure or the like.

When 1 of the plurality of axes is accelerated rapidly, the inertial force generated by the acceleration is transmitted to the other axis via the mechanical structure during the acceleration of the axis. If the inertia force decreases rapidly due to the end of the acceleration of the shaft, only the reaction force against the inertia force remains instantaneously. The other shaft receives an impact caused by a sharp change in the balance of forces, and the position of the other shaft changes. When 1 of the plurality of axes is decelerated suddenly, the other axes receive an impact due to a sudden change in the balance of forces, and the positions of the other axes change, as in the case of sudden acceleration. The jerk, which is the rate of change in acceleration, causes the above-described shock when the shaft is accelerated or decelerated.

According to embodiment 1, the NC apparatus 10 calculates the correction amount of the 1 st position command based on the jerk. The NC apparatus 10 calculates a correction amount for canceling a positional change of the 1 st axis due to the inter-axis interference based on a jerk which causes a shock when the axis is accelerated or decelerated, thereby making it possible to correct the position of the 1 st axis with high accuracy. This has the effect of improving the machining quality of the machine tool 1 by the NC apparatus 10.

Embodiment 2.

Fig. 5 is a block diagram showing a numerical control device and a machine tool according to embodiment 2 of the present invention. The NC apparatus 30 according to embodiment 2 calculates the correction amount based on a reference waveform signal obtained by simulating the jerk signal instead of the jerk signal. In embodiment 2, the same components as those in embodiment 1 are denoted by the same reference numerals, and the description will be mainly given of a configuration different from that in embodiment 1. The NC apparatus 30 includes a speed calculation unit 31, a trigger calculation unit 32, and a reference waveform output unit 33, instead of the jerk calculation unit 13 according to embodiment 1.

The speed calculation unit 31 calculates the speed based on the 2 nd position command generated by the 2 nd position command generation unit 12 or the position feedback information relating to the 2 nd axis drive unit 9. The speed calculation section 31 replaces the position information of the table 4 in the X-axis direction with the 2 nd position command in the X-axis direction or the position feedback information in the X-axis direction. The speed calculation unit 31 obtains position information of the table 4 in the Y-axis direction from the 2 nd position command in the Y-axis direction or the position feedback information in the Y-axis direction.

The velocity calculation unit 31 represents the position of the table 4 as a position vector at an arbitrary time, and calculates the velocity from 1 st order differentiation of the position by time. The speed calculation unit 31 calculates the speed in driving the X axis 16X based on the position information of the table 4 in the X axis direction. The speed calculation unit 31 calculates the speed in driving the Y axis 16Y based on the position information of the table 4 in the Y axis direction. The speed calculation unit 31 outputs a speed signal, which is a signal indicating a calculation result of the speed, to the trigger calculation unit 32 and the reference waveform output unit 33.

The trigger calculation unit 32 generates a correction trigger signal that is turned on at timings of acceleration start and deceleration start, based on the speed signal input to the trigger calculation unit 32. The trigger calculation unit 32 outputs the generated correction trigger signal to the reference waveform output unit 33. The trigger calculation unit 32 outputs the correction trigger signal in the on state, thereby designating the output of the reference waveform signal to the reference waveform output unit 33.

The reference waveform output unit 33 outputs a reference waveform signal by inputting the correction trigger signal in the on state to the reference waveform output unit 33. The reference waveform is a waveform of the reference waveform signal. The reference waveform output unit 33 instructs the trigger calculation unit 32 to turn off the correction trigger signal if outputting the reference waveform signal. The trigger calculation unit 32 turns off the correction trigger signal in accordance with an instruction from the reference waveform output unit 33. The trigger calculation unit 32 may set the correction trigger signal to the off state immediately after the correction trigger signal of 1 pulse set to the on state is output to the reference waveform output unit 33.

Various parameters related to the reference waveform signal are set in advance in the reference waveform output unit 33. The various parameters include parameters related to the shape, sign, output time, and output timing of the reference waveform. The sign is a positive or negative sign of the reference waveform signal. The output time is a time when the reference waveform signal is output. The output timing is a time from when the correction trigger signal is turned on to a timing when the output of the reference waveform signal is started, and indicates a delay time of the reference waveform signal from when the correction trigger signal is turned on. The reference waveform is preset in shape to have any one of a triangular waveform, a rectangular waveform, a trapezoidal waveform, an arc waveform, a half-period sine wave waveform, and the like. The output time and the output timing are set based on the results of measuring in advance the change in jerk at the start of acceleration, at the end of acceleration, at the start of deceleration, and at the end of deceleration.

The sign of the reference waveform signal is set in advance based on the moving direction of the table 4 and any one of acceleration and deceleration in the 2 nd axis drive. The reference waveform output unit 33 determines the moving direction and any one of acceleration and deceleration based on the speed signal, and determines the sign. The reference waveform output unit 33 determines the sign of the acceleration start time, the acceleration end time, the deceleration start time, the deceleration end time, and the sign of the reference waveform output unit in accordance with the movement direction of the 2 nd axis drive. For example, when moving in the forward direction in the X-axis direction, the acceleration start time and the deceleration end time are set to be positive, and the acceleration end time and the deceleration start time are set to be negative, and when moving in the reverse direction, which is the opposite direction of the forward direction in the X-axis direction, the signs are all reversed. As described above, the reference waveform output unit 33 generates a reference waveform signal corresponding to the direction of the force received by the mechanical structure during acceleration and deceleration.

The reference waveform output unit 33 generates a reference waveform signal to be output at a preset output time for acceleration and deceleration. The reference waveform output unit 33 generates a reference waveform signal to be output at a preset output timing for acceleration and deceleration. As described above, the reference waveform output unit 33 outputs the reference waveform signal, which is a signal obtained by simulating the jerk signal in embodiment 1, to the correction amount calculation unit 14. The correction amount calculation unit 14 calculates the correction amount based on the reference waveform signal output at the time of acceleration by the drive of the 2 nd axis and at the time of deceleration by the drive of the 2 nd axis.

The correction amount calculation unit 14 multiplies the value of the reference waveform signal by a correction gain to calculate the correction amount of the 1 st position command. The correction gain is a constant set in advance as in the case of embodiment 1.

The trigger calculation unit 32 is not limited to generating the correction trigger signal that is turned on at the timing of the acceleration start time and the deceleration start time. The trigger calculation unit 32 may generate a correction trigger signal that is turned on at least one of at the time of acceleration start and at the time of deceleration start. The correction amount calculation unit 14 may calculate the correction amount based on a reference waveform signal output at least one of at the time of acceleration by the 2 nd axis drive and at the time of deceleration by the 2 nd axis drive.

According to embodiment 2, the NC apparatus 30 calculates the correction amount based on the reference waveform signal. The NC apparatus 30 can calculate the correction amount by excluding components such as noise and fluctuation that may occur when calculating the jerk signal. The NC apparatus 30 can calculate the correction amount by which the unnecessary component for correction is excluded, and thus can perform highly accurate correction of the position of the 1 st axis without performing further correction for removing the unnecessary component. This has the effect of improving the machining quality of the machine tool 1 by the NC device 30.

Embodiment 3.

Fig. 6 is a block diagram showing a numerical control device and a machine tool according to embodiment 3 of the present invention. The NC apparatus 40 according to embodiment 3 includes a correction gain change determination unit 41. In embodiment 3, the same components as those in embodiments 1 and 2 are denoted by the same reference numerals, and configurations different from those in embodiments 1 and 2 will be mainly described. The correction gain change determination unit 41 changes the correction gain when the relative displacement exceeds a predetermined threshold value during operation of the work machine 1.

The sensor unit 17 outputs a relative displacement signal, which is a signal indicating the measurement result of the relative displacement, to the correction gain calculation unit 20 and the correction gain change determination unit 41. The correction gain calculation unit 20 outputs the calculated correction gain to the correction gain change determination unit 41.

The correction gain change determination unit 41 calculates the absolute value of the relative displacement based on the input relative displacement signal. The correction gain change determination unit 41 determines whether or not the calculated absolute value exceeds a preset threshold. The threshold value is a relationship between a correction amount capable of correcting the relative displacement and the jerk obtained by an experiment or simulation, and can be set based on the relationship.

The correction amount calculation unit 14 holds the value of the correction gain acquired from the correction gain change determination unit 41, and calculates the correction amount based on the held value of the correction gain. When the absolute value calculated by the correction gain change determination unit 41 does not exceed the threshold value, the correction gain change determination unit 41 does not output the correction gain to the correction amount calculation unit 14. The correction amount calculation section 14 continues the calculation of the correction amount based on the held correction gain.

On the other hand, when the absolute value calculated by the correction gain change determination unit 41 exceeds the threshold value, the correction gain change determination unit 41 outputs the correction gain acquired from the correction gain calculation unit 20 to the correction amount calculation unit 14. The correction amount calculation unit 14 replaces the value of the correction gain with the value obtained from the correction gain change determination unit 41. Thereby, the correction gain change determination unit 41 changes the correction gain. The NC device 40 can adaptively change the correction gain during operation of the machine tool 1. Further, when the characteristics of the machine tool 1 change due to the secular change of the machine tool 1, the NC device 40 can correct the 1 st position command by a correction amount suitable for the characteristics of the machine tool 1.

The correction gain calculation unit 20 may calculate the correction gain by adding a value obtained based on the jerk signal peak value and the relative displacement peak value to a preset reference value. The reference value is a value serving as a reference for the correction gain. In this case, the correction gain calculation unit 20 may calculate the correction gain corresponding to the jerk signal peak and the relative displacement peak.

The correction gain calculation unit 20 may calculate the correction gain by adding or subtracting a predetermined constant to or from a predetermined reference value. The correction gain calculation unit 20 determines one of the addition of constants and the subtraction of constants based on which of a positive value and a negative value is a value obtained based on the jerk signal peak and the relative displacement peak. In this case, the correction gain calculation unit 20 may calculate the correction gain corresponding to the jerk signal peak and the relative displacement peak.

The correction gain calculation unit 20 may calculate the correction gain by increasing or decreasing a predetermined reference value at a predetermined rate. The correction gain calculation unit 20 determines one of an increase in the reference value based on the ratio and a decrease in the reference value based on the ratio, based on which of a positive value and a negative value the value obtained based on the jerk signal peak value and the relative displacement peak value is. In this case, the correction gain calculation unit 20 may calculate the correction gain corresponding to the jerk signal peak and the relative displacement peak. The correction gain may be calculated by the correction amount calculation unit 14 in addition to the correction gain calculation unit 20.

According to embodiment 3, the NC device 40 can adaptively change the correction gain when the relative displacement exceeds the threshold value during operation of the machine tool 1. This has the effect of improving the machining quality of the machine tool 1 by the NC device 40.

Embodiment 4.

Fig. 7 is a block diagram showing a numerical control device and a machine tool according to embodiment 4 of the present invention. The NC apparatus 50 according to embodiment 4 is provided with a correction gain calculation unit 51, and the correction gain calculation unit 51 includes a machine learning device 52 and an intention determination unit 53. In embodiment 4, the same components as those in embodiments 1 to 3 are denoted by the same reference numerals, and configurations different from those in embodiments 1 to 3 will be mainly described. The machine learning device 52 learns the correction gain. The intention determining unit 53 determines a correction gain based on the result of learning by the machine learning device 52.

Fig. 8 is a block diagram showing a functional configuration of a machine learning device included in the numerical control device shown in fig. 7. The machine learning device 52 includes a state observation unit 54 and a learning unit 55. The jerk calculation unit 13 outputs a jerk signal to the machine learning device 52. The sensor unit 17 outputs the relative displacement signal to the machine learning device 52.

The state observation unit 54 observes, as state variables, the jerk obtained by the input of the jerk signal and the relative displacement obtained by the input of the relative displacement signal. That is, the state observation unit 54 observes, as state variables, the jerk, which is the rate of change in acceleration during the 2 nd axis driving, and the relative displacements of the workpiece 3 and the tool 5. The learning unit 55 learns the correction conditions in accordance with a training data set created based on the state variables. The correction condition is a correction gain multiplied by the jerk. The correction amount calculation unit 14 calculates the correction amount of the 1 st position command by multiplying the jerk by the correction gain learned by the learning unit 55.

Any learning algorithm may be used as the learning algorithm used by the learning unit 55. As an example, a case where Reinforcement Learning (Reinforcement Learning) is applied will be described. Reinforcement learning is an action to be taken by an agent, i.e., an agent in an environment, by observing the current state. The agent obtains a report from the environment by selecting an action, and learns a countermeasure that is most reported through a series of actions. As typical reinforcement learning methods, Q-learning (Q-learning), TD-learning (TD-learning), and the like are known. For example, in the case of Q learning, an action value table, which is a typical update of the action value function Q (s, a), is expressed by the following expression (1). The action value function Q (s, a) represents an action value Q, which is the value of an action for selecting the action "a" based on the environment "s".

[ formula 1 ]

Q(st,at)←Q(st,at)+α(rt+1+γmaxaQ(st+1,at)-Q(st,at))…(1)

In the above formula (1), "st+1"indicates the environment at time" t ". "a" ist"represents an action at time" t ". According to action "at", environment becomes" st+1”。“rt+1"indicates a return by a change in its environment. "γ" represents the discount rate. "α" represents a learning coefficient. In the case of applying Q learning, the correction gain becomes action "at”。

In the update represented by the above equation (1), if the action value of the best action "a" at the time "t + 1" is greater than the action value Q of the action "a" performed at the time "t", the action value Q is increased, and conversely, the action value Q is decreased. In other words, the action-merit function Q (s, a) is updated so that the action-merit Q of the action "a" at the time "t" approaches the best action-merit at the time "t + 1". Thus, the best action value of a certain environment is propagated to the action values of the previous environments in turn.

The learning unit 55 includes a reward calculation unit 56 and a function update unit 57. The reward calculation unit 56 calculates a reward based on the state variable. The return calculation unit 56 calculates a return "r" based on the relative displacement error. The relative displacement error is an absolute value of the relative displacement at the time of acceleration or deceleration. For example, when the correction gain is changed and the relative displacement error becomes smaller as a result, the reward calculation unit 56 increases the reward "r". The reward calculation unit 56 increases the reward "r" by assigning a value of the reward, i.e., "1". The value of the reward is not limited to "1".

Further, when the correction gain is changed and the relative displacement error becomes larger as a result, the return calculation unit 56 decreases the return "r". The return calculation unit 56 reduces the return "r" by assigning a value of "1" to the return. The value of the reward is not limited to "-1".

The function update unit 57 increases the correction for determining the correction according to the return calculated by the return calculation unit 56The beneficial function is updated. The updating of the function can be performed in accordance with a training data set, such as updating an action value table. The action value table is a data set in which an arbitrary action and its action value are stored in a table form in association with each other. For example, in the case of Q learning, the action merit function Q(s) expressed by the above expression (1) is usedt,at) As a function for calculating the correction gain.

Fig. 9 is a flowchart showing an operation flow of a machine learning device using reinforcement learning according to embodiment 4. A reinforcement learning method for updating the action merit function Q (s, a) will be described with reference to the flowchart of fig. 9.

First, in step S1, the state observation unit 54 specifies the acceleration start time or the deceleration start time based on the jerk signal obtained from the jerk calculation unit 13. In step S2, the state observation unit 54 acquires a state variable at an arbitrary time from the acceleration end time or the deceleration end time. The state observation unit 54 starts acquiring the state variable at the start of acceleration and acquires the state variable from the end of acceleration to an arbitrary time. Alternatively, the state observation unit 54 starts acquiring the state variable at the start of deceleration and acquires the state variable from the end of deceleration to an arbitrary time. The state variables include a jerk signal obtained from the jerk calculation unit 13 and a relative displacement signal obtained from the sensor unit 17.

In step S3, the return calculation unit 56 calculates the relative displacement error. In step S4, the return calculation unit 56 calculates the return "r" based on the relative displacement error. In step S5, the function update unit 57 updates the action value function Q (S, a) based on the reward "r" calculated in step S4. The function update unit 57 updates the action cost function Q (s, a) according to the above expression (1).

In step S6, the function updating unit 57 determines whether or not the action merit function Q (S, a) converges. The function updating unit 57 determines that the action cost function Q (S, a) converges, based on the fact that the updating of the action cost function Q (S, a) in step S5 is not performed.

If it is determined that the action cost function Q (S, a) does not converge (No at step S6), the machine learning device 52 returns the operation sequence to step S1. When it is determined that the action merit function Q (S, a) converges (Yes at step S6), the learning by the learning unit 55 is ended. Thus, the machine learning device 52 ends the operation of the procedure shown in fig. 9. The machine learning device 52 may continue the learning by returning the operation sequence from step S5 to step S1 without performing the determination of step S6.

The intention determining unit 53 selects the correction gain that most returns based on the result of learning by the learning unit 55, that is, the updated action merit function Q (s, a). The correction amount calculation unit 14 obtains a correction gain from the intention determination unit 53, and calculates the correction amount based on the obtained correction gain. Thus, the NC apparatus 50 can correct unnecessary relative displacement caused by the impact of acceleration and deceleration of the 2 nd axis.

In embodiment 4, the case where the learning unit 55 executes machine learning by reinforcement learning is described. The learning unit 55 may perform machine learning according to other known methods, for example, neural network, genetic programming, functional logic programming, support vector machine, and the like.

According to embodiment 4, the NC apparatus 50 includes the machine learning apparatus 52 that learns the correction gain, and thus can calculate the correction amount using the correction gain determined by the machine learning based on the measurement result of the jerk and the measurement result of the relative displacement. The NC apparatus 50 corrects the 1 st position command based on the correction amount, thereby making it possible to correct the 1 st axis position with high accuracy. This has the effect that the NC device 50 can improve the machining quality of the machine tool 1.

Next, the hardware configuration of the NC apparatuses 10, 30, 40, and 50 according to embodiments 1 to 4 will be described. Each of the functional units included in the NC apparatuses 10, 30, 40, and 50 is realized by using a computer system such as a personal computer or a general-purpose computer. Fig. 10 is a diagram showing an example of a hardware configuration in a case where the functions of the numerical control device according to embodiments 1 to 4 are realized using a computer system.

The NC apparatuses 10, 30, 40, and 50 include: a CPU (Central Processing Unit)61 that executes various processes; a memory 62 which is a built-in memory; a storage device 63 that stores various information; a display device 64 that displays various information; and an input device 65 that inputs various information. The functions performed by the NC apparatuses 10, 30, 40, 50 are realized by software, firmware, or a combination of software and firmware. The software or firmware is stored as a program description in the storage device 63.

The CPU 61 reads out software or firmware stored in the storage device 63 to the memory 62 and executes the software or firmware, thereby realizing the functions of the NC apparatuses 10, 30, 40, and 50. The program stored in the storage device 63 is executed by the CPU 61, and thereby the operations of the NC apparatuses 10, 30, 40, and 50 are executed. The program stored in the storage device 63 is a program for causing a computer to execute processing realized by the functions of the NC apparatuses 10, 30, 40, and 50.

The Memory 62 is a nonvolatile or volatile semiconductor Memory, and is a ram (random Access Memory), a rom (Read Only Memory), a flash Memory, an eprom (Erasable Programmable Read Only Memory), or an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory). The storage device 63 is an HDD (hard Disk drive) or an SSD (solid State drive). The display device 64 is a monitor or display. The input device 65 is an input device such as a keyboard, a mouse, or a touch panel.

The configuration described in the above embodiment is an example of the content of the present invention, and may be combined with other known techniques, and a part of the configuration may be omitted or modified without departing from the scope of the present invention.

Description of the reference numerals

1 machine tool, 2 base, 3 workpiece, 4 table, 5 tool, 6 head, 7 column, 8 1 st axis driving part, 9 nd 2 axis driving part, 10, 30, 40, 50 NC device, 11 st position command generating part, 12 nd 2 position command generating part, 13 jerk calculating part, 14 correction amount calculating part, 15 adder, 16X X axis, 16Y Y axis, 16Z Z axis, 17 sensor part, 20, 51 correction gain calculating part, 21 correction gain calculating part, 22 peak value extracting part, 31 speed calculating part, 32 trigger calculating part, 33 reference waveform outputting part, 41 correction gain change judging part, 52 machine learning device, 53 intention determining part, 54 state observing part, 55 learning part, 56 report calculating part, 57 function updating part, 61 CPU, 62 memory, 63 memory device, 64 display device, 65 input device.

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:提高生产效率的支援系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类