Numerical control device and numerical control method

The numerical control device addresses the challenge of achieving good surface properties and avoiding resonance during vibration cutting by dynamically adjusting the vibration frequency and correcting the vibration waveform, ensuring continuous surface quality and preventing resonance.

JP7682419B1Active Publication Date: 2025-05-23MITSUBISHI ELECTRIC CORP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2025503449
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-08-06
Publication Date
2025-05-23
Estimated Expiration
2044-08-06

AI Technical Summary

Technical Problem

Existing numerical control devices for machine tools face challenges in achieving good surface properties during vibration cutting while avoiding resonance caused by the vibration frequency matching the natural frequency of the machine tool.

Method used

The numerical control device dynamically adjusts the vibration frequency and corrects the vibration waveform to prevent resonance, maintaining the number of vibrations per spindle rotation and ensuring continuous surface quality.

Benefits of technology

This solution enables machining with good surface properties while avoiding resonance, ensuring that the vibration cutting frequency does not interfere with the machine tool's natural frequency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007682419000001
    Figure 0007682419000001
  • Figure 0007682419000002
    Figure 0007682419000002
  • Figure 0007682419000003
    Figure 0007682419000003
Patent Text Reader

Abstract

A numerical control device (1) controls vibration cutting, which vibrates a workpiece and a cutting tool attached to a machine tool relative to one another, and changes the vibration frequency of the spindle in accordance with changes in the rotational speed of the spindle of the machine tool. The numerical control device (1) is equipped with a resonance determination unit (433) that determines whether resonance will occur when operating at the vibration frequency by comparing the resonance frequency at which resonance occurs in vibration cutting with the vibration frequency, and a vibration waveform correction unit (434) that, when it is determined that resonance will occur, corrects the vibration waveform of the vibration cutting so that resonance does not occur while maintaining the number of vibrations per rotation of the spindle.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a numerical control device and a numerical control method for controlling a machine tool. [Background technology]

[0002] When a machine tool processes a workpiece, chips may become entangled in the cutting tool. As a method for preventing chips from becoming entangled in the cutting tool, there is vibration cutting, in which the workpiece is cut while the cutting tool and the workpiece are vibrated relatively in the processing feed direction. Vibration cutting makes it possible to break up chips generated during processing, thereby preventing chips from becoming entangled in the cutting tool.

[0003] In vibration cutting, for example, when performing constant peripheral speed control or when changing the ratio to the command value with spindle override, the spindle speed may change during execution of a command block. In vibration cutting, it is desirable to break up chips even when the spindle speed fluctuates in this way.

[0004] Furthermore, in vibration cutting, if the vibration frequency of the vibration cutting coincides with the natural frequency of the machine tool, resonance will occur, so it is desirable to set a vibration frequency that avoids this resonance.

[0005] The numerical control device described in Patent Document 1 changes the vibration frequency in accordance with changes in the spindle rotation speed and dynamically changes the number of vibrations per spindle rotation to prevent poor chip breaking while avoiding resonance in the machine tool, even when the spindle rotation speed for vibration cutting fluctuates during execution of a command block. [Prior art documents] [Patent documents]

[0006] [Patent Document 1] Patent No. 6984790 Summary of the Invention [Problem to be solved by the invention]

[0007] However, in the technology of Patent Document 1, the number of vibrations per one rotation of the spindle at which chips can be efficiently broken switches discretely, such as 3.5 times, 2.5 times, etc., and at the switching points, the visual surface properties change, such as the cutting marks caused by vibration cutting being interrupted halfway. Therefore, the technology of Patent Document 1 has a problem in that, when performing vibration cutting, it is not possible to achieve machining of the workpiece with good surface properties while avoiding resonance caused by the agreement between the vibration frequency of vibration cutting and the natural frequency of the machine tool.

[0008] The present disclosure has been made in consideration of the above, and aims to obtain a numerical control device that, when performing vibration cutting, can achieve machining of a workpiece with good surface properties while avoiding resonance caused by the vibration frequency of the vibration cutting coinciding with the natural frequency of the machine tool. [Means for solving the problem]

[0009] In order to solve the above problems and achieve the object, the numerical control device disclosed herein controls vibration cutting that relatively vibrates a workpiece and a cutting tool attached to a machine tool, and also controls a vibration cutting device that is provided in the machine tool. Rotating the workpiece According to the change in the rotation speed of the spindle vibration cutting The numerical control device changes the vibration frequency of the cutting tool, and includes a determination unit that determines whether resonance will occur when the cutting tool is operated at the vibration frequency by comparing the vibration frequency with a resonance frequency at which resonance occurs in vibration cutting. The numerical control device of the present disclosure also includes a correction unit that, when it is determined that resonance will occur, corrects the vibration waveform of the vibration cutting so that resonance will not occur while maintaining the number of vibrations per rotation of the spindle. The determination unit determines that resonance occurs when the vibration frequency is a frequency that overlaps with a resonance frequency range that includes the resonance frequency. When it is determined that resonance occurs, the correction unit corrects the vibration waveform by changing the advance time of the vibration or the retreat time of the vibration in the vibration waveform while maintaining the vibration advance position that is the advance position of the vibration and the vibration retreat position that is the retreat position of the vibration. Effect of the Invention

[0010] The numerical control device disclosed herein has the advantage that, when performing vibration cutting, it is possible to achieve machining of the workpiece with good surface properties while avoiding resonance caused by the vibration frequency of the vibration cutting matching the natural frequency of the machine tool. [Brief description of the drawings]

[0011] [Figure 1] FIG. 1 is a block diagram showing an example of a configuration of a numerical control device according to an embodiment; [Diagram 2] FIG. 2 is a diagram showing a schematic configuration of an axis of a machine tool according to an embodiment; [Diagram 3] FIG. 1 is a diagram for explaining an example of a vibration waveform calculated by an interpolation processing unit of a numerical control device according to an embodiment; [Figure 4] 1 is a flowchart showing a procedure of processing executed by a numerical control device according to an embodiment; [Diagram 5] FIG. 1 is a diagram for explaining forward and backward vibration times calculated and changed by the numerical control device according to the embodiment; [Figure 6] FIG. 2 is a diagram showing a configuration example of a processing circuit provided in a control calculation unit of a numerical control device according to an embodiment when the processing circuit is realized by a processor and a memory; [Figure 7] FIG. 1 is a diagram showing an example of a processing circuit in a case where the processing circuit included in the control and calculation unit of the numerical control device according to the embodiment is configured with dedicated hardware; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0012] A numerical control device and a numerical control method according to an embodiment of the present disclosure will be described in detail below with reference to the drawings. In each of the drawings described below, the same or corresponding parts are denoted by the same reference numerals. Furthermore, duplicated descriptions will be appropriately simplified or omitted. Furthermore, the drawings shown below may be scaled differently from the actual ones, but the contents of the present disclosure are not limited by this.

