Machine tool

The machine tool addresses the complexity of setting vibration cutting conditions by determining key parameters and using machine learning to optimize spindle speed and return amount, resulting in simplified operation and improved chip breaking efficiency.

JP7695523B2Active Publication Date: 2025-06-19STAR MICRONICS CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2021080956
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-05-12
Publication Date
2025-06-19
Estimated Expiration
2041-05-12

AI Technical Summary

Technical Problem

Existing machine tools require operators to adjust multiple parameters, including spindle phase, vibration amplitude, and feed rates, by trial and error to effectively break chips during vibration cutting, and they lack the ability to adjust vibration amplitude.

Method used

A machine tool with a control unit that acquires and determines key parameters such as feed rate, spindle revolutions, and return amount to facilitate the setting of vibration cutting, while also incorporating a machine learning unit to generate models for determining optimal spindle speed and return amount based on input parameters.

Benefits of technology

The machine tool simplifies the setting of vibration cutting conditions by allowing operators to input fewer parameters, and the machine learning component enhances the ability to efficiently determine optimal cutting conditions, thereby improving chip breaking efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007695523000001
    Figure 0007695523000001
  • Figure 0007695523000002
    Figure 0007695523000002
  • Figure 0007695523000003
    Figure 0007695523000003
Patent Text Reader

Abstract

To provide a machine tool which allows for facilitating setting of vibratory cutting.SOLUTION: A control unit U3 of a machine tool 1 is configured to: acquire a feed rate (Fa) of a drive object during non-vibration, a rotational frequency (K) of a main shaft 11 required for one cycle of vibration, and a return amount (R) being a distance of return movement M2 in one cycle of vibration; determine at least one parameter of a cutting depth (D) being a distance by which a position of the drive object is changed per cycle of vibration, a rate (F) of the drive object during movement for cutting, and a rate (B) of the drive object during return movement on the basis of the feed rate (Fa) of the drive object during non-vibration, the rotational frequency (K) of the main shaft 11, and the return amount (R); and use at least the determined parameter(s) to control the position of the drive object during feed movement.SELECTED DRAWING: Figure 9
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a machine tool that cuts a workpiece held by a spindle with a tool.

Background Art

[0002] As a machine tool, an NC (numerical control) lathe equipped with a spindle for holding a workpiece is known. When the chips generated from the workpiece rotating with the spindle become long, it may affect the machining of the workpiece. Therefore, vibration cutting is performed to break the chips by alternately repeating a cutting movement in which the tool is cut into the workpiece along the feed axis and a return movement in which the tool is moved away from the workpiece while feeding the tool. The chips are also called swarf. The cutting state of the chips changes depending on the phase of the spindle, the amplitude of the vibration, the feed rate during the cutting movement, and the feed rate during the return movement. The operator executes vibration cutting on the NC lathe while adjusting these parameters on the machining program.

[0003] The machine tool disclosed in Patent Document 1 calculates the return position on the actual feed line where the tool is located at the end of one vibration based on the number of tool vibrations and the tool feed amount determined for one rotation of the spindle, and sets a direction change point where the tool switches from the forward movement (cutting movement) to the return movement (return movement) on the amplitude line offset from the actual feed line by an amplitude obtained by multiplying the feed amount by a predetermined amplitude feed ratio. The tool is made to reach the direction change point, and at the end of one vibration, the tool is returned from the direction change point to the return position on the actual feed line. Since the amplitude feed ratio is predetermined, the amplitude cannot be adjusted.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] In order for the operator to effectively break the chips, it is necessary to adjust at least part of the phase of the spindle, the amplitude of the vibration, the feed rate during the cutting movement, and the feed rate during the return movement by trial and error. In the machine tool disclosed in Patent Document 1, the amplitude of the vibration cannot be adjusted. Therefore, it is desirable to simplify the setting of the vibration cutting conditions while also considering the amplitude. Note that the above problems exist not only in lathes but also in various machine tools such as machining centers.

[0006] The present invention discloses a machine tool capable of facilitating the setting of vibration cutting.

Means for Solving the Problems

[0007] The machine tool of the present invention includes a rotation drive unit that rotates a spindle for gripping a workpiece, a feed drive unit that moves at least one of the tool for cutting the workpiece and the drive target of the spindle along a feed axis, a control unit that controls the feed movement of the drive target so as to include a cutting movement in which the tool cuts into the workpiece along the feed axis during cutting of the workpiece and a return movement in the direction opposite to the cutting movement, accompanied by vibration, The control unit acquires the feed rate (Fa) of the drive target during non-vibration, the number of revolutions (K) of the spindle required for one cycle of the vibration, and the return amount (R) that is the distance of the return movement in one cycle of the vibration, the feed rate (Fa) of the drive target during non-vibration, and the number of revolutions (K) of the spindle ) to Based on this, the cutting amount (D), which is the distance by which the position of the drive target changes per cycle of the vibration determine, under the condition of making the phase of the main shaft at the first change point where the cutting movement changes to the return movement in one cycle of the vibration coincide with the phase of the main shaft at the second change point where the return movement changes to the cutting movement in one cycle of the vibration, the feed speed (Fa) when the driven object is not vibrating, the rotational speed (K) of the main shaft and, based on the return amount (R), so that the distance by which the position of the driven object changes per one cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R), the speed (F) of the drive target during the cutting movement and the speed (B) of the drive target during the return movement with are determined, in accordance with the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement, making the phase of the main shaft at the first change point coincide with the phase of the main shaft at the second change pointIt has a mode of controlling the position of the driven object during the feed movement. Also, the machine tool of the present invention includes a rotational drive unit that rotates a main shaft for gripping a workpiece, a feed drive unit that moves at least one of the tool for cutting the workpiece and the driven object of the main shaft along the feed shaft, a control unit that controls the feed movement of the driven object so as to include a cutting movement in which the tool cuts into the workpiece along the feed shaft during cutting of the workpiece and a return movement in the direction opposite to the cutting movement, with vibration, and a machine learning unit, wherein the control unit determines the cutting amount (D), which is the distance by which the position of the driven object changes per one cycle of the vibration, based on the feed speed (Fa) when the driven object is not vibrating and the rotational speed (K) of the main shaft required for one cycle of the vibration, under the condition of making the phase of the main shaft at the first change point where the cutting movement changes to the return movement in one cycle of the vibration coincide with the phase of the main shaft at the second change point where the return movement changes to the cutting movement in one cycle of the vibration, based on the feed speed (Fa) when the driven object is not vibrating, the rotational speed (K) of the main shaft, and the return amount (R), which is the distance of the return movement in one cycle of the vibration, determines the speed (F) during the cutting movement of the driven object and the speed (B) during the return movement of the driven object so that the distance by which the position of the driven object changes per one cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R), Control the position of the driven object during the feed movement by matching the phase of the main shaft at the first change point and the phase of the main shaft at the second change point according to the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement. The machine learning unit generates a learned model that causes a computer to function so as to determine the rotational speed (K) of the main shaft and the return amount (R) that cause an overlap in the positions of the driven object at the first change point and the second change point based on the rotational speed (S) of the main shaft per unit time, the feed speed (Fa) of the driven object during non-vibration, the rotational speed (K) of the main shaft, the return amount (R), and the determination result (E) as to whether or not there is an overlap between the position of the driven object at the first change point and the position of the driven object at the second change point by machine learning based on the rotational speed (S) of the main shaft per unit time and the feed speed (Fa) of the driven object during non-vibration.

[0008] Furthermore, the machine tool of the present invention, A rotational drive unit that rotates a main shaft for gripping a workpiece; A feed drive unit that moves at least one of the tool for cutting the workpiece and the driven object of the main shaft along a feed axis; A control unit that controls the feed movement of the driven object so as to include a cutting movement in which the tool cuts into the workpiece along the feed axis during cutting of the workpiece and a return movement in the direction opposite to the cutting movement, accompanied by vibration; The control unit, Acquires the feed speed (Fa) of the driven object during non-vibration, the rotational speed (K) of the main shaft required for one cycle of the vibration, and the return amount (R) that is the distance of the return movement in one cycle of the vibration; Receives an input of the cutting amount (D), which is the distance by which the position of the driven object changes per cycle of the vibration, or determines the cutting amount (D) based on the feed speed (Fa) of the driven object during non-vibration and the rotational speed (K) of the main shaft. Under the condition of making the phase of the main shaft at the first change point where the cutting movement changes to the return movement in one cycle of the vibration coincide with the phase of the main shaft at the second change point where the return movement changes to the cutting movement in one cycle of the vibration, based on the feed rate (Fa) when the drive target is not vibrating, the rotational speed (K) of the main shaft, and the return amount (R), the distance by which the position of the drive target changes per cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R). At least one of the speed (F) during the cutting movement of the drive target and the speed (B) during the return movement of the drive target is determined. When the speed (F) during the cutting movement is not determined, an input of the speed (F) during the cutting movement is received. When the speed (B) during the return movement is not determined, an input of the speed (B) during the return movement is received. It has an aspect of controlling the position of the drive target during the feed movement by making the phase of the main shaft at the first change point coincide with the phase of the main shaft at the second change point in accordance with the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement. Furthermore , the machine tool of the present invention a rotational drive unit that rotates a spindle for gripping a workpiece, a feed drive unit that moves at least one of the tool for cutting the workpiece and the driven object of the spindle along a feed axis, a control unit that controls the feed movement of the driven object so as to include vibrations including a cutting movement in which the tool cuts into the workpiece along the feed axis during cutting of the workpiece and a return movement in a direction opposite to the cutting movement, it includes a machine learning unit. The control unit receives an input of the cutting amount (D), which is the distance by which the position of the drive target changes per cycle of the vibration, or determines the cutting amount (D) based on the feed rate (Fa) when the drive target is not vibrating and the rotational speed (K) of the main shaft required for one cycle of the vibration. Under the condition of making the phase of the main shaft at the first change point where the cutting movement changes to the return movement in one cycle of the vibration coincide with the phase of the main shaft at the second change point where the return movement changes to the cutting movement in one cycle of the vibration, based on the feed speed (Fa) when the driven object is not vibrating, the rotational speed (K) of the main shaft, and the return amount (R) which is the distance of the return movement in one cycle of the vibration, the distance by which the position of the driven object changes per cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R). At least one of the speed (F) during the cutting movement of the driven object and the speed (B) during the return movement of the driven object is determined. When the speed (F) during the cutting movement is not determined, an input of the speed (F) during the cutting movement is accepted. When the speed (B) during the return movement is not determined, an input of the speed (B) during the return movement is accepted. Control the position of the driven object during the feed movement by making the phase of the main shaft at the first change point coincide with the phase of the main shaft at the second change point according to the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement. The machine learning unit the rotational speed (S) of the spindle per unit time, the feed speed (Fa) of the driven object during non-vibration, The The rotational speed (K) of the main shaft, The the return amount (R), and The based on the determination result (E) of whether there is an overlap between the position of the driven object at the first change point and The the position of the driven object at the second change point, a learned model is generated to cause a computer to function so as to determine the rotational speed (K) of the main shaft and the return amount (R) that cause an overlap at the positions of the driven object at the first change point and the second change point, based on the rotational speed (S) of the main shaft per unit time and the feed rate (Fa) of the driven object during non-vibration by machine learning. 、 It has the following aspect.

