Numerical control device, numerical control method, and numerical control program

By varying the rotational speed and applying a vibration component during hole drilling, the numerical control device addresses the issue of continuous chip generation, ensuring accurate machining and prolonged tool life.

WO2025163896A1PCT designated stage Publication Date: 2025-08-07MITSUBISHI ELECTRIC CORP

Patent Information

Application Number
PCT/JP2024/003512
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-02
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

Existing numerical control methods for hole machining in machine tools result in the generation of continuous long chips, leading to scratches on the machined surface, damage to the tool, and accumulation of chips in the machined hole, while also shortening the tool's lifespan due to excessive impact during machining.

Method used

A numerical control device that varies the rotational speed of the tool or workpiece during hole drilling, applying a vibration component to the relative movement between the tool and workpiece to break up chips, thereby reducing tool load and preventing tool wear.

Benefits of technology

The method effectively breaks up chips during machining, preventing scratches and accumulation while maintaining tool longevity by controlling the rotational speed fluctuations to avoid excessive impact.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024003512_07082025_PF_FP_ABST
    Figure JP2024003512_07082025_PF_FP_ABST
Patent Text Reader

Abstract

This numerical control device causes a machine tool to perform drilling on a workpiece (Wx) by rotating the workpiece (Wx) or a tool (10), which are objects to be rotated connected to a main shaft supplying rotary motion, while causing the workpiece (Wx) and the tool (10) which are objects to be rotated to move relative to each other. The numerical control device comprises a control calculation unit that periodically varies a C-axis rotational speed during drilling of the workpiece (Wx), said C-axis rotational speed being the rotational speed of the tool (10) or the workpiece (Wx) which are objects to be rotated.
Need to check novelty before this filing date? Find Prior Art

Description

Numerical control device, numerical control method, and numerical control program

[0001] The present disclosure relates to a numerical control device, a numerical control method, and a numerical control program for numerically controlling (NC) a machine tool.

[0002] When machine tools perform hole machining such as drilling and boring on workpieces, continuous long chips are generated, which can cause scratches on the machined surface of the workpiece, damage to the tool, and accumulation of chips in the machined hole. For this reason, it is desirable to perform hole machining while breaking up the chips.

[0003] The numerical control device described in Patent Document 1 advances the tool in the direction of its central axis while periodically changing the feed speed of the tool in the direction of its central axis when drilling a hole in a workpiece with a rotating tool.

[0004] JP 2015-052927 A

[0005] However, in the technology of Patent Document 1, when the tool and workpiece are moved relative to each other in the direction of the central axis of the tool, the tool is vibrated within a range in which the feed direction does not change, i.e., the rotary tool does not retreat in the direction of its central axis, based on a constant speed in the direction of the central axis based on a feed command.As a result, the tool hits the workpiece faster than the constant speed in the direction of the central axis, resulting in a problem in that a stronger impact is applied to the tool than when it is not vibrated, shortening the tool's lifespan.

[0006] The present disclosure has been made in consideration of the above, and aims to provide a numerical control device that can perform hole machining while breaking up chips, while preventing the tool life from being shortened.

[0007] In order to solve the above-mentioned problems and achieve the objectives, the numerical control device disclosed herein is a numerical control device that rotates a tool or workpiece, which is a rotating object connected to a spindle that imparts rotational motion, while moving the tool and the workpiece relative to each other, and causes a machine tool to perform hole drilling on the workpiece, and is equipped with a control calculation unit that periodically varies the rotational speed of the rotating object while hole drilling is being performed.

[0008] The numerical control device according to the present disclosure has the effect of being able to perform hole machining while breaking up chips, while suppressing shortening of the tool life.

[0009] FIG. 1 is a diagram for explaining vibration cutting processing executed by a numerical control device according to a first embodiment; FIG. 2 is a diagram for explaining vibration cutting processing executed by a numerical control device of a comparative example; FIG. 3 is a diagram showing the Z-axis position and C-axis rotation speed of a tool when a numerical control device according to a first embodiment executes vibration cutting processing in the spindle rotation direction; FIG. 4 is a diagram showing the Z-axis position and C-axis rotation speed of a tool when a numerical control device of a comparative example executes vibration cutting processing in the tool feed direction; FIG. 5 is a diagram showing a configuration example of a numerical control device according to a first embodiment; FIG. 1 is a flowchart showing the procedure of control processing executed by a numerical control device according to a third embodiment; FIG. 2 is a diagram showing the C-axis rotation speed of a tool when a numerical control device according to a third embodiment executes a vibration cutting process in the spindle rotation direction; FIG. 3 is a flowchart showing the procedure of control processing executed by a numerical control device according to a fourth embodiment; FIG. 4 is a diagram for explaining a process in which a numerical control device according to a fifth embodiment vibrates the spindle rotation speed to break up chips;

[0010] A numerical control device, a numerical control method, and a numerical control program according to embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.

[0011] First Embodiment. Figure 1 is a diagram for explaining the vibration cutting process executed by a numerical control device according to a first embodiment. In the first embodiment and in the second to fourth embodiments described below, the rotation object is the tool 10, and in the fifth embodiment described below, the rotation object is the workpiece Wx. Therefore, the spindle in the first to fourth embodiments is an axis that imparts rotational motion to the tool 10, and the spindle in the fifth embodiment is an axis that imparts rotational motion to the workpiece Wx.

[0012] In the following description, the rotation axis direction (central axis direction) of the tool 10, which is a rotating tool, is referred to as the Z-axis direction, and two axes perpendicular to the Z-axis direction and orthogonal to each other are referred to as the X-axis direction and the Y-axis direction. The rotation axis having the Z-axis as its base axis is the C-axis. Therefore, the rotation speed of the tool 10 is the C-axis rotation speed with the C-axis as its central axis. Hereinafter, the C-axis rotation speed may be referred to as the spindle rotation speed or the rotation speed of the tool 10.

[0013] A numerical control device (a numerical control device 1 described later) according to a first embodiment is a device for controlling a machine tool (not shown). The machine tool is a machine that performs hole machining (hole making) such as drilling and boring on a workpiece Wx.

[0014] The numerical control device 1 performs hole machining while moving the tool 10 and the workpiece Wx relative to each other in the Z-axis direction. In the following description, the workpiece Wx is fixed and the tool 10 moves in the Z-axis direction. That is, the numerical control device 1 executes control to move the tool 10 in the Z-axis direction relative to the fixed workpiece Wx.

[0015] The numerical control device 1 drills a hole in the workpiece Wx by rotating the tool 10 about the Z axis as a rotation axis and feeding the tool 10 in the Z axis direction (tool feed direction). By this drilling, a hole extending in the Z axis direction is formed in the workpiece Wx.

[0016] The numerical control device 1 advances the tool 10 at a constant moving speed Vz2 in the tool feed direction relative to the machine tool, and performs vibration cutting in the spindle rotation direction by varying (increasing / decreasing, changing, or altering) the rotational speed in the spindle rotation direction (the rotation direction of the tool 10).

[0017] During vibration cutting in the spindle rotation direction, the numerical control device 1 adds a fluctuation component to the rotational speed of the spindle. As a result, the rotational speed of the tool 10 fluctuates in the following order: high-speed rotation, medium-speed rotation, high-speed rotation, medium-speed rotation. Fig. 1 shows a case where the rotational speed of the tool 10 fluctuates in the following order: high-speed rotation speed Vc2, medium-speed rotation speed Vc1, high-speed rotation speed Vc2, and medium-speed rotation speed Vc1.

[0018] The numerical control device 1 moves the tool 10 at a constant speed in the tool feed direction, thereby preventing the tool 10 from hitting the workpiece Wx hard and suppressing the tool load (load on the tool). Furthermore, the numerical control device 1 can make the shape of chips uneven by varying the rotation speed. This causes portions of the chips to become thin, and the rotation of the tool 10 and the rotation fluctuations of the tool 10 make the chips more likely to break apart. Therefore, the numerical control device 1 can prevent the generation of continuous long chips.