[0013] Embodiment 1 is a block diagram showing an example of the configuration of a numerical control device according to an embodiment. The numerical control device 1 is a computer that causes the machine tool to perform vibration cutting by controlling the machining of the workpiece 60 by the cutting tool 50 while relatively vibrating the workpiece (workpiece 60 described later) and a tool (cutting tool 50 described later) attached to the machine tool. The machine tool controlled by the numerical control device 1 is a machine that cuts the workpiece 60, which is a workpiece, while vibrating the cutting tool 50.

[0014] The numerical control device 1 includes an input operation unit 20, a display unit 30, and a control calculation unit 40. The input operation unit 20 and the display unit 30 do not necessarily have to be included as components of the numerical control device 1. The machine tool includes a drive unit 10, and the drive unit 10 is controlled by the numerical control device 1.

[0015] The driving unit 10 is a mechanism for driving either or both of the workpiece (work) 60 and the cutting tool 50 in at least two axial directions. The driving unit 10 in the embodiment moves at least one of the workpiece 60 and the cutting tool 50 in the X-axis and Z-axis directions defined by the numerical control device 1. FIG. 1 shows a case in which the driving unit 10 has an X-axis servo control unit 11, a Z-axis servo control unit 12, an X-axis servo motor 14, and a Z-axis servo motor 15. That is, the driving unit 10 in FIG. 1 moves at least one of the workpiece 60 and the cutting tool 50 in the X-axis and Z-axis directions.

[0016] Further, the drive unit 10 has a spindle servo control unit 13 and a spindle motor 16 for rotating a spindle to which the workpiece 60 is fixed. Note that, for the sake of simplicity of explanation in this disclosure, only two-axis servo motors, an X-axis servo motor 14 and a Z-axis servo motor 15, are exemplified as servo motors, but the present invention is not limited thereto, and the drive unit 10 may have servo motors for three or more axes.

[0017] The numerical control device 1 may also control a drive unit in which each axis includes multiple systems (e.g., X1, X2, ...). The numerical control device 1 may control a drive unit that operates in n coordinate systems, from a first coordinate system defined by the X1 axis, the Y1 axis, and the Z1 axis to an n-th coordinate system defined by the Xn axis (n is a natural number of 2 or more), the Yn axis, and the Zn axis, for example.

[0018] Here, the configuration of the axes of the machine tool controlled by the numerical control device 1 will be described. Fig. 2 is a diagram showing a schematic configuration of the axes of the machine tool according to the embodiment. The machine tool 110 is controlled by the numerical control device 1. The machine tool 110 has a tool rest 51 and a headstock 70. Fig. 2 shows a case where the direction parallel to the X-axis direction is the axial direction of a rotation axis 71 of the headstock 70, the direction parallel to the Z-axis direction is the vertical direction, and the direction perpendicular to the Z-axis and X-axis directions is the Y-axis direction.

[0019] A cutting tool 50 is attached to the tool rest 51. The movement of the tool rest 51 to which the cutting tool 50 is attached in the X-axis direction and the Z-axis direction is controlled by the X-axis servo motor 14 and the Z-axis servo motor 15 of the numerical control device 1, respectively.

[0020] The workpiece 60 is fixed to a headstock 70. The rotation position or amount of rotation of the headstock 70 is controlled by a spindle motor 16. The numerical control device 1 controls the rotation position or amount of rotation of a rotation shaft 71 provided in the headstock 70 by outputting a rotation command to a spindle servo control unit 13, which is a spindle servo amplifier. The workpiece 60 rotates on the headstock 70 around the rotation shaft 71 of the headstock 70.

[0021] 2 shows a case where cutting tool 50 moves in the X-axis and Z-axis directions along movement path 52 to cut workpiece 60 while headstock 70 rotates about rotation axis 71. However, movement path 52 in the figure does not show vibrations on the feed axis side (X-axis and Z-axis directions). Note that in the vibration cutting described below, a case where the feed axis side (cutting tool 50 side) is vibrated will be described, but the present invention is not limited to this, and it is sufficient that cutting tool 50 and workpiece 60 are vibrated relatively, and machine tool 110 may vibrate workpiece 60 on the spindle side.

[0022] The input operation unit 20 is composed of input means such as a keyboard, buttons, and a mouse, and a user inputs commands to the numerical control device 1, a machining program 411, parameters 412, etc. to the input operation unit 20. The display unit 30 is composed of display means such as a liquid crystal display device, and displays information processed by the control calculation unit 40.

[0023] The control calculation unit 40 includes a storage unit 41, an analysis processing unit 42, an interpolation processing unit 43, a spindle processing unit 44, and an axis data output unit 45. The analysis processing unit 42, the interpolation processing unit 43, and the spindle processing unit 44 are connected to the storage unit 41. The interpolation processing unit 43 is connected to the spindle processing unit 44. The interpolation processing unit 43 and the spindle processing unit 44 are connected to the axis data output unit 45, and the axis data output unit 45 is connected to the drive unit 10. The storage unit 41 is connected to the input operation unit 20 and the display unit 30.

[0024] In the control calculation unit 40, the analysis processing unit 42, the interpolation processing unit 43, and the spindle processing unit 44 transmit and receive information via the storage unit 41, but in the following description, the transmission via the storage unit 41 may be omitted. Note that the spindle processing unit 44 may transmit information directly to the interpolation processing unit 43.

[0025] The input operation unit 20 receives operation information from a user and inputs the received operation information to the storage unit 41. The operation information is information corresponding to the content of an operation performed by the user. The operation information is, for example, information for editing a machining program 411, parameter values, etc. An example of the parameter 412 is a resonance frequency, which will be described later.

[0026] For example, when the operation information input from the input operation unit 20 is information (editing contents) for editing the machining program 411, the control operation unit 40 reflects the editing contents in the machining program 411 stored in the storage unit 41. When the operation information input from the input operation unit 20 is a parameter value, the control operation unit 40 stores the received parameter value in a storage area of ​​the parameter 412 in the storage unit 41.

[0027] The storage unit 41 stores information such as parameters 412 used in the processing of the control calculation unit 40, a machining program 411 executed by the control calculation unit 40, and screen display data 413 to be displayed on the display unit 30. The storage unit 41 also has a temporary data storage area 414 for storing data (temporary data) used temporarily other than the parameters 412 and the machining program 411. When the analysis processing unit 42, the interpolation processing unit 43, and the spindle processing unit 44 transmit and receive information via the storage unit 41, the temporary data storage area 414 is used. The display unit 30 displays the screen display data 413.

[0028] The spindle processing unit 44 has a spindle rotation command creation unit 441 and a spindle rotation speed calculation unit 442. The spindle rotation command creation unit 441 calculates a spindle rotation speed (rotation speed of the spindle) to be commanded to the spindle servo control unit 13 based on the machining program 411, and outputs the spindle rotation speed to the axis data output unit 45.

[0029] The spindle rotation speed calculation unit 442 obtains the phase of the spindle motor 16 from a detector (not shown) such as an encoder attached to the spindle motor 16, and calculates the spindle rotation speed based on this phase. The spindle rotation speed calculation unit 442 may also calculate the spindle rotation speed based on a signal fed back from the spindle servo control unit 13. The spindle rotation speed calculation unit 442 may obtain, for example, a drive current of the spindle motor 16 as a feedback signal from the spindle servo control unit 13, and calculate the spindle rotation speed based on the drive current. The spindle rotation speed calculation unit 442 may also receive a signal of the spindle rotation speed from the drive unit 10.