Effect of the Invention

[0009] According to the present invention, it is possible to provide a machine tool that facilitates the setting of vibration cutting.

Brief Description of the Drawings

[0010]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

[0011] Hereinafter, embodiments of the present invention will be described. Of course, the following embodiments are merely illustrative of the present invention, and not all of the features shown in the embodiments are necessarily essential to the solution means of the invention.

[0012] (1) Outline of the technology included in the present invention: First, the outline of the technology included in the present invention will be described with reference to the examples shown in FIGS. 1 to 15. Note that the figures of the present application are diagrams schematically showing examples, and the magnification ratios in each direction shown in these figures may be different, and the figures may not be consistent. Of course, each element of this technology is not limited to the specific examples indicated by the reference numerals.

[0013] [Aspect 1] As illustrated in FIGS. 1, 2, etc., a machine tool 1 according to one aspect of the present technology includes a rotational drive unit U1, a feed drive unit U2, and a control unit U3. The rotational drive unit U1 rotates a spindle 11 that grips a workpiece W1. The feed drive unit U2 moves at least one of a drive target (e.g., a tool TO1) between a tool TO1 that cuts the workpiece W1 and the spindle 11 along a feed axis F1. The control unit U3 controls the feed movement of the drive target so as to include a cutting movement M1 in which the tool TO1 cuts into the workpiece W1 along the feed axis F1 during cutting of the workpiece W1 and a return movement M2 in the direction opposite to the cutting movement M1, with vibration. The control unit U3 acquires a feed speed (Fa) of the drive target during non-vibration, a rotational speed (K) of the spindle 11 required for one cycle of the vibration, and a return amount (R) that is the distance of the return movement M2 in one cycle of the vibration. Further, the control unit U3 determines at least one parameter among a cutting amount (D) that is the distance by which the position of the drive target changes per cycle of the vibration, a speed (F) of the drive target during the cutting movement, and a speed (B) of the drive target during the return movement, based on the feed speed (Fa) of the drive target during non-vibration, the rotational speed (K) of the spindle 11, and the return amount (R). Furthermore, the control unit U3 controls the position of the drive target during the feed movement using at least the determined parameter.

[0014] In the above aspect 1, since the operator can set the return amount (R) in addition to the feed speed (Fa) of the drive target during non-vibration and the rotational speed (K) of the spindle 11, parameters considering the amplitude of the vibration can be set. Also, for position control during the feed movement of the drive target, the operator does not necessarily have to set at least a part of the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement. Therefore, the above aspect 1 can provide a machine tool that facilitates the setting of vibration cutting.

[0015] Here, machine tools include lathes, machining centers, etc. The feed drive unit may move the tool along the feed axis without moving the workpiece, or move the workpiece along the feed axis without moving the tool, or move both the tool and the workpiece along the feed axis. For parameters not determined among the depth of cut (D), the speed (F) during the cutting movement, and the speed (B) during the return movement, the control unit may accept an input. As a preferred embodiment, the control unit determines at least one of the speed (F) during the cutting movement and the speed (B) during the return movement based on the parameters of Fa, K, and R, and may accept an input of at least the depth of cut (D). The above-mentioned remarks are also applicable in the following aspects.

[0016] [Aspect 2] As a preferred embodiment, the control unit may determine the depth of cut (D), the speed (F) during the cutting movement, and the speed (B) during the return movement based on the feed speed (Fa) when the drive target is non-vibrating, the rotational speed (K) of the main spindle, and the return amount (R). The control unit may control the position of the drive target during the feed movement based on the depth of cut (D), the speed (F) during the cutting movement, and the speed (B) during the return movement. From the above, for position control during the feed movement of the drive target, the operator only needs to set the feed speed (Fa) when the drive target is non-vibrating, the rotational speed (K) of the main spindle 11, and the return amount (R), without setting other parameters. Therefore, the above Aspect 2 can provide a machine tool that makes the setting of vibration cutting easier.

[0017] [Aspect 3] As illustrated in FIGS. 3, 5, etc., when the rotational speed (K) of the main shaft 11 is greater than one rotation, the control unit U3 may control the difference in the rotational angle of the main shaft 11 between a first change point C1 where the feed movement M1 changes to the return movement M2 in one cycle of the vibration and a second change point C2 where the return movement M2 changes to the feed movement M1 in one cycle of the vibration to 360°. Thereby, the phases of the main shaft 11 at the first change point C1 and the second change point C2 coincide, and the chips are efficiently divided. Therefore, this aspect can provide a suitable example for dividing chips when the rotational speed K of the main shaft required for one cycle of vibration is greater than 1.

[0018] [Aspect 4] As illustrated in FIGS. 6, etc., when the denominator of the rotational speed (K) of the main shaft 11 is an odd number OD of 3 or more and the numerator of the rotational speed (K) of the main shaft 11 is 2, the control unit U3 may control the difference in the rotational angle of the main shaft 11 between a first change point C1 where the feed movement M1 changes to the return movement M2 in one cycle of the vibration and a second change point C2 where the return movement M2 changes to the feed movement M1 in one cycle of the vibration to {(K / 2)×360}°. Thereby, the phases of the main shaft 11 at the first change point C1 and the second change point C2 coincide, and the chips are efficiently divided. Therefore, this aspect can provide a suitable example for dividing chips when the rotational speed K of the main shaft required for one cycle of vibration is less than 1.

[0019] [Aspect 5] Also, as illustrated in FIGS. 10 and 13, a machine tool 1 according to another aspect of the present technology includes a rotational drive unit U1, a feed drive unit U2, a control unit U3, and a machine learning unit U4. The rotational drive unit U1 rotates a spindle 11 that holds a workpiece W1. The feed drive unit U2 moves at least one of a tool TO1 that cuts the workpiece W1 and the drive target of the spindle 11 along a feed axis F1. The control unit U3 controls the feed movement of the drive target so as to include a vibration including a cutting movement M1 in a direction in which the tool TO1 cuts into the workpiece W1 along the feed axis F1 and a return movement M2 in a direction opposite to the cutting movement M1 during cutting of the workpiece W1. The machine learning unit U4, based on the rotation speed (S) of the spindle 11 per unit time, the feed speed (Fa) of the drive target during non-vibration, the rotation speed (K) of the spindle 11 required for one cycle of the vibration, the return amount (R) that is the distance of the return movement M2 in one cycle of the vibration, and a determination result (E) as to whether or not there is an overlap between the position of the drive target at a first change point C1 from the cutting movement M1 to the return movement M2 and the position of the drive target at a second change point C2 from the return movement M2 to the cutting movement M1, generates a learned model LM that causes a computer to function so as to determine the rotation speed (K) of the spindle 11 and the return amount (R) that cause an overlap at the positions of the drive target at the first change point C1 and the second change point C2 based on the rotation speed (S) of the spindle 11 per unit time and the feed speed (Fa) of the drive target during non-vibration by machine learning.

[0020] When the "rotation speed (S) of the spindle 11 per unit time" and the "feed rate (Fa) during non-vibration of the driven object" change, the "rotation speed (K) of the spindle 11 required for one cycle of vibration" and the "return amount (R)" that efficiently cut the chip will vary. By using the learned model LM generated by machine learning based on these parameters (S, Fa, K, R) and the "judgment result (E) as to whether there is an overlap with the position of the driven object at the first change point C1 and the second change point C2", based on the "rotation speed (S) of the spindle 11 per unit time" and the "feed rate (Fa) during non-vibration of the driven object", the "rotation speed (K) of the spindle 11 required for one cycle of vibration" and the "return amount (R)" that cause an overlap with the position of the driven object at the first change point C1 and the second change point C2 can be determined. Therefore, this aspect can provide a machine tool that generates a learned model for facilitating the setting of vibration cutting.

[0021] Here, the machine tool may be a combination of a machine body and a computer connected to the machine body. Using the value obtained from the "rotation speed (S) of the spindle per unit time" for machine learning, using the value obtained from the "feed rate (Fa) during non-vibration of the driven object" for machine learning, using the value obtained from the "rotation speed (K) of the spindle required for one cycle of vibration" for machine learning, and using the value obtained from the "return amount (R)" for machine learning are also included in the machine learning of the above aspect. The above-mentioned remarks are also applicable in the following aspects.