[0019] In this way, the numerical control device 1 breaks chips by applying a vibration component to the relative movement (rotational speed) between the tool 10 and the workpiece Wx in the rotational direction of the tool 10. This allows the numerical control device 1 to prevent scratches on the machined surface of the workpiece Wx, damage to the tool 10, and accumulation of chips in the machined hole. Furthermore, the numerical control device 1 can bring the tool 10 into contact with the workpiece Wx at a constant speed during hole machining, so chips can be broken without reducing the life of the tool 10.

[0020] Here, we will explain hole machining performed by a numerical control device that cannot break up chips. For example, when drilling a hole in a workpiece Wx, there is a numerical control device that rotates a drilling tool such as a drill at a constant speed and moves the tool in the Z-axis direction relative to the workpiece Wx at a constant speed to drill a hole in the workpiece Wx. In this case, since the tool movement speed and the tool rotation speed are constant, chips are not broken up and become tangled in the tool, which increases the tool load and deteriorates the machining accuracy.

[0021] Therefore, a numerical control device that can break up chips is desired. A numerical control device of a comparative example compared to the numerical control device 1 of embodiment 1 applies a vibration component to the movement of the tool 10 in the Z-axis direction, thereby generating an area where the tool 10 does not cut the workpiece Wx, and breaking up the chips into small pieces. In other words, the numerical control device of the comparative example shortens the chips by applying a vibration component to the movement speed of the tool 10 in the Z-axis direction.

[0022] FIG. 2 is a diagram illustrating a vibration cutting process executed by a numerical control device of a comparative example. The numerical control device of the comparative example performs vibration cutting by vibrating the feed position of the tool 10X in the Z-axis direction, which is the tool feed direction. As a result, the movement speed of the tool 10X varies in the Z-axis direction, such as high-speed movement, low-speed movement, high-speed movement, and low-speed movement. FIG. 2 shows a case in which the movement speed of the tool 10X in the Z-axis direction varies in the following order: high-speed movement speed Vz3, low-speed movement speed Vz1, high-speed movement speed Vz3, and low-speed movement speed Vz1. Note that the movement direction at movement speed Vz1 is opposite to the movement direction at movement speed Vz3.

[0023] In this way, the numerical control device of the comparative example can shorten the chips by vibrating the tool 10X in the Z-axis direction while drilling. Because the numerical control device of this comparative example vibrates the tool 10X in the Z-axis direction, the tool 10X momentarily hits the hole bottom 15 at a speed higher than the feed rate, resulting in a high load on the tool.

[0024] On the other hand, the numerical control device 1 of the first embodiment moves the tool 10 at a constant speed in the tool feed direction, thereby reducing the tool load on the tool 10. Furthermore, the numerical control device 1 of the first embodiment varies the rotational speed of the tool 10, thereby breaking up chips.

[0025] Next, using Figures 3 and 4, we will explain the movement in the Z-axis direction and the C-axis rotation speed when vibration cutting is performed in the spindle rotation direction, and the movement in the Z-axis direction and the C-axis rotation speed when vibration cutting is performed in the tool feed direction.

[0026] 3 is a diagram showing the Z-axis position and C-axis rotational speed of the tool when the numerical control device according to the first embodiment executes vibration cutting processing in the spindle rotation direction. The horizontal axis of the graph shown in FIG. 3 represents time. The vertical axis of the upper graph shown in FIG. 3 represents the Z-axis position of the tool 10, and the vertical axis of the lower graph represents the C-axis rotational speed of the tool 10. The upper graph in FIG. 3 shows the time transition P1 of the Z-axis position of the tool 10. The lower graph in FIG. 3 shows the time transition Wa0 to Wa2 of the C-axis rotational speed of the tool 10.

[0027] The time transition Wa0 is the time transition of the C-axis rotation speed when the central speed of vibration when the time transition Wa0 is the vibration waveform is equal to the command rotation speed (S command speed Vs) of the spindle. The time transition Wa1 is the time transition of the C-axis rotation speed when the minimum value of the C-axis rotation speed is equal to the S command speed Vs, and the time transition Wa2 is the time transition of the C-axis rotation speed when the minimum value of the C-axis rotation speed is greater than the S command speed Vs. The S command speed Vs is the C-axis rotation speed of the spindle corresponding to the S command. The numerical control device 1 calculates the spindle motor rotation speed by analyzing the S command, and calculates the S command speed Vs from the spindle motor rotation speed. The numerical control device 1 controls the time transition of the C-axis rotation speed so that it becomes the time transitions Wa1 and Wa2.

[0028] As shown in FIG. 3 , the numerical control device 1 moves the tool 10 at a constant speed in the Z-axis direction and varies the C-axis rotational speed in the C-axis direction (rotational direction). The rotational speed of the spindle in the C-axis direction is determined by a program command, such as an S command, entered by the user. The user determines the rotational speed of the spindle in the C-axis direction based on, for example, the type of workpiece Wx and the type of tool 10. In this case, if the rotational speed of the spindle is insufficient, such as rotational speed Vc0, which is lower than the S-command speed Vs, the torque of the tool 10 may be insufficient, resulting in improper drilling. Therefore, the numerical control device 1 of the first embodiment controls the lower limit of the variation in the spindle rotational speed (the minimum value of the increased or decreased rotational speed) to be equal to or greater than the S-command speed Vs of the spindle, thereby reducing the possibility of improper drilling. The S-command speed Vs is the commanded rotational speed (the command value of the rotational speed) for the spindle.

[0029] 1, the numerical control device 1 changes the C-axis rotation speed so that the rotation speed of the tool 10 changes in the order of rotation speed Vc2, which is a high rotation speed, and rotation speed Vc1, which is a medium rotation speed (Vc1=Vs). That is, the numerical control device 1 increases or decreases the C-axis rotation speed so that the minimum value of the C-axis rotation speed becomes equal to the S-command speed Vs.

[0030] Furthermore, the numerical control device 1 may change the rotational speed of the tool 10 so that the rotational speed of the tool 10 changes in the order of, for example, a rotational speed Vc3 that is even faster than the rotational speed Vc2 and a rotational speed that is even faster than the rotational speed Vc1. That is, the numerical control device 1 increases or decreases the C-axis rotational speed so that the minimum value of the C-axis rotational speed becomes greater than the S-command speed Vs.

[0031] When no lower limit is set for the C-axis rotation speed, the time transition of the C-axis rotation speed is as shown in time transition Wa0. In other words, when no lower limit is set for the C-axis rotation speed, the time transition Wa0 of the C-axis rotation speed alternates between periods in which the C-axis rotation speed exceeds the S command speed Vs and periods in which it does not exceed the S command speed Vs.

[0032] In the time transitions Wa1 and Wa2 of the C-axis rotation speed when the minimum value of the C-axis rotation speed is equal to or greater than the S-command speed Vs, there is no period in which the C-axis rotation speed is smaller than the S-command speed Vs. In this way, the numerical control device 1 prevents the rotation speed of the spindle from becoming insufficient, thereby preventing the torque of the tool 10 from becoming insufficient.

[0033] The numerical control device 1 may adjust the speed of the tool 10 in the rotation direction to a speed depending on the material of the workpiece Wx. For example, the numerical control device 1 sets a higher minimum value of the C-axis rotation speed as the hardness of the workpiece Wx increases. This allows the numerical control device 1 to perform machining at a higher rotation speed for softer workpieces Wx, and to reduce the tool load for hard workpieces Wx.

[0034] Fig. 4 is a diagram showing the Z-axis position and C-axis rotational speed of the tool when a numerical control device of a comparative example executes vibration cutting processing in the tool feed direction. The horizontal axis of the graph shown in Fig. 4 represents time. The vertical axis of the upper graph in Fig. 4 represents the Z-axis position of tool 10X, and the vertical axis of the lower graph represents the C-axis rotational speed of tool 10X. The upper graph in Fig. 4 shows the time transition P2 of the Z-axis position of tool 10X and the time transition P1 of the Z-axis position of tool 10X. The lower graph in Fig. 4 shows the time transition Wb of the C-axis rotational speed of tool 10X.