[0030] The spindle processing unit 44 monitors the spindle rotation speed during execution of a command block, and detects changes in the spindle rotation speed. For example, the spindle rotation speed calculation unit 442 continuously calculates the spindle rotation speed during execution of a command block, and the spindle processing unit 44 detects changes in the spindle rotation speed. The spindle processing unit 44 transmits the continuously calculated spindle rotation speed to the successive interpolation processing unit 43.

[0031] The analysis processing unit 42 has a movement command analysis unit 421 and a vibration command analysis unit 422. The movement command analysis unit 421 reads a machining program 411 including one or more command blocks (hereinafter, may be simply referred to as a block) stored in the storage unit 41. The movement command analysis unit 421 analyzes the read machining program 411 for each block, and generates movement commands such as a movement amount, a spindle rotation number, a movement speed, and a spindle rotation speed based on the movement amount (feed amount) of an axis included in each block, a spindle rotation number, a movement speed, a spindle rotation speed, and the like.

[0032] Among the movement commands, the movement amount and the movement speed are commands for the feed in the X-axis and Z-axis directions, and the spindle rotation number and the spindle rotation speed are commands for the rotation of the spindle. The movement amount is the movement amount of the cutting tool 50 in the X-axis and Z-axis directions per unit time, and corresponds to the movement speed. The spindle rotation number is the rotation number of the spindle per unit time, and corresponds to the spindle rotation speed, etc. Therefore, the movement command analysis unit 421 generates a movement command including the movement amount or the movement speed, and the spindle rotation number or the spindle rotation speed. The analysis processing unit 42 stores the movement command in the temporary data storage area 414.

[0033] The vibration command analysis unit 422 analyzes whether or not a vibration command is included in the machining program 411, and if a vibration command is included, generates vibration conditions such as a vibration frequency and a vibration amplitude based on the vibration frequency, vibration amplitude, etc. included in the vibration command. The vibration command analysis unit 422 stores the vibration conditions in the temporary data storage area 414.

[0034] The movement command generated by the movement command analysis unit 421 is the initial value of the movement command in each block, and the vibration condition extracted by the vibration command analysis unit 422 is the initial value of the vibration condition in each block. After that, when the spindle rotation speed changes, the vibration condition is changed according to the spindle rotation speed.

[0035] The interpolation processing unit 43 and the spindle processing unit 44 acquire the movement command and vibration conditions analyzed by the analysis processing unit 42 from the temporary data storage area 414 .

[0036] When the spindle processing unit 44 detects a change in the spindle rotation speed, the interpolation processing unit 43 calculates a vibration frequency corresponding to the spindle rotation speed and determines whether or not the vibration frequency is included in the resonance frequency range of the machine tool 110. When the vibration frequency is included in the resonance frequency range of the machine tool 110, the interpolation processing unit 43 corrects the vibration waveform of the vibration cutting so as not to cause resonance while maintaining the vibration frequency of the vibration cutting per rotation of the spindle. The interpolation processing unit 43 sends a command corresponding to the corrected vibration waveform to the drive unit 10 via the axis data output unit 45.

[0037] The interpolation processing unit 43 has a vibration frequency calculation unit 431, a resonance frequency acquisition unit 432, a resonance determination unit (determination unit) 433, a vibration waveform correction unit (correction unit) 434, a vibration waveform generation unit 435, a movement command calculation unit 436, a phase difference calculation unit 437, and a vibration amplitude calculation unit 438.

[0038] When the spindle rotation speed is changed during constant peripheral speed control or spindle override change, the vibration frequency calculation unit 431 calculates a vibration frequency corresponding to the spindle rotation speed based on the spindle rotation speed and the number of vibrations per rotation of the spindle.

[0039] Constant peripheral speed control is control that keeps the peripheral speed (the rotational speed of the machining surface of the workpiece 60 relative to the cutting tool 50) constant. In constant peripheral speed control, the smaller the machining diameter of the workpiece 60, the faster the spindle rotation speed becomes. In the embodiment, even when the spindle rotation speed increases, the vibration frequency is increased according to the spindle rotation speed, thereby maintaining the vibration cutting frequency per rotation of the spindle.

[0040] Spindle override is a process for changing the spindle speed at a specific rate when the command value for the spindle speed is set to 100%. When changing the spindle speed, the rate of change is set by a dial installed on a control panel equipped in the machine tool 110.

[0041] The phase difference calculation unit 437 calculates a phase difference (phase differences W1, W2 described later) which is a time delay of the vibration retreat position (vibration retreat position R2 described later) relative to the vibration advance position (vibration advance position R1 described later). Specifically, the phase difference calculation unit 437 calculates the ratio of the vibration amplitude to the feed speed of the cutting tool 50 relative to the workpiece 60 (hereinafter referred to as vibration amplitude feed ratio), and calculates the phase differences W1, W2 based on the vibration amplitude feed ratio and the required time per one rotation of the spindle. The vibration advance position R1 is the position (advance position) where the vibration has advanced the most when the cutting tool 50 vibrates. The vibration retreat position R2 is the position (retreat position) where the cutting tool 50 has retreated the most when the cutting tool 50 vibrates.

[0042] The vibration amplitude-feed ratio may be stored in the machining program 411, or may be set in the parameter 412. In this case, the phase difference calculation unit 437 reads out the vibration amplitude-feed ratio from the machining program 411 or the parameter 412.

[0043] When the spindle rotation speed changes, the time required for one rotation of the spindle also changes. Therefore, when the spindle rotation speed changes, the phase differences W1 and W2 calculated by the phase difference calculation unit 437 also change. The method of calculating the phase differences W1 and W2 will be described later in detail.

[0044] The phase difference calculation unit 437 recalculates the phase differences W1, W2 in response to changes in the spindle rotation speed during execution of a command block, as described below. The phase difference calculation unit 437 creates two types of paths, a vibration forward position R1 and a vibration backward position R2, using at least one of the vibration conditions and the machining conditions and the calculated phase differences W1, W2. The machining conditions here include the circumferential speed, the machining feed rate (the movement speed of the X-axis and Z-axis), etc. The machining conditions are stored in the machining program 411, and are obtained by the analysis processing unit 42 analyzing the machining program 411 for each command block.

[0045] The vibration amplitude calculation unit 438 calculates the vibration amplitude, which is the difference in the amount of movement between the vibration forward position R1 and the vibration backward position R2 at each time from the start to the completion of the command block.

[0046] The vibration waveform generating section 435 generates a vibration waveform by multiplying the difference (vibration amplitude) between the vibration forward position R1 and the vibration backward position R2 at each time by the waveform of the vibration frequency calculated by the vibration frequency calculating section 431.

[0047] Resonant frequency acquisition unit 432 acquires a resonant frequency range including the resonant frequency of machine tool 110 from parameters 412 etc. The resonant frequency range of machine tool 110 is the range of the natural frequency of machine tool 110.

