WO2022230008A1 - Numerical control device, learning device, and chattering vibration suppressing method - Google Patents

Numerical control device, learning device, and chattering vibration suppressing method Download PDF

Info

Publication number
WO2022230008A1
WO2022230008A1 PCT/JP2021/016599 JP2021016599W WO2022230008A1 WO 2022230008 A1 WO2022230008 A1 WO 2022230008A1 JP 2021016599 W JP2021016599 W JP 2021016599W WO 2022230008 A1 WO2022230008 A1 WO 2022230008A1
Authority
WO
WIPO (PCT)
Prior art keywords
spindle
command
unit
feature amount
information
Prior art date
Application number
PCT/JP2021/016599
Other languages
French (fr)
Japanese (ja)
Inventor
遼輔 池田
一樹 高幣
智哉 藤田
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to CN202180094994.6A priority Critical patent/CN117120946A/en
Priority to PCT/JP2021/016599 priority patent/WO2022230008A1/en
Priority to DE112021007584.5T priority patent/DE112021007584T5/en
Priority to JP2021555531A priority patent/JP7179198B1/en
Publication of WO2022230008A1 publication Critical patent/WO2022230008A1/en

Links

Images

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

Definitions

  • the present disclosure relates to a numerical control device, a learning device, and a chatter vibration suppression method for suppressing chatter vibration in a machine tool.
  • a machine tool is a mechanical device that removes and processes a workpiece into a desired shape by changing the relative position between the workpiece and the tool.
  • Machine tools typified by milling machines and lathes perform machining by mounting a tool or an object to be machined on a spindle and rotating the spindle. During machining, vibrations called “chatter” may occur. When chatter vibration occurs, the finished surface accuracy deteriorates and it causes tool breakage.
  • Patent Document 1 discloses a method of searching for and obtaining the optimum spindle speed for suppressing chatter vibration.
  • the optimum spindle speed is calculated based on the phase difference gradient.
  • the phase difference gradient is the ratio of the amount of change in the phase difference to the amount of change in the spindle speed, that is, the gradient of the phase difference.
  • This phase difference is calculated by a known formula including chatter vibration, the number of tool edges, and the spindle speed as parameters representing the chatter vibration feature quantity.
  • the phase difference is measured while changing the spindle speed, and the phase difference gradient is calculated based on the measured phase difference.
  • Patent Document 1 has the problem that if the characteristics of the vibration system that generates chatter vibration change during the search for the optimum spindle speed, the search must be interrupted and the process must be restarted from the beginning. be. This is because the characteristics of the vibration system that generates chatter vibration easily change due to factors such as a decrease in the mass of the workpiece due to machining or a change in the machining location of the workpiece. Therefore, in the method of Patent Document 1, if the characteristics of the vibration system that causes chatter vibration change before the search for the optimum spindle speed is completed, the optimum spindle speed cannot be calculated, and chatter vibration is suppressed. is difficult.
  • the present disclosure has been made in view of the above, and an object thereof is to obtain a numerical controller capable of suppressing chatter vibration even when the characteristics of the vibration system change during suppression of chatter vibration. .
  • the numerical control device has a drive command unit that gives an operation command to the main shaft and the feed shaft of the machine tool, and further includes a feature amount calculation unit and vibration control.
  • the feature amount calculator calculates chatter vibration feature amount information based on a sensor signal that detects vibration of a tool attached to a machine tool or a workpiece and a spindle operation command that is a spindle operation command.
  • the vibration control section outputs a correction value for correcting the operation command to the drive command section until the feature amount information reaches the target range.
  • the numerical control device it is possible to suppress chatter vibration even when the characteristics of the vibration system change during suppression of chatter vibration.
  • FIG. 1 is a diagram showing a functional configuration of a numerical controller according to Embodiment 1;
  • FIG. A diagram showing the functional configuration of the feature amount calculation unit shown in FIG. A diagram showing the relationship between the timing signal output by the timing signal generator shown in FIG. 2 and the spindle angle command.
  • a diagram showing a dimensionless quantity calculated by the phase difference calculator shown in FIG. Flowchart showing a processing flow by the vibration control unit and the drive command unit shown in FIG.
  • FIG. 2 is a diagram showing another configuration example for realizing the function of the vibration control unit shown in FIG.
  • FIG. 1 Diagram showing an example configuration of an inference model using a general neural network
  • FIG. 4 shows a functional configuration of a numerical controller according to Embodiment 2
  • FIG. 10 is a diagram showing a functional configuration of a numerical control device according to Embodiment 3;
  • FIG. 10 is a diagram showing a functional configuration of a numerical control device according to Embodiment 5; A diagram showing the functional configuration of the feature amount calculation unit shown in FIG. A diagram showing the relationship between the timing signal output by the timing signal generator shown in FIG. 17 and the spindle angle command.
  • Block diagram showing an example of a hardware configuration for realizing the functions of the numerical controller described in the first to fifth embodiments Block diagram showing another example of hardware configuration for realizing the functions of the numerical controller described in the first to fifth embodiments
  • FIG. 1 is a diagram showing the functional configuration of a numerical control device 1 according to Embodiment 1. As shown in FIG. The numerical controller 1 numerically controls the machine tool 16 by giving an operation command 103 to the machine tool 16 .
  • the machine tool 16 has a main shaft 17 and a feed shaft 18 each provided with a motor driven by a run command 103 .
  • a workpiece is installed on the spindle 17 and a tool is installed on the feed shaft 18 .
  • the machine tool 16 also outputs to the numerical controller 1 operation information 105 including at least information on the positions of the spindle 17 and the feed shaft 18 and information on speed and motor current.
  • a sensor 19 is attached to the machine tool 16 .
  • the sensor 19 outputs to the numerical controller 1 a sensor signal 100 that detects the vibration of the tool or workpiece.
  • Sensor 19 is attached to the structure of spindle 17 or feed shaft 18 of machine tool 16 .
  • the position where the sensor 19 is attached may be any position that can detect the vibration of the tool or the object to be processed, but it is more preferable if it is near the point where the tool and the object to be processed contact each other.
  • any type of sensor 19 may be used as long as it can detect the vibration of a tool or an object to be processed.
  • sensors 19 are displacement sensors, velocity sensors, acceleration sensors, angular velocity sensors.
  • the sensor 19 may be a force sensor that detects cutting reaction force, or a microphone that detects cutting noise during machining.
  • at least one of the positions, speeds, and motor currents of the spindle 17 and feed shaft 18 included in the motion information 105 is used to detect vibration of the tool or workpiece during machining.
  • Information indicating the detected vibration may be output as the sensor signal 100 .
  • the numerical control device 1 has a feature amount calculator 10 , a vibration controller 11 , and a drive commander 12 .
  • the drive command unit 12 receives motion information 105 from the machine tool 16 and gives a drive command 103 to the spindle 17 and the feed shaft 18 of the machine tool 16 based on the received motion information 105 .
  • the drive command unit 12 further receives the drive correction value 104 from the vibration control unit 11.
  • the drive command unit 12 outputs a drive command 103 generated based on the motion information 105 and the drive correction value 104 to the machine tool 16 and the vibration control unit 11 .
  • the drive command unit 12 outputs the spindle run command 101 included in the generated run command 103 to the feature quantity calculator 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.
  • a 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.
  • Spindle speed is the actual speed of the spindle 17 relative to the spindle speed command.
  • the operation command 103 includes at least one of a spindle angle command and a spindle speed command, and at least one of a feed axis position command and a feed shaft speed command.
  • a feed axis position command is a position command to the feed shaft 18 .
  • a feed axis speed command is a speed command for the feed shaft 18 .
  • the feature quantity calculation unit 10 receives the sensor signal 100 from the machine tool 16 and receives the spindle operation command 101 from the drive command unit 12 .
  • the feature quantity calculator 10 calculates feature quantity information 102 based on the sensor signal 100 and the spindle operation command 101 and outputs the calculated feature quantity information 102 to the vibration controller 11 .
  • the feature quantity information 102 includes at least phase difference information, which is a feature quantity of chatter vibration.
  • FIG. 2 is a diagram showing the functional configuration of the feature quantity calculation unit 10 shown in FIG.
  • the feature amount calculator 10 has a sensor signal processor 13 , a phase difference calculator 15 , and a timing signal generator 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 calculation unit 15 .
  • the state quantity signal 110 is a signal containing a first state quantity and a second state quantity.
  • 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.
  • the first state quantity is the sensor signal 100
  • the second state quantity is a state quantity obtained by time-differentiating the sensor signal 100 once.
  • the first state quantity itself may also be a state quantity obtained by time differentiation.
  • the sensor signal processing unit 13 uses the sensor signal 100 and the signal obtained by differentiating the sensor signal 100 once with respect to time as a time-series signal at the same time as the state quantity signal 110 .
  • time differentiation means processing for calculating the amount of change in the state quantity per unit time
  • time integration means processing for calculating the cumulative amount for each unit time.
  • the difference between the number of times of time differentiation of the first state quantity and the number of times of time differentiation of the second state quantity may be any combination as long as it is an odd number.
  • the first state quantity is a state quantity obtained by time-differentiating the sensor signal 100 P times
  • the second state quantity is a state quantity obtained by time-differentiating the sensor signal 100 Q times.
  • P and Q are integers.
  • the difference between P and Q should be an odd number.
  • the dimension of the first state quantity or the second state quantity may be a dimension obtained by time-integrating the sensor signal 100 .
  • the first state quantity may be acceleration and the second state quantity may be velocity.
  • the first state quantity may be jerk, which is the differential value of acceleration
  • the position which is the integral value of velocity, may be the second state quantity.
  • the sensor signal processing unit 13 includes, for example, a sensor signal 100 and at least one of a state quantity obtained by time differentiation of the sensor signal 100 and a state quantity obtained by time integration of the sensor signal 100. More than one type of state quantity can be generated.
  • the timing signal generation unit 14 determines that the spindle angle command has passed a predetermined angle based on the spindle operation command 101 output by the drive command unit 12 , the timing signal generation unit 14 outputs a timing signal 111 to the phase difference calculation unit 15 . . Details of the method for generating the timing signal 111 will now be described.
  • FIG. 3 is a diagram showing the relationship between the timing signal 111 output by the timing signal generator 14 shown in FIG. 2 and the spindle angle command.
  • the spindle angle command is included in the spindle operation command 101 output by the drive command section 12 .
  • the spindle angle command is a signal that takes a value from 0 [rad] to 2 ⁇ [rad] and returns to 0 [rad] when reaching 360 [rad].
  • the timing signal generator 14 outputs the timing signal 111 each time the spindle angle command passes through the set angle ⁇ 1, and does not output the timing signal 111 otherwise. As a result, the timing signal 111 is periodically output at timing synchronized with the rotation of the spindle 17 of the machine tool 16 .
  • the angle ⁇ 1 may be any angle as long as it is determined at one point while the main shaft 17 rotates once.
  • the angle ⁇ 1 can be, for example, the angle of the main shaft 17 when the main shaft 17 is oriented.
  • the orientation of the spindle 17 is a reference angle at which the spindle 17 is stopped.
  • the timing signal generator 14 can also generate the timing signal 111 using the spindle speed command included in the spindle operation command 101 .
  • the timing signal generator 14 outputs the timing signal 111 every time T1 calculated from the spindle speed command S [rpm] using the following equation (1) with the initial time t0 as the reference time. do.
  • the timing signal generator 14 may use both the spindle angle command and the spindle speed command.
  • the timing signal generator 14 uses the spindle operation command 101 to generate the timing signal 111, but it is not limited to this.
  • the timing signal generator 14 may generate the timing signal 111 using a feed axis operation command, which is an operation command for the feed shaft 18 , instead of or in addition to the spindle operation command 101 .
  • the phase difference calculator 15 receives the timing signal 111 output by the timing signal generator 14 and the state quantity signal 110 output by the sensor signal processor 13 . Based on the timing signal 111 and the state quantity signal 110 , the phase difference calculator 15 normalizes each of the plurality of types of state quantities included in the state quantity signal 110 to make them dimensionless for each timing signal 111 . The phase difference calculator 15 calculates a phase difference indicating a difference between phases of the dimensionless state quantity signals in the state space composed of the dimensionless state quantity, and stores the calculated phase difference as the feature quantity information 102 . , and is output to the vibration control unit 11 . Details of the state space referred to here will be described later.
  • the phase difference calculator 15 normalizes each of the plurality of types of state quantities included in the state quantity signal 110 by dividing each state quantity by a predetermined maximum value of each state quantity.
  • the maximum value used here may be the maximum value of each state quantity obtained in a previous machining experiment, or the maximum value of each state quantity obtained in a previous simulation.
  • phase difference calculator 15 receives the timing signal 111 at time t1 and time t2 later than time t1. At this time, the phase difference calculator 15 normalizes the state quantity signal 110 at the time t1, and sets the normalized value as the first dimensionless quantity N1. At time t2, the phase difference calculator 15 normalizes the state quantity signal 110 in the same manner as at time t1, and sets the normalized value as the second dimensionless quantity N2.
  • FIG. 4 is a diagram showing dimensionless quantities calculated by the phase difference calculator 15 shown in FIG.
  • the first dimensionless quantity N1 and the second dimensionless quantity N2 are represented in the state space represented by the first state quantity and the second state quantity included in the state quantity signal 110. It is shown.
  • Both the first and second state quantities are vector quantities.
  • the first horizontal axis represents the direction of the first state quantity
  • the second vertical axis represents the direction of the second state quantity. 2 are orthogonal to each other. Therefore, as shown in FIG. 4, a vector space can be defined in which the first axis is the horizontal axis and the second axis is the vertical axis. In this paper, this vector space is called "state space".
  • the phase difference calculator 15 calculates the angle ⁇ is calculated as the phase difference between the first dimensionless quantity N1 and the second dimensionless quantity N2.
  • the phase difference calculator 15 performs the above calculation for each timing signal 111, and calculates the phase difference between the dimensionless quantity of the current process and the dimensionless quantity of the previous process.
  • the phase difference calculator 15 outputs feature amount information 102 including at least the calculated phase difference to the vibration controller 11 .
  • the phase difference takes a value between - ⁇ [rad] and + ⁇ [rad].
  • the vibration control unit 11 receives feature amount information 102 from the feature amount calculation unit 10 and receives an operation command 103 from the drive command unit 12 .
  • the vibration control unit 11 generates a drive correction value 104 based on the feature quantity information 102 and the operation command 103 and outputs the generated drive correction value 104 to the drive command unit 12 .
  • a drive correction value 104 is a correction value for correcting the operation command 103 .
  • FIG. 5 is a flow chart showing the processing flow by the vibration control section 11 and the drive command section 12 shown in FIG.
  • FIG. 5 illustrates a processing flow in which the phase difference among the information included in the feature amount information 102 is used as a determination criterion, and the spindle speed command among various commands included in the operation command 103 is used as a control object.
  • the vibration control unit 11 corrects the operation command 103 in the following steps.
  • phase difference target range is a phase difference target range having values within a preset range.
  • the phase difference target value is set to 0 radian
  • the phase difference target range is set to a range from -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.
  • step S101 if the phase difference is within the phase difference target range (step S101, No), the process proceeds to step S102 and 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, if the phase difference is outside the phase difference target range (step S101, Yes), the process proceeds to step S103.
  • step S103 it is determined whether or not the phase difference is greater than or equal to the phase difference threshold.
  • the phase difference threshold is an arbitrary preset value. In Embodiment 1, as an example, 0 "rad" is set as the phase difference threshold. If it is less than the threshold (step S103, No), the process proceeds to step S105.
  • step S103 "Yes” is determined when the phase difference and the phase difference threshold are equal, but “No” may be determined. That is, if the phase difference is equal to the phase difference threshold value, it may be determined as “Yes” or "No".
  • the spindle speed command is decreased 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 decreased by a predetermined width.
  • the spindle speed command is increased by a predetermined width. That is, in step S105, when the phase difference is determined to be less than the phase difference threshold value in step S103, the value of the spindle speed command is increased by a predetermined width.
  • the value to be increased or decreased may be a ratio to the current spindle speed command, or may be a fixed value that does not depend on the spindle speed command.
  • step S106 it is determined whether or not the processing has ended.
  • the vibration control unit 11 finishes the processing of FIG.
  • the process returns to step S101.
  • the processing shown in FIG. 5 is continuously executed while processing is being performed.
  • the phase difference included in the feature amount information 102 is used as the determination criterion, and the controlled object is the spindle speed command included in the operation command 103.
  • the vibration control unit 11 performs control to output the driving correction value 104 for correcting the driving command 103 output by the driving command unit 12 until the feature amount information 102 reaches the target range.
  • the drive command unit 12 corrects the drive command 103 based on the drive correction value 104 .
  • FIG. 6 is a diagram showing a specific operation example by the vibration control section 11 and the drive command section 12 shown in FIG.
  • FIG. 6 is a diagram showing the relationship between the phase difference and the spindle speed at each time.
  • the upper part of FIG. 6 shows the phase difference, and the lower part shows the spindle speed.
  • the horizontal axis of FIG. 6 represents time.
  • the phase difference takes a value within the phase difference target range, so the spindle speed is a constant value.
  • the phase difference is out of the phase difference target range and has a value less than 0 [rad], which is the phase difference threshold. Therefore, the spindle speed increases by a predetermined set value.
  • the phase difference takes a value within the phase difference target range, so the spindle speed becomes a constant value.
  • the phase difference is out of the phase difference target range and exceeds the phase difference threshold value of 0 [rad]. Therefore, the spindle speed is decreased by a predetermined set value.
  • the phase difference takes a value within the phase difference target range, so the spindle speed takes a constant value.
  • the drive command unit 12 changes the drive command 103 according to the value of the phase difference.
  • the vibration control section 11 outputs a drive correction value 104 based on the value of the phase difference to the drive command section 12 .
  • time-series data of a plurality of types of state quantities are generated based on the sensor signal 100 that detects the vibration of the tool attached to the machine tool 16 or the workpiece.
  • dimensionless quantities indicating a plurality of types of state quantities are generated for each timing signal 111, and a phase difference indicating an angle ⁇ , which is a difference between the phases of the dimensionless quantities, is calculated.
  • the operation command 103 is corrected based on the value of this phase difference.
  • 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 for spindle speeds under a plurality of conditions. Therefore, even if the characteristics of chatter vibration change during machining of the workpiece, chatter vibration can be suppressed.
  • the feature amount calculation unit 10 may calculate the phase difference based on the following formulas (2) and (3).
  • Phase difference (k - [k]) x 2 ⁇ ... (3)
  • f represents the frequency of chatter vibration
  • n represents the number of teeth of the tool.
  • the chatter vibration frequency f can be obtained by performing frequency analysis represented by Fast Fourier Transform (FFT) on the sensor signal 100 and calculating the frequency at which the gain peaks. can.
  • FFT Fast Fourier Transform
  • the function [k] is a function that converts the value of "k” into an integer, and rounds the value of "k” below the decimal point toward zero.
  • chatter vibration feature quantity information 102 is calculated based on the detected sensor signal 100 and a spindle operation command 101 that is an operation command for the spindle 17 .
  • a 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.
  • chatter vibration can be suppressed even when the characteristics of the vibration system change during the suppression of chatter vibration.
  • optimization of the drive command value which has been conventionally performed, is not performed. As a result, the chatter vibration suppression time can be shortened, and the chatter vibration suppression can be speeded up.
  • the method of Embodiment 1 can calculate the feature amount information 102 without using frequency analysis represented by FFT. Therefore, it is possible to shorten the time from the occurrence of chatter vibration to the suppression of chatter vibration. As a result, it is possible to speed up the suppression of chatter vibration.
  • the machine tool 16 according to Embodiment 1 has a configuration in which the workpiece is installed on the spindle 17, the configuration is not limited to this. As an alternative configuration, a similar effect can be obtained even if a tool is installed on the spindle 17, as typified by a milling machine and a lathe.
  • one sensor 19 is used.
  • the processing described in Embodiment 1 can be performed for all installed sensors 19 to determine the occurrence of chatter vibration.
  • the sensors 19 are installed at a plurality of locations, even if chatter vibration occurs at a plurality of locations during machining, the chatter vibration can be suppressed.
  • the vibration control unit 11 may suppress chatter vibration using an inference model that has undergone machine learning in advance for suppressing chatter vibration.
  • FIG. 7 is a diagram showing another configuration example for realizing the function of the vibration control section 11 shown in FIG.
  • the vibration control section 11 has an information observation section 201 and an inference section 202 .
  • the feature amount information 102 and the operation command 103 are input to the vibration control unit 11 .
  • the information observation unit 201 observes the feature quantity information 102 and the driving command 103 for a predetermined number of samplings as time-series data, and generates an inference data set 203 based on the time-series data.
  • the inference unit 202 inputs the inference data set 203 generated by the information observation unit 201 to the inference model that has undergone machine learning in advance so as to output the drive correction value 104 that suppresses chatter vibration.
  • a correction value 104 is output.
  • the inference unit 202 may use any algorithmic inference model. As an example, an inference model using a neural network will be described.
  • FIG. 8 is a diagram showing a configuration example of an inference model using a general neural network.
  • the neural network has input layers x1, x2, . . . , xn with n neurons, hidden layers y1, y2, . and an output layer z1 having
  • FIG. 8 shows an example in which there is one output layer, two or more output layers may be provided.
  • the input layers x1, x2, . . . , xn are connected to the intermediate layers y1, y2, .
  • the connection between the input layer and the intermediate layer shown in FIG. 8 is an example, and each input layer x1, x2, . . . , xn may be connected to any intermediate layer y1, y2, .
  • FIG. 9 is a diagram showing a configuration example of a learning device 300 that learns an inference model used by the vibration control unit 11 shown in FIG.
  • the learning device 300 has a learning data acquisition unit 301 and a learning processing unit 302 .
  • the learning device 300 can be applied to a numerical control device 1 having a drive command section 12 that gives an operation command 103 to a spindle 17 and a feed shaft 18 of a machine tool 16 as shown in FIG.
  • the learning data acquisition unit 301 acquires a learning data set 304 in which the feature amount information 102 and the operation command 103 acquired during actual machining are associated with chatter vibration presence/absence information 303 indicating the presence or absence of chatter vibration.
  • the chatter vibration presence/absence information 303 included in the learning data set 304 can be expressed using different numerical values depending on whether or not chatter vibration has occurred. For example, it can be represented by a numerical value such as "1" when chatter vibration occurs, and "0" when it does not occur. Further, the chatter vibration presence/absence information 303 can use, for example, the result determined by evaluating the machined surface after machining.
  • the learning processing unit 302 has a learning data set 304 and an inference model 305 .
  • the learning processing unit 302 performs learning using the feature amount information 102 and the driving command 103 included in the learning data set 304 as input data. Specifically, the learning processing unit 302 performs so-called supervised learning so that the output of the inference model 305 matches the numerical value of the chatter vibration presence/absence information 303 .
  • the inference model 305 outputs an output value corresponding to the presence or absence of chatter vibration when the feature quantity information 102 and the operation command 103 are input.
  • the learning processing unit 302 inputs the feature amount information 102 and the operation command 103 to the input layer, and weights A1 to Aa and B1 to Bb so that the values output from the output layer approach numerical values indicating the presence or absence of chatter vibration. to adjust. Learning of the inference model 305 is performed by adjusting the weights A1 to Aa and B1 to Bb.
  • the learning processing unit 302 can use the error backpropagation method as a supervised learning method used when the inference model 305 is learned. In addition, in order to improve the generalization performance of the inference model 305, the learning processing unit 302 employs methods such as "dropout” that randomly excludes neurons during learning, and “early stopping” that monitors errors and terminates learning early. may be used.
  • the learning processing unit 302 outputs the learned inference model 305 as a learned inference model.
  • the learned inference model output by the learning processing unit 302 can be used in the inference unit 202 shown in FIG.
  • the learning device 300 has the inference model 305 and the learning dataset 304 .
  • chatter vibration presence/absence information 303 indicating the presence or absence of chatter vibration
  • feature amount information 102 and operation command 103 are associated and held.
  • the feature amount information 102 , the operation command 103 and the chatter vibration presence/absence information 303 are input to the inference model 305 .
  • the inference model 305 performs machine learning so that when the feature amount information 102 and the operation command 103 are input, an output value corresponding to the presence or absence of chatter vibration is output. If such a learning device 300 is applied to the numerical control device 1, it is possible to output the drive correction value 104 using the inference model 305 that has undergone machine learning in advance, so that chatter vibration can be suppressed at high speed.
  • the inference model 305 may be configured using other known methods such as RNN (Recurrent Neural Network), LSTM (Long Short-Term Memory), SVM (Support Vector Machine), and the like.
  • FIG. 10 is a diagram showing the functional configuration of a numerical control device 2 according to Embodiment 2.
  • the numerical controller 2 has a feature quantity calculator 10 , a vibration controller 11 - 1 , a drive commander 12 and an input device 20 .
  • parts different from the numerical control device 1 will be mainly described.
  • the numerical controller 2 has an input device 20 in addition to the configuration described for the numerical controller 1 according to the first embodiment.
  • the operator inputs information on the upper limit value and the lower limit value of the operation command 103 to be corrected in the vibration control section 11-1 to the input device 20 before processing.
  • the input device 20 outputs restriction information 106 including at least the upper limit value and the lower limit value of the input operation command 103 to the vibration control section 11-1.
  • 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 described and acquire them.
  • the vibration control unit 11 - 1 receives the feature amount information 102 from the feature amount calculation unit 10 , the operation command 103 from the drive command unit 12 , and the restriction information 106 from the input device 20 . Vibration control section 11 - 1 generates drive correction value 104 based on feature amount information 102 , operation command 103 and limit information 106 , and outputs generated drive correction value 104 to drive command section 12 .
  • FIG. 11 is a flow chart showing the processing flow by the vibration control section 11-1 shown in FIG.
  • the vibration control section 11-1 corrects the operation command in the following steps.
  • FIG. 11 the same reference numerals are given to the same or equivalent processes as those shown in FIG. 11, similarly to FIG. 5, illustrates a processing flow in which the phase difference is used as a determination criterion and the spindle speed command is controlled.
  • the parts different from FIG. 5 will be mainly described.
  • steps S101 to S105 are the same as or equivalent to that of FIG. 5, and the description is omitted here.
  • step S201 the spindle speed command processed in step S104 is limited within a predetermined lower limit of the spindle speed command. Specifically, when the spindle speed command processed in step S104 is less than the lower limit of the spindle speed command (step S201, No), the process proceeds to step S202 to change the spindle speed command to the lower limit of the spindle speed command. After that, the process proceeds to step S106. If the spindle speed command is equal to or higher than the lower limit value of the spindle speed command (step S201, Yes), the process advances to step S106 without changing the spindle speed command.
  • step S203 the spindle speed command processed in step S105 is limited within the range of the predetermined upper limit of the spindle speed command. Specifically, when the spindle speed command processed in step S105 exceeds the upper limit of the spindle speed command (step S203, No), the process advances to step S204 to set the spindle speed command to the upper limit of the spindle speed command. After changing, the process proceeds to step S106. If the spindle speed command is equal to or lower than the upper limit of the spindle speed command (step S203, Yes), the process proceeds to step S106 without changing the spindle speed command.
  • step S106 it is determined whether or not the processing has ended. If the machining is completed (step S106, Yes), the vibration control section 11-1 terminates the processing of FIG. On the other hand, if the processing has not ended (step S106, No), the process returns to step S101. The processing shown in FIG. 11 is continuously executed while processing is being performed.
  • FIG. 11 illustrates the case where the phase difference included in the feature amount information 102 is used as the determination criterion, and the controlled object is the spindle speed command included in the operation command 103. However, if the feature amount information 102 is other than the phase difference, , the same flow can be used when the controlled object is other than the spindle speed command.
  • the vibration control unit 11-1 receives the limit information 106 including the upper limit value and the lower limit value of the operation command 103, and the vibration control unit 11-1 controls the input upper limit value and lower limit value. Increase or decrease the run command 103 within the range between This prevents the vibration control unit 11-1 from outputting to the drive command unit 12 the drive correction value 104 outside the cutting conditions determined by the tool and machine tool. As a result, it is possible to prevent the corrected operation command 103 from becoming a value unexpected by the operator. As a result, it is possible to obtain the further effect of preventing the occurrence of unintended processing defects.
  • FIG. 12 is a diagram showing the functional configuration of a numerical control device 3 according to Embodiment 3. As shown in FIG. 12, the numerical controller 1 is replaced with the numerical controller 3, and the vibration controller 11 is replaced with the vibration controller 11-2. In addition to the operation command 103, operation information 105 is input to the vibration control unit 11-2. Other configurations are the same as or equivalent to those in FIG. 1, and the same or equivalent components are denoted by the same reference numerals. In the following, portions different from the numerical control device 1 will be mainly described.
  • the vibration control unit 11-2 receives the feature amount information 102 from the feature amount calculation unit 10, the operation command 103 from the drive command unit 12, and the motion information 105 from the machine tool 16. Vibration control section 11 - 2 generates drive correction value 104 based on feature quantity information 102 , operation command 103 and motion information 105 , and outputs generated drive correction value 104 to drive command section 12 .
  • the vibration control unit 11-2 performs control so that the feature amount information 102 reaches the feature amount target value set in advance.
  • a control system is configured as shown in FIG.
  • FIG. 13 is a diagram showing a configuration example of a control system that implements the functions of the vibration control section 11-2 according to the third embodiment.
  • FIG. 13 shows, as an example, the configuration of a control system that performs PID (Proportional Integral Differential) control.
  • PID Proportional Integral Differential
  • a feature amount deviation 125 is generated by subtracting the feature amount information 102 from the feature amount target value.
  • "0" is set as an example of the feature quantity target value.
  • the feature quantity information 102 is the phase difference calculated by the phase difference calculator 15 in FIG. It is generally known that the phase difference is 0 when chatter vibration does not occur. Therefore, chatter vibration can be suppressed by setting the feature amount target value to "0".
  • the feature quantity deviation 125 is branched into three, one of which is multiplied by the proportional gain 122 .
  • One of the remaining two is multiplied by integral gain 123 after passing through integrator 120 . That is, the time integral value of the feature quantity deviation 125 is multiplied by the integral gain 123 .
  • the other of the remaining two is multiplied by a differential gain 124 after passing through a differentiator 121 . That is, the time differential value of the feature amount deviation 125 is multiplied by the differential gain 124 .
  • These three types of gain values are added to obtain the feature amount correction amount 126 .
  • the feature amount correction amount 126 is further added to the spindle speed and output to the drive command unit 12 as the drive correction value 104 .
  • the proportional gain 122, the integral gain 123, and the differential gain 124 are values set in advance and given before processing. Also, these three types of gain values can be adjusted by performing trial machining. By appropriately setting these three types of gain values, chatter vibration can be suppressed at a higher speed than in the first embodiment.
  • the vibration control unit 11-2 includes a control system for matching the feature amount information 102 with the feature amount target value. It can be performed faster.
  • the feature amount deviation 125 is multiplied by the proportional gain 122, the time integral value of the feature amount deviation 125 is multiplied by the integral gain 123, and the time differential value of the feature amount deviation 125 is multiplied by the differential gain 124.
  • multiplying it is not limited to this configuration. At least one of the feature amount deviation 125, the time integral value of the feature amount deviation 125, and the time differential value of the feature amount deviation 125 may be multiplied by the gain, and the desired characteristics of the control system or the desired characteristics may be obtained. It is possible to construct a similar control system.
  • FIG. 14 is a diagram showing the functional configuration of a numerical controller 4 according to Embodiment 4.
  • the numerical controller 1 is replaced with the numerical controller 4
  • the vibration controller 11 is replaced with the vibration controller 11-3.
  • the drive correction value 104 input to the drive command unit 12 is replaced with a drive correction value 104-1.
  • Other configurations are the same as or equivalent to those in FIG. 1, and the same or equivalent components are denoted by the same reference numerals. In the following, portions different from the numerical control device 1 will be mainly described.
  • 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 flow chart showing the processing flow by the vibration control section 11-3 shown in FIG.
  • the vibration control section 11-3 corrects the operation command in the following steps.
  • the same reference numerals are given to the same or equivalent processes as those shown in FIG.
  • FIG. 15 illustrates a processing flow in which the phase difference is used as a determination criterion, and the main shaft speed command and the feed axis speed command, which is the speed command of the feed shaft 18, are controlled.
  • the parts different from FIG. 5 will be mainly described.
  • steps S101 to S105 are the same as or equivalent to that of FIG. 5, and the description is omitted here.
  • step S301 after changing the spindle speed command in step S104 or step S105, the feed axis speed command is changed. Specifically, in step S301, the feed shaft speed command is changed so that the feed amount per rotation of the main shaft 17 does not change.
  • the feed amount per rotation of the main shaft 17 is a value obtained by dividing the feed shaft speed, which is the speed of the feed shaft 18, by the main shaft speed. For example, if the spindle speed command is decreased by 10% in step S104, the feed shaft speed command is also decreased by 10% at the same rate.
  • step S105 when the spindle speed command is increased by 10%, the feed shaft speed command is also increased by 10% at the same rate.
  • step S106 it is determined whether or not the processing has ended. If the machining is finished (step S106, Yes), the vibration control section 11-3 finishes the processing of FIG. On the other hand, if the processing has not ended (step S106, No), the process returns to step S101.
  • the processing shown in FIG. 15 is continuously executed while processing is being performed.
  • FIG. 15 illustrates the case where the phase difference included in the feature amount information 102 is used as the determination criterion, but processing in a similar flow is possible even when the feature amount information 102 is other than the phase difference.
  • the vibration control section 11-3 outputs a correction value for correcting the feed axis speed command to the drive command section 12 in synchronization with the increase or decrease of the spindle speed command.
  • the vibration control unit 11-3 changes the spindle speed command and the feed axis speed command according to the phase difference value so that the feed amount per rotation of the spindle 17 does not change. do.
  • This control makes the feed amount per rotation of the main shaft 17 constant, so that the intervals between cutter marks generated on the machined surface are made uniform. As a result, in addition to the effect of the first embodiment, the effect of improving the machined surface quality can be obtained.
  • FIG. 16 is a diagram showing the functional configuration of a numerical control device 5 according to Embodiment 5.
  • the numerical controller 1 is replaced with the numerical controller 5
  • the feature amount calculator 10 is replaced with the feature amount calculator 10-1.
  • a tool information recording unit 21 for generating tool information 113 is added.
  • the tool information 113 is input to the feature amount calculation unit 10-1.
  • Other configurations are the same as or equivalent to those in FIG. 1, and the same or equivalent components are denoted by the same reference numerals. In the following, parts different from the numerical control device 1 will be mainly described.
  • the tool information recording unit 21 records tool information 113, which is information about the tools installed in the machine tool 16, and outputs the recorded tool information 113 to the feature amount calculation unit 10-1.
  • the tool information 113 includes at least information on the number of blades of the tool.
  • the tool information 113 may further include information on the types of tools such as end mills and cutting tools, and information on tool shapes such as tool lengths and tool diameters.
  • the tool information recording unit 21 outputs the tool information 113 assuming that the tool has one blade.
  • the number of cutting edges is the same as the number of tools when a plurality of tools are used for cutting at the same time. For example, when the machine tool 16 has a lower tool post and an upper tool post, and machining is performed using a turning tool installed on each tool post, the tool information recording unit 21 assumes that the number of blades is two, and the tool information 113 is output.
  • the feature quantity calculation unit 10-1 receives the sensor signal 100 from the machine tool 16, receives the spindle operation command 101 from the drive command unit 12, and receives the tool information 113 from the tool information recording unit 21. Based on the sensor signal 100, the spindle operation command 101, and the tool information 113, the feature amount calculation unit 10-1 generates feature amount information 102 including at least a phase difference, which is a feature amount of chatter vibration, and calculates the generated feature amount information. 102 is output to the vibration control unit 11 .
  • FIG. 17 is a diagram showing the functional configuration of the feature amount calculation unit 10-1 shown in FIG.
  • the feature quantity calculator 10-1 has a sensor signal processor 13, a phase difference calculator 15, and a timing signal generator 14-1.
  • the timing signal generation unit 14-1 Based on the spindle operation command 101 output by the drive command unit 12 and the tool information 113 output by the tool information recording unit 21, the timing signal generation unit 14-1 detects when the spindle angle, which is the angle of the spindle 17, has passed the set value. Then, the timing signal 111 is output to the phase difference calculator 15 at the determined timing. A method of generating the timing signal 111 by the timing signal generator 14-1 will be described in detail below. In the following description, it is assumed that a tool having ⁇ blades is installed on the spindle 17 . However, ⁇ is a natural number of 2 or more.
  • FIG. 18 is a diagram showing the relationship between the timing signal 111 output by the timing signal generator 14-1 shown in FIG. 17 and the spindle angle command.
  • the spindle angle command is a signal that takes a value from 0 [rad] to 2 ⁇ [rad] and returns to 0 [rad] when reaching 360 [rad].
  • the timing signal 111 is a signal that is output each time the spindle angle command passes through the set angle ⁇ .
  • is a natural number equal to or greater than 2 and equal to or smaller than ⁇ . That is, the timing signal 111 is output ⁇ times during one rotation of the spindle 17 .
  • the timing signal 111 is output every time the spindle angle command passes through the set angles ⁇ 1 and ⁇ 2, and otherwise the timing signal 111 is not output. It is sufficient that the angle ⁇ 1 is set at only one point during one rotation of the main shaft 17, and any angle may be set. However, there is a constraint between ⁇ ⁇ and ⁇ ⁇ 1 as shown in the following equation (4).
  • the timing signal generator 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 generator 14-1 outputs the timing signal 111 every time T2 calculated from the spindle speed command S [rpm] using the following equation (5).
  • the numerical control device 5 has the tool information recording unit 21 for recording information about the number of blades of the tool, and the feature amount calculation unit 10-1 considers the number of blades of the tool. Then, the feature amount information 102 is calculated. Based on the tool information 113 acquired from the tool information recording unit 21, the timing signal generation unit 14-1 generates a timing signal 111 and outputs it to the phase difference calculation unit 15 each time the main shaft 17 rotates. As a result, even if the tool has two or more blades, it is possible to suppress chatter vibration.
  • FIG. 19 is a block diagram showing an example of a hardware configuration that implements the functions of the numerical controllers 1-5 described in the first to fifth embodiments.
  • FIG. 20 is a block diagram showing another example of the hardware configuration that implements the functions of the numerical controllers 1-5 described in the first to fifth embodiments.
  • the configuration may include an interface 704 .
  • the processor 701 may be a computing means called microprocessor, microcomputer, CPU (Central Processing Unit), or DSP (Digital Signal Processor).
  • the memory 702 includes non-volatile or volatile semiconductor memories such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), Magnetic discs, flexible discs, optical discs, compact discs, mini discs, and DVDs (Digital Versatile Discs) can be exemplified.
  • the memory 702 stores programs for executing the functions of the numerical controllers 1-5.
  • the processor 701 transmits and receives necessary information via the interface 704, the processor 701 executes the program stored in the memory 702, and the processor 701 refers to the table stored in the memory 702, thereby performing the above-described processing. It can be carried out.
  • the computation results by processor 701 can be stored in memory 702 .
  • the processing circuit 703 shown in FIG. 20 can also be used.
  • the processing circuit 703 corresponds to a single circuit, a composite circuit, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof.
  • Information to be input to the processing circuit 703 and information to be output from the processing circuit 703 can be obtained via the interface 704 .
  • part of the processing in the numerical controllers 1 to 5 may be performed by the processing circuit 703, and the processing not performed by the processing circuit 703 may be performed by the processor 701 and the memory 702.