[0035] 4, the numerical control device of the comparative example vibrates the position of the tool 10X in the Z-axis direction as shown by time transition P2, and keeps the C-axis rotation speed constant. As described in FIG. 2, the numerical control device of the comparative example moves the tool 10X in the Z-axis direction so that the movement speed of the tool 10X in the Z-axis direction changes in the order of high-speed movement speed Vz3 and low-speed movement speed Vz1.

[0036] As shown in Fig. 4, the C-axis rotation speed is constant over time Wb. As shown in Fig. 4, the numerical control device of the comparative example changes the moving speed of the tool 10X in the Z-axis direction, so that the tool 10X may momentarily collide with the hole bottom 15 at a speed higher than the feed rate.

[0037] 3, the numerical control device 1 of the first embodiment does not change the moving speed of the tool 10 in the Z-axis direction, so the tool 10 does not collide with the bottom of the hole at a speed higher than the feed rate. Therefore, the numerical control device of the comparative example causes a period in which the tool load is high, but the numerical control device 1 of the first embodiment does not cause a period in which the tool load is high.

[0038] 3 shows a case where the numerical control device 1 controls the movement of the tool 10 in the Z-axis direction by the Z-axis position and controls the rotation of the tool 10 by the C-axis rotation speed, but the control method is not limited to this. For example, the numerical control device 1 may execute the movement of the tool 10 in the Z-axis direction by controlling the speed of the tool 10, or execute the rotation of the tool 10 by controlling the position of the tool 10.

[0039] Fig. 5 is a diagram showing an example of the configuration of a numerical control device according to the first embodiment. Fig. 5 shows a numerical control device 1 and a drive unit 7, which is a component of a machine tool. Note that the drive unit 7 may be an element independent of the machine tool.

[0040] The numerical control device 1 is, for example, a computer that controls a machine tool that performs cutting. The numerical control device 1 performs vibration cutting by varying the spindle rotation speed. The numerical control device 1 performs hole machining while increasing or decreasing the rotation speed of the tool 10. The numerical control device 1 generates various commands in accordance with a machining program. The numerical control device 1 controls the machine tool by outputting the various generated commands to a drive unit 7.

[0041] The numerical control device 1 has an input operation unit 2, an output unit 3, and a control calculation unit 4. The control calculation unit 4 is connected to a drive unit 7. The drive unit 7 is a drive mechanism that drives at least one of a tool 10 for machining a workpiece Wx, which is an object to be machined by the machine tool, and the workpiece Wx. In the first embodiment, the drive unit 7, for example, rotates the tool 10 while moving the tool 10 in the X-axis, Y-axis, and Z-axis directions to machine the workpiece Wx. The Z-axis direction is, for example, the vertical direction, i.e., the direction of gravity. The X-axis and Y-axis directions are, for example, horizontal directions. In the first embodiment, the central axis direction of the workpiece Wx is defined as the Z-axis direction, and directions perpendicular to the Z-axis direction are defined as the X-axis and Y-axis directions. Note that the axial directions are not limited to the above directions because they depend on the machine configuration.

[0042] When the machine tool is a machining center, the numerical control device 1 moves the tool 10 using three or more drive axes of the machine tool and rotates the tool 10 using one or more main axes, thereby machining the workpiece Wx to be machined with the tool 10.

[0043] The drive unit 7 has an X-axis servo motor 71x, a detector 72x, and an X-axis servo control unit 73x as a drive mechanism for moving the tool 10 in the X-axis direction. The drive unit 7 also has a Y-axis servo motor 71y, a detector 72y, and a Y-axis servo control unit 73y as a drive mechanism for moving the tool 10 in the Y-axis direction. The drive unit 7 also has a Z-axis servo motor 71z, a detector 72z, and a Z-axis servo control unit 73z as a drive mechanism for moving the tool 10 in the Z-axis direction.

[0044] The X-axis servo motor 71x moves the tool 10 along the X-axis defined on the numerical control device 1. The detector 72x detects the number of rotations of the X-axis servo motor 71x, thereby detecting position information and speed information of the X-axis servo motor 71x.

[0045] The X-axis servo control unit 73x performs feedback control of the X-axis servo motor 71x based on commands from the numerical control device 1 and position information and speed information detected by the detector 72x. Hereinafter, feedback is also referred to as FB (Feedback). The X-axis servo control unit 73x controls the movement of the tool 10 in the X-axis direction by performing feedback control of the X-axis servo motor 71x. The rotation speed detected by the detector 72x corresponds to the rotation speed of the X-axis servo motor 71x.

[0046] The Y-axis servo motor 71y and the Z-axis servo motor 71z perform the same processing as the X-axis servo motor 71x, although their axial directions are different. The detectors 72y and 72z perform the same processing as the detector 72x. The Y-axis servo control unit 73y and the Z-axis servo control unit 73z perform the same processing as the X-axis servo control unit 73x, although their axial directions are different.

[0047] The driving unit 7 outputs the position information detected by the detectors 72x, 72y, and 72z to the control calculation unit 4 as FB movement amounts for the X-axis, Y-axis, and Z-axis, respectively.

[0048] The drive unit 7 includes a spindle motor 71s, a detector 72s, and a spindle control unit 73s as a drive mechanism for rotating the workpiece Wx. The spindle motor 71s rotates a spindle that rotates the workpiece Wx. The detector 72s detects the rotation speed of the spindle motor 71s to thereby detect position information and speed information of the spindle motor 71s.

[0049] The spindle control unit 73s performs feedback control of the spindle motor 71s based on commands from the numerical control device 1 and position information and speed information detected by the detector 72s. The spindle control unit 73s controls the rotational operation of the workpiece Wx by performing feedback control of the spindle motor 71s. The rotation speed detected by the detector 72s corresponds to the rotation speed of the spindle motor 71s.

[0050] The machine tool may perform machining using one tool 10, or may perform machining using two or more tools 10. When the machine tool performs machining using two or more tools 10, it is equipped with two or more tool posts. The drive unit 7 is equipped with an X-axis servo motor 71x, a Y-axis servo motor 71y, a Z-axis servo motor 71z, detectors 72x, 72y, 72z, an X-axis servo control unit 73x, a Y-axis servo control unit 73y, and a Z-axis servo control unit 73z as a mechanism for moving the tool 10, and various machining operations corresponding to the tool 10 can be performed by changing the tool 10 attached to the mechanism for moving the tool 10.

[0051] The input operation unit 2 is a means for inputting information to the control calculation unit 4. The input operation unit 2 is configured with input means such as a keyboard, buttons, or a mouse. The input operation unit 2 receives, for example, input of commands, etc. by an operator (user) to the numerical control device 1, input of machining program numbers, etc., and input of parameters, etc. related to vibration cutting, and inputs the information to the control calculation unit 4.

[0052] The output unit 3 is a means for outputting information from the control and calculation unit 4. The output unit 3 is configured by a display means such as a liquid crystal display device. The output unit 3 displays information processed by the control and calculation unit 4 on a display screen.

[0053] In the first embodiment, the numerical control device 1 is provided with a display means as the output unit 3, but this configuration is not limiting. The output unit 3 may also be a device that outputs information to a device external to the numerical control device 1. For example, the numerical control device 1 may be connected to a network, and the output unit 3 may transmit information via the network to a display device connected to the network or to a computer connected to the network. The output unit 3 may also be an audio device such as a speaker.

[0054] The control calculation unit 4 includes an input control unit 41, a data setting unit 42, a storage unit 43, an output control unit 44, an analysis processing unit 45, a control signal processing unit 46, a PLC (Programmable Logic Controller) circuit unit 47, an interpolation processing unit 48, an acceleration / deceleration processing unit 49, and an axis data input / output unit 50. In the first embodiment, the PLC circuit unit 47 is arranged inside the control calculation unit 4, but the PLC circuit unit 47 may be arranged outside the control calculation unit 4.

[0055] The input control unit 41 receives information input from the input operation unit 2. The data setting unit 42 stores the information received by the input control unit 41 in the storage unit 43. That is, the input information received by the input operation unit 2 is written into the storage unit 43 via the input control unit 41 and the data setting unit 42.