[0048] Machine tool 110 may have multiple resonant frequency ranges. The resonant frequency range is not limited to a range of resonant frequencies, and may be a specific resonant frequency. The resonant frequency range of machine tool 110 may be a resonant frequency range for each servo axis. Resonant frequency acquisition unit 432 sends the resonant frequency range to resonance determination unit 433.

[0049] The resonance determination unit 433 acquires the resonance frequency range from the resonance frequency acquisition unit 432. Furthermore, the resonance determination unit 433 extracts the vibration frequency from the vibration waveform generated by the vibration waveform generation unit 435. Note that, after the vibration waveform correction unit 434 corrects the vibration waveform, the resonance determination unit 433 may extract a vibration frequency corresponding to the vibration forward position R1 (forward frequency described later) and a vibration frequency corresponding to the vibration backward position R2 (backward frequency described later).

[0050] The resonance determination unit 433 compares the extracted vibration frequency with the resonance frequency range of the machine tool 110 to determine whether or not resonance occurs when the machine tool operates at the vibration frequency calculated by the vibration frequency calculation unit 431. The resonance determination unit 433 determines that resonance occurs when the vibration frequency calculated by the vibration frequency calculation unit 431 overlaps with the resonance frequency range. When the vibration cutting is vibration cutting in which the workpiece 60 and the cutting tool 50 are relatively vibrated about two or more axes, that is, when the vibration cutting is vibration cutting in which two or more axes, resonance occurs or not.

[0051] When the vibration frequency calculated by the vibration frequency calculation unit 431 overlaps with the resonant frequency region, the vibration waveform correction unit 434 corrects the vibration waveform to a non-resonant vibration waveform. When two or more axes are vibrated in vibration cutting, the vibration waveform correction unit 434 corrects the vibration waveform to a non-resonant vibration waveform with respect to the axis where resonance occurs.

[0052] For example, the vibration waveform correction unit 434 generates a vibration waveform in which the forward and backward times of vibration are changed to forward and backward times of vibration that do not match the resonant frequency. The forward and backward times of vibration are the time required for the vibration to advance when the cutting tool 50 vibrates, and the backward time of vibration is the time required for the vibration to retreat when the cutting tool 50 vibrates.

[0053] When the cutting tool 50 vibrates, forward and backward vibrations are repeated. The vibration waveform correction unit 434 avoids resonance by changing the forward and backward times in the forward and backward vibrations. In other words, the vibration waveform correction unit 434 corrects the vibration waveform by correcting the forward and backward times to forward and backward times that do not resonate. When vibration cutting is performed with two or more axes to be vibrated, the vibration waveform correction unit 434 corrects the vibration waveform of vibration cutting for an axis determined to cause resonance.

[0054] The movement command calculation unit 436 calculates a composite movement amount by combining the movement amount analyzed for each block (movement amount without vibration) and the vibration waveform generated by the vibration waveform generation unit 435. That is, the movement command calculation unit 436 generates movement commands for the X-axis and Z-axis using the vibration waveform corrected by the vibration waveform correction unit 434. The axis movement command generated by the analysis processing unit 42 is, for example, a position command that specifies the movement amount and movement speed in the X-axis and Z-axis directions of the cutting tool 50. The movement command calculation unit 436 sends a movement command corresponding to the composite movement amount to the axis data output unit 45.

[0055] The axis data output unit 45 receives the spindle rotation speed from the spindle processing unit 44. In addition, the axis data output unit 45 receives a movement command from the analysis processing unit 42. In addition, the axis data output unit 45 receives a composite movement amount from the interpolation processing unit 43 when the vibration waveform is corrected.

[0056] The axis data output unit 45 commands the received spindle rotation speed to the drive unit 10. In addition, the axis data output unit 45 commands the received movement command to the drive unit 10. In addition, the axis data output unit 45 commands the received composite movement amount to the drive unit 10.

[0057] The spindle servo control unit 13 of the drive unit 10 drives the spindle motor 16 in accordance with the spindle rotation speed. The X-axis servo control unit 11 of the drive unit 10 drives the X-axis servo motor 14 in accordance with the composite movement amount, and the Z-axis servo control unit 12 of the drive unit 10 drives the Z-axis servo motor 15 in accordance with the composite movement amount.

[0058] Here, the function of the interpolation processing unit 43 will be described with reference to Fig. 3. Fig. 3 is a diagram for explaining an example of a vibration waveform calculated by the interpolation processing unit of the numerical control device according to the embodiment. The horizontal axis of the five graphs shown in Fig. 3 is time.

[0059] The first graph shown in Fig. 3(a) shows the change over time in the spindle rotation speed. The vertical axis of this graph is the spindle rotation speed. Fig. 3(a) shows a case in which vibration cutting is started by execution of a command block at time t0, the spindle rotation speed starts to increase at time t1, and continues to increase until time t3. Such changes in the spindle rotation speed are detected by the spindle processing unit 44 and provided to the interpolation processing unit 43.

[0060] The second graph shown in FIG. 3(b) shows the relationship (change over time) between the vibration forward position R1 and the vibration backward position R2. The vertical axis of this graph is the position command (no vibration). This vertical axis corresponds to the movement amount of the feed axis (X-axis or Z-axis). In other words, the position command in FIG. 3 is a movement command to the cutting tool 50.

[0061] 3B, the vibration retreat position R2 starts moving with a time delay of t2-t1 from the vibration advance position R1. The phase difference calculation unit 437 calculates a phase difference (W1 and W2 in the figure) that is a time delay of t2-t1 of the vibration retreat position R2 from the vibration advance position R1.

[0062] The phase difference calculation unit 437 recalculates the phase differences W1 and W2 according to the spindle rotation speed that has changed during execution of the command block. Specifically, the phase difference calculation unit 437 calculates the phase differences W1 and W2 based on the vibration amplitude feed ratio and the time required for one spindle rotation. The phase difference calculation unit 437 creates two types of paths, a vibration forward position R1 and a vibration backward position R2, using at least one of the vibration conditions and the machining conditions and the calculated phase differences W1 and W2.

[0063] The interpolation processing unit 43 may, for example, set the movement path of the cutting tool 50 to the vibration forward position R1 and obtain the vibration backward position R2 by subtracting the vibration amplitude from the vibration forward position R1. The interpolation processing unit 43 may, for example, set the movement path of the cutting tool 50 to the vibration backward position R2 and obtain the vibration forward position R1 by adding the vibration amplitude to the vibration backward position R2. In these cases, the interpolation processing unit 43 calculates the movement path of the cutting tool 50 based on the coordinates of the end point position of the movement defined in the machining program 411, for example.

[0064] The third graph in Fig. 3(c) shows the change over time of the vibration amplitude from the process started at time t0 to the process finished at time t4. The vertical axis of this graph is the vibration amplitude (vibration forward position R1 - vibration backward position R2).

[0065] The vibration amplitude calculation unit 438 calculates the vibration amplitude, which is the difference in the amount of movement between the vibration forward position R1 and the vibration backward position R2 at each time from the start to the completion of the command block. Specifically, the vibration amplitude calculation unit 438 calculates the vibration amplitude from time t1 to time t2 and the vibration amplitude from time t3 to time t4 based on the vibration forward position R1 and the vibration backward position R2 in the graph shown in (c) of FIG.