Abstract

This numerical control device (1) comprises a driving command unit (12) which issues an operation command (103) to a main shaft (17) and a feed shaft (18) of a machine tool (16), and further comprises a feature amount calculation unit (10) and a vibration control unit (11). The feature amount calculation unit (10) calculates feature information (102) about chattering vibration on the basis of a sensor signal (100) that detects the vibration of a tool or an object to be machined mounted on the machine tool (16) and a main shaft operation command (101) that is an operation command for the main shaft (17). The vibration control unit (11) outputs, to the driving command unit (12), a driving correction value (104) for correcting the operation command (103), until the feature amount information (102) reaches a target range.

Description

数値制御装置、学習装置及び、びびり振動の抑制方法Numerical controller, learning device, and chatter vibration suppression method
 本開示は、工作機械におけるびびり振動を抑制する数値制御装置、学習装置及び、びびり振動の抑制方法に関する。 The present disclosure relates to a numerical control device, a learning device, and a chatter vibration suppression method for suppressing chatter vibration in a machine tool.
 工作機械は、加工対象物と工具との間の相対位置を変化させることで、ワークを所望の形状に除去加工する機械装置である。フライス盤及び旋盤に代表される工作機械は、工具又は加工対象物を主軸に装着し、主軸を回転させて加工を行う。加工中には、「びびり振動」と呼ばれる振動が発生することがある。びびり振動が発生すると、仕上げ面精度が悪化したり、工具の破損の原因となったりする。 A machine tool is a mechanical device that removes and processes a workpiece into a desired shape by changing the relative position between the workpiece and the tool. Machine tools typified by milling machines and lathes perform machining by mounting a tool or an object to be machined on a spindle and rotating the spindle. During machining, vibrations called "chatter" may occur. When chatter vibration occurs, the finished surface accuracy deteriorates and it causes tool breakage.
 下記特許文献1には、びびり振動を抑制するために最適な主軸速度を探索して求める方法が開示されている。最適な主軸速度は、位相差勾配に基づいて算出される。位相差勾配は、主軸速度の変化量に対する位相差の変化量の比、即ち位相差の傾きである。この位相差は、びびり振動の特徴量を表すパラメータとして、びびり振動、工具刃数及び主軸速度を含む公知の式で演算される。特許文献1では、主軸速度を変更しながら位相差を測定し、測定した位相差に基づいて位相差勾配を算出している。 Patent Document 1 below discloses a method of searching for and obtaining the optimum spindle speed for suppressing chatter vibration. The optimum spindle speed is calculated based on the phase difference gradient. The phase difference gradient is the ratio of the amount of change in the phase difference to the amount of change in the spindle speed, that is, the gradient of the phase difference. This phase difference is calculated by a known formula including chatter vibration, the number of tool edges, and the spindle speed as parameters representing the chatter vibration feature quantity. In Patent Document 1, the phase difference is measured while changing the spindle speed, and the phase difference gradient is calculated based on the measured phase difference.