[0056] The storage unit 43 has a parameter storage area 431 , a machining program storage area 432 , a display data storage area 433 , and a shared area 434 .

[0057] The parameter storage area 431 stores parameters used in the processing of the control calculation unit 4. Specifically, the parameter storage area 431 stores control parameters for operating the numerical control device 1, servo parameters, tool data, and parameters related to vibration cutting.

[0058] A machining program including one or more blocks used for machining the workpiece Wx is stored in the machining program storage area 432. In the first embodiment, the machining program includes a movement command that is a command to move the tool 10, a rotation command to rotate the spindle, etc.

[0059] The display data memory area 433 stores screen display data to be displayed on the output unit 3. The screen display data is data for displaying information on the output unit 3. The shared area 434 stores data that is temporarily used when the control calculation unit 4 executes each process. For example, the machining program number accepted by the input operation unit 2 is written to the shared area 434 of the memory unit 43 via the input control unit 41 and the data setting unit 42.

[0060] The output control unit 44 causes the output unit 3 to display the screen display data stored in the display data storage area 433 of the storage unit 43 .

[0061] In the control calculation unit 4, the analysis processing unit 45, the control signal processing unit 46, and the interpolation processing unit 48 are connected to one another via the storage unit 43, and information is written and read via the storage unit 43. In the following, when describing the writing and reading of information between the analysis processing unit 45, the control signal processing unit 46, and the interpolation processing unit 48, the intermediation of the storage unit 43 may be omitted.

[0062] The analysis processing unit 45 is connected to the memory unit 43. The analysis processing unit 45 refers to the machining program number written in the shared area 434 of the memory unit 43. When the analysis processing unit 45 receives a selected machining program number from the shared area 434, it reads out the machining program corresponding to the selected machining program number from the machining program memory area 432 and performs an analysis process on each block (each line) of the machining program. The analysis processing unit 45 analyzes an S command (S code) which is a spindle motor rotation speed command, a G command (G code) which is a command related to axis movement, etc., an M command (M code) which is a machine operation command, etc. After completing the analysis process on each line of the machining program, the analysis processing unit 45 writes the analysis results of the S command, G command, M command, etc. into the shared area 434 of the memory unit 43.

[0063] Furthermore, when an S command is included in the machining program, the analysis processing unit 45 analyzes the S command to obtain the spindle rotation speed, which is the rotation speed of the spindle. Then, the analysis processing unit 45 writes the obtained spindle rotation speed into the shared area 434 of the storage unit 43.

[0064] Furthermore, when a machining program includes a G command, the analysis processing unit 45 analyzes the G command to acquire movement conditions, which are conditions for feeding the tool 10 to move the tool 10 to the machining position. These movement conditions are indicated by the speeds in the X-axis, Y-axis, and Z-axis directions for moving the tool 10, and the positions in the X-axis, Y-axis, and Z-axis directions for moving the tool post. The analysis processing unit 45 then writes the acquired movement conditions into the shared area 434 of the storage unit 43.

[0065] Furthermore, when the analysis processing unit 45 reads out a G command for vibration cutting from the machining program, it analyzes this G command and the vibration cutting condition command accompanying the G command to obtain vibration conditions including a vibration frequency, which is a frequency at which the tool 10 is vibrated in vibration cutting, and an amplitude at which the tool 10 is vibrated in vibration cutting. Then, the analysis processing unit 45 writes the obtained vibration conditions in the shared area 434 of the storage unit 43.

[0066] The vibration conditions including the vibration frequency and amplitude may not only be acquired by analyzing the G command and the vibration cutting condition command accompanying the G command, but may also be stored in advance in the parameter storage area 431 or set by signal information (control signal), etc. The signal information is a signal output from the PLC circuit unit 47 and written to the shared area 434 via the control signal processing unit 46.

[0067] The control signal processing unit 46 is connected to the PLC circuit unit 47 and receives signal information from the PLC circuit unit 47, such as signal information from relays that operate the machine tool. The control signal processing unit 46 writes the received signal information into the shared area 434 of the memory unit 43. The interpolation processing unit 48 references this signal information during machining operations. Furthermore, when an auxiliary command is output to the shared area 434 by the analysis processing unit 45, the control signal processing unit 46 reads this auxiliary command from the shared area 434 and sends it to the PLC circuit unit 47. The auxiliary command is a command other than a command that operates a drive axis, which is a numerically controlled axis. The auxiliary command is, for example, an M command or a T command.

[0068] The interpolation processing unit 48 is connected to the storage unit 43 and the acceleration / deceleration processing unit 49. The interpolation processing unit 48 refers to the shared area 434 of the storage unit 43. The interpolation processing unit 48 has a waveform generation unit 481 and a vibration / rotation amount generation unit 482.

[0069] When the analysis processing unit 45 writes the movement conditions and vibration conditions to the shared area 434, the waveform generation unit 481 reads the movement conditions and vibration conditions and generates a reference vibration waveform of the C-axis rotation speed using the read movement conditions and vibration conditions. The vibration conditions in the embodiment are conditions for increasing or decreasing the C-axis rotation speed. The vibration conditions are conditions for vibration when a vibration component is applied to the C-axis rotation speed. The vibration conditions include the vibration amplitude and vibration period of the C-axis rotation speed. The reference vibration waveform of the C-axis rotation speed is a vibration component among the speed components of the C-axis rotation speed. The reference vibration waveform of the C-axis rotation speed is a rotation speed waveform to be combined with an S-command speed Vs corresponding to an S-command.

[0070] The waveform generating unit 481 reads out the spindle motor rotation speed corresponding to the S command from the shared area 434, and calculates an S command speed Vs, which is the rotation speed of the spindle (C-axis rotation speed), from the spindle motor rotation speed. The waveform generating unit 481 generates a C-axis rotation speed waveform, which is the waveform of the C-axis rotation speed, by combining the S command speed Vs with the reference vibration waveform of the C-axis rotation speed generated by the waveform generating unit 481. The vibration rotation amount generating unit 482 generates a vibration rotation amount of the spindle based on the C-axis rotation speed waveform. The vibration rotation amount generating unit 482 generates a C-axis command vibration movement amount, which is a command vibration movement amount in the C-axis direction, from the generated vibration rotation amount. The vibration rotation amount generating unit 482 outputs the C-axis command vibration movement amount to the acceleration / deceleration processing unit 49.

[0071] The processing executed by the waveform generating section 481 may be executed by the vibration / rotation amount generating section 482. The processing executed by the vibration / rotation amount generating section 482 may be executed by the waveform generating section 481.

[0072] The interpolation processing unit 48 also generates an X-axis command movement amount, a Y-axis command movement amount, and a Z-axis command movement amount, which are command movement amounts in the X-axis, Y-axis, and Z-axis directions. The interpolation processing unit 48 writes the generated command movement amounts (C-axis command vibration movement amount, X-axis command movement amount, Y-axis command movement amount, and Z-axis command movement amount) to the shared area 434 of the storage unit 43, and outputs them to the acceleration / deceleration processing unit 49. When the interpolation processing unit 48 acquires the feedback movement amount from the acceleration / deceleration processing unit 49, it writes the acquired feedback movement amount to the shared area 434 of the storage unit 43.

[0073] The acceleration / deceleration processing unit 49 is connected to the interpolation processing unit 48 and the axis data input / output unit 50. The acceleration / deceleration processing unit 49 converts the command movement amount output from the interpolation processing unit 48 into a movement command per unit time that takes into account acceleration and deceleration in accordance with a pre-specified acceleration / deceleration pattern, and outputs this converted movement command to the axis data input / output unit 50. The acceleration / deceleration processing unit 49 also outputs the FB movement amount output from the axis data input / output unit 50 to the interpolation processing unit 48.

[0074] The axis data input / output unit 50 is connected to the acceleration / deceleration processing unit 49 and the drive unit 7. The axis data input / output unit 50 outputs the movement command per unit time output from the acceleration / deceleration processing unit 49 to the drive unit 7. In addition, the axis data input / output unit 50 outputs the FB movement amount output from the drive unit 7 to the acceleration / deceleration processing unit 49.