[0066] Furthermore, the vibration amplitude calculation unit 438 calculates the vibration amplitude from time t2 to time t3 based on the vibration conditions. Since the vibration amplitude set in the vibration conditions is a constant value, the vibration amplitude from time t2 to time t3 is also a constant value.

[0067] The vibration frequency calculation unit 431 calculates the vibration frequency from the spindle rotation speed and the number of vibrations per one rotation of the spindle. The vibration frequency calculated by the vibration frequency calculation unit 431 corresponds to the spindle rotation speed during execution of a command block. Therefore, the vibration frequency calculation unit 431 calculates the vibration frequency according to the spindle rotation speed when the spindle rotation speed is changed during constant peripheral speed control or spindle override change. The vibration frequency calculation unit 431 calculates the vibration frequency according to the spindle rotation speed so that the number of vibrations in vibration cutting per one rotation of the spindle is maintained.

[0068] The vibration waveform generating section 435 calculates a vibration waveform by multiplying the difference (vibration amplitude) between the vibration forward position R1 and the vibration backward position R2 at each time by the waveform of the vibration frequency calculated by the vibration frequency calculating section 431.

[0069] The fourth graph in Fig. 3(d) shows the change over time of the vibration waveform obtained by multiplying the vibration amplitude graph in Fig. 3(c) by the vibration frequency waveform. The vertical axis of this graph is the vibration waveform.

[0070] The fifth graph shown in Fig. 3(e) shows the change over time of the position command (composite movement amount) when the vibration waveform shown in Fig. 3(d) is combined with the graph shown in Fig. 3(b). The vertical axis of this graph is the position command (with vibration).

[0071] The movement command calculation unit 436 calculates a composite movement amount by combining the movement amount analyzed for each block (the movement amount without vibration) and the vibration waveform. The movement command calculation unit 436 sends the composite movement amount to the axis data output unit 45.

[0072] The axis data output unit 45 commands the obtained composite movement amount to the drive unit 10. The drive unit 10 drives the X-axis servo control unit 11 and the Z-axis servo control unit 12 in accordance with the composite movement amount.

[0073] When the spindle rotation speed changes, the vibration frequency of vibration cutting (feed axis) corresponds to the number of vibrations per rotation of the spindle, so the vibration frequency of vibration cutting increases in proportion to the increase in the spindle rotation speed (the number of rotations of the spindle per unit time). For example, when the spindle rotation speed increases, the number of vibrations in a certain period of time increases, and the vibration frequency of vibration cutting also increases.

[0074] In this case, if the vibration frequency coincides with the natural frequency of machine tool 110 during the process of the change in the vibration frequency, resonance will occur, affecting the machined surface properties.

[0075] For example, when machine tool 110 performs taper machining under constant peripheral speed control, the smaller the machining diameter becomes (the closer cutting tool 50 is to the center of rotation of workpiece 60), the faster the spindle rotation speed becomes. In this case, if the number of vibrations per rotation of the spindle does not change, the vibration frequency increases in proportion to the rotation speed of the spindle. If the natural frequency of machine tool 110 is within the range of change in the vibration frequency, there is a possibility that resonance will occur in machine tool 110.

[0076] In order to prevent such resonance from occurring, when the vibration frequency overlaps with the resonance frequency region, the vibration waveform correction unit 434 corrects the vibration frequency to a vibration waveform that does not cause resonance. Specifically, the vibration waveform correction unit 434 calculates a forward or backward vibration frequency (forward vibration frequency or backward vibration frequency) that is the reciprocal of twice the forward or backward time of vibration (vibration period) based on a vibration waveform generated from the current rotation speed of the spindle. That is, the vibration waveform correction unit 434 calculates the forward vibration frequency or backward vibration frequency according to the current rotation speed of the spindle.

[0077] Then, the vibration waveform correction unit 434 compares the forward or backward vibration frequency with the resonance frequency range set by parameters, etc. When the forward or backward vibration frequency overlaps with the resonance frequency range, the vibration waveform correction unit 434 dynamically corrects the vibration waveform to correct the vibration frequency to a vibration waveform that does not cause resonance. This allows the numerical control device 1 to avoid resonance while controlling with constant peripheral speed control.

[0078] When there are multiple resonant frequency regions, the vibration waveform correction unit 434 may correct the vibration waveform so that the forward or backward vibration frequency does not overlap with the multiple resonant frequency regions. Also, the vibration waveform correction unit 434 may correct the vibration waveform so that the forward or backward vibration frequency does not overlap with the resonant frequency region of each servo axis.

[0079] Next, a procedure of processing executed by the numerical control device 1 will be described. Fig. 4 is a flowchart showing the procedure of processing executed by the numerical control device according to the embodiment. Here, a process of generating a vibration waveform when the spindle rotation speed (spindle rotation number) is changed by the numerical control device 1 will be described.

[0080] The numerical controller 1 executes a command block included in the machining program 411 (step S10). As a result, the analysis processing unit 42 of the numerical controller 1 sets vibration conditions. The numerical controller 1 causes the machine tool 110 to start spindle rotation and machining (step S20). Specifically, the numerical controller 1 outputs a spindle rotation speed and X-axis and Z-axis movement commands to the drive unit 10 to rotate the spindle and start machining of the workpiece 60 by the cutting tool 50.

[0081] The spindle processing unit 44 determines whether the spindle rotation speed has changed (step S30). If the spindle rotation speed has not changed (step S30, No), the numerical control device 1 maintains the current vibration condition defined in the command block (step S130).

[0082] If the spindle rotation speed for vibration cutting changes during execution of the command block (step S30, Yes), the phase difference calculation unit 437 recalculates the phase differences W1 and W2 after the spindle rotation speed has changed (step S40). Specifically, the phase difference calculation unit 437 calculates the phase differences W1 and W2 based on the vibration amplitude feed ratio and the time required for one spindle rotation.

[0083] The vibration amplitude calculation unit 438 recalculates the vibration amplitude based on the recalculated phase differences W1 and W2 (step S50). Specifically, the vibration amplitude calculation unit 438 receives the vibration advance position R1 and the vibration retreat position R2 created by the phase difference calculation unit 437 based on the phase differences W1 and W2 from the phase difference calculation unit 437, and calculates the difference in the movement amount between the vibration advance position R1 and the vibration retreat position R2 as the vibration amplitude.

[0084] If the vibration amplitude is taken as vibration amplitude A, the vibration amplitude feed ratio Q defined in the machining program 411 is the ratio between the vibration amplitude A and the feed amount F per spindle revolution, and is related by the following formula (1). The feed amount F per spindle revolution is the feed amount (movement amount) by which the cutting tool 50 is fed in the feed direction while the spindle makes one revolution.

[0085] Q = A / F (1)

[0086] If the time required for one rotation of the spindle is the required time T and the phase difference is the phase difference W, the required time T, the phase difference W, the vibration amplitude A, and the feed amount per rotation of the spindle F have a relationship represented by the following formula (2). The phase difference calculation unit 437 recalculates the phase differences W1 and W2 using the following formula (2).