特開2018-118366号公報JP 2018-118366 A
 しかしながら、特許文献1に記載の技術では、最適な主軸速度の探索中にびびり振動を発生させる振動系の特性が変化する場合は、探索を中断し、処理を最初からやり直す必要があるという課題がある。なぜなら、びびり振動を発生させる振動系の特性は、加工に伴うワーク質量の減少、又はワークの加工箇所が変わるといった要因で容易に変化する。このため、特許文献1の手法では、最適な主軸速度の探索が完了する前にびびり振動を発生させる振動系の特性が変化する場合は、最適な主軸速度を算出できず、びびり振動を抑制することが困難である。 However, the technique described in Patent Document 1 has the problem that if the characteristics of the vibration system that generates chatter vibration change during the search for the optimum spindle speed, the search must be interrupted and the process must be restarted from the beginning. be. This is because the characteristics of the vibration system that generates chatter vibration easily change due to factors such as a decrease in the mass of the workpiece due to machining or a change in the machining location of the workpiece. Therefore, in the method of Patent Document 1, if the characteristics of the vibration system that causes chatter vibration change before the search for the optimum spindle speed is completed, the optimum spindle speed cannot be calculated, and chatter vibration is suppressed. is difficult.
 本開示は、上記に鑑みてなされたものであって、びびり振動の抑制中に振動系の特性が変化した場合であっても、びびり振動を抑制可能な数値制御装置を得ることを目的とする。 The present disclosure has been made in view of the above, and an object thereof is to obtain a numerical controller capable of suppressing chatter vibration even when the characteristics of the vibration system change during suppression of chatter vibration. .
 上述した課題を解決し、目的を達成するため、本開示に係る数値制御装置は、工作機械の主軸及び送り軸に運転指令を与える駆動指令部を有し、更に、特徴量算出部及び振動制御部を備える。特徴量算出部は、工作機械に取り付けられる工具又は加工対象物の振動を検出したセンサ信号、及び主軸の運転指令である主軸運転指令に基づいて、びびり振動の特徴量情報を算出する。振動制御部は、特徴量情報が目標範囲内に到達するまでの間、駆動指令部に運転指令を補正するための補正値を出力する。 In order to solve the above-described problems and achieve the object, the numerical control device according to the present disclosure has a drive command unit that gives an operation command to the main shaft and the feed shaft of the machine tool, and further includes a feature amount calculation unit and vibration control. have a department. The feature amount calculator calculates chatter vibration feature amount information based on a sensor signal that detects vibration of a tool attached to a machine tool or a workpiece and a spindle operation command that is a spindle operation command. The vibration control section outputs a correction value for correcting the operation command to the drive command section until the feature amount information reaches the target range.
 本開示に係る数値制御装置によれば、びびり振動の抑制中に振動系の特性が変化した場合であっても、びびり振動を抑制できるという効果を奏する。 According to the numerical control device according to the present disclosure, it is possible to suppress chatter vibration even when the characteristics of the vibration system change during suppression of chatter vibration.
実施の形態1に係る数値制御装置の機能構成を示す図1 is a diagram showing a functional configuration of a numerical controller according to Embodiment 1; FIG. 図1に示す特徴量算出部の機能構成を示す図A diagram showing the functional configuration of the feature amount calculation unit shown in FIG. 図2に示すタイミング信号生成部が出力するタイミング信号と主軸角度指令との関係を示す図A diagram showing the relationship between the timing signal output by the timing signal generator shown in FIG. 2 and the spindle angle command. 図2に示す位相差演算部が算出する無次元量を示す図A diagram showing a dimensionless quantity calculated by the phase difference calculator shown in FIG. 図1に示す振動制御部及び駆動指令部による処理フローを示すフローチャートFlowchart showing a processing flow by the vibration control unit and the drive command unit shown in FIG. 図1に示す振動制御部及び駆動指令部による具体的な動作例を示す図A diagram showing a specific operation example by the vibration control unit and the drive command unit shown in FIG. 図1に示す振動制御部の機能を実現するための他の構成例を示す図FIG. 2 is a diagram showing another configuration example for realizing the function of the vibration control unit shown in FIG. 1; 一般的なニューラルネットワークを用いた推論モデルの構成例を示す図Diagram showing an example configuration of an inference model using a general neural network 図7に示す振動制御部が用いる推論モデルを学習する学習装置の構成例を示す図A diagram showing a configuration example of a learning device that learns an inference model used by the vibration control unit shown in FIG. 実施の形態2に係る数値制御装置の機能構成を示す図FIG. 4 shows a functional configuration of a numerical controller according to Embodiment 2; 図10に示す振動制御部による処理フローを示すフローチャートFlowchart showing the processing flow by the vibration control unit shown in FIG. 実施の形態3に係る数値制御装置の機能構成を示す図FIG. 10 is a diagram showing a functional configuration of a numerical control device according to Embodiment 3; 実施の形態3に係る振動制御部の機能を実現する制御系の構成例を示す図The figure which shows the structural example of the control system which implement|achieves the function of the vibration control part which concerns on Embodiment 3. 実施の形態4に係る数値制御装置の機能構成を示す図The figure which shows the function structure of the numerical control apparatus which concerns on Embodiment 4. 図14に示す振動制御部による処理フローを示すフローチャートFlowchart showing the processing flow by the vibration control unit shown in FIG. 実施の形態5に係る数値制御装置の機能構成を示す図FIG. 10 is a diagram showing a functional configuration of a numerical control device according to Embodiment 5; 図16に示す特徴量算出部の機能構成を示す図A diagram showing the functional configuration of the feature amount calculation unit shown in FIG. 図17に示すタイミング信号生成部が出力するタイミング信号と主軸角度指令との関係を示す図A diagram showing the relationship between the timing signal output by the timing signal generator shown in FIG. 17 and the spindle angle command. 実施の形態1~5において説明した数値制御装置の機能を実現するハードウェア構成の一例を示すブロック図Block diagram showing an example of a hardware configuration for realizing the functions of the numerical controller described in the first to fifth embodiments 実施の形態1~5において説明した数値制御装置の機能を実現するハードウェア構成の他の例を示すブロック図Block diagram showing another example of hardware configuration for realizing the functions of the numerical controller described in the first to fifth embodiments
 以下に添付図面を参照し、本開示の実施の形態に係る数値制御装置、学習装置、及びびびり振動の抑制方法について詳細に説明する。 A numerical control device, a learning device, and a chatter vibration suppression method according to an embodiment of the present disclosure will be described below in detail with reference to the accompanying drawings.
実施の形態1.
 図1は、実施の形態1に係る数値制御装置1の機能構成を示す図である。数値制御装置1は、工作機械16に運転指令103を与えることによって、工作機械16を数値制御する。