[0075] Next, a description will be given of a method for calculating a command vibration movement amount in the C-axis direction in the first embodiment. Fig. 6 is a flowchart showing a processing procedure of a control process executed by the numerical control device according to the first embodiment.

[0076] The control calculation unit 4 of the numerical control device 1 determines whether the command to be output is a command for vibration cutting in the C-axis direction (step S10). If the command to be output is not a command for vibration cutting in the C-axis direction (step S10, No), the control calculation unit 4 ends the processing. If the command to be output is a command for vibration cutting in the C-axis direction (step S10, Yes), the analysis processing unit 45 of the control calculation unit 4 analyzes the machining program in the machining program storage area 432 (step S20).

[0077] The analysis processing unit 45 determines whether or not a vibration cutting end command has been issued (step S30). If a vibration cutting end command has been issued (step S30, Yes), the numerical control device 1 ends vibration cutting (step S35).

[0078] On the other hand, if there is no vibration cutting end command (step S30, No), the analysis processing unit 45 determines whether there is a vibration cutting start command, which is a command to start vibration cutting (step S40). If there is a vibration cutting start command (step S40, Yes), the waveform generation unit 481 executes a vibration waveform generation process. Specifically, the waveform generation unit 481 acquires vibration conditions from the shared area 434 (step S50) and generates a reference vibration waveform of the C-axis rotation speed according to the vibration conditions (step S60).

[0079] Then, the waveform generating unit 481 reads out the spindle motor rotation speed corresponding to the S command from the shared area 434. This spindle motor rotation speed corresponds to the analysis result of the analysis processing unit 45 analyzing the S command of the machining program. The waveform generating unit 481 calculates the S command speed Vs, which is the C-axis rotation speed of the spindle, from the spindle motor rotation speed, to obtain the S command speed Vs (step S70).

[0080] The waveform generator 481 combines the S-command speed Vs with the reference vibration waveform of the C-axis rotation speed generated by the waveform generator 481 (step S80). The waveform generator 481 calculates the C-axis rotation speed waveform, which is the waveform of the C-axis rotation speed, so that the minimum value of the C-axis rotation speed becomes the S-command speed Vs (step S90). In other words, the waveform generator 481 calculates the C-axis rotation speed waveform so that the lower limit speed (minimum speed) of the C-axis rotation speed waveform matches the S-command speed Vs.

[0081] The interpolation processing unit 48 converts the C-axis rotation speed into the next position information (step S100). That is, the vibration rotation amount generating unit 482 generates the vibration rotation amount of the spindle from the C-axis rotation speed waveform, and generates the C-axis command vibration movement amount, which is the next position information, from the vibration rotation amount of the spindle.

[0082] The vibration rotation amount generator 482 outputs the C-axis command vibration movement amount to the acceleration / deceleration processor 49. The acceleration / deceleration processor 49 converts the C-axis command vibration movement amount output from the interpolation processor 48 into a movement command per unit time and outputs this converted movement command to the axis data input / output unit 50. The axis data input / output unit 50 outputs the movement command per unit time output from the acceleration / deceleration processor 49 to the driver 7 as a vibration cutting command for the spindle (step S110). As a result, a vibration cutting command corresponding to the C-axis command vibration movement amount is sent to the driver 7. The driver 7 drives the spindle motor 71s based on the vibration cutting command. As a result, the machine tool performs vibration cutting by vibrating (fluctuating) the rotational speed in the spindle rotation direction. With this, the numerical controller 1 completes the processing of steps S10 to S110 shown in FIG. 6.

[0083] The numerical control device 1 executes steps S10 to S110 for each control cycle. Once the control calculation unit 4 generates a C-axis rotational velocity waveform, it outputs a vibration cutting command with a phase advance in the next control cycle. Therefore, if there is no vibration cutting start command in the processing of step S40 (step S40, No), the control calculation unit 4 advances the phase information of the waveform stored in the shared area 434, etc. (step S45). The interpolation processing unit 48 then converts the C-axis rotational velocity into the next position information (step S100). Thus, after generating the C-axis rotational velocity waveform, the control calculation unit 4 advances the phase information of the waveform and then converts the C-axis rotational velocity waveform into the next position information. The axis data input / output unit 50 then outputs a movement command per unit time corresponding to the C-axis rotational velocity waveform to the drive unit 7 as a vibration cutting command for the spindle (step S110).

[0084] In this way, the numerical control device 1 of the first embodiment periodically varies the rotational speed of the rotating object (the tool 10 in the first embodiment) during hole drilling. That is, during hole drilling, the numerical control device 1 vibrates the rotational speed of the rotating object, which is the speed in the rotational direction, rather than vibrating it in the direction of the central axis. This vibration prevents a temporary increase in the relative speed between the tool 10 and the workpiece Wx (the feed rate of the tool 10 in the first embodiment) in the direction of travel. This allows the numerical control device 1 to make chips uneven during hole drilling and to reduce the tool load on the workpiece Wx. Therefore, the numerical control device 1 can perform hole drilling while breaking up chips and prevent the tool 10 from shortening its lifespan.

[0085] Second Embodiment Next, a second embodiment will be described with reference to Figures 7 and 8. In the second embodiment, the C-axis rotation speed of the tool 10 is varied, and the amplitude of the C-axis rotation speed waveform of the tool 10 is varied. Note that a description of the same processes as those in the first embodiment will be omitted.

[0086] Fig. 7 is a diagram showing the C-axis rotation speed of the tool when the numerical control device according to the second embodiment executes vibration cutting processing in the spindle rotation direction. The horizontal axis of the graph shown in Fig. 7 represents time, and the vertical axis represents the C-axis rotation speed of the tool 10. The graph in Fig. 7 shows the time transition Wa3 of the C-axis rotation speed of the tool 10.

[0087] As in the first embodiment, in the second embodiment, the numerical control device 1 moves the tool 10 at a constant speed in the Z-axis direction. The numerical control device 1 in the second embodiment varies the C-axis rotation speed of the tool 10 and also varies the amplitude of the C-axis rotation speed waveform of the tool 10.

[0088] In the second embodiment, as in the first embodiment, the numerical control device 1 controls the minimum value of the rotational speed of the spindle to be equal to or greater than the S command speed Vs, thereby suppressing the load on the tool.

[0089] The numerical control device 1 repeats a process of changing the rotational speed of the tool 10 so that the C-axis rotational speed of the tool 10 changes in the order of rotational speed Vc21, which is a first high-speed rotation, and rotational speed Vs, which is a medium-speed rotation (S command speed Vs), and a process of changing the rotational speed of the tool 10 so that the C-axis rotational speed of the tool 10 changes in the order of rotational speed Vc22, which is a second high-speed rotation, and rotational speed Vc1, which is a medium-speed rotation. That is, the numerical control device 1 changes the rotational speed of the tool 10 during high-speed rotation every specific period (e.g., half period t1) from rotational speed Vc21 to rotational speed Vc22, rotational speed Vc21, and rotational speed Vc22. The rotational speeds Vc21 and Vc22 here are different speeds. The half period t1 here is half the period of the C-axis rotational speed waveform.

[0090] In this way, the numerical control device 1 applies rotational speeds of different lengths, such as the rotational speed Vc21 and the rotational speed Vc22, in sequence. In other words, the numerical control device 1 periodically changes the C-axis rotational speed.

[0091] The length of the specific period for changing the rotation speed is not limited to the half period t1 and may be any length, for example, the same as a quarter period or one period of the waveform. In Fig. 7, the rotation speed Vc1 = S command speed Vs is shown, but the rotation speed Vc1 > S command speed Vs may also be shown.

[0092] Thus, in vibration cutting in embodiment 2, as in embodiment 1, the numerical control device 1 varies the rotational speed of the spindle to facilitate breaking up of chips. Furthermore, in embodiment 2, the numerical control device 1 changes the amplitude of the C-axis rotational speed waveform (time transition Wa3) for each half cycle t1, as shown in Figure 7. This makes the chips even more non-uniform, making them even more likely to break up.