[0087] A / W=F / T (2)

[0088] A / W in formula (2) corresponds to A / W1, which is the ratio between the phase difference W1 in (c) of Fig. 3 and the vibration amplitude A at time t2. Note that A / W in formula (2) may be A / W2, which is the ratio between the phase difference W2 in (c) of Fig. 3 and the vibration amplitude A at time t4.

[0089] Furthermore, F / T in formula (2) corresponds to the feed amount (feed amount F per spindle rotation) by which the cutting tool 50 is fed in the feed direction during the time T required for the spindle to rotate once. This F / T corresponds to the inclination of the vibration forward position R1 or the inclination of the vibration backward position R2. Formula (3) for the phase difference W is derived from formulas (1) and (2).

[0090] W = AT / F = QT (3)

[0091] Equation (3) shows that when the time required for one spindle revolution T changes in accordance with a change in the spindle rotation speed during block execution, the phase difference W increases or decreases depending on the time required for one spindle revolution T.

[0092] The vibration waveform generating unit 435 recalculates the vibration waveform (step S60). Specifically, the vibration waveform generating unit 435 recalculates the vibration waveform by multiplying the vibration amplitude, which is the difference between the vibration forward position R1 and the vibration backward position R2 at each time, by the waveform of the vibration frequency.

[0093] Resonance frequency acquisition unit 432 acquires the resonance frequency range of machine tool 110 from parameters 412 etc. Resonance determination unit 433 calculates the forward movement time and reverse movement time of vibration from the recalculated vibration waveform (step S70). Furthermore, resonance determination unit 433 calculates the forward movement and reverse movement vibration frequencies (forward movement frequency which is the forward movement frequency and reverse movement frequency which is the reverse movement frequency) based on the forward movement time and reverse movement time of vibration (step S80).

[0094] The resonance determination unit 433 determines whether or not the resonance frequency region overlaps with the forward and reverse frequencies (step S90). If the resonance frequency region does not overlap with the forward and reverse frequencies (step S90, No), the resonance determination unit 433 determines that the machine tool 110 does not resonate, and the numerical control device 1 maintains the current vibration conditions defined in the command block (step S130).

[0095] If the resonant vibration frequency range overlaps with at least one of the forward and reverse frequencies (step S90, Yes), the resonance determination unit 433 determines that the machine tool 110 is resonating, and determines whether or not there are forward and reverse times that can avoid resonance (step S100).

[0096] If there is no forward movement time and backward movement time that can avoid resonance (step S100, No), the vibration waveform correction unit 434 attenuates the vibration amplitude A (step S110). Then, the vibration waveform correction unit 434 corrects the vibration waveform in which the vibration amplitude A is attenuated (step S120). Note that if there is no forward movement time and backward movement time that can avoid resonance, the vibration waveform correction unit 434 may stop the vibration.

[0097] On the other hand, if there are forward and backward times that can avoid resonance (step S100, Yes), the vibration waveform correction unit 434 corrects the vibration waveform of vibration cutting (step S120). The vibration waveform correction unit 434 corrects the vibration waveform of vibration cutting so that resonance does not occur while maintaining the vibration cutting frequency per one rotation of the spindle. Specifically, when the vibration amplitude A is not attenuated, the vibration waveform correction unit 434 corrects the vibration waveform so that resonance does not occur by changing the forward or backward time of vibration while maintaining the vibration forward position and the vibration backward position. In addition, when the vibration amplitude A is attenuated, the vibration waveform correction unit 434 corrects the vibration waveform so that resonance does not occur by applying the attenuated vibration amplitude A.

[0098] In this way, the numerical control device 1 avoids resonance without switching the vibration frequency of vibration cutting per one rotation of the spindle. As a result, when performing vibration cutting, the numerical control device 1 can achieve machining of the workpiece 60 with good surface properties while avoiding resonance caused by the vibration frequency of vibration cutting matching the natural frequency of the machine tool 110.

[0099] In this embodiment, a state in which the surface quality is good means that the pattern created on the workpiece 60 by vibration cutting does not change midway, and a specific pattern of the cutting marks is continuous without being interrupted midway, etc. On the other hand, a state in which the surface quality is not good means that the cutting marks created as a result of vibration cutting are interrupted at the point where the number of vibrations per one rotation of the spindle is switched.

[0100] Here, the forward and backward vibration times will be described. Fig. 5 is a diagram for explaining the forward and backward vibration times calculated and changed by the numerical control device according to the embodiment. The horizontal axis of the graph of the vibration waveform shown in Fig. 5 is time, and the vertical axis is the vibration position corresponding to the vibration command.

[0101] Among the vibration waveforms shown in FIG. 5, the triangular wave vibration waveform FA1 shown by the dotted line is a vibration waveform generated based on the vibration conditions defined in the command block, and the trapezoidal wave vibration waveform FA2 shown by the solid line is a vibration waveform generated by the vibration waveform correction unit 434.

[0102] The vibration waveforms FA1 and FA2 include a vibration waveform when moving forward and a vibration waveform when moving backward. In the vibration waveform FA1, the vehicle moves forward only for a forward time Tf1, and then immediately moves backward only for a backward time Tr1. In the vibration waveform FA1, the vehicle moves forward during the forward time Tf1 and backward during the backward time Tr1 repeatedly.

[0103] When the vibration waveform FA1 has a frequency that overlaps with the resonant frequency region, the vibration waveform correction unit 434 generates a vibration waveform FA2 by changing the forward movement time Tf1 and the backward movement time Tr1 to forward movement time Tf2 and backward movement time Tr2 that do not coincide with the resonant frequency. In other words, the vibration waveform correction unit 434 corrects the vibration waveform FA1 to the vibration waveform FA2 by correcting the forward movement time Tf1 and the backward movement time Tr1 to forward movement time Tf2 and backward movement time Tr2 that do not overlap with the resonant frequency region.

[0104] In the vibration waveform FA2, the cutting tool 50 advances for a forward time Tf2 that is shorter than the forward time Tf1, and then the vibration of the cutting tool 50 is stopped for a specific time at the forward position of the vibration. In the vibration waveform FA2, the cutting tool 50 retreats for a retreat time Tr2 that is shorter than the retreat time Tr1, and then the vibration of the cutting tool 50 is stopped for a specific time at the retreat position of the vibration. In the vibration waveform FA2, advancement during the forward time Tf2, stopping of the vibration at the forward position of the vibration, retreating during the retreat time Tr2, and stopping of the vibration at the retreat position of the vibration are repeated. The interpolation processing unit 43 outputs a command corresponding to the vibration waveform FA2 to the driving unit 10 via the axis data output unit 45, thereby causing the driving unit 10 to execute a process corresponding to the vibration waveform FA2.

[0105] The vibration waveforms FA1 and FA2 have the same vibration frequency, but different vibration advance and retreat times. Therefore, the vibration waveforms FA1 and FA2 have different distributions of vibration frequency components when frequency analysis is performed. For example, when the vibration waveform FA1 is corrected to the vibration waveform FA2, the spectrum of the fundamental frequency component contained in the vibration waveform FA1 becomes smaller, and the spectrum of the frequency components of other frequencies becomes larger.

