CN117120946A - Numerical control device, learning device, and chatter suppression method - Google Patents

Numerical control device, learning device, and chatter suppression method Download PDF

Info

Publication number
CN117120946A
CN117120946A CN202180094994.6A CN202180094994A CN117120946A CN 117120946 A CN117120946 A CN 117120946A CN 202180094994 A CN202180094994 A CN 202180094994A CN 117120946 A CN117120946 A CN 117120946A
Authority
CN
China
Prior art keywords
unit
spindle
command
operation command
vibration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180094994.6A
Other languages
Chinese (zh)
Inventor
池田辽辅
高币一树
藤田智哉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN117120946A publication Critical patent/CN117120946A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/12Adaptive control, i.e. adjusting itself to have a performance which is optimum according to a preassigned criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41115Compensation periodical disturbance, like chatter, non-circular workpiece
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41256Chattering control

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Automatic Control Of Machine Tools (AREA)
  • Numerical Control (AREA)

Abstract

The numerical control device (1) has a drive command unit (12) for giving an operation command (103) to a main shaft (17) and a feed shaft (18) of a machine tool (16), and also has a feature quantity calculation unit (10) and a vibration control unit (11). A feature quantity calculation unit (10) calculates feature quantity information (102) of chatter vibration on the basis of a sensor signal (100) obtained by detecting vibration of a tool or a machining object mounted on a machine tool (16) and a spindle operation command (101) which is an operation command for a spindle (17). A vibration control unit (11) outputs a drive correction value (104) for correcting an operation command (103) to a drive command unit (12) until feature amount information (102) reaches a target range.

Description