[0093] The numerical control device 1 of the second embodiment has the same configuration as the numerical control device 1 of the first embodiment described with reference to Fig. 5. However, in the numerical control device 1 of the second embodiment, the waveform generation process in the waveform generation unit 481 is different from the waveform generation process in the first embodiment.

[0094] During waveform generation processing, the waveform generating unit 481 of the second embodiment generates a waveform by changing the amplitude for each half period t1 by the amplitude change amount stored in the parameter storage area 431 or the like. The amplitude change amount is the amount of change in the magnitude of the amplitude. The amplitude change amount does not necessarily have to be stored in the parameter storage area 431, but may also be analyzed from the machining program and written to the shared area 434. Furthermore, signal information (control signal) output from the PLC circuit unit 47 may also be written to the shared area 434 as the amplitude change amount.

[0095] Next, a method for calculating a command vibration movement amount in the C-axis direction in the second embodiment will be described. Fig. 8 is a flowchart showing the procedure of the control processing executed by the numerical control device according to the second embodiment. Note that, among the processing shown in Fig. 8, the same processing as in Fig. 6 is assigned the same step numbers as in Fig. 6, and the description thereof will be omitted.

[0096] The difference between the process performed by the numerical control device 1 of the first embodiment and the process performed by the numerical control device 1 of the second embodiment is that the numerical control device 1 of the second embodiment performs the process of step S90, then the processes of steps S91 and S92, and then the process of step S100. That is, in the numerical control device 1 of the second embodiment, the waveform generator 481 calculates a C-axis rotational speed waveform, which is a waveform of the C-axis rotational speed, so that the minimum value of the C-axis rotational speed becomes the S-command speed Vs (step S90). Then, the waveform generator 481 acquires an amplitude change amount (step S91). Then, the waveform generator 481 changes the amplitude of the C-axis rotational speed by the amplitude change amount (step S92). In this way, the waveform generator 481 recalculates the C-axis rotational speed waveform by changing the amplitude of the C-axis rotational speed.

[0097] Thereafter, the interpolation processing unit 48 converts the C-axis rotation speed into the next position information (step S100). That is, the vibration rotation amount generating unit 482 generates the vibration rotation amount of the spindle from the C-axis rotation speed waveform, and generates the C-axis command vibration movement amount, which is the next position information, from the vibration rotation amount of the spindle.

[0098] The acceleration / deceleration processing unit 49 converts the C-axis command vibration movement amount into a movement command per unit time. The axis data input / output unit 50 outputs the movement command per unit time to the drive unit 7 as a vibration cutting command for the spindle (step S110).

[0099] In this way, the numerical control device 1 of embodiment 2 varies the C-axis rotation speed and also varies the amplitude of the C-axis rotation speed for each half cycle t1 of the C-axis rotation speed waveform, thereby being able to break up chips even more finely than in embodiment 1.

[0100] 9 and 10, a third embodiment will be described. In the third embodiment, the C-axis rotation speed of the tool 10 is varied, and the wavelength of the C-axis rotation speed waveform of the tool 10 is varied. Note that a description of the same processes as those in the first and second embodiments will be omitted.

[0101] Fig. 9 is a diagram showing the C-axis rotation speed of the tool when the numerical control device according to the third embodiment executes vibration cutting processing in the spindle rotation direction. The horizontal axis of the graph shown in Fig. 9 represents time, and the vertical axis represents the C-axis rotation speed of the tool 10. The graph in Fig. 9 shows the time transition Wa4 of the C-axis rotation speed of the tool 10.

[0102] As in the first embodiment, in the third embodiment, the numerical control device 1 moves the tool 10 at a constant speed in the Z-axis direction. The numerical control device 1 of the third embodiment varies the C-axis rotation speed of the tool 10 and also varies the wavelength of the C-axis rotation speed waveform of the tool 10.

[0103] As in the first embodiment, in the second embodiment, the numerical control device 1 suppresses the load on the tool by controlling the minimum value of the spindle rotation speed to be equal to or greater than the S command speed Vs (rotation speed Vc1).

[0104] The numerical control device 1 changes the tool 10 so that the C-axis rotation speed of the tool 10 changes in the order of high-speed rotation speed Vc2 and medium-speed rotation speed Vc1, and also changes the wavelength of the C-axis rotation speed waveform for each specific period. For example, the numerical control device 1 changes the wavelength of the C-axis rotation speed waveform in order for each half cycle, such as period F1 and period F2. Here, period F1 and period F2 are half cycles of different lengths.

[0105] In this way, the numerical control device 1 changes the wavelength by sequentially applying half cycles of different lengths, such as period F1 and period F2. In other words, the numerical control device 1 changes the wavelength in half cycle units by sequentially changing the length of the half cycle of the C-axis rotation speed waveform for each half cycle, such as period F1 and period F2. That is, the numerical control device 1 changes the length of a specific cycle (e.g., half cycle) of the C-axis rotation speed waveform for each specific cycle (e.g., half cycle).

[0106] The length of the specific cycle (period F1, period F2) for changing the wavelength of the rotation speed is not limited to a half cycle and may be any length, for example, it may be the same as a quarter cycle or one cycle of the waveform. In Fig. 9, the case where the rotation speed Vc1 = the S command speed Vs is illustrated, but the rotation speed Vc1 > the S command speed Vs may also be satisfied.

[0107] Thus, in vibration cutting in embodiment 3, as in embodiment 1, the numerical control device 1 varies the rotational speed of the spindle to make it easier to break up the chips. Furthermore, in embodiment 3, the numerical control device 1 changes the wavelength of the waveform of the C-axis rotational speed waveform (time transition Wa4) for periods F1 and F2, as shown in Figure 9. This makes the chips more non-uniform, making them even easier to break up.

[0108] The numerical control device 1 of the third embodiment has the same configuration as the numerical control device 1 of the first embodiment described with reference to Fig. 5. However, in the numerical control device 1 of the third embodiment, the waveform generation process in the waveform generation unit 481 is different from the waveform generation process in the first embodiment.

[0109] During waveform generation processing, the waveform generating unit 481 of the third embodiment generates a waveform by changing the length of each half cycle by the cycle change amount stored in the parameter storage area 431 or the like. The half cycles here are the periods F1 and F2. The cycle change amount is the amount of change (change length) in the length of the half cycle. The cycle change amount does not necessarily have to be stored in the parameter storage area 431, but may also be analyzed from the machining program and written to the shared area 434. Furthermore, signal information (control signal) output from the PLC circuit unit 47 may also be written to the shared area 434 as the cycle change amount.

[0110] Next, a method for calculating a command vibration movement amount in the C-axis direction in the third embodiment will be described. Fig. 10 is a flowchart showing the procedure of the control processing executed by the numerical control device according to the third embodiment. Note that, among the processing shown in Fig. 10, the same processing as in Fig. 6 is assigned the same step numbers as in Fig. 6, and the description thereof will be omitted.

[0111] The difference between the process performed by the numerical control device 1 of the first embodiment and the process performed by the numerical control device 1 of the third embodiment is that the numerical control device 1 of the third embodiment performs the process of step S90, then the processes of steps S93 and S94, and then the process of step S100. That is, in the numerical control device 1 of the third embodiment, the waveform generator 481 calculates the C-axis rotational speed waveform, which is the waveform of the C-axis rotational speed, so that the minimum value of the C-axis rotational speed becomes the S-command speed Vs (step S90). Then, the waveform generator 481 acquires a period change amount (step S93). The waveform generator 481 then changes the length of the half cycle of the C-axis rotational speed by the period change amount (step S94). In this way, the waveform generator 481 recalculates the C-axis rotational speed waveform by changing the length of the half cycle of the C-axis rotational speed.

[0112] Thereafter, the interpolation processing unit 48 converts the C-axis rotation speed into the next position information (step S100). That is, the vibration rotation amount generating unit 482 generates the vibration rotation amount of the spindle from the C-axis rotation speed waveform, and generates the C-axis command vibration movement amount, which is the next position information, from the vibration rotation amount of the spindle.