[0022] [Aspect 6] As illustrated in FIG. 12, the control unit U3 may obtain the rotational speed (K) of the main shaft 11 and the return amount (R) determined by causing the learned model LM to execute with the rotational speed (S) of the main shaft 11 per unit time and the feed rate (Fa) during non-vibration of the drive target as inputs. Based on the feed rate (Fa) during non-vibration of the drive target, the obtained rotational speed (K) of the main shaft 11, and the obtained return amount (R), the control unit U3 may determine at least one parameter among the cutting amount (D), which is the distance that the position of the drive target changes per cycle of the vibration, the speed (F) during the cutting movement of the drive target, and the speed (B) during the return movement of the drive target. The control unit U3 may control the position during the feed movement of the drive target using at least the determined parameter. This aspect can provide a machine tool that facilitates the setting of vibration cutting.

[0023] (2) Specific example of the configuration of the machine tool: FIG. 1 schematically illustrates the configuration of a lathe as an example of a machine tool 1 including a machine body 2 and a computer 100. The machine tool 1 shown in FIG. 1 is an NC lathe equipped with an NC (numerical control) device 70 that performs numerical control of the machining of the workpiece W1. Since the computer 100 is not an essential element in the machine tool 1, the machine body 2 itself without the computer 100 connected can also be the machine tool of the present technology.

[0024] The machine tool 1 is an NC machine tool provided with a spindle headstock 10 incorporating a spindle 11 having a gripping portion 12, a spindle headstock drive unit 14, a tool rest 20, a feed drive unit U2 for the tool rest 20, an NC device 70 which is an example of a control unit U3, and the like in a machine body 2. Here, the spindle headstock 10 generically refers to a front spindle headstock 10A and a rear spindle headstock 10B also called an opposed spindle headstock. The front spindle headstock 10A incorporates a front spindle 11A having a gripping portion 12A such as a collet or the like. The rear spindle headstock 10B incorporates a rear spindle 11B having a gripping portion 12B such as a collet or the like. The spindle 11 generically refers to a front spindle 11A and a rear spindle 11B also called an opposed spindle. The gripping portion 12 generically refers to a gripping portion 12A and a gripping portion 12B. The spindle headstock drive unit 14 generically refers to a front spindle headstock drive unit 14A for moving the front spindle headstock 10A and a rear spindle headstock drive unit 14B for moving the rear spindle headstock 10B. The rotation drive unit U1 of the spindle 11 includes a motor 13A for rotating the front spindle 11A about a spindle center line AX1 and a motor 13B for rotating the rear spindle 11B about the spindle center line AX1. For the motors 13A and 13B, a built-in motor incorporated in the spindle can be used. Of course, the motors 13A and 13B may be arranged outside the spindle 11.

[0025] The control axes of the machine body 2 shown in FIG. 1 include an X-axis indicated by "X", a Y-axis indicated by "Y", and a Z-axis indicated by "Z". The Z-axis direction is a horizontal direction along the spindle center line AX1 which is the rotation center of the workpiece W1. The X-axis direction is a horizontal direction orthogonal to the Z-axis. The Y-axis direction is a vertical direction orthogonal to the Z-axis. Note that the Z-axis and the X-axis do not have to be orthogonal as long as they intersect, the Z-axis and the Y-axis do not have to be orthogonal as long as they intersect, and the X-axis and the Y-axis do not have to be orthogonal as long as they intersect. Also, the drawings referred to in this specification merely show examples for explaining the present technology and do not limit the present technology. Also, the description of the positional relationship of each part is merely illustrative. Therefore, reversing left and right, reversing the rotation direction, etc. are also included in the present technology. Also, identity of directions, positions, etc. is not limited to exact coincidence and includes deviation from exact coincidence due to errors.

[0026] The machine tool 1 shown in Fig. 1 is a spindle moving type lathe. The front spindle head drive unit 14A moves the front spindle head 10A in the Z-axis direction, and the rear spindle head drive unit 14B moves the rear spindle head 10B in the Z-axis direction. Of course, the machine tool 1 may be a spindle fixed type lathe in which the front spindle head 10A does not move, or the front spindle head 10A may move in the Z-axis direction without the rear spindle head 10B moving.

[0027] The front spindle 11A can releasably hold the workpiece W1 by the holding portion 12A and can rotate about the spindle center line AX1 together with the workpiece W1. When the workpiece W1 before machining is, for example, a long cylindrical (bar-shaped) material, the workpiece W1 may be supplied from the rear end (the left end in Fig. 1) of the front spindle 11A to the holding portion 12A. In this case, a guide bush for slidably supporting the workpiece W1 in the Z-axis direction may be arranged on the front side (the right side in Fig. 1) of the front spindle 11A. When the workpiece W1 before machining is a short material, the workpiece W1 may be supplied from the front end of the front spindle 11A to the holding portion 12A. The motor 13A rotates the front spindle 11A together with the workpiece W1 about the spindle center line AX1. The workpiece W1 after front machining is delivered from the front spindle 11A to the rear spindle 11B. The rear spindle 11B can releasably hold the workpiece W1 after front machining by the holding portion 12B and can rotate about the spindle center line AX1 together with the workpiece W1. The motor 13B rotates the rear spindle 11B together with the workpiece W1 about the spindle center line AX1. The workpiece W1 after front machining becomes a product by rear machining.

[0028] The tool post 20 has a plurality of tools TO1 for machining the workpiece W1 attached thereto and is movable in the X-axis direction and the Y-axis direction. The X-axis direction and the Y-axis direction are examples of the feed axis F1. Of course, the tool post 20 may move in the Z-axis direction. The tool post 20 may be a turret tool post or a comb-shaped tool post or the like. The plurality of tools TO1 include tools such as a parting tool, rotary tools such as a rotary drill and an end mill, and the like. The feed drive unit U2 moves the tool post 20 to which the plurality of tools TO1 are attached along the feed axis F1. In this specific example, the driving target of the feed drive unit U2 is the tool TO1, and the feed drive unit U2 moves the tool TO1 along the feed axis F1.

[0029] The computer 100 connected to the NC device 70 includes a CPU (Central Processing Unit) 101 which is a processor, a ROM (Read Only Memory) 102 which is a semiconductor memory, a RAM (Random Access Memory) 103 which is a semiconductor memory, a storage device 104, an input device 105, a display device 106, an audio output device 107, an I / F (interface) 108, a clock circuit 109, and the like. The control program of the computer 100 is stored in the storage device 104, read out to the RAM 103 by the CPU 101, and executed by the CPU 101. As the storage device 104, a semiconductor memory such as a flash memory, a magnetic recording medium such as a hard disk, and the like can be used. As the input device 105, a pointing device, a keyboard, a touch panel attached to the surface of the display device 106, and the like can be used. The I / F 108 is connected to the NC device 70 by wire or wirelessly, and receives data from the NC device 70 or transmits data to the NC device 70. The connection between the computer 100 and the machine body 2 may be a network connection such as the Internet or an intranet. The computer 100 includes a personal computer including a tablet-type terminal, a mobile phone such as a smartphone, and the like.

[0030] Figure 2 schematically illustrates the configuration of the electric circuit of the machine body 2. In the machine body 2 shown in Figure 2, an NC device 70, which is an example of the control unit U3, has an operation unit 80, a rotation drive unit U1 of the main spindle 11, a main spindle head drive unit 14, a feed drive unit U2 of the tool post 20, etc. connected thereto. The rotation drive unit U1 includes a motor 13A and a servo amplifier (not shown) for rotating the front main spindle 11A, and a motor 13B and a servo amplifier (not shown) for rotating the rear main spindle 11B. The main spindle head drive unit 14 includes a front main spindle head drive unit 14A and a rear main spindle head drive unit 14B. The feed drive unit U2 includes servo amplifiers 31, 32 and servo motors 33, 34. The NC device 70 includes a CPU 71 which is a processor, a ROM 72 which is a semiconductor memory, a RAM 73 which is a semiconductor memory, a clock circuit 74, an I / F 75, etc. Therefore, the NC device 70 is a kind of computer. In Figure 2, the I / Fs of the operation unit 80, the rotation drive unit U1, the main spindle head drive unit 14, the feed drive unit U2, the computer 100, etc. are collectively shown as I / F 75. A control program PR1 for interpreting and executing the machining program PR2 is written in the ROM 72. The ROM 72 may be a semiconductor memory capable of rewriting data. The machining program PR2 created by the operator is stored in the RAM 73 in a rewritable manner. The machining program is also called an NC program. The CPU 71 uses the RAM 73 as a work area and realizes the functions of the NC device 70 by executing the control program PR1 recorded in the ROM 72. Of course, part or all of the functions realized by the control program PR1 may be realized by other means such as an ASIC (Application Specific Integrated Circuit).

[0031] The operation unit 80 includes an input unit 81 and a display unit 82, and functions as a user interface of the NC device 70. The input unit 81 is composed of, for example, buttons for receiving operation inputs from an operator and a touch panel. The display unit 82 is composed of, for example, a display for displaying the contents of various settings received from the operator and various information regarding the machine body 2. The operator can store the machining program PR2 in the RAM 73 using the operation unit 80 or the computer 100.

[0032] The feed drive unit U2 includes a servo amplifier 31 connected to the NC device 70 and a servo motor 33 connected to the servo amplifier 31 in order to move the tool post 20 along the X-axis, which is an example of the feed axis F1. Further, the feed drive unit U2 includes a servo amplifier 32 connected to the NC device 70 and a servo motor 34 connected to the servo amplifier 32 in order to move the tool post 20 along the Y-axis, which is an example of the feed axis F1.