Embodiment 1.
FIG. 1 is a diagram showing the functional configuration of a numerical control device 1 according to Embodiment 1. As shown in FIG. The numerical controller 1 numerically controls the machine tool 16 by giving an operation command 103 to the machine tool 16 .
 工作機械16は、運転指令103により駆動されるモータをそれぞれが備えた主軸17及び送り軸18を有する。実施の形態1では、主軸17には加工対象物が設置され、送り軸18には工具が設置される。また、工作機械16は、主軸17及び送り軸18の位置に関する情報、並びに速度及びモータ電流に関する情報を少なくとも含む動作情報105を数値制御装置1に出力する。 The machine tool 16 has a main shaft 17 and a feed shaft 18 each provided with a motor driven by a run command 103 . In Embodiment 1, a workpiece is installed on the spindle 17 and a tool is installed on the feed shaft 18 . The machine tool 16 also outputs to the numerical controller 1 operation information 105 including at least information on the positions of the spindle 17 and the feed shaft 18 and information on speed and motor current.
 工作機械16には、センサ19が取り付けられている。センサ19は、工具又は加工対象物の振動を検出したセンサ信号100を数値制御装置1に出力する。センサ19は、工作機械16の主軸17又は送り軸18の構造物に取り付けられる。センサ19を取り付ける位置は、工具又は加工対象物の振動を検出可能な位置であればよいが、工具と加工対象物とが接触する点の近くであればより好ましい。 A sensor 19 is attached to the machine tool 16 . The sensor 19 outputs to the numerical controller 1 a sensor signal 100 that detects the vibration of the tool or workpiece. Sensor 19 is attached to the structure of spindle 17 or feed shaft 18 of machine tool 16 . The position where the sensor 19 is attached may be any position that can detect the vibration of the tool or the object to be processed, but it is more preferable if it is near the point where the tool and the object to be processed contact each other.
 センサ19の種類は、工具又は加工対象物の振動を検出することができるセンサであればよい。センサ19の例は、変位センサ、速度センサ、加速度センサ、角速度センサである。また、センサ19は、切削反力を検出する力センサ、加工中の切削音を検出するマイクロフォンであってもよい。或いは、センサ19の代わりに、動作情報105に含まれる主軸17及び送り軸18の位置、速度及びモータ電流のうちの少なくとも1つ以上を用いて、加工中に生じる工具又は加工対象物の振動を検出し、検出した振動を示す情報をセンサ信号100として出力してもよい。 Any type of sensor 19 may be used as long as it can detect the vibration of a tool or an object to be processed. Examples of sensors 19 are displacement sensors, velocity sensors, acceleration sensors, angular velocity sensors. Further, the sensor 19 may be a force sensor that detects cutting reaction force, or a microphone that detects cutting noise during machining. Alternatively, instead of the sensor 19, at least one of the positions, speeds, and motor currents of the spindle 17 and feed shaft 18 included in the motion information 105 is used to detect vibration of the tool or workpiece during machining. Information indicating the detected vibration may be output as the sensor signal 100 .
 数値制御装置1は、特徴量算出部10と、振動制御部11と、駆動指令部12とを有する。駆動指令部12は、工作機械16から動作情報105を受け取り、受け取った動作情報105に基づいて、工作機械16の主軸17及び送り軸18に運転指令103を与える。 The numerical control device 1 has a feature amount calculator 10 , a vibration controller 11 , and a drive commander 12 . The drive command unit 12 receives motion information 105 from the machine tool 16 and gives a drive command 103 to the spindle 17 and the feed shaft 18 of the machine tool 16 based on the received motion information 105 .
 駆動指令部12は、更に振動制御部11から駆動補正値104を受け取る。駆動指令部12は、動作情報105及び駆動補正値104に基づいて生成した運転指令103を工作機械16及び振動制御部11に出力する。また、駆動指令部12は、生成した運転指令103に含まれる主軸運転指令101を特徴量算出部10へ出力する。なお、主軸運転指令101は、主軸17への角度指令である主軸角度指令を少なくとも含む信号である。 The drive command unit 12 further receives the drive correction value 104 from the vibration control unit 11. The drive command unit 12 outputs a drive command 103 generated based on the motion information 105 and the drive correction value 104 to the machine tool 16 and the vibration control unit 11 . Further, the drive command unit 12 outputs the spindle run command 101 included in the generated run command 103 to the feature quantity calculator 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 .
 なお、主軸運転指令101には、主軸角度指令に加えて、主軸速度指令、主軸角度、又は主軸速度が含まれていてもよい。主軸速度指令は、主軸17への速度指令である。主軸角度は、主軸角度指令に対する主軸17の実際の角度である。主軸速度は、主軸速度指令に対する主軸17の実際の速度である。また、運転指令103には、主軸角度指令及び主軸速度指令のうちの少なくとも1つと、送り軸位置指令及び送り軸速度指令のうちの少なくとも1つとが含まれる。送り軸位置指令は、送り軸18への位置指令である。送り軸速度指令は、送り軸18への速度指令である。 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. A 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. Spindle speed is the actual speed of the spindle 17 relative to the spindle speed command. The operation command 103 includes at least one of a spindle angle command and a spindle speed command, and at least one of a feed axis position command and a feed shaft speed command. A feed axis position command is a position command to the feed shaft 18 . A feed axis speed command is a speed command for the feed shaft 18 .
 特徴量算出部10は、工作機械16からセンサ信号100を受け取り、駆動指令部12から主軸運転指令101を受け取る。特徴量算出部10は、センサ信号100及び主軸運転指令101に基づいて特徴量情報102を算出し、算出した特徴量情報102を振動制御部11に出力する。特徴量情報102には、びびり振動の特徴量である位相差の情報が少なくとも含まれている。 The feature quantity calculation unit 10 receives the sensor signal 100 from the machine tool 16 and receives the spindle operation command 101 from the drive command unit 12 . The feature quantity calculator 10 calculates feature quantity information 102 based on the sensor signal 100 and the spindle operation command 101 and outputs the calculated feature quantity information 102 to the vibration controller 11 . The feature quantity information 102 includes at least phase difference information, which is a feature quantity of chatter vibration.
 図2は、図1に示す特徴量算出部10の機能構成を示す図である。特徴量算出部10は、センサ信号処理部13と、位相差演算部15と、タイミング信号生成部14とを有する。 FIG. 2 is a diagram showing the functional configuration of the feature quantity calculation unit 10 shown in FIG. The feature amount calculator 10 has a sensor signal processor 13 , a phase difference calculator 15 , and a timing signal generator 14 .
 センサ信号処理部13は、センサ信号100に基づいて、複数の種類の状態量を生成し、生成した複数の種類の状態量を示す状態量信号110を位相差演算部15に出力する。状態量信号110は、第1の状態量と第2の状態量とを含む信号である。具体的に、状態量信号110は、センサ信号100が表す状態量と、センサ信号100に時間微分又は時間積分を施した状態量とを含む信号である。例えば、第1の状態量は、センサ信号100であり、第2の状態量は、センサ信号100を1回時間微分することにより得られる状態量である。なお、第1の状態量自身も時間微分によって得られる状態量であってもよい。 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 calculation unit 15 . The state quantity signal 110 is a signal containing a first state quantity and a second 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 first state quantity is the sensor signal 100, and the second state quantity is a state quantity obtained by time-differentiating the sensor signal 100 once. The first state quantity itself may also be a state quantity obtained by time differentiation.
 センサ信号処理部13は、センサ信号100及びセンサ信号100を1回時間微分した信号を同時に時系列信号として状態量信号110とする。ここで、時間微分は、単位時間当たりの状態量の変化量を算出する処理を意味し、時間積分は、単位時間ごとの累積量を算出する処理を意味する。 The sensor signal processing unit 13 uses the sensor signal 100 and the signal obtained by differentiating the sensor signal 100 once with respect to time as a time-series signal at the same time as the state quantity signal 110 . Here, time differentiation means processing for calculating the amount of change in the state quantity per unit time, and time integration means processing for calculating the cumulative amount for each unit time.
 なお、第1の状態量の時間微分の回数と、第2の状態量の時間微分の回数との差は、奇数であればどのような組合せであってもよい。例えば、第1の状態量がセンサ信号100をP回時間微分することにより得られる状態量であり、第2の状態量がQ回時間微分することにより得られる状態量であるとする。ここで、P及びQは整数とする。この場合、PとQの差分が奇数であればよい。 The difference between the number of times of time differentiation of the first state quantity and the number of times of time differentiation of the second state quantity may be any combination as long as it is an odd number. For example, assume that the first state quantity is a state quantity obtained by time-differentiating the sensor signal 100 P times, and the second state quantity is a state quantity obtained by time-differentiating the sensor signal 100 Q times. Here, P and Q are integers. In this case, the difference between P and Q should be an odd number.
 更に、第1の状態量又は第2の状態量の次元は、センサ信号100を時間積分して得られる次元であってもよい。具体例として、第1の状態量を加速度とし、第2の状態量を速度としてもよい。或いは、第1の状態量を加速度の微分値であるジャークとし、第2の状態量を速度の積分値である位置としてもよい。センサ信号処理部13は、例えば、センサ信号100と、センサ信号100を時間微分することにより得られる状態量及びセンサ信号100を時間積分することにより得られる状態量のうちの少なくとも1つとからなる2種類以上の状態量を生成することができる。 Furthermore, the dimension of the first state quantity or the second state quantity may be a dimension obtained by time-integrating the sensor signal 100 . As a specific example, the first state quantity may be acceleration and the second state quantity may be velocity. Alternatively, the first state quantity may be jerk, which is the differential value of acceleration, and the position, which is the integral value of velocity, may be the second state quantity. The sensor signal processing unit 13 includes, for example, a sensor signal 100 and at least one of a state quantity obtained by time differentiation of the sensor signal 100 and a state quantity obtained by time integration of the sensor signal 100. More than one type of state quantity can be generated.
 タイミング信号生成部14は、駆動指令部12が出力する主軸運転指令101に基づいて、主軸角度指令が予め定められた角度を通過したと判定すると、位相差演算部15へタイミング信号111を出力する。ここで、タイミング信号111の生成方法の詳細を説明する。 When the timing signal generation unit 14 determines that the spindle angle command has passed a predetermined angle based on the spindle operation command 101 output by the drive command unit 12 , the timing signal generation unit 14 outputs a timing signal 111 to the phase difference calculation unit 15 . . Details of the method for generating the timing signal 111 will now be described.
 図3は、図2に示すタイミング信号生成部14が出力するタイミング信号111と主軸角度指令との関係を示す図である。主軸角度指令は、駆動指令部12が出力する主軸運転指令101に含まれる。図3に示すように、主軸角度指令は、0[rad]から2π[rad]の値をとり、360[rad]に達すると0[rad]に戻る信号である。タイミング信号生成部14は、主軸角度指令が設定された角度φ1を通過する度にタイミング信号111を出力し、それ以外ではタイミング信号111を出力しない。これにより、タイミング信号111は、工作機械16の主軸17の回転と同期したタイミングで周期的に出力されることになる。角度φ1は、主軸17が1回転する間に1箇所定められていればよく、任意の角度であってよい。角度φ1は、例えば主軸17のオリエンテーション時の主軸17の角度とすることができる。ここで、主軸17のオリエンテーションとは、主軸17を停止させる基準角度である。 FIG. 3 is a diagram showing the relationship between the timing signal 111 output by the timing signal generator 14 shown in FIG. 2 and the spindle angle command. The spindle angle command is included in the spindle operation command 101 output by the drive command section 12 . As shown in FIG. 3, the spindle angle command is a signal that takes a value from 0 [rad] to 2π [rad] and returns to 0 [rad] when reaching 360 [rad]. The timing signal generator 14 outputs the timing signal 111 each time the spindle angle command passes through the set angle φ1, and does not output the timing signal 111 otherwise. As a result, the timing signal 111 is periodically output at timing synchronized with the rotation of the spindle 17 of the machine tool 16 . The angle φ1 may be any angle as long as it is determined at one point while the main shaft 17 rotates once. The angle φ1 can be, for example, the angle of the main shaft 17 when the main shaft 17 is oriented. Here, the orientation of the spindle 17 is a reference angle at which the spindle 17 is stopped.
 或いは、タイミング信号生成部14は、主軸運転指令101に含まれる主軸速度指令を用いて、タイミング信号111を生成することもできる。この場合、タイミング信号生成部14は、初期時刻t0を基準時刻として、主軸速度指令S[rpm]から、以下に示す(1)式を用いて算出される時間T1ごとに、タイミング信号111を出力する。また、タイミング信号生成部14は、主軸角度指令及び主軸速度指令を合わせて使用してもよい。 Alternatively, the timing signal generator 14 can also generate the timing signal 111 using the spindle speed command included in the spindle operation command 101 . In this case, the timing signal generator 14 outputs the timing signal 111 every time T1 calculated from the spindle speed command S [rpm] using the following equation (1) with the initial time t0 as the reference time. do. Also, the timing signal generator 14 may use both the spindle angle command and the spindle speed command.
 T1=60/S  …(1)  T1=60/S ...(1)
 なお、上記では、タイミング信号生成部14は、主軸運転指令101を用いて、タイミング信号111を生成することとしたが、これに限定されない。タイミング信号生成部14は、主軸運転指令101に代えて、或いは主軸運転指令101に加えて、送り軸18の運転指令である送り軸運転指令を用いて、タイミング信号111を生成してもよい。 In the above description, the timing signal generator 14 uses the spindle operation command 101 to generate the timing signal 111, but it is not limited to this. The timing signal generator 14 may generate the timing signal 111 using a feed axis operation command, which is an operation command for the feed shaft 18 , instead of or in addition to the spindle operation command 101 .
 位相差演算部15は、タイミング信号生成部14が出力するタイミング信号111と、センサ信号処理部13が出力する状態量信号110とを受けとる。位相差演算部15は、タイミング信号111及び状態量信号110に基づいて、状態量信号110に含まれる複数の種類の状態量のそれぞれを、タイミング信号111ごとに正規化により無次元化する。位相差演算部15は、無次元化された状態量から成る状態空間において、無次元化された状態量信号の位相間の差分を示す位相差を演算し、演算した位相差を特徴量情報102として振動制御部11に出力する。なお、ここで言う状態空間の詳細は、後述する。 The phase difference calculator 15 receives the timing signal 111 output by the timing signal generator 14 and the state quantity signal 110 output by the sensor signal processor 13 . Based on the timing signal 111 and the state quantity signal 110 , the phase difference calculator 15 normalizes each of the plurality of types of state quantities included in the state quantity signal 110 to make them dimensionless for each timing signal 111 . The phase difference calculator 15 calculates a phase difference indicating a difference between phases of the dimensionless state quantity signals in the state space composed of the dimensionless state quantity, and stores the calculated phase difference as the feature quantity information 102 . , and is output to the vibration control unit 11 . Details of the state space referred to here will be described later.
 位相差演算部15は、状態量信号110に含まれる複数の種類の状態量のそれぞれを、予め定められたそれぞれの状態量の最大値で、各状態量を除することで正規化する。ここで用いる最大値は、事前の加工実験で得られた各状態量の最大値としてもよいし、事前のシミュレーションで求められた各状態量の最大値としてもよい。 The phase difference calculator 15 normalizes each of the plurality of types of state quantities included in the state quantity signal 110 by dividing each state quantity by a predetermined maximum value of each state quantity. The maximum value used here may be the maximum value of each state quantity obtained in a previous machining experiment, or the maximum value of each state quantity obtained in a previous simulation.
 位相差演算部15が時刻t1、及び時刻t1よりも遅い時刻t2でタイミング信号111を受け取ったとする。このとき、位相差演算部15は、時刻t1における状態量信号110を正規化し、正規化後の値を第1の無次元量N1とする。また、位相差演算部15は、時刻t2において、時刻t1と同様に状態量信号110を正規化し、正規化後の値を第2の無次元量N2とする。 Assume that the phase difference calculator 15 receives the timing signal 111 at time t1 and time t2 later than time t1. At this time, the phase difference calculator 15 normalizes the state quantity signal 110 at the time t1, and sets the normalized value as the first dimensionless quantity N1. At time t2, the phase difference calculator 15 normalizes the state quantity signal 110 in the same manner as at time t1, and sets the normalized value as the second dimensionless quantity N2.
 図4は、図2に示す位相差演算部15が算出する無次元量を示す図である。図4には、第1の無次元量N1と第2の無次元量N2とが、状態量信号110に含まれる第1の状態量と第2の状態量とによって表される状態空間内で示されている。第1及び第2の状態量は共にベクトル量である。図4において、横軸である第1の軸は第1の状態量の方向を表し、縦軸である第2の軸は第2の状態量の方向を表しており、第1の軸と第2の軸とは直交する関係にある。このため、図4に示すように、第1の軸を横軸とし、第2の軸を縦軸とするベクトル空間が定義できる。本稿では、このベクトル空間を「状態空間」と呼んでいる。 FIG. 4 is a diagram showing dimensionless quantities calculated by the phase difference calculator 15 shown in FIG. In FIG. 4, the first dimensionless quantity N1 and the second dimensionless quantity N2 are represented in the state space represented by the first state quantity and the second state quantity included in the state quantity signal 110. It is shown. Both the first and second state quantities are vector quantities. In FIG. 4, the first horizontal axis represents the direction of the first state quantity, and the second vertical axis represents the direction of the second state quantity. 2 are orthogonal to each other. Therefore, as shown in FIG. 4, a vector space can be defined in which the first axis is the horizontal axis and the second axis is the vertical axis. In this paper, this vector space is called "state space".
 位相差演算部15は、前回処理の無次元量である第1の無次元量N1と、状態空間の原点と、今回処理の無次元量である第2の無次元量N2とがなす角度θを、第1の無次元量N1と第2の無次元量N2との間の位相差として演算する。位相差演算部15は、タイミング信号111ごとに上記の演算を行い、今回処理の無次元量と、前回処理の無次元量との間の位相差を演算する。位相差演算部15は、演算した位相差を少なくとも含む特徴量情報102を振動制御部11に出力する。なお、実施の形態1では、位相差は-π[rad]から+π[rad]の間の値をとるものとする。 The phase difference calculator 15 calculates the angle θ is calculated as the phase difference between the first dimensionless quantity N1 and the second dimensionless quantity N2. The phase difference calculator 15 performs the above calculation for each timing signal 111, and calculates the phase difference between the dimensionless quantity of the current process and the dimensionless quantity of the previous process. The phase difference calculator 15 outputs feature amount information 102 including at least the calculated phase difference to the vibration controller 11 . In the first embodiment, the phase difference takes a value between -π [rad] and +π [rad].
 振動制御部11は、特徴量算出部10から特徴量情報102を受け取り、駆動指令部12から運転指令103を受け取る。振動制御部11は、特徴量情報102及び運転指令103に基づいて駆動補正値104を生成し、生成した駆動補正値104を駆動指令部12へ出力する。駆動補正値104は、運転指令103を補正するための補正値である。 The vibration control unit 11 receives feature amount information 102 from the feature amount calculation unit 10 and receives an operation command 103 from the drive command unit 12 . The vibration control unit 11 generates a drive correction value 104 based on the feature quantity information 102 and the operation command 103 and outputs the generated drive correction value 104 to the drive command unit 12 . A drive correction value 104 is a correction value for correcting the operation command 103 .
 図5は、図1に示す振動制御部11及び駆動指令部12による処理フローを示すフローチャートである。図5には、特徴量情報102に含まれる情報のうちの位相差を判定基準とし、運転指令103に含まれる各種指令等のうちの主軸速度指令を制御対象とした処理フローが例示されている。振動制御部11は、以下の各ステップで運転指令103の補正を行う。 FIG. 5 is a flow chart showing the processing flow by the vibration control section 11 and the drive command section 12 shown in FIG. FIG. 5 illustrates a processing flow in which the phase difference among the information included in the feature amount information 102 is used as a determination criterion, and the spindle speed command among various commands included in the operation command 103 is used as a control object. . The vibration control unit 11 corrects the operation command 103 in the following steps.
 まず、ステップS101では、位相差が位相差目標範囲の範囲外であるか否かが判定される。位相差目標範囲は、予め設定された範囲の値を持つ位相差の目標範囲である。実施の形態1では、一例として、位相差の目標値を0ラジアンとし、位相差目標範囲を、-0.1[rad」から+0.1[rad」までの範囲とする。なお、位相差目標範囲は、位相差が持つノイズよりも十分に大きな値を設定すればよい。 First, in step S101, it is determined whether or not the phase difference is outside the phase difference target range. The phase difference target range is a phase difference target range having values within a preset range. In the first embodiment, as an example, the phase difference target value is set to 0 radian, and the phase difference target range is set to a range from -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.
 ステップS101において、位相差が位相差目標範囲の範囲内である場合には(ステップS101,No)、ステップS102に進み、現在の主軸速度が保持される。即ち、ステップS102では、駆動指令部12は、現在の主軸速度指令の変更を行わず、元の主軸速度指令を出力する。一方で、位相差が位相差目標範囲の範囲外である場合(ステップS101,Yes)、ステップS103に進む。 In step S101, if the phase difference is within the phase difference target range (step S101, No), the process proceeds to step S102 and 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, if the phase difference is outside the phase difference target range (step S101, Yes), the process proceeds to step S103.
 ステップS103では、位相差が位相差閾値以上であるか否かが判定される。位相差閾値は、予め設定された任意の値である。実施の形態1では、一例として、0「rad]を位相差閾値として設定する。位相差が位相差閾値以上である場合には(ステップS103,Yes)、ステップS104に進み、位相差が位相差閾値未満である場合には(ステップS103,No)、ステップS105に進む。 In step S103, it is determined whether or not the phase difference is greater than or equal to the phase difference threshold. The phase difference threshold is an arbitrary preset value. In Embodiment 1, as an example, 0 "rad" is set as the phase difference threshold. If it is less than the threshold (step S103, No), the process proceeds to step S105.
 なお、ステップS103では、位相差と位相差閾値とが等しい場合を“Yes”と判定しているが、“No”と判定してもよい。即ち、位相差と位相差閾値とが等しい場合を“Yes”又は“No”の何れで判定してもよい。 In step S103, "Yes" is determined when the phase difference and the phase difference threshold are equal, but "No" may be determined. That is, if the phase difference is equal to the phase difference threshold value, it may be determined as "Yes" or "No".
 ステップS104では、主軸速度指令が予め定められた幅だけ減少させられる。即ち、ステップS104では、ステップS103において、位相差が位相差閾値以上と判定された場合に、予め定められた幅だけ、主軸速度指令の値が小さくなる。一方、ステップS105では、主軸速度指令が予め定められた幅だけ増加させられる。即ち、ステップS105では、ステップS103において、位相差が位相差閾値未満と判定された場合に、予め定められた幅だけ、主軸速度指令の値が大きくなる。なお、増加又は減少する値は、現在の主軸速度指令に対する割合であってもよいし、主軸速度指令には寄らない固定値であってもよい。 At step S104, the spindle speed command is decreased 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 decreased 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 the phase difference is determined to be less than the phase difference threshold value in step S103, the value of the spindle speed command is increased by a predetermined width. The value to be increased or decreased may be a ratio to the current spindle speed command, or may be a fixed value that does not depend on the spindle speed command.
 ステップS106では、加工が終了したか否かが判定される。加工が終了した場合(ステップS106,Yes)、振動制御部11は、図5の処理を終了する。一方、加工が終了していない場合(ステップS106,No)、ステップS101の処理に戻る。図5に示す処理は、加工が実施されている間は継続して実行される。 In step S106, it is determined whether or not the processing has ended. When the machining is finished (step S106, Yes), the vibration control unit 11 finishes the processing of FIG. On the other hand, if the processing has not ended (step S106, No), the process returns to step S101. The processing shown in FIG. 5 is continuously executed while processing is being performed.
 なお、図5では、特徴量情報102に含まれる位相差を判定基準とし、制御対象が運転指令103に含まれる主軸速度指令である場合について例示したが、特徴量情報102が位相差以外であり、制御対象が主軸速度指令以外である場合も、同様なフローでの処理が可能である。即ち、振動制御部11は、特徴量情報102が目標範囲内に到達するまでの間、駆動指令部12が出力する運転指令103を補正するための駆動補正値104を出力する制御を行う。また、駆動指令部12は、駆動補正値104に基づいて、運転指令103を補正する。 In FIG. 5, the phase difference included in the feature amount information 102 is used as the determination criterion, and the controlled object is the spindle speed command included in the operation command 103. However, if the feature amount information 102 is other than the phase difference, , the same flow can be used when the controlled object is other than the spindle speed command. That is, the vibration control unit 11 performs control to output the driving correction value 104 for correcting the driving command 103 output by the driving command unit 12 until the feature amount information 102 reaches the target range. Further, the drive command unit 12 corrects the drive command 103 based on the drive correction value 104 .
 図6は、図1に示す振動制御部11及び駆動指令部12による具体的な動作例を示す図である。図6は、各時刻における位相差と主軸速度との関係を示す図である。図6の上段部には位相差が示され、下段部には主軸速度が示されている。また、図6の横軸は時間を表している。 FIG. 6 is a diagram showing a specific operation example by the vibration control section 11 and the drive command section 12 shown in FIG. FIG. 6 is a diagram showing the relationship between the phase difference and the spindle speed at each time. The upper part of FIG. 6 shows the phase difference, and the lower part shows the spindle speed. Moreover, the horizontal axis of FIG. 6 represents time.
 時刻t60から時刻t61の間において、位相差は位相差目標範囲内の値を取るため、主軸速度は一定値となっている。時刻t61から時刻t62の間において、位相差は位相差目標範囲から外れ、且つ位相差閾値である0[rad]未満の値となっている。このため、主軸速度は予め定められた設定値で増加する。 Between time t60 and time t61, the phase difference takes a value within the phase difference target range, so the spindle speed is a constant value. Between time t61 and time t62, the phase difference is out of the phase difference target range and has a value less than 0 [rad], which is the phase difference threshold. Therefore, the spindle speed increases by a predetermined set value.
 次に、時刻t62から時刻t63の間において、位相差は位相差目標範囲内の値を取るため、主軸速度は一定値となる。時刻t63から時刻t64の間において、位相差は位相差目標範囲から外れ、且つ位相差閾値である0[rad]を超えた値となっている。このため、主軸速度は予め定められた設定値で減少する。時刻t64以降、位相差は位相差目標範囲内の値を取るため、主軸速度は一定値をとる。 Next, between time t62 and time t63, the phase difference takes a value within the phase difference target range, so the spindle speed becomes a constant value. Between time t63 and time t64, the phase difference is out of the phase difference target range and exceeds the phase difference threshold value of 0 [rad]. Therefore, the spindle speed is decreased by a predetermined set value. After time t64, the phase difference takes a value within the phase difference target range, so the spindle speed takes a constant value.
 このように、駆動指令部12は、位相差の値に応じて運転指令103の変更を行う。この際、振動制御部11は、位相差の値に基づく駆動補正値104を駆動指令部12へ出力する。 Thus, the drive command unit 12 changes the drive command 103 according to the value of the phase difference. At this time, the vibration control section 11 outputs a drive correction value 104 based on the value of the phase difference to the drive command section 12 .
 以上説明したように、実施の形態1によれば、工作機械16に取り付けられる工具又は加工対象物の振動を検出したセンサ信号100に基づいて、複数の種類の状態量の時系列データが生成される。そして、状態空間内において、複数の種類の状態量を示す無次元量がタイミング信号111ごとに生成され、無次元量の位相間の差分である角度θを示す位相差が演算される。この位相差の値に基づいて、運転指令103の補正が行われる。 As described above, according to Embodiment 1, time-series data of a plurality of types of state quantities are generated based on the sensor signal 100 that detects the vibration of the tool attached to the machine tool 16 or the workpiece. be. In the state space, dimensionless quantities indicating a plurality of types of state quantities are generated for each timing signal 111, and a phase difference indicating an angle θ, which is a difference between the phases of the dimensionless quantities, is calculated. The operation command 103 is corrected based on the value of this phase difference.
 実施の形態1の手法では、タイミング信号111ごとに位相差が演算され、演算された位相差に基づいて運転指令103の補正が行われる。即ち、実施の形態1の手法では、複数条件の主軸速度において、位相差を事前に測定せずに主軸速度の補正を行うことができる。よって、例えば加工対象物の加工中において、びびり振動の特性が変化する場合であっても、びびり振動を抑制することが可能となる。 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 for spindle speeds under a plurality of conditions. Therefore, even if the characteristics of chatter vibration change during machining of the workpiece, chatter vibration can be suppressed.
 なお、別の例として、特徴量算出部10は、以下の(2)式、及び(3)式に基づいて位相差を算出してもよい。 As another example, the feature amount calculation unit 10 may calculate the phase difference based on the following formulas (2) and (3).
 k={60×f/(n×S)}  …(2)  k={60×f/(n×S)}...(2)
 位相差=(k-[k])×2π  …(3) Phase difference = (k - [k]) x 2π ... (3)
 上記(2)式において、fはびびり振動の周波数を表し、nは工具の刃数を表す。ここで、びびり振動の周波数fは、センサ信号100に対して高速フーリエ変換(Fast Fourier Transform:FFT)に代表される周波数解析を実施し、ゲインのピークとなる周波数を算出することにより求めることができる。また、上記(2)式において、関数[k]は、“k”の値を整数化する関数であり、“k”の値の小数点以下を零方向に丸める関数である。  In the above formula (2), f represents the frequency of chatter vibration, and n represents the number of teeth of the tool. Here, the chatter vibration frequency f can be obtained by performing frequency analysis represented by Fast Fourier Transform (FFT) on the sensor signal 100 and calculating the frequency at which the gain peaks. can. In the above equation (2), the function [k] is a function that converts the value of "k" into an integer, and rounds the value of "k" below the decimal point toward zero.
 以上説明したように、実施の形態1に係る数値制御装置1、及び数値制御装置1を用いて実行するびびり振動の抑制方法によれば、工作機械16に取り付けられる工具又は加工対象物の振動を検出したセンサ信号100、及び主軸17の運転指令である主軸運転指令101に基づいて、びびり振動の特徴量情報102が算出される。そして、特徴量情報102が目標範囲内に到達するまでの間、駆動指令部12に運転指令103を補正するための補正値である駆動補正値104が出力される。これにより、びびり振動の抑制中に振動系の特性が変化した場合であっても、びびり振動を抑制することができる。また、実施の形態1の手法では、従来行われていた、駆動指令値の最適化が実施されない。これにより、びびり振動の抑制時間を短縮することができ、びびり振動の抑制の高速化を図ることができる。 As described above, according to the numerical control device 1 according to Embodiment 1 and the method of suppressing chatter vibration executed using the numerical control device 1, the vibration of the tool or the workpiece attached to the machine tool 16 can be suppressed. Chatter vibration feature quantity information 102 is calculated based on the detected sensor signal 100 and a spindle operation command 101 that is an operation command for the spindle 17 . Then, a 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. As a result, chatter vibration can be suppressed even when the characteristics of the vibration system change during the suppression of chatter vibration. Further, in the method of the first embodiment, optimization of the drive command value, which has been conventionally performed, is not performed. As a result, the chatter vibration suppression time can be shortened, and the chatter vibration suppression can be speeded up.
 実施の形態1の手法は、前述の通り、FFTに代表される周波数解析を用いずに特徴量情報102を算出することが可能である。このため、びびり振動が発生してからびびり振動を抑制するまでの時間を短縮することができる。これにより、びびり振動の抑制の高速化を図ることができる。 As described above, the method of Embodiment 1 can calculate the feature amount information 102 without using frequency analysis represented by FFT. Therefore, it is possible to shorten the time from the occurrence of chatter vibration to the suppression of chatter vibration. As a result, it is possible to speed up the suppression of chatter vibration.
 なお、実施の形態1に係る工作機械16は、主軸17に加工対象物を設置する構成としたが、この構成に限定されない。代替構成として、例えばフライス盤及び旋削盤に代表されるように、主軸17に工具を設置する場合であっても同様の効果を奏することができる。 Although the machine tool 16 according to Embodiment 1 has a configuration in which the workpiece is installed on the spindle 17, the configuration is not limited to this. As an alternative configuration, a similar effect can be obtained even if a tool is installed on the spindle 17, as typified by a milling machine and a lathe.
 また、実施の形態1では、1つのセンサ19を用いる構成としたが、工作機械16の複数箇所にセンサ19を設置してもよい。この場合、設置した全てのセンサ19に対して、実施の形態1で説明した処理を行い、びびり振動の発生を判定することができる。複数箇所にセンサ19を設置する場合、加工中に複数の箇所でびびり振動が発生しても、びびり振動の抑制を行うことができる。 Also, in Embodiment 1, one sensor 19 is used. In this case, the processing described in Embodiment 1 can be performed for all installed sensors 19 to determine the occurrence of chatter vibration. When the sensors 19 are installed at a plurality of locations, even if chatter vibration occurs at a plurality of locations during machining, the chatter vibration can be suppressed.
 また、別の例として、振動制御部11は、びびり振動を抑制するための、予め機械学習が行われた推論モデルを用いて、びびり振動の抑制を行ってもよい。この例を、図7に示す。即ち、図7は、図1に示す振動制御部11の機能を実現するための他の構成例を示す図である。 As another example, the vibration control unit 11 may suppress chatter vibration using an inference model that has undergone machine learning in advance for suppressing chatter vibration. An example of this is shown in FIG. That is, FIG. 7 is a diagram showing another configuration example for realizing the function of the vibration control section 11 shown in FIG.
 図7において、振動制御部11は、情報観測部201と、推論部202とを有する。振動制御部11には、特徴量情報102と運転指令103とが入力される。 In FIG. 7, the vibration control section 11 has an information observation section 201 and an inference section 202 . The feature amount information 102 and the operation command 103 are input to the vibration control unit 11 .
 情報観測部201は、予め定められたサンプリング数分の、特徴量情報102及び運転指令103を時系列データとして観測し、時系列データに基づいて推論用データセット203を生成する。推論部202は、びびり振動が抑制される駆動補正値104を出力するように、予め機械学習を行った推論モデルに、情報観測部201が生成する推論用データセット203を入力することで、駆動補正値104を出力する。 The information observation unit 201 observes the feature quantity information 102 and the driving command 103 for a predetermined number of samplings as time-series data, and generates an inference data set 203 based on the time-series data. The inference unit 202 inputs the inference data set 203 generated by the information observation unit 201 to the inference model that has undergone machine learning in advance so as to output the drive correction value 104 that suppresses chatter vibration. A correction value 104 is output.
 推論部202は、どのようなアルゴリズムの推論モデルを用いてもよい。一例として、ニューラルネットワークを用いた推論モデルについて説明する。図8は、一般的なニューラルネットワークを用いた推論モデルの構成例を示す図である。 The inference unit 202 may use any algorithmic inference model. As an example, an inference model using a neural network will be described. FIG. 8 is a diagram showing a configuration example of an inference model using a general neural network.
 図8に示す例において、ニューラルネットワークは、n個のニューロンを有する入力層x1,x2,…,xnと、m個のニューロンを有する中間層y1,y2,…,ymと、1個のニューロンを有する出力層z1とから構成される。なお、図8では、出力層が1層である例が示されているが、2層以上の出力層が設けられていてもよい。 In the example shown in FIG. 8, the neural network has input layers x1, x2, . . . , xn with n neurons, hidden layers y1, y2, . and an output layer z1 having Although FIG. 8 shows an example in which there is one output layer, two or more output layers may be provided.
 入力層x1,x2,…,xnは、中間層y1,y2,…,ymと接続されており、中間層y1,y2,…,ymは、出力層z1と接続されている。なお、図8に示す入力層と中間層との接続は一例であり、各入力層x1,x2,…,xnは、何れの中間層y1,y2,…,ymと接続されていてもよい。 The input layers x1, x2, . . . , xn are connected to the intermediate layers y1, y2, . The connection between the input layer and the intermediate layer shown in FIG. 8 is an example, and each input layer x1, x2, . . . , xn may be connected to any intermediate layer y1, y2, .
 図8に示すような3層のニューラルネットワークであれば、複数の入力が入力層x1,x2,…,xnに入力されると、その値に重みA1~Aaが掛けられて中間層y1,y2,…,ymに入力される。中間層y1,y2,…,ymに入力された値は、更に重みB1~Bbが掛けられて出力層z1に入力され、出力層z1から出力される。なお、添字a,bは、それぞれ自然数であり、図8に示す例では、a=n、b=mとなる。出力結果は、重みA1~Aa,B1~Bbの値によって変わることは言うまでもない。 In the case of a three-layer neural network as shown in FIG. 8, when a plurality of inputs are input to the input layers x1, x2, . , . . . , ym. The values input to the intermediate layers y1, y2, . . . , ym are further multiplied by weights B1 to Bb, input to the output layer z1, and output from the output layer z1. The subscripts a and b are natural numbers, and in the example shown in FIG. 8, a=n and b=m. It goes without saying that the output results vary depending on the values of the weights A1-Aa and B1-Bb.
 図9は、図7に示す振動制御部11が用いる推論モデルを学習する学習装置300の構成例を示す図である。学習装置300は、学習データ取得部301と、学習処理部302とを有する。学習装置300、図1に示すような、工作機械16の主軸17及び送り軸18に運転指令103を与える駆動指令部12を有する数値制御装置1に適用可能である。 FIG. 9 is a diagram showing a configuration example of a learning device 300 that learns an inference model used by the vibration control unit 11 shown in FIG. The learning device 300 has a learning data acquisition unit 301 and a learning processing unit 302 . The learning device 300 can be applied to a numerical control device 1 having a drive command section 12 that gives an operation command 103 to a spindle 17 and a feed shaft 18 of a machine tool 16 as shown in FIG.
 学習データ取得部301は、実加工中に取得された特徴量情報102及び運転指令103と、びびり振動の有無を示すびびり振動有無情報303とを対応づけた学習用データセット304を取得する。学習用データセット304に含まれるびびり振動有無情報303は、びびり振動が発生したか否かによって異なる数値を用いて表すことができる。例えば、びびり振動が発生した場合を「1」、発生しなかった場合を「0」といった数値で表すことができる。また、びびり振動有無情報303は、例えば、加工後に加工面を評価することによって判定された結果を用いることができる。 The learning data acquisition unit 301 acquires a learning data set 304 in which the feature amount information 102 and the operation command 103 acquired during actual machining are associated with chatter vibration presence/absence information 303 indicating the presence or absence of chatter vibration. The chatter vibration presence/absence information 303 included in the learning data set 304 can be expressed using different numerical values depending on whether or not chatter vibration has occurred. For example, it can be represented by a numerical value such as "1" when chatter vibration occurs, and "0" when it does not occur. Further, the chatter vibration presence/absence information 303 can use, for example, the result determined by evaluating the machined surface after machining.
 学習処理部302は、学習用データセット304と、推論モデル305を有する。学習処理部302は、学習用データセット304に含まれる特徴量情報102及び運転指令103を入力データとして学習を行う。具体的に、学習処理部302は、推論モデル305の出力がびびり振動有無情報303の数値と一致するように、いわゆる教師あり学習を行う。推論モデル305は、特徴量情報102及び運転指令103が入力されると、びびり振動の有無に対応する出力値を出力する。 The learning processing unit 302 has a learning data set 304 and an inference model 305 . The learning processing unit 302 performs learning using the feature amount information 102 and the driving command 103 included in the learning data set 304 as input data. Specifically, the learning processing unit 302 performs so-called supervised learning so that the output of the inference model 305 matches the numerical value of the chatter vibration presence/absence information 303 . The inference model 305 outputs an output value corresponding to the presence or absence of chatter vibration when the feature quantity information 102 and the operation command 103 are input.
 学習処理部302は、入力層に特徴量情報102及び運転指令103を入力し、出力層から出力された値が、びびり振動の有無を示す数値に近づくように、重みA1~Aa,B1~Bbを調整する。重みA1~Aa,B1~Bbの調整により、推論モデル305の学習が行われる。 The learning processing unit 302 inputs the feature amount information 102 and the operation command 103 to the input layer, and weights A1 to Aa and B1 to Bb so that the values output from the output layer approach numerical values indicating the presence or absence of chatter vibration. to adjust. Learning of the inference model 305 is performed by adjusting the weights A1 to Aa and B1 to Bb.
 学習処理部302は、推論モデル305の学習時に用いる教師あり学習手法として、誤差逆伝搬法を用いることができる。また、学習処理部302は、推論モデル305の汎化性能を向上させるため、学習の際にニューロンをランダムに除外する「dropout」、誤差を監視して学習を早く打ち切る「early stopping」といった手法を用いてもよい。学習処理部302は、学習が完了した推論モデル305を学習済み推論モデルとして出力する。学習処理部302が出力する学習済み推論モデルは、図7に示す推論部202において用いることができる。 The learning processing unit 302 can use the error backpropagation method as a supervised learning method used when the inference model 305 is learned. In addition, in order to improve the generalization performance of the inference model 305, the learning processing unit 302 employs methods such as "dropout" that randomly excludes neurons during learning, and "early stopping" that monitors errors and terminates learning early. may be used. The learning processing unit 302 outputs the learned inference model 305 as a learned inference model. The learned inference model output by the learning processing unit 302 can be used in the inference unit 202 shown in FIG.
 以上説明したように、実施の形態1に係る学習装置300は、推論モデル305と、学習用データセット304と、を有する。学習用データセット304には、びびり振動の有無を示すびびり振動有無情報303と、特徴量情報102及び運転指令103とが対応づけられて保持される。推論モデル305には、特徴量情報102、運転指令103及びびびり振動有無情報303が入力される。推論モデル305は、特徴量情報102及び運転指令103が入力されると、びびり振動の有無に対応する出力値が出力されるように機械学習を行う。このような学習装置300を数値制御装置1に適用すれば、予め機械学習を行った推論モデル305を用いて駆動補正値104を出力できるので、びびり振動の抑制の高速化を図ることができる。 As described above, the learning device 300 according to Embodiment 1 has the inference model 305 and the learning dataset 304 . In the learning data set 304, chatter vibration presence/absence information 303 indicating the presence or absence of chatter vibration, feature amount information 102, and operation command 103 are associated and held. The feature amount information 102 , the operation command 103 and the chatter vibration presence/absence information 303 are input to the inference model 305 . The inference model 305 performs machine learning so that when the feature amount information 102 and the operation command 103 are input, an output value corresponding to the presence or absence of chatter vibration is output. If such a learning device 300 is applied to the numerical control device 1, it is possible to output the drive correction value 104 using the inference model 305 that has undergone machine learning in advance, so that chatter vibration can be suppressed at high speed.
 なお、上記では、推論モデル305にニューラルネットワークを用いる場合について説明したが、これに限定されない。他の公知の方法、例えばRNN(Recurrent Neural Network)、LSTM(Long Short-Term Memory)、SVM(Support Vector Machine)などを用いて推論モデル305を構成してもよい。 In addition, although the case where a neural network is used for the inference model 305 has been described above, it is not limited to this. The inference model 305 may be configured using other known methods such as RNN (Recurrent Neural Network), LSTM (Long Short-Term Memory), SVM (Support Vector Machine), and the like.
実施の形態2.
 図10は、実施の形態2に係る数値制御装置2の機能構成を示す図である。数値制御装置2は、特徴量算出部10と、振動制御部11-1と、駆動指令部12と、入力装置20とを有する。以下、数値制御装置1と異なる部分について主に説明する。
Embodiment 2.
FIG. 10 is a diagram showing the functional configuration of a numerical control device 2 according to Embodiment 2. As shown in FIG. The numerical controller 2 has a feature quantity calculator 10 , a vibration controller 11 - 1 , a drive commander 12 and an input device 20 . In the following, parts different from the numerical control device 1 will be mainly described.
 数値制御装置2は、実施の形態1に係る数値制御装置1で説明した構成に加えて、入力装置20を有する。作業者は、加工を実施する前に振動制御部11-1において補正対象となる運転指令103の上限値及び下限値の情報を入力装置20に入力する。 The numerical controller 2 has an input device 20 in addition to the configuration described for the numerical controller 1 according to the first embodiment. The operator inputs information on the upper limit value and the lower limit value of the operation command 103 to be corrected in the vibration control section 11-1 to the input device 20 before processing.
 入力装置20は、入力された運転指令103の上限値及び下限値を少なくとも含む制限情報106を振動制御部11-1に出力する。なお、この方法に代え、振動制御部11-1が運転指令103の上限値及び下限値が記載された加工プログラムを参照して取得するようにしてもよい。 The input device 20 outputs restriction information 106 including at least the upper limit value and the lower limit value of the input operation command 103 to the vibration control section 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 described and acquire them.
 振動制御部11-1は、特徴量算出部10から特徴量情報102を受け取り、駆動指令部12から運転指令103を受け取り、入力装置20から制限情報106を受け取る。振動制御部11-1は、特徴量情報102、運転指令103及び制限情報106に基づいて、駆動補正値104を生成し、生成した駆動補正値104を駆動指令部12へ出力する。 The vibration control unit 11 - 1 receives the feature amount information 102 from the feature amount calculation unit 10 , the operation command 103 from the drive command unit 12 , and the restriction information 106 from the input device 20 . Vibration control section 11 - 1 generates drive correction value 104 based on feature amount information 102 , operation command 103 and limit information 106 , and outputs generated drive correction value 104 to drive command section 12 .
 図11は、図10に示す振動制御部11-1による処理フローを示すフローチャートである。振動制御部11-1は、以下の各ステップで運転指令の補正を行う。なお、図11において、図5に示す処理と同一又は同等の処理については同一の符号を付している。また、図11では、図5と同様に、位相差を判定基準として用い、主軸速度指令を制御対象とした処理フローが例示されている。以下、図5と異なる部分について主に説明する。 FIG. 11 is a flow chart showing the processing flow by the vibration control section 11-1 shown in FIG. The vibration control section 11-1 corrects the operation command in the following steps. In FIG. 11, the same reference numerals are given to the same or equivalent processes as those shown in FIG. 11, similarly to FIG. 5, illustrates a processing flow in which the phase difference is used as a determination criterion and the spindle speed command is controlled. Hereinafter, the parts different from FIG. 5 will be mainly described.
 ステップS101~S105の処理については、図5と同一又は同等であり、ここでの説明は省略する。 The processing of steps S101 to S105 is the same as or equivalent to that of FIG. 5, and the description is omitted here.
 ステップS201では、ステップS104で処理された主軸速度指令を予め定められた主軸速度指令の下限値の範囲内に制限する。具体的には、ステップS104で処理された主軸速度指令が主軸速度指令の下限値未満である場合(ステップS201,No)、ステップS202に進んで、主軸速度指令を主軸速度指令の下限値に変更してから、ステップS106に進む。また、主軸速度指令が主軸速度指令の下限値以上である場合(ステップS201,Yes)、主軸速度指令を変更せず、ステップS106に進む。 In step S201, the spindle speed command processed in step S104 is limited within a predetermined lower limit of the spindle speed command. Specifically, when the spindle speed command processed in step S104 is less than the lower limit of the spindle speed command (step S201, No), the process proceeds to step S202 to change the spindle speed command to the lower limit of the spindle speed command. After that, the process proceeds to step S106. If the spindle speed command is equal to or higher than the lower limit value of the spindle speed command (step S201, Yes), the process advances to step S106 without changing the spindle speed command.
 また、ステップS203では、ステップS105で処理された主軸速度指令を予め定められた主軸速度指令の上限値の範囲内に制限する。具体的には、ステップS105で処理された主軸速度指令が主軸速度指令の上限値を超えている場合(ステップS203,No)、ステップS204に進んで、主軸速度指令を主軸速度指令の上限値に変更してから、ステップS106に進む。また、主軸速度指令が主軸速度指令の上限値以下の場合(ステップS203,Yes)、主軸速度指令を変更せず、ステップS106に進む。 Also, in step S203, the spindle speed command processed in step S105 is limited within the range of the predetermined upper limit of the spindle speed command. Specifically, when the spindle speed command processed in step S105 exceeds the upper limit of the spindle speed command (step S203, No), the process advances to step S204 to set the spindle speed command to the upper limit of the spindle speed command. After changing, the process proceeds to step S106. If the spindle speed command is equal to or lower than the upper limit of the spindle speed command (step S203, Yes), the process proceeds to step S106 without changing the spindle speed command.
 ステップS106では、加工が終了したか否かが判定される。加工が終了した場合(ステップS106,Yes)、振動制御部11-1は、図11の処理を終了する。一方、加工が終了していない場合(ステップS106,No)、ステップS101の処理に戻る。図11に示す処理は、加工が実施されている間は継続して実行される。 In step S106, it is determined whether or not the processing has ended. If the machining is completed (step S106, Yes), the vibration control section 11-1 terminates the processing of FIG. On the other hand, if the processing has not ended (step S106, No), the process returns to step S101. The processing shown in FIG. 11 is continuously executed while processing is being performed.
 なお、図11では、特徴量情報102に含まれる位相差を判定基準とし、制御対象が運転指令103に含まれる主軸速度指令である場合について例示したが、特徴量情報102が位相差以外であり、制御対象が主軸速度指令以外である場合も、同様なフローでの処理が可能である。 FIG. 11 illustrates the case where the phase difference included in the feature amount information 102 is used as the determination criterion, and the controlled object is the spindle speed command included in the operation command 103. However, if the feature amount information 102 is other than the phase difference, , the same flow can be used when the controlled object is other than the spindle speed command.
 実施の形態2によれば、振動制御部11-1には、運転指令103の上限値及び下限値を含む制限情報106が入力され、振動制御部11-1は、入力された上限値と下限値との間の範囲内で運転指令103を増加又は減少させる。これにより、振動制御部11-1が工具及び工作機械が定める切削条件外の駆動補正値104を駆動指令部12へ出力することが防止される。その結果、補正後の運転指令103が、作業者の予期しない値となることを防止できる。これにより、意図しない加工不良の発生を防止できるという更なる効果が得られる。 According to the second embodiment, the vibration control unit 11-1 receives the limit information 106 including the upper limit value and the lower limit value of the operation command 103, and the vibration control unit 11-1 controls the input upper limit value and lower limit value. Increase or decrease the run command 103 within the range between This prevents the vibration control unit 11-1 from outputting to the drive command unit 12 the drive correction value 104 outside the cutting conditions determined by the tool and machine tool. As a result, it is possible to prevent the corrected operation command 103 from becoming a value unexpected by the operator. As a result, it is possible to obtain the further effect of preventing the occurrence of unintended processing defects.
実施の形態3.
 図12は、実施の形態3に係る数値制御装置3の機能構成を示す図である。図1の構成と比較すると、図12では、数値制御装置1が数値制御装置3に置き替えられ、振動制御部11が振動制御部11-2に置き替えられている。振動制御部11-2には、運転指令103の他に、動作情報105が入力される。その他の構成は、図1と同一又は同等であり、同一又は同等の構成部には同一の符号を付している。以下、数値制御装置1と異なる部分について主に説明する。
Embodiment 3.
FIG. 12 is a diagram showing the functional configuration of a numerical control device 3 according to Embodiment 3. As shown in FIG. 12, the numerical controller 1 is replaced with the numerical controller 3, and the vibration controller 11 is replaced with the vibration controller 11-2. In addition to the operation command 103, operation information 105 is input to the vibration control unit 11-2. Other configurations are the same as or equivalent to those in FIG. 1, and the same or equivalent components are denoted by the same reference numerals. In the following, portions different from the numerical control device 1 will be mainly described.
 振動制御部11-2は、特徴量算出部10から特徴量情報102を受け取り、駆動指令部12から運転指令103を受け取り、工作機械16から動作情報105を受け取る。振動制御部11-2は、特徴量情報102、運転指令103及び動作情報105に基づいて、駆動補正値104を生成し、生成した駆動補正値104を駆動指令部12へ出力する。 The vibration control unit 11-2 receives the feature amount information 102 from the feature amount calculation unit 10, the operation command 103 from the drive command unit 12, and the motion information 105 from the machine tool 16. Vibration control section 11 - 2 generates drive correction value 104 based on feature quantity information 102 , operation command 103 and motion information 105 , and outputs generated drive correction value 104 to drive command section 12 .
 実施の形態3において、振動制御部11-2は、予め設定した特徴量目標値に対して、特徴量情報102が特徴量目標値に到達するように制御を行う。具体的には、図13に示すように制御系を構成する。図13は、実施の形態3に係る振動制御部11-2の機能を実現する制御系の構成例を示す図である。図13には、一例としてPID(Proportional Integral Differential)制御を行う制御系の構成が示されている。 In the third embodiment, the vibration control unit 11-2 performs control so that the feature amount information 102 reaches the feature amount target value set in advance. Specifically, a control system is configured as shown in FIG. FIG. 13 is a diagram showing a configuration example of a control system that implements the functions of the vibration control section 11-2 according to the third embodiment. FIG. 13 shows, as an example, the configuration of a control system that performs PID (Proportional Integral Differential) control.
 まず、特徴量目標値から特徴量情報102を減算した特徴量偏差125が生成される。ここでは、特徴量目標値の一例として“0”を設定する。実施の形態3において、特徴量情報102は、図2の位相差演算部15で算出された位相差である。一般的に、びびり振動が発生していない場合には、位相差は0となることが知られている。このため、特徴量目標値を“0”に設定することで、びびり振動を抑制することができる。 First, a feature amount deviation 125 is generated by subtracting the feature amount information 102 from the feature amount target value. Here, "0" is set as an example of the feature quantity target value. In Embodiment 3, the feature quantity information 102 is the phase difference calculated by the phase difference calculator 15 in FIG. It is generally known that the phase difference is 0 when chatter vibration does not occur. Therefore, chatter vibration can be suppressed by setting the feature amount target value to "0".
 特徴量偏差125は3つに分岐され、それらのうちの1つには比例ゲイン122が乗算される。残りの2つのうちの一方は、積分器120を通した後に積分ゲイン123が乗算される。即ち、特徴量偏差125の時間積分値に積分ゲイン123が乗算される。また、残りの2つのうちのもう一方は、微分器121を通した後に微分ゲイン124が乗算される。即ち、特徴量偏差125の時間微分値に微分ゲイン124が乗算される。これらの3種類のゲイン値は加算されて特徴量補正量126とされる。特徴量補正量126は、更に主軸速度と加算され、駆動補正値104として駆動指令部12へ出力される。 The feature quantity deviation 125 is branched into three, one of which is multiplied by the proportional gain 122 . One of the remaining two is multiplied by integral gain 123 after passing through integrator 120 . That is, the time integral value of the feature quantity deviation 125 is multiplied by the integral gain 123 . Also, the other of the remaining two is multiplied by a differential gain 124 after passing through a differentiator 121 . That is, the time differential value of the feature amount deviation 125 is multiplied by the differential gain 124 . These three types of gain values are added to obtain the feature amount correction amount 126 . The feature amount correction amount 126 is further added to the spindle speed and output to the drive command unit 12 as the drive correction value 104 .
 比例ゲイン122、積分ゲイン123及び微分ゲイン124は、予め設定される値であり、加工前に付与される。また、これらの3種類のゲイン値は、試し加工を行うことで調整することができる。これらの3種類のゲイン値を適切に設定することで、実施の形態1よりも高速にびびり振動を抑制することができる。 The proportional gain 122, the integral gain 123, and the differential gain 124 are values set in advance and given before processing. Also, these three types of gain values can be adjusted by performing trial machining. By appropriately setting these three types of gain values, chatter vibration can be suppressed at a higher speed than in the first embodiment.
 以上説明したように、実施の形態3によれば、振動制御部11-2の内部に、特徴量情報102を特徴量目標値に一致させる制御系を構成しているので、びびり振動の抑制をより高速に実施することができる。 As described above, according to the third embodiment, the vibration control unit 11-2 includes a control system for matching the feature amount information 102 with the feature amount target value. It can be performed faster.
 なお、図13の制御系では、特徴量偏差125に比例ゲイン122を乗算し、特徴量偏差125の時間積分値に積分ゲイン123を乗算し、特徴量偏差125の時間微分値に微分ゲイン124を乗算しているが、この構成に限定されない。特徴量偏差125、特徴量偏差125の時間積分値及び特徴量偏差125の時間微分値のうちの少なくとも1つにゲインが乗算されていればよく、所望の特性の制御系、もしくは所望の特性に近い制御系の構成が可能となる。 In the control system of FIG. 13, the feature amount deviation 125 is multiplied by the proportional gain 122, the time integral value of the feature amount deviation 125 is multiplied by the integral gain 123, and the time differential value of the feature amount deviation 125 is multiplied by the differential gain 124. Although multiplying, it is not limited to this configuration. At least one of the feature amount deviation 125, the time integral value of the feature amount deviation 125, and the time differential value of the feature amount deviation 125 may be multiplied by the gain, and the desired characteristics of the control system or the desired characteristics may be obtained. It is possible to construct a similar control system.
実施の形態4.
 図14は、実施の形態4に係る数値制御装置4の機能構成を示す図である。図1の構成と比較すると、図14では、数値制御装置1が数値制御装置4に置き替えられ、振動制御部11が振動制御部11-3に置き替えられている。また、駆動指令部12に入力される駆動補正値104が駆動補正値104-1に置き替えられている。その他の構成は、図1と同一又は同等であり、同一又は同等の構成部には同一の符号を付している。以下、数値制御装置1と異なる部分について主に説明する。
Embodiment 4.
FIG. 14 is a diagram showing the functional configuration of a numerical controller 4 according to Embodiment 4. As shown in FIG. 14, the numerical controller 1 is replaced with the numerical controller 4, and the vibration controller 11 is replaced with the vibration controller 11-3. Also, the drive correction value 104 input to the drive command unit 12 is replaced with a drive correction value 104-1. Other configurations are the same as or equivalent to those in FIG. 1, and the same or equivalent components are denoted by the same reference numerals. In the following, portions different from the numerical control device 1 will be mainly described.
 振動制御部11-3は、特徴量算出部10から特徴量情報102を受け取り、駆動指令部12から運転指令103を受け取る。振動制御部11-3は、特徴量情報102及び運転指令103に基づいて、駆動補正値104-1を生成し、生成した駆動補正値104-1を駆動指令部12へ出力する。 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.
 図15は、図14に示す振動制御部11-3による処理フローを示すフローチャートである。振動制御部11-3は、以下の各ステップで運転指令の補正を行う。なお、図15において、図5に示す処理と同一又は同等の処理については同一の符号を付している。また、図15では、位相差を判定基準として用い、主軸速度指令及び送り軸18の速度指令である送り軸速度指令を制御対象とした処理フローが例示されている。以下、図5と異なる部分について主に説明する。 FIG. 15 is a flow chart showing the processing flow by the vibration control section 11-3 shown in FIG. The vibration control section 11-3 corrects the operation command in the following steps. In addition, in FIG. 15, the same reference numerals are given to the same or equivalent processes as those shown in FIG. In addition, FIG. 15 illustrates a processing flow in which the phase difference is used as a determination criterion, and the main shaft speed command and the feed axis speed command, which is the speed command of the feed shaft 18, are controlled. Hereinafter, the parts different from FIG. 5 will be mainly described.
 ステップS101~S105の処理については、図5と同一又は同等であり、ここでの説明は省略する。 The processing of steps S101 to S105 is the same as or equivalent to that of FIG. 5, and the description is omitted here.
 ステップS301では、ステップS104又はステップS105で主軸速度指令を変更した後に、送り軸速度指令を変更する。具体的に、ステップS301では、主軸17の1回転あたりの送り量が変化しないように送り軸速度指令が変更される。ここで、主軸17の1回転あたりの送り量とは、送り軸18の速度である送り軸速度を主軸速度で除して得られる値である。例えば、ステップS104において、主軸速度指令を10%減少させた場合には、送り軸速度指令も同じ割合の10%減少させる。また、ステップS105において、主軸速度指令を10%増加させた場合には、送り軸速度指令も同じ割合の10%増加させる。 In step S301, after changing the spindle speed command in step S104 or step S105, the feed axis speed command is changed. Specifically, in step S301, the feed shaft speed command is changed so that the feed amount per rotation of the main shaft 17 does not change. Here, the feed amount per rotation of the main shaft 17 is a value obtained by dividing the feed shaft speed, which is the speed of the feed shaft 18, by the main shaft speed. For example, if the spindle speed command is decreased by 10% in step S104, the feed shaft speed command is also decreased by 10% at the same rate. In step S105, when the spindle speed command is increased by 10%, the feed shaft speed command is also increased by 10% at the same rate.
 ステップS106では、加工が終了したか否かが判定される。加工が終了した場合(ステップS106,Yes)、振動制御部11-3は、図15の処理を終了する。一方、加工が終了していない場合(ステップS106,No)、ステップS101の処理に戻る。図15に示す処理は、加工が実施されている間は継続して実行される。 In step S106, it is determined whether or not the processing has ended. If the machining is finished (step S106, Yes), the vibration control section 11-3 finishes the processing of FIG. On the other hand, if the processing has not ended (step S106, No), the process returns to step S101. The processing shown in FIG. 15 is continuously executed while processing is being performed.
 なお、図15では、特徴量情報102に含まれる位相差を判定基準とする場合について例示したが、特徴量情報102が位相差以外である場合も、同様なフローでの処理が可能である。 Note that FIG. 15 illustrates the case where the phase difference included in the feature amount information 102 is used as the determination criterion, but processing in a similar flow is possible even when the feature amount information 102 is other than the phase difference.
 実施の形態4によれば、振動制御部11-3は、主軸速度指令の増加又は減少と同期して、送り軸速度指令を補正する補正値を駆動指令部12に出力する。この制御において、振動制御部11-3は、主軸17の1回転あたりの送り量が変化しないように、位相差の値に応じて主軸速度指令の変更と、送り軸速度指令の変更とを実施する。この制御により、主軸17の1回転あたりの送り量が一定となるので、加工面に生じるカッターマークの間隔が均一化される。これにより、実施の形態1の効果に加え、加工面品質を向上させる効果が得られる。 According to the fourth embodiment, the vibration control section 11-3 outputs a correction value for correcting the feed axis speed command to the drive command section 12 in synchronization with the increase or decrease of the spindle speed command. In this control, the vibration control unit 11-3 changes the spindle speed command and the feed axis speed command according to the phase difference value so that the feed amount per rotation of the spindle 17 does not change. do. This control makes the feed amount per rotation of the main shaft 17 constant, so that the intervals between cutter marks generated on the machined surface are made uniform. As a result, in addition to the effect of the first embodiment, the effect of improving the machined surface quality can be obtained.
実施の形態5.
 図16は、実施の形態5に係る数値制御装置5の機能構成を示す図である。図1の構成と比較すると、図16では、数値制御装置1が数値制御装置5に置き替えられ、特徴量算出部10が特徴量算出部10-1に置き替えられている。また、図16では、工具情報113を生成する工具情報記録部21が追加されている。特徴量算出部10-1には、センサ信号100及び主軸運転指令101の他に、工具情報113が入力される。その他の構成は、図1と同一又は同等であり、同一又は同等の構成部には同一の符号を付している。以下、数値制御装置1と異なる部分について主に説明する。
Embodiment 5.
FIG. 16 is a diagram showing the functional configuration of a numerical control device 5 according to Embodiment 5. As shown in FIG. 16, the numerical controller 1 is replaced with the numerical controller 5, and the feature amount calculator 10 is replaced with the feature amount calculator 10-1. Further, 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, the tool information 113 is input to the feature amount calculation unit 10-1. Other configurations are the same as or equivalent to those in FIG. 1, and the same or equivalent components are denoted by the same reference numerals. In the following, parts different from the numerical control device 1 will be mainly described.
 工具情報記録部21は、工作機械16に設置された工具に関する情報である工具情報113を記録し、記録した工具情報113を特徴量算出部10-1に出力する。工具情報113は、少なくとも工具の刃数に関する情報を含む。工具情報113には、更にエンドミル、バイト等の工具の種類、及び工具長、工具径等の工具形状の情報が含まれていてもよい。なお、旋削工具が設置されている場合、工具情報記録部21は工具の刃数は1枚であるとして工具情報113を出力する。また、旋削工具が設置されている場合であっても、複数の工具が同時に切削する場合は、刃数は工具の数と同数になる。例えば工作機械16が下刃物台と上刃物台を持ち、両方の刃物台に1枚ずつ設置された旋削工具で加工を行う場合、工具情報記録部21は刃数が2枚であるとして工具情報113を出力する。 The tool information recording unit 21 records tool information 113, which is information about the tools installed in the machine tool 16, and outputs the recorded tool information 113 to the feature amount calculation unit 10-1. The tool information 113 includes at least information on the number of blades of the tool. The tool information 113 may further include information on the types of tools such as end mills and cutting tools, and information on tool shapes such as tool lengths and tool diameters. When a turning tool is installed, the tool information recording unit 21 outputs the tool information 113 assuming that the tool has one blade. Moreover, even when a turning tool is installed, the number of cutting edges is the same as the number of tools when a plurality of tools are used for cutting at the same time. For example, when the machine tool 16 has a lower tool post and an upper tool post, and machining is performed using a turning tool installed on each tool post, the tool information recording unit 21 assumes that the number of blades is two, and the tool information 113 is output.
 特徴量算出部10-1は、工作機械16からセンサ信号100を受け取り、駆動指令部12から主軸運転指令101を受け取り、工具情報記録部21から工具情報113を受け取る。特徴量算出部10-1は、センサ信号100、主軸運転指令101及び工具情報113に基づいて、びびり振動の特徴量である位相差を少なくとも含む特徴量情報102を生成し、生成した特徴量情報102を振動制御部11に出力する。 The feature quantity calculation unit 10-1 receives the sensor signal 100 from the machine tool 16, receives the spindle operation command 101 from the drive command unit 12, and receives the tool information 113 from the tool information recording unit 21. Based on the sensor signal 100, the spindle operation command 101, and the tool information 113, the feature amount calculation unit 10-1 generates feature amount information 102 including at least a phase difference, which is a feature amount of chatter vibration, and calculates the generated feature amount information. 102 is output to the vibration control unit 11 .
 図17は、図16に示す特徴量算出部10-1の機能構成を示す図である。特徴量算出部10-1は、センサ信号処理部13と、位相差演算部15と、タイミング信号生成部14-1とを有する。 FIG. 17 is a diagram showing the functional configuration of the feature amount calculation unit 10-1 shown in FIG. The feature quantity calculator 10-1 has a sensor signal processor 13, a phase difference calculator 15, and a timing signal generator 14-1.
 タイミング信号生成部14-1は、駆動指令部12が出力する主軸運転指令101及び工具情報記録部21が出力する工具情報113に基づいて、主軸17の角度である主軸角度が設定値を通過したことを判定し、判定したタイミングで位相差演算部15へタイミング信号111を出力する。以下、タイミング信号生成部14-1によるタイミング信号111の生成方法について詳細を説明する。なお、以降では、刃数がα枚の工具を、主軸17に設置する前提のもとで説明を行う。但し、αは2以上の自然数である。 Based on the spindle operation command 101 output by the drive command unit 12 and the tool information 113 output by the tool information recording unit 21, the timing signal generation unit 14-1 detects when the spindle angle, which is the angle of the spindle 17, has passed the set value. Then, the timing signal 111 is output to the phase difference calculator 15 at the determined timing. A method of generating the timing signal 111 by the timing signal generator 14-1 will be described in detail below. In the following description, it is assumed that a tool having α blades is installed on the spindle 17 . However, α is a natural number of 2 or more.
 図18は、図17に示すタイミング信号生成部14-1が出力するタイミング信号111と主軸角度指令との関係を示す図である。図18に示すように、主軸角度指令は、0[rad]から2π[rad]の値をとり、360[rad]に達すると0[rad]に戻る信号である。タイミング信号111は、主軸角度指令が設定された角度φβを通過する度に出力される信号である。ここで、βは、2以上、且つα以下の自然数である。即ち、タイミング信号111は、主軸17の1回転中にα回出力される。図18はα=2の例であり、主軸角度指令が設定された角度φ1,φ2を通過する度にタイミング信号111を出力し、それ以外ではタイミング信号111を出力しない。なお、角度φ1は、主軸17の1回転中に1カ所のみ定められていればよく、任意の角度を定めてよい。但し、φβとφβ-1との間には、以下の(4)式に示される制約がある。 FIG. 18 is a diagram showing the relationship between the timing signal 111 output by the timing signal generator 14-1 shown in FIG. 17 and the spindle angle command. As shown in FIG. 18, the spindle angle command is a signal that takes a value from 0 [rad] to 2π [rad] and returns to 0 [rad] when reaching 360 [rad]. The timing signal 111 is a signal that is output each time the spindle angle command passes through the set angle φβ . Here, β is a natural number equal to or greater than 2 and equal to or smaller than α. That is, the timing signal 111 is output α times during one rotation of the spindle 17 . FIG. 18 shows an example of α=2, in which the timing signal 111 is output every time the spindle angle command passes through the set angles φ1 and φ2, and otherwise the timing signal 111 is not output. It is sufficient that the angle φ1 is set at only one point during one rotation of the main shaft 17, and any angle may be set. However, there is a constraint between φ β and φ β−1 as shown in the following equation (4).
 φβ-φβ-1=2π/α  …(4) φ β −φ β−1 = 2π/α (4)
 なお、別の例としてタイミング信号生成部14-1は、主軸運転指令101に含まれる主軸速度指令を用いてタイミング信号111を生成してもよい。この場合、タイミング信号生成部14-1は、主軸速度指令S[rpm]から、以下に示す(5)式を用いて算出される時間T2ごとに、タイミング信号111を出力する。 As another example, the timing signal generator 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 generator 14-1 outputs the timing signal 111 every time T2 calculated from the spindle speed command S [rpm] using the following equation (5).
 T2=60/(S×α)  …(5)  T2=60/(S×α) ...(5)
 以上のように、実施の形態5に係る数値制御装置5は、工具の刃数に関する情報を記録する工具情報記録部21を有し、特徴量算出部10-1は工具の刃数を考慮して特徴量情報102を算出する。そして、タイミング信号生成部14-1は、工具情報記録部21から取得した工具情報113に基づいて、主軸17が回転するごとに、タイミング信号111を生成して位相差演算部15に出力する。これにより、工具の刃数が2枚以上の場合であっても、びびり振動を抑制できるという効果が得られる。 As described above, the numerical control device 5 according to Embodiment 5 has the tool information recording unit 21 for recording information about the number of blades of the tool, and the feature amount calculation unit 10-1 considers the number of blades of the tool. Then, the feature amount information 102 is calculated. Based on the tool information 113 acquired from the tool information recording unit 21, the timing signal generation unit 14-1 generates a timing signal 111 and outputs it to the phase difference calculation unit 15 each time the main shaft 17 rotates. As a result, even if the tool has two or more blades, it is possible to suppress chatter vibration.
 次に、実施の形態1~5において説明した数値制御装置1~5の機能を実現するためのハードウェア構成について、図19及び図20の図面を参照して説明する。図19は、実施の形態1~5において説明した数値制御装置1~5の機能を実現するハードウェア構成の一例を示すブロック図である。図20は、実施の形態1~5において説明した数値制御装置1~5の機能を実現するハードウェア構成の他の例を示すブロック図である。 Next, the hardware configuration for realizing the functions of the numerical controllers 1 to 5 described in Embodiments 1 to 5 will be described with reference to FIGS. 19 and 20. FIG. FIG. 19 is a block diagram showing an example of a hardware configuration that implements the functions of the numerical controllers 1-5 described in the first to fifth embodiments. FIG. 20 is a block diagram showing another example of the hardware configuration that implements the functions of the numerical controllers 1-5 described in the first to fifth embodiments.
 数値制御装置1~5の機能を実現する場合には、図19に示されるように、演算を行うプロセッサ701、プロセッサ701によって読みとられるプログラムが保存されるメモリ702、及び信号の入出力を行うインタフェース704を含む構成とすることができる。 When realizing the functions of the numerical controllers 1 to 5, as shown in FIG. 19, there are a processor 701 that performs calculations, a memory 702 that stores programs read by the processor 701, and a signal input/output unit. The configuration may include an interface 704 .
 プロセッサ701は、マイクロプロセッサ、マイクロコンピュータ、CPU(Central Processing Unit)、又はDSP(Digital Signal Processor)と称される演算手段であってもよい。また、メモリ702には、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)といった不揮発性又は揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD(Digital Versatile Disc)を例示することができる。 The processor 701 may be a computing means called microprocessor, microcomputer, CPU (Central Processing Unit), or DSP (Digital Signal Processor). The memory 702 includes non-volatile or volatile semiconductor memories such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), Magnetic discs, flexible discs, optical discs, compact discs, mini discs, and DVDs (Digital Versatile Discs) can be exemplified.
 メモリ702には、数値制御装置1~5の機能を実行するプログラムが格納されている。プロセッサ701は、インタフェース704を介して必要な情報を授受し、メモリ702に格納されたプログラムをプロセッサ701が実行し、メモリ702に格納されたテーブルをプロセッサ701が参照することにより、上述した処理を行うことができる。プロセッサ701による演算結果は、メモリ702に記憶することができる。 The memory 702 stores programs for executing the functions of the numerical controllers 1-5. The processor 701 transmits and receives necessary information via the interface 704, the processor 701 executes the program stored in the memory 702, and the processor 701 refers to the table stored in the memory 702, thereby performing the above-described processing. It can be carried out. The computation results by processor 701 can be stored in memory 702 .
 また、数値制御装置1~5の機能を実現する場合には、図20に示す処理回路703を用いることもできる。処理回路703は、単一回路、複合回路、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、又は、これらを組み合わせたものが該当する。処理回路703に入力する情報、及び処理回路703から出力する情報は、インタフェース704を介して入手することができる。 Further, when realizing the functions of the numerical controllers 1 to 5, the processing circuit 703 shown in FIG. 20 can also be used. The processing circuit 703 corresponds to a single circuit, a composite circuit, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof. Information to be input to the processing circuit 703 and information to be output from the processing circuit 703 can be obtained via the interface 704 .
 なお、数値制御装置1~5における一部の処理を処理回路703で実施し、処理回路703で実施しない処理をプロセッサ701及びメモリ702で実施してもよい。 It should be noted that part of the processing in the numerical controllers 1 to 5 may be performed by the processing circuit 703, and the processing not performed by the processing circuit 703 may be performed by the processor 701 and the memory 702.
 以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。 The configurations shown in the above embodiments are only examples, and can be combined with other known techniques, or can be combined with other embodiments, without departing from the scope of the invention. It is also possible to omit or change part of the configuration.
 1,2,3,4,5 数値制御装置、10,10-1 特徴量算出部、11,11-1,11-2,11-3 振動制御部、12 駆動指令部、13 センサ信号処理部、14,14-1 タイミング信号生成部、15 位相差演算部、16 工作機械、17 主軸、18 送り軸、19 センサ、20 入力装置、21 工具情報記録部、100 センサ信号、101 主軸運転指令、102 特徴量情報、103 運転指令、104,104-1 駆動補正値、105 動作情報、106 制限情報、110 状態量信号、111 タイミング信号、113 工具情報、120 積分器、121 微分器、122 比例ゲイン、123 積分ゲイン、124 微分ゲイン、125 特徴量偏差、126 特徴量補正量、201 情報観測部、202 推論部、203 推論用データセット、300 学習装置、301 学習データ取得部、302 学習処理部、303 びびり振動有無情報、304 学習用データセット、305 推論モデル、701 プロセッサ、702 メモリ、703 処理回路、704 インタフェース。 1, 2, 3, 4, 5 Numerical control device, 10, 10-1 feature quantity calculation unit, 11, 11-1, 11-2, 11-3 vibration control unit, 12 drive command unit, 13 sensor signal processing unit , 14, 14-1 timing signal generator, 15 phase difference calculator, 16 machine tool, 17 spindle, 18 feed axis, 19 sensor, 20 input device, 21 tool information recorder, 100 sensor signal, 101 spindle operation command, 102 feature amount information, 103 operation command, 104, 104-1 drive correction value, 105 operation information, 106 limit information, 110 state amount signal, 111 timing signal, 113 tool information, 120 integrator, 121 differentiator, 122 proportional gain , 123 integral gain, 124 differential gain, 125 feature amount deviation, 126 feature amount correction amount, 201 information observation unit, 202 inference unit, 203 inference data set, 300 learning device, 301 learning data acquisition unit, 302 learning processing unit, 303 Chatter vibration presence/absence information, 304 Learning data set, 305 Inference model, 701 Processor, 702 Memory, 703 Processing circuit, 704 Interface.