[0113] The acceleration / deceleration processing unit 49 converts the C-axis command vibration movement amount into a movement command per unit time. The axis data input / output unit 50 outputs the movement command per unit time to the drive unit 7 as a vibration cutting command for the spindle (step S110).

[0114] In this way, the numerical control device 1 of embodiment 3 varies the C-axis rotation speed and also varies the length of the half cycle of the C-axis rotation speed for each half cycle of the C-axis rotation speed waveform, thereby being able to break up chips even more finely than in embodiment 1.

[0115] Fourth Embodiment Next, a fourth embodiment will be described with reference to Figures 11 and 12. In the fourth embodiment, the variations in the C-axis rotation speed of the first to third embodiments are combined. That is, in the fourth embodiment, the C-axis rotation speed of the tool 10 is varied, and the amplitude and wavelength of the C-axis rotation speed waveform of the tool 10 are varied. Note that a description of the same processes as those of the first to third embodiments will be omitted.

[0116] Fig. 11 is a diagram showing the C-axis rotation speed of the tool when the numerical control device according to the fourth embodiment executes vibration cutting processing in the spindle rotation direction. The horizontal axis of the graph shown in Fig. 11 represents time, and the vertical axis represents the C-axis rotation speed of the tool 10. The graph in Fig. 10 shows the time transition Wa5 of the C-axis rotation speed of the tool 10.

[0117] As in the first embodiment, in the fourth embodiment, the numerical control device 1 moves the tool 10 at a constant speed in the Z-axis direction. The numerical control device 1 of the fourth embodiment varies the C-axis rotation speed of the tool 10 and also varies the amplitude and wavelength of the C-axis rotation speed waveform of the tool 10.

[0118] In the second embodiment, as in the first embodiment, the numerical control device 1 controls the minimum value of the rotational speed of the spindle to be equal to or greater than the S command speed Vs, thereby suppressing the load on the tool.

[0119] The numerical control device 1 repeats a process of changing the rotational speed of the tool 10 so that the C-axis rotational speed of the tool 10 changes in the order of rotational speed Vc23, which is a high-speed rotation, and rotational speed Vc1, which is a medium-speed rotation (S-command speed Vs), and a process of changing the rotational speed of the tool 10 so that the C-axis rotational speed of the tool 10 changes in the order of rotational speed Vc24, which is a high-speed rotation, and rotational speed Vc1, which is a medium-speed rotation. That is, the numerical control device 1 changes the rotational speed of the tool 10 during high-speed rotation every specific period (e.g., a quarter period) from rotational speed Vc23 to rotational speed Vc24, rotational speed Vc23, and rotational speed Vc24. Here, the rotational speed Vc23 and the rotational speed Vc24 are different speeds. Note that while FIG. 11 illustrates a case where the rotational speed Vc1 = the S-command speed Vs, the rotational speed Vc1 may be greater than the S-command speed Vs.

[0120] Furthermore, the numerical control device 1 changes the wavelength of the C-axis rotational speed waveform in turn for each quarter cycle, such as periods F3 and F4, where periods F3 and F4 are quarter cycles with different lengths.

[0121] In this way, the numerical control device 1 sequentially applies quarter cycles of different lengths, such as periods F3 and F4. In other words, the numerical control device 1 sequentially changes the length of the quarter cycle of the C-axis rotation speed waveform every quarter cycle, such as periods F3 and F4, thereby changing the wavelength in quarter cycle units. That is, the numerical control device 1 changes the length of a specific cycle (e.g., a quarter cycle) of the C-axis rotation speed waveform every specific cycle (e.g., a quarter cycle).

[0122] The length of the specific period (period F3, period F4) for changing the rotation speed is not limited to a quarter period but may be any length, for example, the same as half a period or one period of the waveform.

[0123] Thus, in vibration cutting in embodiment 4, as in embodiment 1, the numerical control device 1 varies the rotational speed of the spindle to make it easier to break up the chips. Furthermore, in embodiment 4, the numerical control device 1 changes the amplitude and the length of the quarter cycle for each quarter cycle of the C-axis rotational speed waveform (time transition Wa5), as shown in Figure 11. This makes the chips more non-uniform, making them even easier to break up.

[0124] The numerical control device 1 of the fourth embodiment has the same configuration as the numerical control device 1 of the first embodiment described with reference to Fig. 5. However, in the numerical control device 1 of the fourth embodiment, the waveform generation process in the waveform generation unit 481 is different from the waveform generation process in the first embodiment.

[0125] During waveform generation processing, the waveform generation unit 481 of embodiment 4 changes the amplitude every quarter cycle by the amplitude change amount stored in the parameter storage area 431, etc., and changes the length of the quarter cycle every quarter cycle by the period change amount to generate a waveform.

[0126] Next, a method for calculating a command vibration movement amount in the C-axis direction in the fourth embodiment will be described. Fig. 12 is a flowchart showing the procedure of control processing executed by the numerical control device according to the fourth embodiment. Note that, among the processing shown in Fig. 12, the same processing as in Fig. 6 is assigned the same step numbers as in Fig. 6, and description thereof will be omitted.

[0127] The difference between the process performed by the numerical control device 1 of the first embodiment and the process performed by the numerical control device 1 of the fourth embodiment is that the numerical control device 1 of the fourth embodiment performs the process of step S90, then the processes of steps S95 and S96, and then the process of step S100. That is, in the numerical control device 1 of the fourth embodiment, the waveform generator 481 calculates the C-axis rotational speed waveform, which is the waveform of the C-axis rotational speed, so that the minimum value of the C-axis rotational speed becomes the S-command speed Vs (step S90). Then, the waveform generator 481 acquires the amplitude change amount and the period change amount (step S95). Then, the waveform generator 481 changes the amplitude and the length of the quarter cycle (step S96). That is, the waveform generator 481 changes the amplitude by the amplitude change amount and the length of the quarter cycle by the period change amount. In this way, the waveform generator 481 recalculates the C-axis rotational speed waveform by changing the amplitude and the length of the quarter cycle.

[0128] Thereafter, the interpolation processing unit 48 converts the C-axis rotation speed into the next position information (step S100). That is, the vibration rotation amount generating unit 482 generates the vibration rotation amount of the spindle from the C-axis rotation speed waveform, and generates the C-axis command vibration movement amount, which is the next position information, from the vibration rotation amount of the spindle.

[0129] The acceleration / deceleration processing unit 49 converts the C-axis command vibration movement amount into a movement command per unit time. The axis data input / output unit 50 outputs the movement command per unit time to the drive unit 7 as a vibration cutting command for the spindle (step S110).

[0130] In this way, the numerical control device 1 of embodiment 4 varies the C-axis rotation speed and also varies the amplitude and length of the C-axis rotation speed for each quarter cycle of the C-axis rotation speed waveform, thereby being able to break up chips even more finely than in embodiments 1 to 3.

[0131] Fifth Embodiment Next, a fifth embodiment will be described with reference to FIG. 13 . In the fifth embodiment, the rotational speed of the workpiece Wx is varied. A machining center rotates the workpiece Wx on the C-axis, and a lathe rotates the workpiece Wx on the spindle, thereby varying the rotational speed. The machine tool of the fifth embodiment performs, for example, hole machining and internal diameter machining on a lathe. The machine tool of the fifth embodiment processes the workpiece Wx by bringing a tool (tool 11, described later) into contact with the rotating workpiece Wx. The spindle in the fifth embodiment is an axis that imparts rotational motion to the workpiece Wx.

[0132] Here, a process in which the numerical control device 1 breaks chips by vibrating (increasing or decreasing) the spindle rotation speed of the machine tool will be described. Fig. 13 is a diagram for explaining a process in which the numerical control device according to the fifth embodiment breaks chips by vibrating the spindle rotation speed.