[0033] The servo amplifier 31 controls the position and movement speed of the tool post 20 in the X-axis direction according to a command from the NC device 70. The servo amplifier 32 controls the position and movement speed of the tool post 20 in the Y-axis direction according to a command from the NC device 70. The servo motor 33 includes an encoder 35, rotates according to a command from the servo amplifier 31, and moves the tool post 20 through a feed mechanism and a guide (not shown) in the X-axis direction. The servo motor 34 includes an encoder 36, rotates according to a command from the servo amplifier 32, and moves the tool post 20 through a feed mechanism and a guide (not shown) in the Y-axis direction. A mechanism using a ball screw or the like can be used for the feed mechanism. A sliding guide such as a combination of a dovetail and a dovetail groove can be used for the guide.

[0034] The NC device 70 issues a position command during the feed movement of the tool post 20 to which the tool TO1 is attached to the servo amplifiers 31 and 32. The servo amplifier 31 inputs a position command for the X-axis from the NC device 70, inputs position feedback based on the output from the encoder 35 of the servo motor 33, corrects the position command based on the position feedback, and outputs a torque command to the servo motor 33. Thereby, the NC device 70 controls the position during the feed movement of the tool post 20 along the X-axis as the feed axis F1. It can also be said that the NC device 70 controls the position during the feed movement of the tool TO1 along the X-axis. Further, the servo amplifier 32 inputs a position command for the Y-axis from the NC device 70, inputs position feedback based on the output from the encoder 36 of the servo motor 34, corrects the position command based on the position feedback, and outputs a torque command to the servo motor 34. Thereby, the NC device 70 controls the position during the feed movement of the tool post 20 along the Y-axis as the feed axis F1. It can also be said that the NC device 70 controls the position during the feed movement of the tool TO1 along the Y-axis.

[0035] Although not shown in the figure, the spindle head drive unit 14 also includes a servo amplifier and a servo motor. The front spindle head drive unit 14A moves the front spindle head 10A in the Z-axis direction via a feed mechanism and a guide (not shown), and the rear spindle head drive unit 14B moves the rear spindle head 10B in the Z-axis direction via a feed mechanism and a guide (not shown).

[0036] When the tool TO1 attached to the tool post 20 cuts the workpiece W1, chips, also called swarf, are generated. If the feed drive unit U2 cuts into the workpiece W1 rotating about the spindle center line AX1 without vibrating the tool TO1 along the feed axis F1, continuous long chips are generated. The continuous long chips may affect the machining of the workpiece W1. Therefore, as illustrated in FIG. 3, it is decided to break the chips by vibration cutting in which the tool TO1 is fed while repeating forward and backward movements along the feed axis F1 (X-axis or Y-axis) during the cutting of the workpiece W1. The chip breaking situation varies depending on the phase of the spindle 11, the amplitude of the vibration, the feed speed during the cutting movement, and the feed speed during the return movement.

[0037] FIG. 3 schematically illustrates the tool position with respect to the spindle rotation angle when the number of spindle rotations K required for one idle run of the tool, that is, the number of spindle rotations K required for one cycle of vibration, is 2. The idle run of the tool means that the workpiece W1 is not cut due to the vibration of the tool TO1. Hereinafter, the idle run of the tool is simply referred to as "idle run". The spindle rotation angle is the rotation angle of the spindle 11 (front spindle 11A or rear spindle 11B) with the rotation angle when the tool TO1 is at the current position P1 being set as 0°. The tool position is the control position of the tool TO1 with the position when it is at the current position P1 on the feed axis F1 (X-axis or Y-axis) being set as 0. The two-dot chain line straight line from the current position P1 to the end point P2 indicates the tool position 201 during normal cutting that is not vibration cutting. The solid-line broken line from the current position P1 to the end point P2 indicates the tool position 202 during vibration cutting. At the bottom of FIG. 3, an enlarged view of one cycle of the vibration of the tool position with respect to the spindle rotation angle is shown. Since the tool positions shown in FIG. 3 are control positions by the NC device 70, the actual tool positions are shifted from the positions shown in the figure due to delays in the response of the servo system and the like. The same applies to the tool positions shown in FIGS. 4 to 8. Note that the specific numerical values shown in FIG. 3 and the like are merely examples.

[0038] The vibration shown in FIG. 3 means that the cutting movement M1 in the direction in which the tool TO1 cuts into the workpiece W1 along the feed axis F1 and the return movement M2 in the direction opposite to the cutting movement M1 are alternately repeated. The NC device 70 controls the feed movement of the tool TO1 so as to involve vibration including the cutting movement M1 and the return movement M2 during the cutting of the workpiece W1. The broken line of the tool position with respect to the spindle rotation angle includes a first change point C1 where the cutting movement M1 changes to the return movement M2 and a second change point C2 where the return movement M2 changes to the cutting movement M1.

[0039] In FIG. 3, the normal cutting feed rate Fa is the feed rate of the tool TO1 when performing normal cutting that is not vibration cutting, and is the feed rate of the tool TO1 when not vibrating. The unit of the normal cutting feed rate Fa is, for example, mm / rev indicating millimeters per spindle rotation. The number of spindle rotations K required for one idle oscillation is the number of rotations of the spindle 11 required for one cycle of the vibration of the tool TO1. The unit of the number of spindle rotations K required for one idle oscillation is, for example, rev / cycle. The number of spindle rotations K required for one idle oscillation is a positive numerical value excluding at least 1 rev / cycle. The cutting depth D is the distance by which the position of the tool TO1 changes per cycle of vibration, and indicates the relative end position (position of the first change point C1) of each cutting movement M1. The unit of the cutting depth D is, for example, mm. The return amount R is the distance of the return movement M2 in one cycle of the vibration of the tool TO1, and indicates the relative end position (position of the second change point C2) of each return movement M2. The unit of the return amount R is, for example, mm. The distance that the tool TO1 moves during the cutting movement in one cycle of the vibration of the tool TO1 is D + R. In this specific example, when K > 1, in one cycle of vibration, for the tool TO1, first, the control of the cutting movement M1 of the distance (D + R) / 2 is performed, then the control of the return movement M2 of the return amount R is performed, and finally the control of the cutting movement M1 of the distance (D + R) / 2 is performed.

[0040] In order to control the position of the tool TO1 during vibration cutting, the speed during the cutting movement of the tool TO1 (let it be F), and the speed during the return movement of the tool TO1 (let it be B) are required. Therefore, a vibration feed command for specifying the speeds F and B as commands of the machining program PR2 can be considered. Here, it is assumed that this vibration feed command has at least the format "G** X**_D**_F**_R**_B**". The "**" after G indicates the number of the vibration feed command, the "**" after X indicates the position of the end point P2 on the feed axis X, the "**" after D indicates the numerical value of the cutting depth D, the "**" after F indicates the numerical value of the speed F during the cutting movement, the "**" after R indicates the numerical value of the return amount R, and the "**" after B indicates the numerical value of the speed B during the return movement. Incidentally, when the feed axis F1 is the Y axis, the above format changes with X being changed to Y. In the above vibration feed command, it is necessary to set the vibration conditions by trial and error adjustment of a number of parameters such as at least the cutting depth D, the speed F during cutting movement, the return amount R, and the speed B during return movement.

[0041] In this specific example, by setting the "normal cutting feed speed Fa", the "number of spindle rotations K required for one idle run", and the "return amount R", it is not necessary to adjust the parameters such as the speed F during cutting movement and the speed B during return movement by trial and error. Hereinafter, the control of vibration cutting in this specific example will be described in detail.

[0042] FIG. 3 shows an example of setting a first change point C1 and a second change point C2 in one cycle of vibration when K>1, specifically K = 2. FIG. 4 schematically illustrates the tool position with respect to the spindle phase when K = 2. For easy understanding, in FIG. 4, the tool positions in the even cycles are shown by broken lines. In order to reduce the load applied to mechanisms such as the feed mechanism and the guide, it is preferable to make the speeds F, B, the cutting depth D, and the return amount R as small as possible. The most efficient idle run is when the peak (first change point C1) and the valley (second change point C2) of the movement path of the tool TO1 coincide at the phase of the spindle 11. In order to make the peak and the valley coincide, for example, from the spindle rotation angle in the middle (K / 2) of one cycle of vibration, set the peak at a spindle rotation angle of -180°, and set the valley at a spindle rotation angle of +180°. When K = 2, set the peak at a spindle rotation angle of (2 / 2)×360 - 180 = 180°, and set the valley at a spindle rotation angle of (2 / 2)×360 + 180 = 540°. Then, as shown in FIG. 4, the spindle phases of the peak and the valley coincide. Since the difference in the spindle rotation angles between the peak and the valley is 360° and the return amount R is greater than 0, the valley (second change point C2) in the next even cycle is slightly retracted compared to the peak (first change point C1) in the odd cycle. As a result, the chip is broken. Also, since the change in the tool position during cutting movement is constant, the chip is efficiently broken.

[0043] FIG. 5 schematically illustrates the tool position with respect to the spindle rotation angle when K = 3. When K = 3, if the peak (first change point C1) is set at the spindle rotation angle of (3 / 2)×360 - 180 = 360°, and the valley (second change point C2) is set at the spindle rotation angle of (3 / 2)×360 + 180 = 720°, the spindle phases of the peak and the valley will coincide. Thereby, the chips are efficiently broken. When the "number of spindle rotations K required for one idle stroke" is greater than 1, it is not limited to an integer. When K > 3, when 2 < K < 3, or when 1 < K < 2, the peak and the valley can be set in the same way. However, when 1 < K < 2, the feed rate F during the cutting movement may become excessive, so K is preferably 2 or more.

[0044] Although not shown in the figure, it is also possible to set the valley (second change point C2) at the spindle rotation angle of -180° and the peak (first change point C1) at the spindle rotation angle of +180° from the spindle rotation angle at the middle (K / 2) in one cycle of vibration. From the above, when K > 1, the NC device 70 controls the difference in the spindle rotation angles between the first change point C1 where the cutting movement M1 changes to the return movement M2 in one cycle of vibration and the second change point C2 where the return movement M2 changes to the cutting movement M1 in one cycle of vibration to 360°.