Claims (12)

  1.  工作機械の主軸及び送り軸に運転指令を与える駆動指令部を有する数値制御装置であって、
     前記工作機械に取り付けられる工具又は加工対象物の振動を検出したセンサ信号、及び前記主軸の運転指令である主軸運転指令に基づいて、びびり振動の特徴量情報を算出する特徴量算出部と、
     前記特徴量情報が目標範囲内に到達するまでの間、前記駆動指令部に前記運転指令を補正するための補正値を出力する振動制御部と、
     を備えることを特徴とする数値制御装置。
    A numerical control device having a drive command unit that gives drive commands to a spindle and a feed shaft of a machine tool,
    a feature amount calculation unit that calculates feature amount information of chatter vibration based on a sensor signal that detects vibration of a tool attached to the machine tool or an object to be machined and a spindle operation command that is an operation command for the spindle;
    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;
    A numerical control device comprising:
  2.  前記特徴量算出部は、
     前記センサ信号に基づいて複数の種類の状態量を生成するセンサ信号処理部と、
     前記主軸の回転と同期したタイミングで周期的にタイミング信号を生成して出力するタイミング信号生成部と、
     前記複数の種類の状態量を前記タイミング信号ごとに正規化により無次元化し、無次元化された状態量から成る状態空間において、無次元化された状態量信号の位相間の差分を示す位相差を演算する位相差演算部と、
     を備えることを特徴とする請求項1に記載の数値制御装置。
    The feature amount calculation unit is
    a sensor signal processing unit that generates a plurality of types of state quantities based on the sensor signal;
    a timing signal generator that periodically generates and outputs a timing signal at a timing synchronized with the rotation of the main shaft;
    a phase difference indicating a difference between phases of the dimensionless state quantity signals in a state space composed of the dimensionless state quantities by normalizing the plurality of types of state quantities for each of the timing signals; a phase difference calculator that calculates
    The numerical controller according to claim 1, characterized by comprising:
  3.  前記工作機械に取り付けられる工具の情報を記録する工具情報記録部、を更に備え、
     前記タイミング信号生成部は、前記工具情報記録部から取得した工具の情報に基づいて、前記主軸が回転するごとに、前記タイミング信号を出力することを特徴とする請求項2に記載の数値制御装置。
    further comprising a tool information recording unit that records information of a tool attached to the machine tool;
    3. The numerical controller according to claim 2, wherein the timing signal generation unit outputs the timing signal each time the spindle rotates based on the tool information acquired from the tool information recording unit. .
  4.  前記センサ信号処理部は、前記センサ信号と、前記センサ信号の単位時間あたりの変化量を算出することにより得られる状態量と、前記センサ信号の単位時間ごとの累積量を算出することにより得られる状態量とのうち2種類以上の状態量を生成する
     ことを特徴とする請求項2又は3に記載の数値制御装置。 
    The sensor signal processing unit calculates the sensor signal, a state quantity obtained by calculating a change amount of the sensor signal per unit time, and a cumulative amount of the sensor signal per unit time. 4. The numerical controller according to claim 2, wherein two or more types of state quantities are generated among the state quantities.
  5.  前記タイミング信号生成部は、前記主軸の角度指令、前記主軸の速度指令、前記主軸の実際の角度である主軸角度及び前記主軸の実際の速度である主軸速度の少なくとも一つに基づいて、前記タイミング信号を生成する
     ことを特徴とする請求項2から4の何れか1項に記載の数値制御装置。
    The timing signal generator generates the timing signal based on at least one of a spindle angle command, a spindle speed command, a spindle angle that is an actual angle of the spindle, and a spindle speed that is an actual speed of the spindle. 5. The numerical controller according to any one of claims 2 to 4, which generates a signal.
  6.  前記運転指令は、前記主軸の速度指令である主軸速度指令と、前記送り軸の速度指令である送り軸速度指令とを含み、
     前記振動制御部は、前記主軸速度指令の増加又は減少と同期して前記送り軸速度指令を補正する補正値を前記駆動指令部に出力する
     ことを特徴とする請求項2から5の何れか1項に記載の数値制御装置。
    The operation command includes a spindle speed command, which is a speed command for the spindle, and a feed axis speed command, which is a speed command for the feed axis,
    6. The vibration control section outputs a correction value for correcting the feed axis speed command to the drive command section in synchronization with the increase or decrease of the spindle speed command. Numerical controller according to the item.
  7.  前記振動制御部は、前記主軸の1回転あたりの送り量が変化しないように、前記位相差の値に応じて前記主軸速度指令の変更と、前記送り軸速度指令の変更とを実施する
     ことを特徴とする請求項6に記載の数値制御装置。
    The vibration control unit changes the spindle speed command and the feed axis speed command in accordance with the phase difference value so that the feed amount per rotation of the spindle does not change. 7. A numerical controller according to claim 6.
  8.  前記振動制御部には、前記運転指令の上限値及び下限値を含む制限情報が入力され、
     前記振動制御部は、入力された前記上限値と前記下限値との間の範囲内で前記運転指令を増加又は減少させる
     ことを特徴とする請求項1から7の何れか1項に記載の数値制御装置。
    Restriction information including an upper limit value and a lower limit value of the operation command is input to the vibration control unit,
    The numerical value according to any one of claims 1 to 7, wherein the vibration control unit increases or decreases the operation command within a range between the input upper limit value and the lower limit value. Control device.
  9.  前記振動制御部は、前記特徴量情報の目標値と前記特徴量情報との偏差、前記偏差の時間積分値、前記偏差の時間微分値の少なくとも1つにゲインを乗じた値に基づいて駆動補正値を生成する
     ことを特徴とする請求項1から8の何れか1項に記載の数値制御装置。
    The vibration control unit corrects driving based on a value obtained by multiplying at least one of a deviation between a 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 by a gain. The numerical controller according to any one of claims 1 to 8, which generates a value.
  10.  前記振動制御部は、
     前記主軸運転指令及び前記特徴量情報を時系列データとして観測し、観測した前記時系列データに基づいて推論用データセットを生成する情報観測部と、
     予め機械学習を行った推論モデルに、前記情報観測部が生成する前記推論用データセットを入力することで、前記補正値を出力する推論部と、
     を備えることを特徴とする請求項1から9の何れか1項に記載の数値制御装置。
    The vibration control unit is
    an information observation unit that observes the spindle operation command and the feature amount information as time-series data and generates an inference data set based on the observed time-series data;
    an inference unit that outputs the correction value by inputting the inference data set generated by the information observation unit to an inference model that has undergone machine learning in advance;
    The numerical controller according to any one of claims 1 to 9, characterized by comprising:
  11.  工作機械の主軸及び送り軸に運転指令を与える駆動指令部を有する数値制御装置に適用可能に構成される学習装置であって、
     前記工作機械に取り付けられる工具又は加工対象物の振動を検出したセンサ信号、及び前記主軸の運転指令である主軸運転指令に基づいて、びびり振動の特徴量情報を算出する特徴量算出部と、
     前記びびり振動の有無を示すびびり振動有無情報と、前記特徴量情報及び前記運転指令とを対応づけた学習用データセットを取得する学習データ取得部と、
     前記学習データ取得部によって取得された前記学習用データセットと、推論モデルとを有し、前記推論モデルに前記特徴量情報及び前記運転指令が入力されると、前記推論モデルから前記びびり振動の有無に対応する出力値が出力されるように前記推論モデルの機械学習を行う学習処理部と、
     を備えることを特徴とする学習装置。
    A learning device configured to be applicable to a numerical control device having a drive command section that gives drive commands to a spindle and a feed shaft of a machine tool,
    a feature amount calculation unit that calculates feature amount information of chatter vibration based on a sensor signal that detects vibration of a tool attached to the machine tool or an object to be machined and a spindle operation command that is an operation command for the spindle;
    a learning data acquisition unit that acquires a learning data set in which chatter vibration presence/absence information indicating the presence or absence of chatter vibration is associated with the feature amount information and the operation command;
    The data set for learning acquired by the learning data acquiring unit and an inference model are provided, and when the feature amount information and the operation command are input to the inference model, the presence or absence of the chatter vibration is determined from the inference model. A learning processing unit that performs machine learning of the inference model so that an output value corresponding to is output;
    A learning device comprising:
  12.  工作機械の主軸及び送り軸に運転指令を与える駆動指令部を有する数値制御装置を用いて実行するびびり振動の抑制方法であって、
     前記工作機械に取り付けられる工具又は加工対象物の振動を検出したセンサ信号、及び前記主軸の運転指令である主軸運転指令に基づいて、前記びびり振動の特徴量情報を算出するステップと、
     前記特徴量情報が目標範囲内に到達するまでの間、前記駆動指令部に前記運転指令を補正するための補正値を出力するステップと
     を含むことを特徴とするびびり振動の抑制方法。
    A method for suppressing chatter vibration executed by using a numerical control device having a drive command unit that gives drive commands to a spindle and a feed shaft of a machine tool, comprising:
    calculating feature quantity information of the chatter vibration based on a sensor signal that detects vibration of a tool or an object to be machined attached to the machine tool and a spindle operation command that is an operation command for the spindle;
    and outputting a correction value for correcting the operation command to the drive command unit until the feature amount information reaches a target range.