[0133] For example, in hole machining on a lathe, the workpiece Wx is rotated using the spindle, and a tool 11, such as a drill positioned at the center of rotation, is moved at a constant speed in the Z-axis direction and brought into contact with the workpiece Wx to machine the workpiece Wx. If the movement of the tool 11 and the rotation of the spindle both move at a constant speed, chips may not break up, which could affect machining. Therefore, the numerical control device 1 of embodiment 5 varies the rotational speed of the workpiece Wx rotated using the spindle, thereby making the chips uneven and making them easier to break up, as in embodiment 1.

[0134] The numerical control device 1 drills a hole in the workpiece Wx by rotating the workpiece Wx about the Z-axis direction as the rotation axis and feeding the tool 11 in the Z-axis direction (tool feed direction). By this drilling, a hole extending in the Z-axis direction is formed in the workpiece Wx.

[0135] The numerical control device 1 advances the tool 11 at a constant moving speed Vz4 in the tool feed direction with respect to the machine tool, and oscillates the rotational speed in the spindle rotation direction (the rotational direction of the workpiece Wx), thereby performing vibration cutting in the spindle rotation direction. That is, while the rotational speed of the tool 11 is oscillated in the first embodiment, the rotational speed of the workpiece Wx is oscillated in the fifth embodiment.

[0136] During vibration cutting in the spindle rotation direction, the numerical control device 1 adds a fluctuation component to the rotational speed of the spindle. As a result, the rotational speed of the workpiece Wx fluctuates in the following order: high-speed rotation, medium-speed rotation, high-speed rotation, medium-speed rotation. Figure 13 shows a case where the rotational speed of the workpiece Wx fluctuates in the following order: high-speed rotation speed Vc4, medium-speed rotation speed Vc3, high-speed rotation speed Vc4, medium-speed rotation speed Vc3.

[0137] The numerical control device 1 moves the tool 11 at a constant speed in the tool feed direction, thereby reducing the tool load on the tool 11. Furthermore, the numerical control device 1 can make the shape of chips uneven by varying the rotational speed of the workpiece Wx. This creates thin portions of the chips, and the rotation of the workpiece Wx and the fluctuations in the rotational speed of the workpiece Wx make the chips more likely to break apart. Therefore, the numerical control device 1 can prevent the generation of continuous long chips.

[0138] In Figure 13, the tool 11 is shown as a drill that has been centered at the central position, but this configuration is not limiting and a similar effect can be obtained by varying the rotation speed of the workpiece Wx even in internal diameter machining on a lathe.

[0139] In the fifth embodiment, the method of varying the rotational speed of the spindle is the same as in Fig. 3, and at least one of the amplitude of vibration and the length of the half cycle may be changed every half cycle as in the second to fourth embodiments. In these cases, the same effects as those in the second to fourth embodiments can be obtained.

[0140] The components and flowchart in the fifth embodiment are the same as those in the first to fourth embodiments, and therefore the description thereof will be omitted.

[0141] In this way, the numerical control device 1 of embodiment 5 varies the C-axis rotation speed, so that it can perform hole machining while breaking up chips, as in embodiment 1, while preventing the life of the tool 10 from being shortened.

[0142] Next, a description will be given of the hardware configuration of the control calculation unit 4 included in the numerical control device 1. Fig. 14 is a diagram showing an example of the hardware configuration of the control calculation unit included in the numerical control devices according to the first to fifth embodiments.

[0143] The control calculation unit 4 is realized by a control circuit 90 shown in Fig. 14. The control circuit 90 includes a processor 91 and a memory 92. The control circuit 90 is a circuit on which the processor 91 executes software.

[0144] The control calculation unit 4 is realized by software, firmware, or a combination of software and firmware. The software or firmware is written as a program and stored in the memory 92. In the control circuit 90, the processor 91 reads and executes the program stored in the memory 92, thereby realizing each function of the control calculation unit 4. In other words, the control circuit 90 includes a memory 92 for storing a program that results in the processing of the control calculation unit 4. This program is a numerical control program that causes a computer to execute the procedures and methods of the control calculation unit 4. The memory 92 is also used as a temporary memory when the processor 91 executes various processes.

[0145] The processor 91 may be a CPU (Central Processing Unit), a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a processor, a DSP (Digital Signal Processor), a system LSI (Large Scale Integration), etc. The memory 92 may be, 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 Read Only Memory), or an EEPROM (Electrically Erasable Programmable Read Only Memory), or a magnetic disk, a flexible disk, an optical disk, a compact disk, a minidisk, or a DVD (Digital Versatile Disc).

[0146] The program executed by the processor 91 may be a computer program product having a computer-readable, non-transitory recording medium that includes a plurality of instructions executable by a computer for performing data processing. The program executed by the processor 91 causes the computer to execute the plurality of instructions to perform data processing.

[0147] The control and calculation unit 4 may be realized by dedicated hardware. Alternatively, some of the functions of the control and calculation unit 4 may be realized by dedicated hardware, and other parts of the functions of the control and calculation unit 4 may be realized by software or firmware.

[0148] The configurations shown in the above embodiments are merely examples, and may be combined with other known technologies, or different embodiments may be combined with each other. It is also possible to omit or modify parts of the configurations as long as they do not deviate from the gist of the invention.

[0149] 1 Numerical control device, 2 Input operation unit, 3 Output unit, 4 Control calculation unit, 7 Drive unit, 10, 10X, 11 Tool, 15 Hole bottom, 41 Input control unit, 42 Data setting unit, 43 Memory unit, 44 Output control unit, 45 Analysis processing unit, 46 Control signal processing unit, 47 PLC circuit unit, 48 Interpolation processing unit, 49 Acceleration / deceleration processing unit, 50 Axis data input / output unit, 71s Spindle motor, 71x X-axis servo motor, 71y Y-axis servo motor, 71z Z-axis servo motor, 72s, 72x, 72y, 72z Detector, 73s Spindle control unit, 73x X-axis servo control unit, 73y Y-axis servo control unit, 73z Z-axis servo control unit, 90 Control circuit, 91 Processor, 92 Memory, 431 Parameter storage area, 432 Machining program storage area, 433 Display data storage area, 434 Common area, 481 Waveform generation unit, 482 Vibration rotation amount generation unit, F1 to F4 period, P1, P2, Wa0 to Wa5, Wb time transition, Vc0 to Vc4, Vc21 to Vc24 rotation speed, Vs S command speed, Vz1 to Vz4 movement speed, Wx work, t1 half cycle.

Claims

1. A numerical control device that causes a machine tool to perform hole drilling on a workpiece by moving a tool or workpiece, which is a rotating object connected to a spindle that provides rotational motion, relative to the tool while rotating the tool or workpiece, and that is characterized by having a control calculation unit that periodically varies the rotational speed of the rotating object while the hole drilling is being performed.

2. The numerical control device according to claim 1, wherein the control calculation unit varies the amplitude of the waveform of the rotational speed.

3. The numerical control device according to claim 1 or 2, characterized in that the control calculation unit varies the wavelength of the rotational speed waveform.

4. A numerical control device according to any one of claims 1 to 3, characterized in that the control calculation unit periodically varies the rotational speed while keeping the minimum value of the rotational speed equal to or greater than the command rotational speed for the spindle during execution of the hole machining.

5. A numerical control method in which a numerical control device rotates a tool or workpiece, which is a rotating object connected to a spindle that imparts rotational motion, while moving the tool and the workpiece relative to each other, and causes a machine tool to perform hole machining on the workpiece, characterized in that the numerical control device includes a control calculation step that periodically varies the rotational speed of the rotating object while the hole machining is being performed.

6. A numerical control program that causes a machine tool to perform hole drilling on a workpiece by rotating a tool or workpiece that is a rotating object connected to a spindle that provides rotational motion while moving the tool and the workpiece relative to each other, characterized in that the program causes a computer to execute a control calculation step that periodically varies the rotational speed of the rotating object during the hole drilling.

Citation Information

Patent Citations

  • Chip cut device of lathe

    JP1993050301A

  • Machining method and device

    JP2005144580A

  • Hole processing method and numerical control apparatus

    JP2015052927A

  • Working method

    JP2015112676A

  • Machining device and cutting method

    WO2020031582A1

Cited By

  • Control method, control system, and control program for machine tools

    JP7891289B1