[0045] In addition, when K > 2, it is also possible to set the valley or peak at the spindle rotation angle of -360° and the peak or valley at the spindle rotation angle of +360° from the spindle rotation angle at the middle (K / 2) in one cycle of vibration. When K > 3, it is also possible to set the valley or peak at the spindle rotation angle of -540° and the peak or valley at the spindle rotation angle of +540° from the spindle rotation angle at the middle (K / 2) in one cycle of vibration. In order to reduce the number of spindle rotations required for chip breaking and break the chips more finely, it is most efficient to set the peak or valley at the spindle rotation angle of -180° and the valley or peak at the spindle rotation angle of +180° from the spindle rotation angle at the middle (K / 2) in one cycle of vibration.

[0046] In order for the NC device 70 to move the tool TO1 at the feed axis F1 without changing the feed movement speed from the commanded speed of normal cutting, it suffices to control so that the amount of movement of the tool TO1 per spindle rotation as a whole becomes the same as the normal cutting feed speed Fa which is the amount of movement during normal cutting. Since the number of spindle rotations K required for one dry run is the number of rotations of the spindle 11 required for one cycle of the vibration of the tool TO1, the amount of movement of the tool TO1 along the feed axis F1 per cycle of the vibration is K×Fa. As shown in FIGS. 3 and 5, for the tool TO1, during one cycle of the vibration, in order, control of the cutting movement M1 of the distance (D + R) / 2, the return movement M2 of the return amount R, and the cutting movement M1 of the distance (D + R) / 2 is performed. Therefore, K×Fa={(D+R) / 2}×2-R holds. From the above formula, the cutting amount D is expressed by the following formula. D=K×Fa …(1)

[0047] The speed F during the cutting movement of the tool TO1 is expressed by the following formula. F={(D+R) / 2} / {(K-1) / 2} =(D+R) / (K-1) =(K×Fa+R) / (K-1) …(2) The speed B during the return movement of the tool TO1 is expressed by the following formula. B=R / 1 =R …(3)

[0048] From the above, when K>1, when the NC device 70 receives the input of "normal cutting feed speed Fa", "the number of spindle rotations K required for one dry run", and "the return amount R" for the feed axis F1, according to the above formulas (1), (2), and (3), the cutting amount D and the speeds F, B can be determined. When the cutting amount D and the speeds F, B are determined, the NC device 70 controls the position during the feed movement of the tool TO1 for the feed axis F1 based on the cutting amount D and the speeds F, B . The operator can perform vibration cutting in the same machining time as normal cutting by specifying only the "normal cutting feed rate Fa", the "number of spindle rotations K required for one idle stroke", and the "return amount R" in the machining program PR2. Here, as the "number of spindle rotations K required for one idle stroke" increases, the chip becomes longer while the amplitude becomes smaller. The suitable values of the "number of spindle rotations K required for one idle stroke" and the "return amount R" depend on the followability of the servo system that moves the tool TO1 and are determined by the number of spindle rotations per unit time and the feed rate of the tool TO1. Therefore, as illustrated in FIG. 14, by preparing a reference value table TA1 of the "number of spindle rotations K required for one idle stroke" and the "return amount R" corresponding to the "number of spindle rotations S per unit time" and the "normal cutting feed rate Fa" for the combination of the "number of spindle rotations K required for one idle stroke" and the "return amount R", the operator can easily specify the "number of spindle rotations K required for one idle stroke" and the "return amount R". As shown in FIG. 14, in the information table TA1, a plurality of combinations of K and R are associated with each combination of S and Fa. If the identification number for identifying the combination of K and R is j, FIG. 14 shows that, for example, a plurality of combinations represented by K = K1j and R = R1j are associated with the combination of S = S1 and Fa = Fa1. The information table TA1 shown in FIG. 14 can also be said to be an information table for outputting a plurality of recommended combinations of the "number of spindle rotations K required for one idle stroke" and the "return amount R" for the input of the "number of spindle rotations S per unit time" and the "normal cutting feed rate Fa". Of course, the number of combinations of K and R is finite.

[0049] From the above, when the "number of spindle rotations S per unit time", the "normal cutting feed rate Fa", and the "number of spindle rotations K required for one idle stroke" are determined, it becomes possible to determine the "return amount R" from the information table TA1. Although it will be described in detail later with reference to FIG. 15, by storing the information table TA1 in advance in the RAM 73 of the NC device 70, the NC device 70 can determine the "reference return amount R" from the "number of spindle rotations S per unit time", the "normal cutting feed rate Fa", and the "number of spindle rotations K required for one idle stroke". In this case, the operator can omit the specification of the "return amount R".

[0050] FIG. 6 schematically illustrates the tool position with respect to the spindle rotation angle when the spindle rotation speed K required for one dry run, that is, the spindle rotation speed K required for one cycle of vibration is 2 / 3. In this specific example, when 0 < K < 1, in one cycle of vibration, for the tool TO1, control of the cutting movement M1 of the distance (D + R) is performed in the first half, and control of the return movement M2 of the return amount R is performed in the second half. FIG. 7 schematically illustrates the tool position with respect to the spindle phase when K = 2 / 3. When 0 < K < 1, in order to efficiently realize dry running, the "spindle rotation speed K required for one dry run" is restricted to be K = 2 / 3, 2 / 5, 2 / 7,... where the denominator is an odd number of 3 or more and the numerator is 2. In order to make the peak (first change point C1) and the valley (second change point C2) coincide at the phase of the spindle 11, for example, a peak may be set at the spindle rotation angle of the middle (K / 2) in one cycle of vibration, and a valley may be set at the spindle rotation angle of the end (K) in one cycle of vibration. When K = 2 / 3, if a peak is set at the spindle rotation angle of (2 / 3) / 2 × 360 = 120° and a valley is set at the spindle rotation angle of (2 / 3) × 360 = 240°, as shown in FIG. 7, the spindle phases of the peak and the valley coincide. The spindle phases at which the peak and the valley coincide are 120°, 240°, and 360°.

[0051] FIG. 8 schematically illustrates the tool position with respect to the spindle phase when K = 2 / 5. When K = 2 / 5, if a peak is set at the spindle rotation angle of (2 / 5) / 2 × 360 = 72° and a valley is set at the spindle rotation angle of (2 / 5) × 360 = 144°, as shown in FIG. 8, the spindle phases of the peak and the valley coincide. The spindle phases at which the peak and the valley coincide are 72°, 144°, 216°, 288°, and 360°. The "spindle rotation speed K required for one dry run" may also be 2 / 7 or less. However, when K < 2 / 3, the feed speed of the tool TO1 and the rotation speed of the spindle 11 per unit time may have to be made considerably low from the viewpoint of the followability of the servo system for control. Therefore, K is preferably 2 / 3.

[0052] Although not shown, it is also possible to set a valley at the spindle rotation angle of the middle (K / 2) in one cycle of vibration and set a peak at the spindle rotation angle of the last (K) in one cycle of vibration. From the above, when the denominator of "the number of spindle rotations K required for one dry run" is an odd number of 3 or more and the numerator of "the number of spindle rotations K required for one dry run" is 2, the NC device 70 controls the difference in the spindle rotation angles between the first change point C1 where the cutting feed movement M1 changes to the return movement M2 in one cycle of vibration and the second change point C2 where the return movement M2 changes to the cutting feed movement M1 in one cycle of vibration to be {(K / 2)×360}°.

[0053] In order for the NC device 70 to move the tool TO1 without changing the feed movement speed from the normal cutting command speed on the feed axis F1, it may be controlled so that the amount of movement of the tool TO1 per spindle rotation as a whole is the same as the normal cutting feed speed Fa which is the amount of movement during normal cutting. As described above, the amount of movement of the tool TO1 along the feed axis F1 per cycle of vibration is K×Fa. As shown in FIGS. 6 to 8, for the tool TO1, control of the cutting feed movement M1 of the distance (D + R) and the return movement M2 of the return amount R is performed in order in one cycle of vibration. Therefore, K×Fa=(D+R)-R holds. From the above formula, the cutting depth D is expressed by the following formula. D=K×Fa …(4)

[0054] The speed F during the cutting feed movement of the tool TO1 is expressed by the following formula. F=(D+R) / (K / 2) =2(D+R) / K =2(K×Fa+R) / K …(5) The speed B during the return movement of the tool TO1 is expressed by the following formula. B=R / (K / 2) =2R / K …(6)

[0055] As described above, when the NC device 70 receives the input of "normal cutting feed rate Fa", "number of spindle rotations K required for one rapid traverse", and "return amount R" for the feed axis F1 in the case of K < 1, the cutting depth D and the feed rate F are calculated according to the above formulas (4), (5), and (6). B can be determined. Once the cutting depth D and the feed rate F are determined, B the NC device 70 controls the position of the tool TO1 during the feed movement of the feed axis F1 based on the cutting depth D and the feed rate F B .

[0056] FIG. 9 shows an example of a vibration feed command for receiving the input of "normal cutting feed rate Fa", "number of spindle rotations K required for one rapid traverse", and "return amount R". The vibration feed command CM1 shown in FIG. 9 has the format "G** X**_F**_K**_R**". Here, "F" means the normal cutting feed rate Fa, not the speed during the cutting movement. The "**" after G indicates the number of the vibration feed command, the "**" after X indicates the position of the end point P2 on the feed axis X, the "**" after F indicates the numerical value of the "normal cutting feed rate Fa", the "**" after K indicates the numerical value of the "number of spindle rotations K required for one rapid traverse", and the "**" after R indicates the numerical value of the return amount R. When the feed axis F1 is the Y axis, the above format changes with X replaced by Y.