PCT/JP2021/016599 2021-04-26 2021-04-26 Numerical control device, learning device, and chattering vibration suppressing method WO2022230008A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202180094994.6A CN117120946A (en) 2021-04-26 2021-04-26 Numerical control device, learning device, and chatter suppression method
PCT/JP2021/016599 WO2022230008A1 (en) 2021-04-26 2021-04-26 Numerical control device, learning device, and chattering vibration suppressing method
DE112021007584.5T DE112021007584T5 (en) 2021-04-26 2021-04-26 NUMERICAL CONTROL, LEARNING APPARATUS AND METHOD FOR SUPPRESSING CHATTER VIBRATIONS
JP2021555531A JP7179198B1 (en) 2021-04-26 2021-04-26 Numerical controller, learning device, and chatter vibration suppression method

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
WO2022230008A1 true WO2022230008A1 (en) 2022-11-03

Family

ID=83846767

Family Applications (1)

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

Country Status (4)

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

Citations (8)

* 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
JP2010247316A (en) * 2009-04-10 2010-11-04 Nt Engineering Kk Method and device for suppressing chattering of work machine
US20130211574A1 (en) * 2012-02-10 2013-08-15 Chung Yuan Christian University Cutter chatter monitoring method
JP2015217500A (en) * 2014-05-21 2015-12-07 Dmg森精機株式会社 Calculation method of spindle stable rotation number capable of suppressing chattering vibration, information method thereof, spindle rotation number control method, nc program edition method, and device of the same
JP2016052692A (en) * 2014-09-02 2016-04-14 三菱電機株式会社 Numerical control apparatus
JP2016191981A (en) * 2015-03-30 2016-11-10 アズビル株式会社 Feedback control device, feedback control method, and feedback control program
JP2018094686A (en) * 2016-12-14 2018-06-21 ファナック株式会社 Machine learning device, cnc device and machine learning method detecting sign of occurrence of chattering of tool in machine tool
JP2020138265A (en) * 2019-02-27 2020-09-03 ファナック株式会社 Chatter vibration determination apparatus, machine learning device and system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
JP6803248B2 (en) 2017-01-27 2020-12-23 オークマ株式会社 Machine tool vibration suppression method and equipment
WO2020208685A1 (en) * 2019-04-08 2020-10-15 三菱電機株式会社 Numerical control device and chattering identification method