[0106] In this way, the vibration waveform FA1 is corrected to the vibration waveform FA2 having a different distribution of frequency components, thereby avoiding resonance of the machine tool 110. That is, the vibration waveform correction unit 434 corrects the vibration waveform FA1 to generate the vibration waveform FA2 so that the distribution of frequency components of the vibration frequency corresponding to the vibration waveform FA1 becomes a distribution different from the distribution of frequency components of the resonant frequency or resonant frequency region.

[0107] For example, the vibration waveform correction unit 434 can use frequency modulation to calculate the forward time Tf2 and the backward time Tr2 when correcting the vibration waveform FA1. In this case, the vibration waveform correction unit 434 calculates a forward vibration frequency or a backward vibration frequency that is the reciprocal of twice the forward time Tf1 or the backward time Tr1 of the vibration based on the vibration waveform FA1. Then, for example, the vibration waveform correction unit 434 selects a specific waveform shape (modulation shape) from a plurality of waveforms such as a triangular wave and a Hershey-Kiss wave when performing frequency modulation. The modulation shape here corresponds to the weighting of the modulation. The vibration waveform correction unit 434 modulates the forward vibration frequency according to a specific waveform shape to modify the forward vibration frequency. As a result, the vibration waveform correction unit 434 calculates the forward time Tf2 from the forward vibration frequency after modification. Also, the vibration waveform correction unit 434 modulates the backward vibration frequency according to a specific waveform shape to modify the backward vibration frequency. As a result, the vibration waveform correction unit 434 calculates the backward vibration time Tr2 from the backward vibration frequency after modification.

[0108] The vibration waveform correction unit 434 may modulate the forward vibration frequency and the backward vibration frequency together according to a specific waveform shape, thereby modifying the forward vibration frequency and the backward vibration frequency together. The vibration waveform correction unit 434 may also perform frequency modulation based on a specific probability distribution.

[0109] In addition, the vibration waveform correction unit 434 may change the vibration amplitude A when correcting the vibration waveform FA1. In addition, the vibration waveform correction unit 434 may switch the type of the vibration waveform FA1 to any one of a sawtooth wave, a triangular wave, a square wave, a trapezoidal wave, and a sine (Sin) wave when correcting the vibration waveform FA1. That is, the vibration waveform correction unit 434 may switch the vibration waveform FA1 from a first waveform having a first waveform shape to a second waveform having a second waveform shape. The first waveform is a sawtooth wave, a triangular wave, a square wave, a trapezoidal wave, a sine wave, or the like, and the second waveform is a sawtooth wave, a triangular wave, a square wave, a trapezoidal wave, a sine wave, or the like. Note that the vibration waveform correction unit 434 may switch the vibration waveform FA1 to the same type of vibration waveform, but in this case, the vibration waveform FA1 is corrected by changing the waveform shape.

[0110] The movement command calculation unit 436 generates movement commands (position commands specifying a movement amount or a movement speed) for the X-axis and Z-axis based on the vibration waveform FA2.

[0111] For example, if a threshold value is set for the spindle rotation speed to avoid resonance when the vibration frequency of vibration cutting matches the natural frequency of the machine tool 110, machining cannot be performed while maintaining constant peripheral speed control. On the other hand, the numerical control device 1 of the embodiment does not set a threshold value for the spindle rotation speed, so the numerical control device 1 can cause the machine tool 110 to execute machining while maintaining constant peripheral speed control. Furthermore, the numerical control device 1 enables vibration cutting that avoids resonance caused by the vibration frequency of vibration cutting matching the resonance frequency of the machine tool 110 while maintaining the number of vibrations per one rotation of the spindle even when constant peripheral speed control or spindle override is changed during vibration cutting.

[0112] Next, a description will be given of the hardware configuration of the control calculation unit 40 included in the numerical control device 1. The numerical control device 1 is realized by a processing circuit. The processing circuit may be a processor and memory that executes a program stored in a memory, or may be dedicated hardware.

[0113] Fig. 6 is a diagram showing an example of the configuration of a processing circuit provided in the control calculation unit of the numerical control device according to the embodiment, when the processing circuit is realized by a processor and a memory. The processing circuit 90 shown in Fig. 6 includes a processor 91 and a memory 92. When the processing circuit 90 is configured with the processor 91 and the memory 92, each function of the processing circuit 90 is realized by software, firmware, or a combination of software and firmware. The software or firmware is written as a control calculation program and stored in the memory 92. The memory 92 is also used as a temporary memory when the processor 91 executes various processes.

[0114] In the processing circuit 90, each function is realized by the processor 91 reading and executing the control and calculation program stored in the memory 92. That is, the processing circuit 90 includes the memory 92 for storing the control and calculation program that results in the processing of the control and calculation unit 40 being executed. This control and calculation program can also be said to be a program for causing the control and calculation unit 40 to execute each function realized by the processing circuit 90.

[0115] The control and arithmetic program executed by the processor 91 may be a computer program product having a computer-readable and non-transitory recording medium including a plurality of instructions for performing data processing, which can be executed by a computer. The control and arithmetic program executed by the processor 91 causes the computer to perform data processing according to the plurality of instructions. The control and arithmetic program may be provided by other means such as a communication medium.

[0116] The control calculation program can also be said to be a program that causes the control calculation unit 40 to execute the processes of steps S10 to S130 in Fig. 4. The control calculation program can also be said to be a program that causes the control calculation unit 40 to execute at least a determination step of determining whether or not the resonance frequency region overlaps with the forward and reverse frequencies, and a correction step of correcting the vibration waveform FA1 to the vibration waveform FA2 so as to obtain a forward time Tf2 and a reverse time Tr2 that can avoid resonance.

[0117] Here, the processor 91 is, for example, a CPU (Central Processing Unit), a processing device, an arithmetic device, a microprocessor, a microcomputer, or a DSP (Digital Signal Processor), etc. Also, the memory 92 is, for example, a non-volatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable ROM), an EEPROM (Electrically EPROM), a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, or a DVD (Digital Versatile Disc), etc.

[0118] FIG. 7 is a diagram showing an example of a processing circuit in the case where the processing circuit included in the control calculation unit of the numerical control device according to the embodiment is configured with dedicated hardware. As shown in FIG. 7, the control calculation unit 40 may be realized with dedicated hardware (processing circuit 93). The processing circuit 93 shown in FIG. 7 corresponds to, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination of these. Some of the functions of the control calculation unit 40 may be realized with dedicated hardware and some with software or firmware. In this way, the control calculation unit 40 can realize each of the above-mentioned functions by dedicated hardware, software, firmware, or a combination of these.