[0057] FIG. 9 schematically illustrates a vibration control process for controlling the position of the tool TO1 during the feed movement based on the vibration feed command CM1. The vibration control process is performed by the NC device 70. First, the NC device 70 receives an input of a vibration feed command CM1 from the operation unit 80 or the computer 100, and stores a machining program PR2 including the vibration feed command CM1 in the RAM 73 (first step ST1). Among the vibration feed command CM1, the "main shaft rotation speed K required for one idle stroke" is a positive numerical value excluding at least 1, and when K < 1 with the odd number OD of 3 or more, K is limited to K = 2 / OD. The NC device 70 receives an input of the vibration feed command CM1 so that the above-mentioned limitation is satisfied. When an information table TA1 (see FIG. 14) showing reference values according to the "main shaft rotation speed S per unit time" and the "normal cutting feed speed Fa" is prepared for the "main shaft rotation speed K required for one idle stroke" and the "return amount R", the operator can input the parameters of K and R into the vibration feed command CM1 according to the information table TA1. Incidentally, since the chip becomes longer when the "main shaft rotation speed K required for one idle stroke" is increased, the operator may decrease both the "main shaft rotation speed K required for one idle stroke" and the "normal cutting feed speed Fa" in order to shorten the chip.

[0058] When executing the machining program PR2, when the NC device 70 reads the vibration feed command CM1 from the machining program PR2, it performs the processing of the second step ST2. Since the parameters of Fa, K, and R are included in the vibration feed command CM1, in the first step ST1, the NC device 70 receives inputs of the "normal cutting feed speed Fa", the "main shaft rotation speed K required for one idle stroke", and the "return amount R".

[0059] After reading the vibration feed command CM1, the NC device 70 determines the cutting depth D, the speed F during the cutting movement of the tool TO1, and the speed B during the return movement of the tool TO1 for the feed axis F1 based on the "normal cutting feed speed Fa", the "number of spindle revolutions K required for one dry run", and the "return amount R" (second step ST2). When K > 1, the cutting depth D is calculated according to the above formula (1), i.e., F = K × Fa, the speed F during the cutting movement is calculated according to the above formula (2), i.e., F = (K × Fa + R) / (K - 1), and the speed B during the return movement is determined for the return amount R according to the above formula (3). When K < 1, the cutting depth D is calculated according to the above formula (4), i.e., F = K × Fa, the speed F during the cutting movement is calculated according to the above formula (5), i.e., F = 2(K × Fa + R) / K, and the speed B during the return movement is calculated according to the above formula (6), i.e., B = 2R / K.

[0060] Cutting depth D and speed F, B After calculating the cutting depth D and speed F, the NC device 70 controls the position during the feed movement of the tool TO1 for the feed axis F1 based on the cutting depth D and speed F. B The NC device 70 sets a plurality of positions P3 from the current position P1 to the end point P2 by repeating the cutting movement M1 and the return movement M2 on the feed axis F1 until it reaches the end point P2, based on the cutting depth D and speed F. B and sequentially issues a position command to move the tool TO1 to the position P3 to the servo amplifier 31 or the servo amplifier 32. In FIG. 9, each position P3 is indicated by a white circle. The set position P3 is not limited to the change points (the first change point C1 and the second change point C2) and the end point P2, and may include positions during the cutting movement M1 or the return movement M2. By repeating the above-mentioned position command, the position during the feed movement of the tool TO1 is controlled to the position based on the cutting depth D and speed F. B

[0061] ​As described above, by inputting only the "normal cutting feed rate Fa", the "number of spindle rotations K required for one dry run", and the "return amount R" into the machine tool 1, the operator can perform vibration cutting in the same processing time as normal cutting. For position control during the feed movement of the tool TO1, the operator does not need to input parameters such as the cutting feed speed F and the return speed B during the return movement into the machine tool 1. Since the setting of vibration cutting conditions is thus simplified, this specific example can facilitate the setting of vibration cutting.

[0062] Also, as in the vibration control process illustrated in FIG. 15, it is also possible for the NC device 70 to control the position of the tool during the feed movement based on the vibration feed command CM2 without the return amount R. In the vibration feed command CM2, the "R**" representing the return amount R is omitted from the vibration feed command CM1 shown in FIG. 9. The first step ST1 shown in FIG. 15 is divided into two steps ST11 and ST12. It is assumed that the information table TA1 shown in FIG. 14 is stored in the RAM 73 as a premise for performing the vibration control process shown in FIG. 15. First, the NC device 70 receives the input of the vibration feed command CM2 from the operation unit 80 or the computer 100 and stores the processing program PR2 including the vibration feed command CM2 in the RAM 73 (step ST11). In the processing program PR2, it is assumed that there is a command for specifying the "number of spindle rotations S per unit time" before the vibration feed command CM2.

[0063] When executing the processing program PR2, when the NC device 70 reads the vibration feed command CM2 from the processing program PR2, it performs the processing of step ST12. Since the parameters Fa and K are included in the vibration feed command CM2, in step ST11, the NC device 70 will receive the input of the "normal cutting feed rate Fa" and the "number of spindle rotations K required for one dry run". After reading the vibration feed command CM2, the NC device 70 obtains from the information table TA1 the "main shaft rotation speed S per unit time" and, for the feed axis F1, the "normal cutting feed speed Fa" and the "amount of return R" associated with the "number of main shaft rotations K required for one rapid traverse" (step ST12). In this way, the "amount of return R" can be automatically determined from the parameters of S, Fa, and K.

[0064] When the "amount of return R" is obtained, as described above, the NC device 70 determines the cutting depth D, the speed F during the cutting movement of the tool TO1, and the speed B during the return movement of the tool TO1 for the feed axis F1 based on the parameters of Fa, K, and R (second step ST2). Further, the NC device 70 controls the position during the feed movement of the tool TO1 for the feed axis F1 based on the cutting depth D and the speeds F B (third step ST3). From the above, the operator can perform vibration cutting in the same processing time as normal cutting without inputting the "amount of return R" into the machine tool 1. As the "number of main shaft rotations K required for one rapid traverse" increases, the chip becomes longer. Therefore, by fixing the "main shaft rotation speed S per unit time" and the "normal cutting feed speed Fa" and determining the "number of main shaft rotations K required for one rapid traverse" while checking the chip length in actual machining, an appropriate "amount of return R" is automatically determined. Accordingly, the example shown in FIG. 15 can make the setting of vibration cutting even easier.

[0065] Note that the NC device 70 in the above-described specific example calculates all of the cutting depth D and the speeds F B based on the "normal cutting feed speed Fa", the "number of main shaft rotations K required for one rapid traverse", and the "amount of return R", but input may be accepted for some of the parameters of D, F, and R. For example, the NC device 70 may accept input of the cutting depth D while calculating the speed F B , or may accept input of the speed B during the return movement and the cutting depth D while calculating the speed F during the cutting movement, or may accept input of the speed F during the cutting movement and the cutting depth D while calculating the speed B during the return movement.

[0066] (3) Application Example to Machine Learning: Furthermore, as illustrated in FIGS. 10 to 13, it is also possible to configure a machine tool 1 that can make the setting of vibration cutting even easier by using machine learning. FIG. 10 schematically shows an example of a machine tool 1 equipped with a machine learning unit U4 in a computer 100. In FIG. 10, descriptions and explanations of elements partially overlapping with FIGS. 1 and 2 are omitted. At the bottom of FIG. 10, an example of the structure of a database DB is shown.

[0067] The storage device 104 of the computer 100 shown in FIG. 10 stores a machine learning program PR3 corresponding to the machine learning unit U4. The machine learning program PR3 is executed by being read into the RAM 103 by the CPU 101. In the RAM 103 of the computer 100, a database DB and a learned model LM generated based on the database DB are stored. The learned model LM is a program for causing the computer 100 to function so as to determine the number of spindle rotations K required for one dry run and the return amount R that cause an overlap between the position of the tool TO1 at the first change point C1 from the cutting feed movement M1 to the return movement M2 and the position of the tool TO1 at the second change point C2 from the return movement M2 to the cutting feed movement M1.

[0068] The generated learned model LM may be transmitted from the computer 100 to the NC device 70 and stored in the RAM 73 of the NC device 70. Thereby, the NC device 70 can determine the number of spindle rotations K required for one dry run and the return amount R according to the learned model LM.

[0069] The database DB stores the spindle rotation speed S per unit time, the normal cutting feed rate Fa, the spindle rotation speed K required for one idle run, the return amount R, and the determination result E as to whether or not there is an overlap between the position of the tool TO1 at the first change point C1 and the position of the tool TO1 at the second change point C2. The spindle rotation speed S per unit time means the rotation speed of the spindle 11 per unit time. The determination result E is based on the position of the tool TO1 actually measured when the tool TO1 is moved along the feed axis F1 with vibrations including the cutting movement M1 and the return movement M2 according to the test program PR4 corresponding to the machining program PR2 shown in FIG. 2. The determination result E is the result of determining whether or not there is an overlap between the peaks and valleys with respect to the phase of the spindle 11 in the actually measured vibrations, and is information indicating "there is an overlap" or "there is no overlap". In the database DB, the spindle rotation speed Si per unit time, the normal cutting feed rate Fai, the spindle rotation speed Ki required for one idle run, the return amount Ri, and the determination result Ei are stored in a state associated with the identification number i which is identification information for identifying a record.

[0070] FIG. 11 shows an example of a learning process for generating a learned model LM. This process is performed by a computer 100 that executes a machine learning program PR3. When the learning process starts, the computer 100 sets the parameters of the vibration feed of the tool TO1 (step S102). The parameters of the vibration feed include "the spindle rotation speed S per unit time", "the normal cutting feed rate Fa", "the spindle rotation speed K required for one idle run", and "the return amount R". The computer 100 may set the parameters of the vibration feed by receiving the input of the parameters of S, Fa, K, and R from the operator. Also, the computer 100 may sequentially set the parameters of S, Fa, K, and R according to a predetermined rule on the premise that the processes of steps S102 to S108 are repeated.