Numerical control device, learning device, and chatter suppression method
Technical Field
The present invention relates to a numerical control device, a learning device, and a chatter suppression method for suppressing chatter in a machine tool.
Background
The machine tool is a mechanical device that removes and processes a workpiece into a desired shape by changing the relative position between a workpiece and a tool. A machine tool represented by a milling machine or a lathe loads a tool or a machining object on a spindle, and rotates the spindle to perform machining. During processing, sometimes vibration called "chatter" occurs. If chatter occurs, the precision of the finished surface is deteriorated or the tool is damaged.
Patent document 1 discloses a method of searching for an optimum spindle speed in order to suppress chatter vibration. The optimal spindle speed is calculated based on the phase difference gradient. The phase difference gradient is a ratio of the amount of change in the phase difference to the amount of change in the spindle speed, i.e., the inclination of the phase difference. The phase difference is calculated by a known expression including chatter, the number of tool edges, and the spindle speed as a parameter indicating a characteristic amount of chatter. In patent document 1, a phase difference is measured while changing a spindle speed, and a phase difference gradient is calculated based on the measured phase difference.
Patent document 1: japanese patent application laid-open No. 2018-118366
Disclosure of Invention
However, in the technique described in patent document 1, when the characteristics of the vibration system in which chatter vibration occurs are changed during the search for the optimal spindle speed, the search needs to be interrupted and the process needs to be resumed from the beginning. The reason for this is that the characteristics of the vibration system that causes chatter vibration are easily changed due to a reduction in the mass of the workpiece to be machined or a change in the machined portion of the workpiece. Therefore, in the method of patent document 1, when the characteristics of the vibration system in which chatter vibration occurs are changed before the search of the optimal spindle speed is completed, the optimal spindle speed cannot be calculated, and it is difficult to suppress chatter vibration.
The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a numerical control device capable of suppressing chatter vibration even when the characteristics of a vibration system change during suppression of chatter vibration.
In order to solve the above-described problems and achieve the object, a numerical control device according to the present invention includes a drive command unit that gives an operation command to a main shaft and a feed shaft of a machine tool, and further includes a feature amount calculation unit and a vibration control unit. The feature amount calculation unit calculates feature amount information of chatter vibration based on a sensor signal obtained by detecting vibration of a tool or a machining object mounted on the machine tool and a spindle operation command, which is a spindle operation command. The vibration control unit outputs a correction value for correcting the operation command to the drive command unit until the feature amount information reaches the target range.
ADVANTAGEOUS EFFECTS OF INVENTION
The numerical control device according to the present invention has an effect of suppressing chatter vibration even when the characteristics of the vibration system change during suppression of chatter vibration.
Drawings
Fig. 1 is a diagram showing a functional configuration of a numerical control device according to embodiment 1.
Fig. 2 is a diagram showing a functional configuration of the feature amount calculating unit shown in fig. 1.
Fig. 3 is a diagram showing a relationship between the timing signal output from the timing signal generating unit shown in fig. 2 and the spindle angle command.
Fig. 4 is a diagram showing the dimensionless numbers calculated by the phase difference calculation unit shown in fig. 2.
Fig. 5 is a flowchart showing a flow of processing performed by the vibration control unit and the drive command unit shown in fig. 1.
Fig. 6 is a diagram showing a specific operation example performed by the vibration control unit and the drive command unit shown in fig. 1.
Fig. 7 is a diagram showing another configuration example for realizing the function of the vibration control unit shown in fig. 1.
Fig. 8 is a diagram showing an example of the structure of an estimation model using a general neural network.
Fig. 9 is a diagram showing a configuration example of a learning device that learns an estimation model used by the vibration control unit shown in fig. 7.
Fig. 10 is a diagram showing a functional configuration of the numerical control device according to embodiment 2.
Fig. 11 is a flowchart showing a flow of processing performed by the vibration control unit shown in fig. 10.
Fig. 12 is a diagram showing a functional configuration of the numerical control device according to embodiment 3.
Fig. 13 is a diagram showing a configuration example of a control system for realizing the function of the vibration control unit according to embodiment 3.
Fig. 14 is a diagram showing a functional configuration of the numerical control device according to embodiment 4.
Fig. 15 is a flowchart showing a flow of processing performed by the vibration control unit shown in fig. 14.
Fig. 16 is a diagram showing a functional configuration of the numerical control device according to embodiment 5.
Fig. 17 is a diagram showing a functional configuration of the feature amount calculating unit shown in fig. 16.
Fig. 18 is a diagram showing a relationship between the timing signal output from the timing signal generating unit shown in fig. 17 and the spindle angle command.
Fig. 19 is a block diagram showing an example of a hardware configuration for realizing the functions of the numerical control device described in embodiments 1 to 5.
Fig. 20 is a block diagram showing another example of a hardware configuration for realizing the functions of the numerical control device described in embodiments 1 to 5.
Detailed Description
The numerical control device, the learning device, and the chatter vibration suppressing method according to the embodiment of the present invention will be described in detail below with reference to the drawings.
Embodiment 1.
Fig. 1 is a diagram showing a functional configuration of a numerical control device 1 according to embodiment 1. The numerical control device 1 gives an operation command 103 to the machine tool 16, thereby performing numerical control on the machine tool 16.
The machine tool 16 includes a main shaft 17 and a feed shaft 18, each of which includes a motor driven by the operation command 103. In embodiment 1, a workpiece is provided on a main shaft 17, and a tool is provided on a feed shaft 18. The machine tool 16 outputs operation information 105 including at least information on the positions of the spindle 17 and the feed shaft 18 and information on the speed and the motor current to the numerical control device 1.
A sensor 19 is mounted on the work machine 16. The sensor 19 outputs a sensor signal 100 obtained by detecting vibration of the tool or the object to be processed to the numerical control device 1. The sensor 19 is mounted to a member of the main shaft 17 or the feed shaft 18 of the work machine 16. The position where the sensor 19 is attached may be a position where vibration of the tool or the object to be processed can be detected, but is more preferably in the vicinity of the point where the tool and the object to be processed contact.
The type of the sensor 19 may be a sensor capable of detecting vibration of a tool or a workpiece. Examples of the sensor 19 are a displacement sensor, a speed sensor, an acceleration sensor, an angular velocity sensor. The sensor 19 may be a force sensor that detects a cutting reaction force or a microphone that detects cutting sounds during machining. Alternatively, instead of the sensor 19, at least 1 or more of the positions, speeds, and motor currents of the spindle 17 and the feed shaft 18 included in the operation information 105 may be used to detect vibrations of the tool or the object to be processed that occur during processing, and information indicating the detected vibrations may be output as the sensor signal 100.
The numerical control device 1 includes a feature amount calculation unit 10, a vibration control unit 11, and a drive command unit 12. The drive command unit 12 receives the operation information 105 from the machine tool 16, and gives the operation command 103 to the spindle 17 and the feed shaft 18 of the machine tool 16 based on the received operation information 105.
The drive instruction section 12 also receives the drive correction value 104 from the vibration control section 11. The drive command unit 12 outputs the operation command 103 generated based on the operation information 105 and the drive correction value 104 to the work machine 16 and the vibration control unit 11. The drive command unit 12 outputs the spindle operation command 101 included in the generated operation command 103 to the feature amount calculation unit 10. The spindle operation command 101 is a signal including at least a spindle angle command, which is an angle command to the spindle 17.
The spindle operation command 101 may include a spindle speed command, a spindle angle, or a spindle speed in addition to the spindle angle command. The spindle speed command is a speed command to the spindle 17. The spindle angle is the actual angle of the spindle 17 relative to the spindle angle command. The spindle speed is the actual speed of the spindle 17 relative to the spindle speed command. The operation command 103 includes at least 1 of a spindle angle command and a spindle speed command, and at least 1 of a feed shaft position command and a feed shaft speed command. The feed shaft position command is a position command to the feed shaft 18. The feed shaft speed command is a speed command to the feed shaft 18.
The feature amount calculation unit 10 receives the sensor signal 100 from the work machine 16, and receives the spindle operation command 101 from the drive command unit 12. The feature amount calculation unit 10 calculates feature amount information 102 based on the sensor signal 100 and the spindle operation command 101, and outputs the calculated feature amount information 102 to the vibration control unit 11. The feature information 102 includes at least information of a phase difference, which is a feature of chattering.
Fig. 2 is a diagram showing a functional configuration of the feature amount calculation unit 10 shown in fig. 1. The feature quantity calculating unit 10 includes a sensor signal processing unit 13, a phase difference calculating unit 15, and a timing signal generating unit 14.
The sensor signal processing unit 13 generates a plurality of types of state quantities based on the sensor signal 100, and outputs a state quantity signal 110 indicating the generated plurality of types of state quantities to the phase difference calculating unit 15. The state quantity signal 110 is a signal including the 1 st state quantity and the 2 nd state quantity. Specifically, the state quantity signal 110 is a signal including a state quantity represented by the sensor signal 100 and a state quantity obtained by subjecting the sensor signal 100 to time differentiation or time integration. For example, the 1 st state quantity is the sensor signal 100, and the 2 nd state quantity is a state quantity obtained by differentiating the sensor signal 100 1 time. The 1 st state quantity itself may be a state quantity obtained by time differentiation.
The sensor signal processing unit 13 sets the sensor signal 100 and a signal obtained by differentiating the sensor signal 100 1 time as the time series signal as the state quantity signal 110. Here, the time differentiation means a process of calculating a change amount of the state quantity per unit time, and the time integration means a process of calculating an accumulated amount per unit time.
The difference between the number of time-differentiated states of the 1 st state quantity and the number of time-differentiated states of the 2 nd state quantity may be any combination if the difference is an odd number. For example, the 1 st state quantity is a state quantity obtained by performing time differentiation of the sensor signal 100P times, and the 2 nd state quantity is a state quantity obtained by performing time differentiation Q times. Here, P and Q are integers. In this case, the difference between P and Q may be an odd number.
The 1 st state quantity or the 2 nd state quantity may be a factor obtained by integrating the sensor signal 100 with time. Specifically, the 1 st state quantity may be acceleration and the 2 nd state quantity may be velocity. Alternatively, the 1 st state quantity may be a differential value of acceleration, that is, a jerk, and the 2 nd state quantity may be a position, that is, an integral value of velocity. The sensor signal processing unit 13 can generate, for example, 2 or more types of state quantities including at least 1 of the sensor signal 100 and the state quantity obtained by time-differentiating the sensor signal 100 and the state quantity obtained by time-integrating the sensor signal 100.
The timing signal generation unit 14 outputs the timing signal 111 to the phase difference calculation unit 15 if it is determined that the spindle angle command passes through a predetermined angle based on the spindle operation command 101 output from the drive command unit 12. Here, details of a method of generating the timing signal 111 will be described.
Fig. 3 is a diagram showing a relationship between the timing signal 111 output from the timing signal generating unit 14 shown in fig. 2 and the spindle angle command. The spindle angle command is included in the spindle operation command 101 outputted from the drive command unit 12. As shown in FIG. 3, the spindle angle command is taken from 0[ rad ]]To 2 pi [ rad ]]If the value of (1) reaches 360 rad]Then resume to 0 rad]Is a signal of (a). The timing signal generating unit 14 sets a spindle angle command angle for each passThe timing signal 111 is output at this time, but the timing signal 111 is not output otherwise. Thus, the timing signal 111 is periodically output at a timing synchronized with the rotation of the spindle 17 of the work machine 16. Angle->The rotation period of the spindle 17 for 1 rotation may be defined as 1, and may be any angle. Angle->For example, the angle of the spindle 17 at the time of orientation of the spindle 17 can be set. Here, the orientation of the spindle 17 is a reference angle at which the spindle 17 is stopped.
Alternatively, the timing signal generation unit 14 may generate the timing signal 111 using the spindle speed command included in the spindle operation command 101. In this case, the timing signal generation unit 14 outputs the timing signal 111 in units of time T1 calculated using the following expression (1) based on the spindle speed command S [ rpm ] with the initial time T0 as a reference time. The timing signal generation unit 14 may use a combination of spindle angle commands and spindle speed commands.
T1=60/S…(1)
In the above description, the timing signal generation unit 14 generates the timing signal 111 using the spindle operation command 101, but the present invention is not limited thereto. The timing signal generation unit 14 may generate the timing signal 111 using a feed shaft operation command, which is an operation command of the feed shaft 18, instead of the main shaft operation command 101 or in addition to the main shaft operation command 101.
The phase difference calculating section 15 receives the timing signal 111 output from the timing signal generating section 14 and the state quantity signal 110 output from the sensor signal processing section 13. The phase difference calculation unit 15 normalizes the state amounts of the plurality of types included in the state amount signal 110 for each timing signal 111 based on the timing signal 111 and the state amount signal 110, and dimensionlessly calculates the phase difference for each timing signal 111. The phase difference calculation unit 15 calculates a phase difference representing a difference between phases of the dimensionless state quantity signals in a state space formed by the dimensionless state quantity, and outputs the calculated phase difference as the feature quantity information 102 to the vibration control unit 11. The details of the state space are described later.
The phase difference calculation unit 15 divides the maximum value of each state quantity determined in advance by each state quantity, thereby normalizing each of the plurality of types of state quantities included in the state quantity signal 110. The maximum value used here may be the maximum value of each state quantity obtained by a prior machining experiment, or may be the maximum value of each state quantity obtained by a prior simulation.
The phase difference calculating unit 15 receives the timing signal 111 at time t1 and at time t2 later than time t 1. At this time, the phase difference calculation unit 15 normalizes the state quantity signal 110 at time t1, and sets the normalized value as the 1 st dimensionless number N1. The phase difference calculation unit 15 normalizes the state quantity signal 110 at time t2 in the same manner as at time t1, and sets the normalized value as the 2 nd dimensionless quantity N2.
Fig. 4 is a diagram showing the dimensionless numbers calculated by the phase difference calculation unit 15 shown in fig. 2. In fig. 4, the 1 st and 2 nd dimensionless quantities N1 and N2 are shown in a state space represented by the 1 st and 2 nd state quantities contained in the state quantity signal 110. The 1 st state quantity and the 2 nd state quantity are vectors. In fig. 4, the 1 st axis as the horizontal axis represents the 1 st state quantity direction, the 2 nd axis as the vertical axis represents the 2 nd state quantity direction, and the 1 st axis and the 2 nd axis are in an orthogonal relationship. Therefore, as shown in fig. 4, a vector space can be defined in which the 1 st axis is the horizontal axis and the 2 nd axis is the vertical axis. In the present invention, this vector space is referred to as "state space".
The phase difference calculation unit 15 calculates an angle θ formed by the 1 st and 2 nd dimensionless amounts N1, which are the last-processed dimensionless amounts, the origin of the state space, and the 2 nd dimensionless amount N2, which is the current-processed dimensionless amount, as a phase difference between the 1 st and 2 nd dimensionless amounts N1, N2. The phase difference calculation unit 15 performs the above-described calculation for each timing signal 111, and calculates the phase difference between the current-processed dimensionless number and the previous-processed dimensionless number. The phase difference calculation unit 15 outputs the feature amount information 102 including at least the calculated phase difference to the vibration control unit 11. In embodiment 1, the phase difference is a value between-pi [ rad ] and +pi [ rad ].
The vibration control unit 11 receives the feature amount information 102 from the feature amount calculation unit 10 and receives the operation command 103 from the drive command unit 12. The vibration control unit 11 generates a drive correction value 104 based on the feature amount information 102 and the operation command 103, and outputs the generated drive correction value 104 to the drive command unit 12. The drive correction value 104 is a correction value for correcting the operation command 103.
Fig. 5 is a flowchart showing a flow of processing performed by the vibration control unit 11 and the drive command unit 12 shown in fig. 1. In fig. 5, a processing flow in which a spindle speed command among various commands and the like included in the operation command 103 is a control target is illustrated with respect to a phase difference among information included in the feature amount information 102 as a determination criterion. The vibration control unit 11 corrects the operation command 103 by the following steps.
First, in step S101, it is determined whether or not the phase difference is out of the phase difference target range. The phase difference target range is a target range of phase differences having values of a range set in advance. In embodiment 1, as an example, the target value of the phase difference is set to 0 radian, and the target range of the phase difference is set to a range of-0.1 [ rad ] to +0.1[ rad ]. The phase difference target range may be set to a value sufficiently larger than the noise of the phase difference.
If the phase difference is within the phase difference target range in step S101 (No in step S101), the flow proceeds to step S102, where the current spindle speed is held. That is, in step S102, the drive command unit 12 outputs the original spindle speed command without changing the current spindle speed command. On the other hand, when the phase difference is out of the phase difference target range (Yes in step S101), the flow proceeds to step S103.
In step S103, it is determined whether the phase difference is greater than or equal to a phase difference threshold. The phase difference threshold is an arbitrary value set in advance. In embodiment 1, as an example, 0 "rad" is set as the phase difference threshold. If the phase difference is equal to or greater than the phase difference threshold (Yes in step S103), the flow proceeds to step S104, and if the phase difference is less than the phase difference threshold (No in step S103), the flow proceeds to step S105.
In step S103, the phase difference and the phase difference threshold value are equal to each other, and the determination is Yes, but may be No. That is, the phase difference and the phase difference threshold value may be equal to each other, and the determination may be made by any one of "Yes" and "No".
In step S104, the spindle speed command is reduced by a predetermined width. That is, in step S104, when it is determined in step S103 that the phase difference is equal to or greater than the phase difference threshold value, the value of the spindle speed command is reduced by a predetermined width. On the other hand, in step S105, the spindle speed command is increased by a predetermined width. That is, in step S105, when it is determined in step S103 that the phase difference is smaller than the phase difference threshold value, the value of the spindle speed command is increased by a predetermined width. The value of the increase or decrease may be a ratio to the current spindle speed command or a fixed value independent of the spindle speed command.
In step S106, it is determined whether or not the processing is completed. When the processing is completed (Yes in step S106), the vibration control unit 11 ends the processing of fig. 5. On the other hand, when the processing is not completed (No in step S106), the process returns to the process of step S101. The process shown in fig. 5 continues during the execution of the machining.
In fig. 5, a case is illustrated in which the phase difference included in the feature amount information 102 is used as a criterion and the control target is the spindle speed command included in the operation command 103, but when the feature amount information 102 is other than the phase difference and the control target is other than the spindle speed command, the same flow of processing can be performed. That is, the vibration control unit 11 performs control to output the drive correction value 104 for correcting the operation command 103 output by the drive command unit 12 until the feature amount information 102 reaches the target range. The drive command unit 12 corrects the operation command 103 based on the drive correction value 104.
Fig. 6 is a diagram showing a specific operation example performed by the vibration control unit 11 and the drive command unit 12 shown in fig. 1. Fig. 6 is a graph showing a relationship between the phase difference and the spindle speed at each time. The phase difference is shown in the upper part of fig. 6 and the spindle speed is shown in the lower part. In addition, the horizontal axis of fig. 6 represents time.
In the period from time t60 to time t61, the phase difference takes a value within the phase difference target range, and therefore the spindle speed becomes a constant value. In the period from time t61 to time t62, the phase difference is deviated from the phase difference target range and becomes a value smaller than the phase difference threshold value, that is, 0[ rad ]. Accordingly, the spindle speed increases at a predetermined set value.
Then, in the period from time t62 to time t63, the phase difference takes a value within the phase difference target range, and therefore the spindle speed becomes a constant value. In the period from time t63 to time t64, the phase difference is deviated from the phase difference target range and becomes a value smaller than the phase difference threshold value, that is, 0[ rad ]. Thus, the spindle speed is reduced at a predetermined set point. After time t64, the phase difference takes a value within the target range of the phase difference, and therefore the spindle speed takes a constant value.
As described above, the drive command unit 12 changes the operation command 103 according to the value of the phase difference. At this time, the vibration control unit 11 outputs the drive correction value 104 based on the value of the phase difference to the drive command unit 12.
As described above, according to embodiment 1, time series data of a plurality of types of state amounts are generated based on the sensor signal 100 obtained by detecting vibration of the tool or the object mounted on the machine tool 16. In the state space, a dimensionless number representing a plurality of types of state quantities is generated for each timing signal 111, and a phase difference representing a difference between phases of the dimensionless number, that is, an angle θ is calculated. The correction of the operation command 103 is performed based on the value of the phase difference.
In the method of embodiment 1, the phase difference is calculated for each timing signal 111, and the operation command 103 is corrected based on the calculated phase difference. That is, in the method of embodiment 1, the spindle speed can be corrected without measuring the phase difference in advance under the spindle speeds of a plurality of conditions. Thus, for example, even when the characteristics of chatter vibration change during processing of the object, chatter vibration can be suppressed.
As another example, the feature amount calculation unit 10 may calculate the phase difference based on the following expressions (2) and (3).
k={60×f/(n×S)}…(2)
Phase difference= (k- [ k ]) x 2 pi … (3)
In the above expression (2), f represents the frequency of chatter vibration, and n represents the number of edges of the tool. Here, the frequency f of the chatter vibration is obtained by performing frequency analysis represented by a fast fourier transform (Fast Fourier Transform: FFT) on the sensor signal 100 and calculating the frequency that becomes the peak value of the gain. In the expression (2), the function [ k ] is a function for integer-forming the value of "k", and is a function for integer-forming the value of "k" in the zero direction or less at the decimal point.
As described above, according to the numerical control device 1 and the method for suppressing chatter vibration executed using the numerical control device 1 according to embodiment 1, the characteristic amount information 102 of chatter vibration is calculated based on the sensor signal 100 obtained by detecting the vibration of the tool or the object to be processed mounted on the machine tool 16 and the spindle operation command 101, which is the operation command of the spindle 17. Then, the drive correction value 104, which is a correction value for correcting the operation command 103, is output to the drive command unit 12 until the feature amount information 102 reaches the target range. Thus, even when the characteristics of the vibration system are changed during the suppression of the chatter vibration, the chatter vibration can be suppressed. In the method of embodiment 1, the optimization of the drive command value conventionally performed is not performed. This shortens the time for suppressing the chatter vibration, and can achieve a high speed for suppressing the chatter vibration.
As described above, the method of embodiment 1 can calculate the feature amount information 102 without using frequency analysis typified by FFT. Therefore, the time from the occurrence of the chatter vibration to the suppression of the chatter vibration can be shortened. This can realize a high-speed suppression of chatter vibration.
The machine tool 16 according to embodiment 1 is configured to set the object to be processed in the spindle 17, but is not limited to this configuration. As an alternative configuration, for example, a milling machine and a lathe are typical, and the same effect can be obtained even when a tool is provided on the spindle 17.
In embodiment 1, 1 sensor 19 is used, but the sensors 19 may be provided at a plurality of positions in the machine tool 16. In this case, the processing described in embodiment 1 is performed for all the sensors 19 provided, and the occurrence of chatter vibration can be determined. When the sensors 19 are provided at a plurality of positions, chatter vibration can be suppressed even if chatter vibration occurs at a plurality of positions during machining.
As another example, the vibration control unit 11 may perform suppression of chatter vibration using an estimated model obtained by performing machine learning in advance for suppressing chatter vibration. This example is shown in fig. 7. That is, fig. 7 is a diagram showing another configuration example for realizing the function of the vibration control unit 11 shown in fig. 1.
In fig. 7, the vibration control unit 11 includes an information observation unit 201 and an estimation unit 202. The vibration control unit 11 is inputted with the feature amount information 102 and the operation command 103.
The information observation unit 201 observes the feature amount information 102 and the operation command 103 of the predetermined sampling number corresponding amount as time series data, and generates the estimation data set 203 based on the time series data. In order to output the drive correction value 104 for suppressing chatter vibration, the estimating unit 202 inputs the estimation data set 203 generated by the information observing unit 201 to an estimation model obtained by performing machine learning in advance, and outputs the drive correction value 104.
The estimation unit 202 may use an estimation model of any algorithm. As an example, an estimation model using a neural network will be described. Fig. 8 is a diagram showing a configuration example of an estimation model using a general neural network.
In the example shown in fig. 8, the neural network is constituted by input layers x1, x2, …, xn having n neurons, intermediate layers y1, y2, …, ym having m neurons, and output layer z1 having 1 neuron. In fig. 8, the output layer is 1 layer, but 2 or more output layers may be provided.
The input layers x1, x2, …, xn are connected to the intermediate layers y1, y2, …, ym, and the intermediate layers y1, y2, …, ym are connected to the output layer z 1. The connection between the input layers and the intermediate layers shown in fig. 8 is an example, and each of the input layers x1, x2, …, xn may be connected to any of the intermediate layers y1, y2, …, ym.
In the case of the 3-layer neural network shown in fig. 8, after a plurality of inputs are input to the input layers x1, x2, …, xn, weights A1 to Aa are given to the values thereof, and the values are input to the intermediate layers y1, y2, …, ym. The values input to the intermediate layers y1, y2, …, ym are further given weights B1 to Bb, and are input to the output layer z1, and output from the output layer z 1. The subscripts a and b are natural numbers, and in the example shown in fig. 8, a=n and b=m. The output result varies depending on the values of the weights A1 to Aa and B1 to Bb.
Fig. 9 is a diagram showing a configuration example of a learning device 300 that learns an estimation model used by the vibration control unit 11 shown in fig. 7. The learning device 300 includes a learning data acquisition unit 301 and a learning processing unit 302. The present invention is applicable to the learning device 300 and the numerical control device 1 having the drive command unit 12 for giving the operation command 103 to the spindle 17 and the feed shaft 18 of the machine tool 16 shown in fig. 1.
The learning data acquisition unit 301 acquires a learning data set 304 that correlates the feature amount information 102 and the operation command 103 acquired during actual machining with the chatter vibration presence information 303 indicating the presence or absence of chatter vibration. The vibration presence information 303 included in the learning data set 304 can be expressed by different values according to whether or not vibration occurs. For example, the case where the chatter vibration occurs can be represented by a value of "1", and the case where the chatter vibration does not occur can be represented by a value of "0". The chatter vibration presence information 303 can be determined by evaluating the machined surface after machining, for example.
The learning processing unit 302 includes a learning data set 304 and an inference model 305. The learning processing unit 302 learns the feature amount information 102 and the operation command 103 included in the learning data set 304 as input data. Specifically, the learning processing unit 302 performs so-called teacher learning to estimate that the output of the model 305 matches the value of the chatter vibration presence information 303. The estimation model 305 outputs an output value corresponding to the presence or absence of chatter vibration if the feature amount information 102 and the operation command 103 are input.
The learning processing unit 302 adjusts the weights A1 to Aa and B1 to Bb so that the values output from the output layer are close to the values indicating the presence or absence of chatter vibration, with respect to the input layer input feature amount information 102 and the operation command 103. The learning of the estimation model 305 is performed by adjusting the weights A1 to Aa and B1 to Bb.
The learning processing unit 302 can use an error inverse transmission method as a teacher learning method used in learning the estimation model 305. In order to improve the generalization performance of the estimation model 305, the learning processing unit 302 may use a method such as "dropout" in which neurons are randomly excluded during learning, and "early learning" in which errors are monitored and learning is terminated in advance. The learning processing unit 302 outputs the learned estimation model 305 as a trained estimation model. The trained estimation model output by the learning processing unit 302 can be used by the estimation unit 202 shown in fig. 7.
As described above, the learning device 300 according to embodiment 1 includes the estimation model 305 and the learning data set 304. In the learning data set 304, chatter vibration presence information 303 indicating the presence or absence of chatter vibration is held in association with the feature amount information 102 and the operation command 103. Feature amount information 102, operation instruction 103, and chatter vibration presence information 303 are input to the estimation model 305. The estimation model 305 performs machine learning so as to output an output value corresponding to the presence or absence of chatter vibration if the feature amount information 102 and the operation command 103 are input. If the learning device 300 described above is applied to the numerical control device 1, the drive correction value 104 can be output using the estimation model 305 obtained by performing machine learning in advance, and thus, the speed of suppressing chatter vibration can be increased.
In the above description, the case where the neural network is used for the estimation model 305 has been described, but the present invention is not limited to this. Other well-known methods, such as RNN (Recurrent Neural Network), LSTM (Long Short-Term Memory), SVM (Support Vector Machine), etc., may also be used to construct the inference model 305.
Embodiment 2.
Fig. 10 is a diagram showing a functional configuration of the numerical control device 2 according to embodiment 2. The numerical control device 2 includes a feature amount calculation unit 10, a vibration control unit 11-1, a drive command unit 12, and an input device 20. The following description will mainly explain the parts different from the numerical control apparatus 1.
The numerical control device 2 further includes an input device 20 in addition to the configuration described in the numerical control device 1 according to embodiment 1. The operator inputs information of the upper limit value and the lower limit value of the operation command 103 to be corrected in the vibration control unit 11-1 before performing the machining to the input device 20.
The input device 20 outputs limit information 106 including at least the upper limit value and the lower limit value of the input operation command 103 to the vibration control unit 11-1. Instead of this method, the vibration control unit 11-1 may refer to a machining program in which the upper limit value and the lower limit value of the operation command 103 are recorded.
The vibration control unit 11-1 receives the feature amount information 102 from the feature amount calculation unit 10, receives the operation command 103 from the drive command unit 12, and receives the limitation information 106 from the input device 20. The vibration control unit 11-1 generates the drive correction value 104 based on the feature amount information 102, the operation command 103, and the limitation information 106, and outputs the generated drive correction value 104 to the drive command unit 12.
Fig. 11 is a flowchart showing a flow of processing performed by the vibration control unit 11-1 shown in fig. 10. The vibration control unit 11-1 corrects the operation command by the following steps. In fig. 11, the same or equivalent processes to those shown in fig. 5 are denoted by the same reference numerals. In fig. 11, similarly to fig. 5, a processing flow in which the spindle speed command is set as a control target is illustrated, with the phase difference as a determination criterion. The following description will mainly explain the portions different from fig. 5.
The processing in steps S101 to S105 is the same as or equivalent to that in fig. 5, and the description thereof will be omitted.
In step S201, the spindle speed command processed in step S104 is limited to a range of a predetermined lower limit value of the spindle speed command. Specifically, when the spindle speed command processed in step S104 is smaller than the lower limit value of the spindle speed command (No in step S201), the routine proceeds to step S202, and after the spindle speed command is changed to the lower limit value of the spindle speed command, the routine proceeds to step S106. If the spindle speed command is equal to or greater than the lower limit value of the spindle speed command (Yes in step S201), the process proceeds to step S106 without changing the spindle speed command.
In step S203, the spindle speed command processed in step S105 is limited to a range of an upper limit value of the spindle speed command determined in advance. Specifically, when the spindle speed command processed in step S105 exceeds the upper limit value of the spindle speed command (No in step S203), the routine proceeds to step S204, and after the spindle speed command is changed to the upper limit value of the spindle speed command, the routine proceeds to step S106. If the spindle speed command is equal to or less than the upper limit value of the spindle speed command (Yes in step S203), the process proceeds to step S106 without changing the spindle speed command.
In step S106, it is determined whether or not the processing is completed. When the processing is completed (Yes in step S106), the vibration control unit 11-1 ends the processing of fig. 11. On the other hand, when the processing is not completed (No in step S106), the process returns to the process of step S101. The process shown in fig. 11 continues during the execution of the machining.
In fig. 11, the case where the main shaft speed command included in the operation command 103 is the control target, using the phase difference included in the feature amount information 102 as the criterion, is illustrated, but when the feature amount information 102 is other than the phase difference and the control target is other than the main shaft speed command, the processing in the same flow can be performed.
According to embodiment 2, the limitation information 106 including the upper limit value and the lower limit value of the operation command 103 is input to the vibration control unit 11-1, and the vibration control unit 11-1 increases or decreases the operation command 103 within a range between the input upper limit value and lower limit value. Thus, the vibration control unit 11-1 is prevented from outputting the drive correction value 104 outside the cutting conditions specified by the tool and the machine tool to the drive command unit 12. As a result, the corrected operation command 103 can be prevented from becoming an unexpected value for the operator. This further provides an effect of preventing unexpected processing failure.
Embodiment 3.
Fig. 12 is a diagram showing a functional configuration of the numerical control device 3 according to embodiment 3. In fig. 12, the numerical control device 1 is replaced with the numerical control device 3, and the vibration control unit 11 is replaced with the vibration control unit 11-2, as compared with the configuration of fig. 1. In addition to the operation command 103, the operation information 105 is input to the vibration control unit 11-2. Other structures are the same as or equivalent to those of fig. 1, and the same reference numerals are given to the same or equivalent structural parts. The following description will mainly explain the parts different from the numerical control apparatus 1.
The vibration control unit 11-2 receives the feature amount information 102 from the feature amount calculation unit 10, receives the operation command 103 from the drive command unit 12, and receives the operation information 105 from the work machine 16. The vibration control unit 11-2 generates a drive correction value 104 based on the feature amount information 102, the operation command 103, and the operation information 105, and outputs the generated drive correction value 104 to the drive command unit 12.
In embodiment 3, the vibration control unit 11-2 controls the feature amount target value set in advance so that the feature amount information 102 reaches the feature amount target value. Specifically, as shown in fig. 13, a control system is constituted. Fig. 13 is a diagram showing a configuration example of a control system for realizing the function of the vibration control unit 11-2 according to embodiment 3. Fig. 13 shows, as an example, a configuration of a control system that performs PID (Proportional Integral Differential) control.
First, a feature amount deviation 125 obtained by subtracting the feature amount information 102 from the feature amount target value is generated. Here, "0" is set as an example of the feature amount target value. In embodiment 3, the feature amount information 102 is the phase difference calculated by the phase difference calculation unit 15 in fig. 2. In general, it is known that when chatter does not occur, the phase difference becomes 0. Therefore, by setting the feature amount target value to "0", chatter vibration can be suppressed.
The feature quantity deviation 125 branches into 3 pieces, and 1 piece of them is multiplied by the proportional gain 122. One of the remaining 2 is multiplied by an integration gain 123 after passing through the integrator 120. That is, the time-integrated value of the feature quantity deviation 125 is multiplied by the integral gain 123. In addition, the other of the remaining 2 is multiplied by a differential gain 124 after passing through a differentiator 121. That is, the time differential value of the feature quantity deviation 125 is multiplied by the differential gain 124. These 3 gain values are added to set as the feature amount correction amount 126. The feature amount correction amount 126 is also added to the spindle speed and output to the drive command section 12 as the drive correction value 104.
The proportional gain 122, the integral gain 123, and the differential gain 124 are preset values, and are applied before machining. In addition, these 3 gain values can be adjusted by trial processing. By appropriately setting these 3 gain values, chatter vibration can be suppressed at a high speed as compared with embodiment 1.
As described above, according to embodiment 3, since the control system for matching the feature amount information 102 with the feature amount target value is configured in the vibration control unit 11-2, the suppression of chatter vibration can be performed at a higher speed.
In the control system of fig. 13, the characteristic amount deviation 125 is multiplied by the proportional gain 122, the time integrated value of the characteristic amount deviation 125 is multiplied by the integral gain 123, and the time differential value of the characteristic amount deviation 125 is multiplied by the differential gain 124, but the present invention is not limited to this configuration. The characteristic amount deviation 125, at least 1 of the time integral value of the characteristic amount deviation 125 and the time differential value of the characteristic amount deviation 125, may be multiplied by a gain, and a control system having a desired characteristic or a control system close to the desired characteristic may be realized.
Embodiment 4.
Fig. 14 is a diagram showing a functional configuration of the numerical control device 4 according to embodiment 4. In fig. 14, the numerical control device 1 is replaced with the numerical control device 4 and the vibration control unit 11 is replaced with the vibration control unit 11-3, as compared with the configuration of fig. 1. The drive correction value 104 input to the drive command unit 12 is replaced with the drive correction value 104-1. Other structures are the same as or equivalent to those of fig. 1, and the same reference numerals are given to the same or equivalent structural parts. The following description will mainly explain the parts different from the numerical control apparatus 1.
The vibration control unit 11-3 receives the feature amount information 102 from the feature amount calculation unit 10 and receives the operation command 103 from the drive command unit 12. The vibration control unit 11-3 generates a drive correction value 104-1 based on the feature amount information 102 and the operation command 103, and outputs the generated drive correction value 104-1 to the drive command unit 12.
Fig. 15 is a flowchart showing a flow of processing performed by the vibration control unit 11-3 shown in fig. 14. The vibration control unit 11-3 corrects the operation command by the following steps. In fig. 15, the same or equivalent processes to those shown in fig. 5 are denoted by the same reference numerals. In fig. 15, a processing flow in which a spindle speed command and a feed shaft speed command, which is a speed command of the feed shaft 18, are controlled is illustrated, with a phase difference as a criterion. The following description will mainly explain the portions different from fig. 5.
The processing in steps S101 to S105 is the same as or equivalent to that in fig. 5, and the description thereof will be omitted.
In step S301, after the spindle speed command is changed in step S104 or step S105, the feed shaft speed command is changed. Specifically, in step S301, the feed shaft speed command is changed so that the feed amount per 1 revolution of the spindle 17 does not change. Here, the feed amount per rotation of the spindle 17 is a value obtained by dividing the speed of the feed shaft 18, that is, the feed shaft speed, by the spindle speed. For example, in step S104, when the spindle speed command is reduced by 10%, the feed shaft speed command is also reduced by 10% in the same proportion. In step S105, when the spindle speed command is increased by 10%, the feed shaft speed command is also increased by 10% in the same proportion.
In step S106, it is determined whether or not the processing is completed. When the processing is completed (Yes in step S106), the vibration control unit 11-3 ends the processing of fig. 15. On the other hand, when the processing is not completed (No in step S106), the process returns to the process of step S101. The process shown in fig. 15 continues during the execution of the processing.
In fig. 15, a case is illustrated in which the phase difference included in the feature amount information 102 is used as a criterion for determination, but processing in the same flow can be performed even when the feature amount information 102 is out of phase difference.
According to embodiment 4, the vibration control section 11-3 outputs a correction value for correcting the feed shaft speed command to the drive command section 12 in synchronization with an increase or decrease in the main shaft speed command. In this control, the vibration control unit 11-3 changes the spindle speed command and the feed shaft speed command in accordance with the value of the phase difference so that the feed amount per 1 revolution of the spindle 17 does not change. By this control, the feed amount per 1 revolution of the spindle 17 becomes constant, and therefore the interval of cutter marks generated on the work surface becomes uniform. In this way, the effect of embodiment 1 is added to the effect of improving the quality of the processed surface.
Embodiment 5.
Fig. 16 is a diagram showing a functional configuration of the numerical control device 5 according to embodiment 5. In fig. 16, the numerical control device 1 is replaced with the numerical control device 5, and the feature amount calculating unit 10 is replaced with the feature amount calculating unit 10-1, as compared with the configuration of fig. 1. In fig. 16, a tool information recording unit 21 for generating tool information 113 is added. In addition to the sensor signal 100 and the spindle operation command 101, tool information 113 is input to the feature amount calculation unit 10-1. Other structures are the same as or equivalent to those of fig. 1, and the same reference numerals are given to the same or equivalent structural parts. The following description will mainly explain the parts different from the numerical control apparatus 1.
The tool information recording unit 21 records tool information 113, which is information on a tool provided in the machine tool 16, and outputs the recorded tool information 113 to the feature amount calculating unit 10-1. The tool information 113 contains at least information on the number of edges of the tool. The tool information 113 may further include information on the type of tool such as an end mill or a knife, the tool length, the tool shape such as a tool diameter, and the like. In addition, in the case where a turning tool is provided, the tool information recording section 21 outputs the tool information 113 such that the number of edges of the tool is 1. In the case where a turning tool is provided, the number of edges is the same as the number of tools when a plurality of tools are simultaneously cut. For example, in a case where the machine tool 16 has a lower tool rest and an upper tool rest, and machining is performed by a turning tool having 1 piece each provided on both tool rests, the tool information recording unit 21 outputs the tool information 113 so that the number of edges is 2.
The feature amount calculating unit 10-1 receives the sensor signal 100 from the machine tool 16, the spindle operation command 101 from the drive command unit 12, and the tool information 113 from the tool information recording unit 21. The feature amount calculating unit 10-1 generates feature amount information 102 including at least a phase difference, which is a feature amount of chatter vibration, based on the sensor signal 100, the spindle operation command 101, and the tool information 113, and outputs the generated feature amount information 102 to the vibration control unit 11.
Fig. 17 is a diagram showing a functional configuration of the feature amount calculating unit 10-1 shown in fig. 16. The feature quantity calculating unit 10-1 includes a sensor signal processing unit 13, a phase difference calculating unit 15, and a timing signal generating unit 14-1.
The timing signal generation unit 14-1 determines that the angle of the spindle 17, that is, the spindle angle passes a set value, based on the spindle operation command 101 output from the drive command unit 12 and the tool information 113 output from the tool information recording unit 21, and outputs a timing signal 111 to the phase difference calculation unit 15 at the determined timing. Next, the details of the method for generating the timing signal 111 by the timing signal generating unit 14-1 will be described. Hereinafter, a description will be given on the premise that a cutter having a number of blades α is provided on the spindle 17. Where α is a natural number greater than or equal to 2.
Fig. 18 is a diagram showing a relationship between the timing signal 111 output from the timing signal generating unit 14-1 shown in fig. 17 and the spindle angle command. As shown in FIG. 18, the spindle angle command is to take 0[ rad ]]To 2 pi [ rad ]]If the value of (1) reaches 360 rad]Then resume to 0 rad]Is a signal of (a). The timing signal 111 is the angle set for each pass of the spindle angle commandA signal output at that time. Here, β is a natural number greater than or equal to 2 and less than or equal to α. That is, the timing signal 111 is output α times in 1 rotation of the spindle 17. Fig. 18 shows an example of α=2, in which the spindle angle command is given by the set angle +.> The timing signal 111 is output, and the timing signal 111 is not output other than this. In addition, angle->The spindle 17 may be set at 1 in 1 rotation, and any angle may be set. However, at +.>And->There are restrictions shown in the following formula (4).
As another example, the timing signal generation unit 14-1 may generate the timing signal 111 using the spindle speed command included in the spindle operation command 101. In this case, the timing signal generation unit 14-1 outputs the timing signal 111 for each time T2 calculated by the following equation (5) based on the spindle speed command S [ rpm ].
T2=60/(S×α)…(5)
As described above, the numerical control device 5 according to embodiment 5 includes the tool information recording unit 21 that records information on the number of edges of the tool, and the feature amount calculating unit 10-1 calculates the feature amount information 102 in consideration of the number of edges of the tool. The timing signal generating unit 14-1 generates the timing signal 111 every time the spindle 17 rotates based on the tool information 113 acquired from the tool information recording unit 21, and outputs the generated timing signal to the phase difference calculating unit 15. This can suppress chatter vibration even when the number of edges of the cutter is 2 or more.
Next, a hardware configuration for realizing the functions of the numerical control devices 1 to 5 described in embodiments 1 to 5 will be described with reference to fig. 19 and 20. Fig. 19 is a block diagram showing an example of a hardware configuration for realizing the functions of the numerical control devices 1 to 5 described in embodiments 1 to 5. Fig. 20 is a block diagram showing another example of a hardware configuration for realizing the functions of the numerical control devices 1 to 5 described in embodiments 1 to 5.
In order to realize the functions of the numerical control devices 1 to 5, as shown in fig. 19, the numerical control device may include a processor 701 for performing operations, a memory 702 for storing a program read by the processor 701, and an interface 704 for inputting and outputting signals.
The processor 701 may be an arithmetic unit called a microprocessor, a microcomputer, CPU (Central Processing Unit) or DSP (Digital Signal Processor). The memory 702 is exemplified by nonvolatile or volatile semiconductor memories such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), and EEPROM (registered trademark) (Electrically EPROM), magnetic disks, floppy disks, optical disks, compact disks, mini disks, and DVD (Digital Versatile Disc).
The memory 702 stores programs for executing functions of the numerical control devices 1 to 5. The processor 701 transmits and receives necessary information via the interface 704, and the processor 701 executes a program stored in the memory 702, and the processor 701 refers to a table stored in the memory 702, whereby the above-described processing can be performed. The operation result obtained by the processor 701 can be stored in the memory 702.
In addition, when the functions of the numerical control devices 1 to 5 are realized, the processing circuit 703 shown in fig. 20 can be used. The processing circuitry 703 is a single circuit, a composite circuit, ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or a combination thereof. Information input to the processing circuit 703 and information output from the processing circuit 703 can be acquired via the interface 704.
Further, some of the processes of the numerical control apparatuses 1 to 5 may be performed by the processing circuit 703, and processes not performed by the processing circuit 703 may be performed by the processor 701 and the memory 702.
The configuration shown in the above embodiment is an example, and other known techniques may be combined, or the embodiments may be combined with each other, and a part of the configuration may be omitted or changed without departing from the scope of the present invention.
Description of the reference numerals
1. 2, 3, 4, 5 numerical control devices, 10-1 feature quantity calculation units, 11-1, 11-2, 11-3 vibration control units, 12 drive command units, 13 sensor signal processing units, 14-1 timing signal generation units, 15 phase difference calculation units, 16 working machines, 17 spindles, 18 feed shafts, 19 sensors, 20 input devices, 21 tool information recording units, 100 sensor signals, 101 spindle operation commands, 102 feature quantity information, 103 operation commands, 104-1 drive correction values, 105 operation information, 106 limit information, 110 state quantity signals, 111 timing signals, 113 tool information, 120 integrators, 121 differentiators, 122 proportional gains, 123 integral gains, 124 differential gains, 125 feature quantity deviations, 126 feature quantity correction amounts, 201 information observation units, 202 inference units, 203 inference data sets, 300 learning devices, 301 learning data acquisition units, 302 learning processing units, 303 chatter information, 304 learning data sets, 305 models, 701 processors, 702 memories, 703 processing circuits 704.