Patent Citations (8)

* 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
JP2010247316A (en) * 2009-04-10 2010-11-04 Nt Engineering Kk Method and device for suppressing chattering of work machine
US20130211574A1 (en) * 2012-02-10 2013-08-15 Chung Yuan Christian University Cutter chatter monitoring method
JP2015217500A (en) * 2014-05-21 2015-12-07 Dmg森精機株式会社 Calculation method of spindle stable rotation number capable of suppressing chattering vibration, information method thereof, spindle rotation number control method, nc program edition method, and device of the same
JP2016052692A (en) * 2014-09-02 2016-04-14 三菱電機株式会社 Numerical control apparatus
JP2016191981A (en) * 2015-03-30 2016-11-10 アズビル株式会社 Feedback control device, feedback control method, and feedback control program
JP2018094686A (en) * 2016-12-14 2018-06-21 ファナック株式会社 Machine learning device, cnc device and machine learning method detecting sign of occurrence of chattering of tool in machine tool
JP2020138265A (en) * 2019-02-27 2020-09-03 ファナック株式会社 Chatter vibration determination apparatus, machine learning device and system

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6243260B2 (en) Spindle motor control device
JP5160980B2 (en) Vibration suppression method and apparatus
US8005574B2 (en) Vibration suppressing method and device
JP4777960B2 (en) Vibration suppression device
US8229598B2 (en) Vibration suppressing device for machine tool
US8374717B2 (en) Vibration suppressing method and vibration suppressing device for machine tool
JP5852467B2 (en) Numerical controller
JP6503001B2 (en) Controller for machine tool that performs rocking cutting
JP2012213830A5 (en)
JP2010520077A (en) Method and apparatus for reducing milling defects
JP6592143B2 (en) Electric motor control device
JP2008290188A (en) Vibration suppressing apparatus
US9869989B2 (en) Numerical controller
WO2021048959A1 (en) Numerical control device, numerical control method, and machine learning device
JP2010120150A (en) Estimation method for thermal deformation compensation of machine tool
WO2019043852A1 (en) Numerical control system and motor controller
JP5226484B2 (en) Chatter vibration suppression method
JP2013220479A (en) Chatter vibration suppression system and suppression method
WO2020208893A1 (en) Numerical control device and learning device
JP7179198B1 (en) Numerical controller, learning device, and chatter vibration suppression method
JP2004209558A (en) Method and apparatus for controlling thread cutting
JP5494378B2 (en) Thread cutting control method and apparatus
CN109702554A (en) A kind of adaptive vibration moulding milling parameter suppressing method
JP6490520B2 (en) Motor drive control device and machine tool equipped with the same
JPH1023774A (en) Motor speed change measuring device, motor rotation controller, and grinder for non-complete round object

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2021555531

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21939172

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 112021007584

Country of ref document: DE