[0071] After setting the parameters of the vibration feed, the computer 100 causes the NC device 70 to load a test program PR4 that includes a command for instructing the "number of spindle revolutions S per unit time" and a vibration feed command CM1 for instructing the parameters of Fa, K, and R (step S104).

[0072] After loading the test program PR4, the computer 100 causes the NC device 70 to execute the test program PR4 and acquires from the NC device 70 the measured results of the tool position with respect to the spindle rotation angle on the feed axis F1 (step S106). The NC device 70 that has received the execution instruction of the test program PR4 from the computer 100 controls the movement of the tool TO1 along the feed axis F1 according to the test program PR4 and outputs to the computer 100 the measured results of the position of the tool TO1 with respect to the spindle rotation angle on the feed axis F1.

[0073] Next, the computer 100 determines whether there is an overlap between the position of the tool TO1 at the first change point C1 and the position of the tool TO1 at the second change point C2 based on the measured results of the position of the tool TO1 with respect to the spindle rotation angle, and acquires a determination result E indicating "there is an overlap" or "there is no overlap" (step S108). The computer 100 sets in the determination result E information indicating "there is an overlap" when there is an overlap between the peaks and valleys with respect to the phase of the spindle 11 in the measured results of the tool position, and sets in the determination result E information indicating "there is no overlap" when there is no overlap between the peaks and valleys with respect to the phase of the spindle 11. Also, the computer 100 may display the measured results of the tool position with respect to the spindle phase on, for example, the display device 106 and acquire the determination result E by receiving an input of the determination result E from the operator.

[0074] Thereafter, the computer 100 stores the parameters of S, Fa, K, and R set in S102 and the determination result E acquired in S108 in the database DB (step S110). Since it is better to have more records in the database DB, the processes of S102 to S108 are repeated.

[0075] After information is stored in the database DB, the computer 100 generates a learned model LM in the RAM 103 by supervised machine learning based on the information stored in the database DB (step S112). As the learned model LM, a neural network, a Bayesian network, a learned model obtained by combining conversion formulas mainly including at least one of these, or the like can be used. When the learned model LM includes a neural network, learning may be advanced by a deep learning method. Note that since details of neural networks, Bayesian networks, deep learning, etc. are publicly known, the description thereof is omitted. The obtained learned model LM causes the computer 100 to function so as to determine the "number of spindle rotations K required for one idle stroke" and the "return amount R" that overlap the position of the tool TO1 at the first change point C1 and the second change point C2.

[0076] After generating the learned model LM, the computer 100 stores the learned model LM (step S114) and ends the learning process. When the machine body 2 uses the learned model LM, the computer 100 may transmit the learned model LM to the NC device 70. The NC device 70 that has received the learned model LM stores the learned model LM in the RAM 73, and thereby determines the "number of spindle rotations K required for one idle stroke" and the "return amount R" based on the "number of spindle rotations S per unit time" and the "normal cutting feed rate Fa" for the feed axis F1, and can control the position of the tool TO1 during the feed movement.

[0077] FIG. 12 shows an example of a vibration control process for determining the "number of spindle rotations K required for one idle stroke" and the "return amount R" for the feed axis F1 and controlling the position of the tool TO1 during the feed movement. This process is performed, for example, by the NC device 70 as the control unit U3. First, the NC device 70 acquires the "number of spindle revolutions S per unit time" and the "normal cutting feed rate Fa" during vibration feed along the feed axis F1 of the tool TO1 (step S202). The NC device 70 may acquire the parameters of S and Fa during vibration feed from the machining program PR2. Also, the NC device 70 may acquire the parameters of S and Fa by receiving an input of the parameters of S and Fa from the operator during vibration feed.

[0078] Next, the NC device 70 inputs the acquired "number of spindle revolutions S per unit time" and "normal cutting feed rate Fa" into the learned model LM, causing the learned model LM to output the "number of spindle revolutions K required for one idle stroke" and the "return amount R" (step S204). When the learned model LM is stored in the RAM 73, the NC device 70 can determine the parameters of K and R by executing the learned model LM itself. When the learned model LM is stored in the RAM 103 of the computer 100, the NC device 70 can acquire the parameters of K and R from the computer 100 by outputting the parameters of S and Fa to the computer 100 and requesting the output of the parameters of K and R. In this case, the computer 100 that has received the output request for the parameters of K and R may input the parameters of K and R into the learned model LM to cause the learned model LM to output the parameters of K and R and output these parameters of K and R to the NC device 70. As described above, the NC device 70 acquires the "number of spindle revolutions K required for one idle stroke" and the "return amount R" determined by executing the learned model LM with the "number of spindle revolutions S per unit time" and the "normal cutting feed rate Fa" as inputs.

[0079] After obtaining the parameters of K and R, the NC device 70 determines the cutting depth D, the speed F during the cutting movement of the tool TO1, and the speed B during the return movement of the tool TO1 for the feed axis F1 based on the "normal cutting feed rate Fa", the "number of spindle revolutions K required for one rapid traverse", and the "return amount R" (step S206). The cutting depth D and the speeds F and B can be determined according to the above-described formulas (1) to (6). After determining the cutting depth D and the speeds F and B, the NC device 70 controls the position during the feed movement of the tool TO1 for the feed axis F1 based on the cutting depth D and the speeds F and B (step S208), and ends the vibration control process. Note that the computer 100 may cooperate with the NC device 70 to perform the vibration control process.

[0080] When the "number of spindle revolutions S per unit time" and the "normal cutting feed rate Fa" change, the "number of spindle revolutions K required for one rapid traverse" and the "return amount R" for efficiently dividing the chips vary. By using the learned model LM generated by machine learning based on these parameters of S, Fa, K, R and the "judgment result E as to whether there is an overlap with the positions of the tool TO1 at the first change point C1 and the second change point C2", the "number of spindle revolutions K required for one rapid traverse" and the "return amount R" that cause an overlap with the positions of the tool TO1 at the first change point C1 and the second change point C2 can be determined based on the "number of spindle revolutions S per unit time" and the "normal cutting feed rate Fa". Thereby, the position during the feed movement of the tool TO1 can be controlled based on the "normal cutting feed rate Fa", the "number of spindle revolutions K required for one rapid traverse", and the "return amount R". Therefore, the examples shown in FIGS. 10 to 12 can generate the learned model LM that facilitates the setting of vibration cutting, and the setting of vibration cutting can be facilitated by using this learned model LM.

[0081] Furthermore, as illustrated in FIG. 13, the machine body 2 may generate a learned model LM by executing a machine learning program PR3. FIG. 13 schematically shows an example of the machine body 2 including a machine learning unit U4. In FIG. 13, descriptions and explanations of elements partially overlapping with FIG. 2 are omitted. An example of the structure of the database DB is shown at the lower part of FIG. 13. Since the database DB shown in FIG. 13 is the same as the database DB shown in FIG. 10, the description thereof is omitted.

[0082] In the ROM 72 of the NC device 70 shown in FIG. 13, a control program PR1 corresponding to the control unit U3 and a machine learning program PR3 corresponding to the machine learning unit U4 are written. In the RAM 73 of the NC device 70, a machining program PR2, a test program PR4, a database DB, and a learned model LM are stored. The learned model LM functions the computer 100 to determine the "number of spindle rotations K required for one dry run" and the "return amount R" that cause an overlap at the positions of the tool TO1 at the first change point C1 and the second change point C2.

[0083] The NC device 70 can perform learning processing according to steps S102, S106 to S114 shown in FIG. 11. When the learning process starts, the NC device 70 sets the parameters of S, Fa, K, and R in the test program PR4 (step S102). Next, the NC device 70 executes the test program PR4 and acquires from the NC device 70 the measured results of the tool position with respect to the spindle rotation angle on the feed axis F1 (step S106). Further, the NC device 70 determines whether there is an overlap between the position of the tool TO1 at the first change point C1 and the position of the tool TO1 at the second change point C2 based on the measured results of the tool position with respect to the spindle rotation angle, and acquires a determination result E indicating "there is an overlap" or "there is no overlap" (step S108). Thereafter, the NC device 70 stores the parameters of S, Fa, K, and R set in S102 and the determination result E acquired in S108 in the database DB (step S110). The processes of S102 to S108 are repeatedly performed. After information is accumulated in the database DB, the NC device 70 generates a learned model LM in the RAM103 by supervised machine learning based on the information stored in the database DB (step S112). After the generation of the learned model LM, the NC device 70 stores the learned model LM as necessary (step S114) and terminates the learning process. The storage location of the learned model LM may be any of the ROM72, a storage device (not shown) in the machine body 2, the storage device 104 of the computer 100, and the like. When the NC device 70 performs the vibration control process shown in FIG. 12, the vibration control process is performed with the learned model LM stored in the RAM73.

[0084] The example shown in FIG. 13 can generate a learned model LM that facilitates the setting of vibration cutting while suppressing cost increase, and by using this learned model LM, the setting of vibration cutting can be facilitated. The above-described machine learning unit U4 may be realized by the cooperation of the NC device 70 and the computer 100, and the above-described control unit U3 may also be realized by the cooperation of the NC device 70 and the computer 100.

[0085] (4) Modification example: Various modification examples of the present invention can be considered. For example, the feed axis on which the object to be driven moves is not limited to the X-axis or Y-axis, and may be the Z-axis or the like. The object to be driven that moves along the feed axis F1 is not limited to the tool TO1, and may be the spindle 11 that grips the workpiece W1, or may be both the tool TO1 and the spindle 11. When the object to be driven is the spindle 11, the NC device 70 may control the feed movement of the spindle 11 so as to be accompanied by vibration along the feed axis F1 during cutting of the workpiece W1. When the object to be driven is both the tool TO1 and the spindle 11, the NC device 70 may control the feed movements of both the tool TO1 and the spindle 11 so as to be accompanied by vibration along the feed axis F1 during cutting of the workpiece W1. The above-described processing can be appropriately changed, such as changing the order.