Claims (12)

1. A numerical control device includes a drive command unit for giving an operation command to a main shaft and a feed shaft of a machine tool,
the numerical control device is characterized by comprising:
a feature amount calculation unit that calculates feature amount information of chatter vibration based on a sensor signal obtained by detecting vibration of a tool or a machining object mounted on the machine tool and a spindle operation command that is an operation command of the spindle; and
and a vibration control unit that outputs a correction value for correcting the operation command to the drive command unit until the feature amount information reaches a target range.
2. The numerical control device according to claim 1, wherein,
the feature amount calculation unit includes:
a sensor signal processing unit that generates a plurality of types of state amounts based on the sensor signals;
a timing signal generation unit that periodically generates and outputs a timing signal at a timing synchronized with the rotation of the spindle; and
and a phase difference calculation unit that performs a normalization on each of the timing signals to dimensionless the plurality of types of state quantities, and calculates a phase difference representing a difference between phases of the dimensionless state quantity signals in a state space formed by the dimensionless state quantities.
3. The numerical control device according to claim 2, wherein,
further comprises a tool information recording unit for recording information of a tool attached to the machine tool,
the timing signal generating unit outputs the timing signal every time the spindle rotates, based on the information of the tool acquired from the tool information recording unit.
4. A numerical control apparatus according to claim 2 or 3, characterized in that,
the sensor signal processing unit generates the sensor signal, and the state quantity obtained by calculating the amount of change of the sensor signal per unit time, and the state quantity obtained by calculating the cumulative amount of the sensor signal per unit time is greater than or equal to 2 state quantities.
5. The numerical control device according to any one of claims 2 to 4,
the timing signal generating unit generates the timing signal based on at least one of an angle command of the spindle, a speed command of the spindle, an actual angle of the spindle, that is, a spindle angle, and an actual speed of the spindle, that is, a spindle speed.
6. The numerical control device according to any one of claims 2 to 5,
The operation command includes a spindle speed command which is a speed command of the spindle and a feed shaft speed command which is a speed command of the feed shaft,
the vibration control unit outputs a correction value for correcting the feed shaft speed command to the drive command unit in synchronization with the increase or decrease of the main shaft speed command.
7. The numerical control device according to claim 6, characterized in that,
the vibration control unit changes the spindle speed command and the feed shaft speed command so that the feed amount per 1 rotation of the spindle does not change, in accordance with the value of the phase difference.
8. The numerical control device according to any one of claims 1 to 7,
inputting limit information including an upper limit value and a lower limit value of the operation command to the vibration control unit,
the vibration control unit increases or decreases the operation command within a range between the upper limit value and the lower limit value.
9. The numerical control device according to any one of claims 1 to 8,
the vibration control unit generates a drive correction value based on a value obtained by multiplying a gain by at least 1 of a deviation of the target value of the feature amount information and the feature amount information, a time integral value of the deviation, and a time differential value of the deviation.
10. The numerical control device according to any one of claims 1 to 9,
the vibration control unit includes:
an information observation unit configured to observe the spindle operation command and the feature amount information as time series data, and generate an estimation data set based on the observed time series data; and
and an estimating unit that outputs the correction value by inputting the estimation data set generated by the information observing unit into an estimation model obtained by performing machine learning in advance.
11. A learning device is configured to be applied to a numerical control device having a drive command unit for giving an operation command to a main shaft and a feed shaft of a machine tool,
the learning device is characterized by comprising:
a feature amount calculation unit that calculates feature amount information of chatter vibration based on a sensor signal obtained by detecting vibration of a tool or a machining object mounted on the machine tool and a spindle operation command, which is an operation command of the spindle;
a learning data acquisition unit that acquires a learning data set in which the feature amount information and the operation instruction are associated with each other, the learning data set indicating whether or not the chatter vibration is present; and
And a learning processing unit that has the learning data set acquired by the learning data acquisition unit and an estimation model, and performs machine learning of the estimation model so that an output value corresponding to the presence or absence of the chatter vibration is output from the estimation model if the feature amount information and the operation command are input to the estimation model.
12. A method for suppressing chatter vibration is performed by using a numerical control device having a drive command unit for giving an operation command to a main shaft and a feed shaft of a machine tool,
the method for suppressing chatter vibration is characterized by comprising the steps of:
calculating the feature information of the chatter vibration based on a sensor signal obtained by detecting vibration of a tool or a machining object mounted to the machine tool and a spindle operation command, which is an operation command of the spindle; and
and outputting a correction value for correcting the operation command to the drive command unit until the feature amount information reaches a target range.
CN202180094994.6A 2021-04-26 2021-04-26 Numerical control device, learning device, and chatter suppression method Pending CN117120946A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/016599 WO2022230008A1 (en) 2021-04-26 2021-04-26 Numerical control device, learning device, and chattering vibration suppressing method