[0119] In this way, when the numerical control device 1 of the embodiment determines that resonance will occur when operating at the vibration frequency of vibration cutting, it corrects the vibration waveform FA1 of the vibration cutting to the vibration waveform FA2 so that resonance will not occur while maintaining the vibration frequency of vibration cutting (feed axis) per one rotation of the spindle, and controls the machine tool 110 with the corrected vibration waveform FA2. This allows the numerical control device 1 to avoid resonance without switching the vibration frequency of vibration cutting per one rotation of the spindle. Therefore, the numerical control device 1 can realize machining of the workpiece 60 with good surface properties while performing vibration cutting that avoids resonance due to the coincidence of the vibration frequency of vibration cutting and the natural frequency of the machine tool 110.

[0120] The configurations shown in the above embodiments are merely examples, and may be combined with other known technologies. Parts of the configurations may be omitted or modified without departing from the spirit of the invention. [Explanation of symbols]

[0121] 1 Numerical control device, 10 Drive unit, 11 X-axis servo control unit, 12 Z-axis servo control unit, 13 Spindle servo control unit, 14 X-axis servo motor, 15 Z-axis servo motor, 16 Spindle motor, 20 Input operation unit, 30 Display unit, 40 Control calculation unit, 41 Memory unit, 42 Analysis processing unit, 43 Interpolation processing unit, 44 Spindle processing unit, 45 Axis data output unit, 50 Cutting tool, 51 Tool rest, 52 Movement path, 60 Workpiece, 70 Spindle rest, 71 Rotation axis, 90, 93 Processing circuit, 91 Processor, 92 Memory, 110 Machine tool, 411 Machining program, 412 Parameter, 413 Screen display data, 414 Temporary data storage area, 421 Movement command analysis unit, 422 Vibration command analysis unit, 431 Vibration frequency calculation unit, 432 Resonance frequency acquisition unit, 433 Resonance determination unit, 434 vibration waveform correction unit, 435 vibration waveform generation unit, 436 movement command calculation unit, 437 phase difference calculation unit, 438 vibration amplitude calculation unit, 441 spindle rotation command creation unit, 442 spindle rotation speed calculation unit, FA1, FA2 vibration waveforms, R1 vibration forward position, R2 vibration backward position, Tf1, Tf2 forward time, Tr1, Tr2 backward time, W, W1, W2 phase difference, t0 to t4 time.

Claims

1. A numerical control device that controls vibration cutting by relatively vibrating a workpiece and a cutting tool attached to a machine tool, and changes a vibration frequency of the vibration cutting in response to a change in a rotational speed of a spindle that rotates the workpiece and is provided in the machine tool, a determination unit that determines whether resonance occurs when operating at the vibration frequency by comparing a resonance frequency at which resonance occurs during vibration cutting with the vibration frequency; a correction unit that corrects a vibration waveform of the vibration cutting so that the resonance does not occur while maintaining the number of vibrations per one rotation of the spindle when it is determined that the resonance occurs; Equipped with The determination unit determines that the resonance occurs when the vibration frequency overlaps with a resonance frequency range including the resonance frequency, When it is determined that the resonance occurs, the correction unit corrects the vibration waveform by changing a forward time of the vibration or a backward time of the vibration in the vibration waveform while maintaining a vibration forward position that is a forward position of the vibration and a vibration backward position that is a backward position of the vibration. A numerical control device comprising:

2. The correction unit corrects the vibration waveform so that a distribution of frequency components of a forward or backward vibration frequency of the vibration becomes a distribution different from a distribution of frequency components of the resonance frequency.

2. The numerical control device according to claim 1 .

3. The correction unit corrects the vibration waveform by frequency-modulating the frequency of the forward movement or the backward movement in accordance with a specific waveform shape.

3. The numerical control device according to claim 1 or 2.

4. The correction unit corrects the vibration waveform by switching the vibration waveform from a first waveform having a first waveform shape to a second waveform having a second waveform shape.

3. The numerical control device according to claim 1 or 2.

5. A numerical control device that controls vibration cutting by vibrating a workpiece and a cutting tool attached to a machine tool relative to one another, and changes a vibration frequency of the vibration cutting in response to a change in the rotational speed of a spindle that rotates the workpiece of the machine tool, comprising: a determination unit that determines whether resonance occurs when operating at the vibration frequency by comparing a resonance frequency at which resonance occurs during vibration cutting with the vibration frequency; a correction unit that corrects a vibration waveform of the vibration cutting so that the resonance does not occur while maintaining the number of vibrations per one rotation of the spindle when it is determined that the resonance occurs; Equipped with The determination unit determines that the resonance occurs when the vibration frequency overlaps with a resonance frequency range including the resonance frequency, When it is determined that the resonance occurs, the correction unit corrects the vibration waveform by attenuating an amplitude of the vibration. A numerical control device comprising:

6. The vibration cutting is vibration cutting in which the workpiece and the cutting tool are relatively vibrated about two or more axes, The determination unit determines whether or not the resonance occurs in any one of the two or more axes, The correction unit corrects a vibration waveform of the vibration cutting for the axis determined to cause resonance.

6. A numerical control device according to claim 1, 2 or 5.

7. A numerical control method for controlling vibration cutting in which a workpiece and a cutting tool attached to a machine tool are vibrated relatively, and for changing a vibration frequency of the vibration cutting in response to a change in a rotational speed of a spindle of the machine tool that rotates the workpiece, comprising: a determination step in which the numerical control device compares a resonance frequency at which resonance occurs in the vibration cutting with the vibration frequency to determine whether or not resonance occurs when operating at the vibration frequency; a correction step of correcting a vibration waveform of the vibration cutting so that the resonance does not occur while maintaining the number of vibrations per one rotation of the spindle when the numerical control device determines that the resonance occurs; Including, In the determination step, the numerical control device determines that the resonance will occur when the vibration frequency is a frequency that overlaps with a resonance frequency range including the resonance frequency, and when it is determined that the resonance will occur, in the correction step, corrects the vibration waveform by changing a forward time of the vibration or a backward time of the vibration in the vibration waveform while maintaining a vibration forward position that is a forward position of the vibration and a vibration backward position that is a backward position of the vibration. A numerical control method comprising:

8. A numerical control method for controlling vibration cutting in which a workpiece and a cutting tool attached to a machine tool are vibrated relative to one another, and for varying a vibration frequency of the vibration cutting in response to a change in rotational speed of a spindle that rotates the workpiece and is provided in the machine tool, comprising: a determination step in which the numerical control device compares a resonance frequency at which resonance occurs in the vibration cutting with the vibration frequency to determine whether or not resonance occurs when operating at the vibration frequency; a correction step of correcting a vibration waveform of the vibration cutting so that the resonance does not occur while maintaining the number of vibrations per one rotation of the spindle when the numerical control device determines that the resonance occurs; Including, In the determination step, the numerical control device determines that the resonance will occur when the vibration frequency is a frequency that overlaps with a resonance frequency range including the resonance frequency, and when it is determined that the resonance will occur, in the correction step, corrects the vibration waveform by attenuating an amplitude of the vibration. A numerical control method comprising:

Citation Information

Patent Citations

  • Grinding method for parting chips, and apparatus therefor

    JP2002103101A

  • Machine tool

    JP2024003322A

  • Numerical Control Device

    JP7422949B1

  • Numerical control apparatus

    WO2016084171A1

  • Numerical control device and numerical control method

    WO2022085114A1