[0086] (5) Conclusion: As described above, according to the present invention, it is possible to provide a technology for a machine tool or the like that can easily set vibration cutting in various ways. Of course, the above-described basic operations and effects can also be obtained from the technology consisting only of the constituent elements according to the independent claims. In addition, configurations in which the respective configurations disclosed in the above-described examples are mutually replaced or the combinations are changed, known technologies, and configurations in which the respective configurations disclosed in the above-described examples are mutually replaced or the combinations are changed, etc. are also feasible. The present invention also includes these configurations and the like.

Explanation of Reference Numerals

[0087] 1... Machine tool, 2... Machine body, 10... Spindle headstock, 11... Spindle, 12... Gripping portion, 13A, 13B... Motors, 14... Spindle headstock drive unit, 20... Tool rest, 31, 32... Servo amplifiers, 33, 34... Servo motors, 35, 36... Encoders, 70... NC device, 100... Computer, 201... Tool position during normal cutting, 202... Tool position during vibration cutting, AX1... Spindle center line, C1... First change point, C2... Second change point, CM1…Vibration feed command, DB…Database, F1…Feed axis, LM…Trained model, M1…Infeed movement, M2…Return movement, P1…Current position, P2…End point, P3…Position, PR1…Control program, PR2…Processing program, PR3…Machine learning program, PR4…Test program, TO1…Tool, U1…Rotary drive unit, U2…Feed drive unit, U3…Control unit, U4…Machine learning unit, W1…Workpiece.

Claims

1. A rotation drive unit that rotates a spindle for gripping a workpiece, A feed drive unit that moves at least one of the tool for cutting the workpiece and the drive target of the spindle along a feed axis, A control unit that controls the feed movement of the drive target so as to include a vibration including a cutting movement in which the tool cuts into the workpiece along the feed axis during cutting of the workpiece and a return movement in the direction opposite to the cutting movement, The control unit, Obtains the feed speed (Fa) of the drive target during non-vibration, the number of revolutions (K) of the spindle required for one cycle of the vibration, and the return amount (R) that is the distance of the return movement in one cycle of the vibration, Based on the feed speed (Fa) of the drive target during non-vibration and the number of revolutions (K) of the spindle, determines the cutting amount (D) that is the distance by which the position of the drive target changes per cycle of the vibration, Under the condition of matching the phase of the spindle at the first change point where the cutting movement changes to the return movement in one cycle of the vibration and the phase of the spindle at the second change point where the return movement changes to the cutting movement in one cycle of the vibration, based on the feed speed (Fa) of the drive target during non-vibration, the number of revolutions (K) of the spindle, and the return amount (R), the distance by which the position of the drive target changes per cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R), determines the speed (F) of the drive target during the cutting movement and the speed (B) of the drive target during the return movement, A machine tool that controls the position of the drive target during the feed movement by matching the phase of the spindle at the first change point and the phase of the spindle at the second change point in accordance with the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement.

2. A rotation drive unit that rotates a spindle for gripping a workpiece, A feed drive unit that moves at least one of the tool for cutting the workpiece and the drive target of the spindle along a feed axis, A control unit that controls the feed movement of the drive target so as to include a cutting movement in which the tool cuts into the workpiece along the feed axis and a return movement in the direction opposite to the cutting movement during cutting of the workpiece, with vibration; A machine learning unit, and is provided with; The control unit is; Based on the feed speed (Fa) of the drive target when not vibrating and the number of revolutions (K) of the main shaft required for one cycle of the vibration, the cutting amount (D), which is the distance by which the position of the drive target changes per cycle of the vibration, is determined; Under the condition that the phase of the main shaft at the first change point where the cutting movement changes to the return movement and the phase of the main shaft at the second change point where the return movement changes to the cutting movement in one cycle of the vibration are made to coincide, based on the feed speed (Fa) of the drive target when not vibrating, the number of revolutions (K) of the main shaft, and the return amount (R), which is the distance of the return movement in one cycle of the vibration, the distance by which the position of the drive target changes per cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R), the speed (F) of the drive target during the cutting movement and the speed (B) of the drive target during the return movement are determined; According to the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement, the phases of the main shaft at the first change point and the main shaft at the second change point are made to coincide to control the position of the drive target during the feed movement; The machine learning unit generates a learned model that causes a computer to function so as to determine the rotational speed (K) of the main shaft and the return amount (R) that cause an overlap at the positions of the driven object at the first change point and the second change point, based on the rotational speed (S) of the main shaft per unit time, the feed rate (Fa) of the driven object when not vibrating, the rotational speed (K) of the main shaft, the return amount (R), and the determination result (E) as to whether or not there is an overlap between the position of the driven object at the first change point and the position of the driven object at the second change point, by machine learning based on the rotational speed (S) of the main shaft per unit time and the feed rate (Fa) of the driven object when not vibrating.

3. A rotary drive unit that rotates a main shaft for gripping a workpiece, A feed drive unit that moves at least one of the tool for cutting the workpiece and the driven object of the main shaft along a feed axis, A control unit that controls the feed movement of the driven object so as to include a cutting movement in which the tool cuts into the workpiece along the feed axis and a return movement in the opposite direction to the cutting movement during cutting of the workpiece, and that includes vibrations, The control unit, acquires the feed rate (Fa) of the driven object when not vibrating, the rotational speed (K) of the main shaft required for one cycle of the vibration, and the return amount (R) that is the distance of the return movement in one cycle of the vibration, receives an input of the cutting amount (D), which is the distance by which the position of the driven object changes per cycle of the vibration, or determines the cutting amount (D) based on the feed rate (Fa) of the driven object when not vibrating and the rotational speed (K) of the main shaft, Under the condition of matching the phase of the main shaft at the first change point where the cutting movement changes to the return movement in one cycle of the vibration and the phase of the main shaft at the second change point where the return movement changes to the cutting movement in one cycle of the vibration, based on the feed rate (Fa) of the drive target during non-vibration, the rotational speed (K) of the main shaft, and the return amount (R), the distance by which the position of the drive target changes per cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R). At least one of the speed (F) of the drive target during the cutting movement and the speed (B) of the drive target during the return movement is determined. When the speed (F) during the cutting movement is not determined, an input of the speed (F) during the cutting movement is received, and when the speed (B) during the return movement is not determined, an input of the speed (B) during the return movement is received. A machine tool that controls the position of the drive target during the feed movement by matching the phase of the main shaft at the first change point and the phase of the main shaft at the second change point according to the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement.

4. A rotational drive unit that rotates a main shaft for gripping a workpiece; A feed drive unit that moves at least one of the tool for cutting the workpiece and the drive target of the main shaft along a feed axis; A control unit that controls the feed movement of the drive target so as to include a cutting movement in which the tool cuts into the workpiece along the feed axis during cutting of the workpiece and a return movement in the opposite direction to the cutting movement, with vibration; And a machine learning unit. The control unit: Receives an input of the cutting amount (D), which is the distance by which the position of the drive target changes per cycle of the vibration, or determines the cutting amount (D) based on the feed rate (Fa) of the drive target during non-vibration and the rotational speed (K) of the main shaft required for one cycle of the vibration. Under the condition of matching the phase of the main shaft at the first change point where the cutting movement changes to the return movement in one cycle of the vibration and the phase of the main shaft at the second change point where the return movement changes to the cutting movement in one cycle of the vibration, based on the feed rate (Fa) when the driven object is not vibrating, the rotational speed (K) of the main shaft, and the return amount (R) which is the distance of the return movement in one cycle of the vibration, the distance by which the position of the driven object changes per cycle of the vibration becomes the cutting amount (D), and the distance of the return movement in one cycle of the vibration becomes the return amount (R). At least one of the speed (F) during the cutting movement of the driven object and the speed (B) during the return movement of the driven object is determined. When the speed (F) during the cutting movement is not determined, an input of the speed (F) during the cutting movement is received. When the speed (B) during the return movement is not determined, an input of the speed (B) during the return movement is received. According to the cutting amount (D), the speed (F) during the cutting movement, and the speed (B) during the return movement, the phases of the main shaft at the first change point and the second change point are made to coincide to control the position of the driven object during the feed movement. The machine learning unit generates a learned model that causes a computer to function so as to determine the rotational speed (K) of the main shaft and the return amount (R) that cause an overlap in the positions of the driven object at the first change point and the second change point based on the rotational speed (S) of the main shaft per unit time, the feed rate (Fa) when the driven object is not vibrating, the rotational speed (K) of the main shaft, the return amount (R), and the judgment result (E) as to whether there is an overlap between the position of the driven object at the first change point and the position of the driven object at the second change point, by machine learning based on the rotational speed (S) of the main shaft per unit time and the feed rate (Fa) when the driven object is not vibrating.

5. The control unit controls the difference in the rotational angle of the main shaft between the first change point and the second change point to 360° when the rotational speed (K) of the main shaft is greater than one rotation. The machine tool according to any one of claims 1 to 4.

6. The machine tool according to any one of claims 1 to 4, wherein when the denominator of the rotational speed (K) of the main spindle is an odd number of 3 or more and the numerator of the rotational speed (K) of the main spindle is 2, the control unit controls the difference in the rotational angle of the main spindle between the first change point and the second change point to be {(K / 2)×360}°.

Citation Information

Patent Citations

  • Control device for machine tool and machine tool

    JP2019028831A

  • Servo control device

    JP2020163487A

  • Machine tool and control apparatus for machine tool

    WO2016031897A1

  • Numerical control device, machine learning device, and numerical control method

    WO2020085437A1