Publications (1)

Publication Number Publication Date
CN117120946A true CN117120946A (en) 2023-11-24

Family

ID=83846767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180094994.6A Pending CN117120946A (en) 2021-04-26 2021-04-26 Numerical control device, learning device, and chatter suppression method

Country Status (4)

Country Link
JP (1) JP7179198B1 (en)
CN (1) CN117120946A (en)
DE (1) DE112021007584T5 (en)
WO (1) WO2022230008A1 (en)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5170358A (en) * 1990-12-06 1992-12-08 Manufacturing Laboratories, Inc. Method of controlling chatter in a machine tool
JP5105102B2 (en) * 2009-04-10 2012-12-19 エヌティーエンジニアリング株式会社 Chatter control method and apparatus for work machine
TWI472402B (en) * 2012-02-10 2015-02-11 中原大學 Tool flutter monitoring method
JP6021632B2 (en) * 2012-12-20 2016-11-09 三菱重工業株式会社 Processing device control device, processing device, processing device control program, processing device control method, and processing method
JP2014140918A (en) * 2013-01-23 2014-08-07 Hitachi Ltd Cutting vibration inhibition method, arithmetic control device, and machine tool
JP6625794B2 (en) * 2014-05-21 2019-12-25 Dmg森精機株式会社 A method for calculating a spindle stable rotational speed capable of suppressing chatter vibration, a method for notifying the method, a method for controlling a spindle rotational speed, an NC program editing method, and an apparatus therefor.
JP6257481B2 (en) * 2014-09-02 2018-01-10 三菱電機株式会社 Numerical controller
JP2016191981A (en) * 2015-03-30 2016-11-10 アズビル株式会社 Feedback control device, feedback control method, and feedback control program
JP6450738B2 (en) * 2016-12-14 2019-01-09 ファナック株式会社 Machine learning device, CNC device, and machine learning method for detecting sign of occurrence of tool vibration in machine tool
JP6803248B2 (en) 2017-01-27 2020-12-23 オークマ株式会社 Machine tool vibration suppression method and equipment
JP6959278B2 (en) * 2019-02-27 2021-11-02 ファナック株式会社 Chatter vibration judgment device, machine learning device and system
WO2020208685A1 (en) * 2019-04-08 2020-10-15 三菱電機株式会社 Numerical control device and chattering identification method

Also Published As

Publication number Publication date
JP7179198B1 (en) 2022-11-28
JPWO2022230008A1 (en) 2022-11-03
DE112021007584T5 (en) 2024-02-15
WO2022230008A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
US9690281B2 (en) Machine tool and machining control device thereof
US8229598B2 (en) Vibration suppressing device for machine tool
US8005574B2 (en) Vibration suppressing method and device
JP4433422B2 (en) Vibration suppression device
WO2013038529A1 (en) Machining error computation device, machining error computation method, machining control device and machining control method
JP2010017783A (en) Method and device for suppressing vibration
US10627807B2 (en) Motor controller
JP2010520077A (en) Method and apparatus for reducing milling defects
CN110875703B (en) Machine learning device, control system, and machine learning method
US20090251093A1 (en) Motor control apparatus
WO2013038532A1 (en) Processing control apparatus, and processing control method
CN109746762B (en) Online monitoring and inhibiting method for deep hole boring machining chatter
JP5874262B2 (en) Machining simulation apparatus, machining simulation method, machining control apparatus, and machining control method
JP5226484B2 (en) Chatter vibration suppression method
EP1536302B1 (en) Method and apparatus for controlling a machine tool
Qian et al. Youla parameterized adaptive vibration control against deterministic and band-limited random signals
JP5155090B2 (en) Vibration determination method and vibration suppression device for machine tool
CN109388099B (en) Machining of workpieces with model-supported error compensation
CN113646613A (en) Numerical control device and learning device
CN107807526B (en) Method for intelligently inhibiting machining chatter vibration based on stability simulation
CN117120946A (en) Numerical control device, learning device, and chatter suppression method
CN111650889A (en) Intelligent control method for cutting chatter suppression of five-axis gantry numerical control machining center
CN109702554A (en) A kind of adaptive vibration moulding milling parameter suppressing method
Dumanli et al. Active chatter mitigation by optimal control of regenerative machining process dynamics
JPH08202405A (en) Robust-adaptive control method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination