Numerical control device and numerical control method

By determining the vibration end and generating the vibration waveform using the CNC device, the problem of excessive cutting in vibration cutting is solved, and efficient machining without machining defects is achieved.

CN121586872APending Publication Date: 2026-02-27MITSUBISHI ELECTRIC CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202380100158.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-31
Publication Date
2026-02-27

AI Technical Summary

Technical Problem

In vibration cutting, existing technologies can reduce the load on the working machinery but cannot avoid excessive cutting, leading to machining defects and reprocessing problems.

Method used

A CNC device is used to generate a vibration zone for vibration cutting through a vibration end determination unit and a vibration waveform generation unit, and vibration cutting is performed from the tool side space to avoid excessive cutting.

Benefits of technology

It enables vibration cutting without machining defects under various machining shapes, reducing the load on the working machinery.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121586872A_ABST
    Figure CN121586872A_ABST
Patent Text Reader

Abstract

A numerical control device (1) is provided with: a vibration end determination unit (4) that determines the vibration end of a tool on the basis of a movement direction vector (10) that indicates the movement direction of the tool before vibration is added, a blade edge vector (11) that indicates the orientation of the blade edge of the tool, and a vibration direction vector (12) that indicates a vibration direction that is a direction different from the movement direction vector (10); determining vibration end selection information (13) indicating whether the command position is the upper end or the lower end of the vibration so that the vibration region of the vibration cutting becomes the space on the tool side from the command position, which is the movement path of the tool before the vibration is added; and a vibration waveform generation unit (6) that generates a vibration waveform for performing vibration cutting on the basis of the vibration edge selection information (13).
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to a control device for a machine tool, i.e., a numerical control device, and a numerical control method. BACKGROUND

[0002] In cutting processing, a vibration cutting function is known, i.e., a cutting tool and a workpiece are relatively vibrated in a processing direction, thereby finely breaking a chip. In processing using the vibration cutting function, cutting processing is performed while alternately repeating an advancing action in the same direction as the processing direction and a retreating action in the opposite direction to the processing direction. The relative movement speed between the cutting tool and the workpiece during the advancing action, i.e., the relative movement speed, is higher than that during normal processing, i.e., non-vibration processing, in which the vibration cutting is not performed. Therefore, even if the retreating action is performed, the average relative movement speed after the advancing and retreating are totaled can be set to be equivalent to the relative movement speed during the non-vibration processing, thereby enabling the vibration cutting to be applied without changing the processing time, i.e., the productivity.

[0003] In the vibration cutting, as described above, since the advancing action and the retreating action are repeatedly performed at a high relative movement speed, the machine tool is excited. Therefore, in Patent Literature 1, in order to reduce the load on the machine tool, the amplitude of the oscillation required to shred the chip is calculated based on the angle of attack of the tool, the oscillation direction is decided in correspondence with the calculated amplitude of the oscillation, and the machine tool is vibrated in a direction different from the processing direction.

[0004] Patent Literature 1: International Publication No. 2022 / 269751 SUMMARY

[0005] However, in the technology of Patent Literature 1, there is a problem that, if the machine tool is vibrated in a direction different from the processing direction in order to reduce the load on the machine tool, in a tapered shape or a curved shape that slopes downward, it is not possible to avoid an excess of cutting into the workpiece. The excess of cutting refers to an excessive cutting into the workpiece with respect to a desired shape. If the excess of cutting occurs, a processing defect occurs, and there are problems such as reprocessing, workpiece disposal, and the like.

[0006] The present application has been made in view of the above problems, and aims to obtain a numerical control device in which a processing defect does not occur regardless of the shape of the processing, and vibration cutting in which the load on the machine tool can be reduced is realized.

[0007] To solve the above problems, to achieve the object, the numerical control device of the present application uses a tool to perform vibration cutting of a workpiece. The numerical control device has: a vibration end determination section that determines vibration end selection information indicating whether to set a command position as an upper end or a lower end of vibration, based on a movement direction vector indicating a movement direction of the tool before an additional vibration, a tool tip vector indicating an orientation of a tool tip of the tool, and a vibration direction vector indicating a direction different from the movement direction vector, i.e., a vibration direction, so that a vibration region of the vibration cutting becomes a space on the tool side from a movement path of the tool before the additional vibration, i.e., the command position; and a vibration waveform generation section that generates a vibration waveform for performing the vibration cutting based on the vibration end selection information.

[0008] Effects of the Invention

[0009] According to the numerical control device of the present application, it is possible to achieve vibration cutting that can reduce the load on the machine tool without causing processing defects regardless of the processing shape. BRIEF DESCRIPTION OF DRAWINGS

[0010] Figure 1 is a block diagram showing the structure of the numerical control device according to Embodiment 1.

[0011] Figure 2 is a diagram showing the positional relationship between the tool tip vector and the workpiece used in the numerical control device according to Embodiment 1.

[0012] Figure 3 is a diagram showing one example of the tool tip vector used in the numerical control device according to Embodiment 1.

[0013] Figure 4 is an explanatory diagram of a method of deriving the inflection point used in the numerical control device according to Embodiment 1.

[0014] Figure 5 is an explanatory diagram of another method of deriving the inflection point used in the numerical control device according to Embodiment 1.

[0015] Figure 6 is an explanatory diagram of another method of deriving the inflection point used in the numerical control device according to Embodiment 1.

[0016] Figure 7 is a timing chart for explaining the operation of the vibration waveform generation section of the numerical control device according to Embodiment 1.

[0017] Figure 8 is another timing chart for explaining the operation of the vibration waveform generation section of the numerical control device according to Embodiment 1.

[0018] Figure 9 is a diagram showing the relationship between the movement direction and the vibration direction in the numerical control device according to Embodiment 1.

[0019] Figure 10 is a graph showing a relationship between a moving direction and a vibration direction in the numerical control device according to Embodiment 1.

[0020] Figure 11 is another timing chart for explaining an operation of the vibration waveform generating section of the numerical control device according to Embodiment 1.

[0021] Figure 12 is another timing chart for explaining an operation of the vibration waveform generating section of the numerical control device according to Embodiment 1.

[0022] Figure 13 is a graph showing a vibration amplitude in a case where the upper end is selected in the numerical control device according to Embodiment 1.

[0023] Figure 14 is a graph showing a vibration amplitude in a case where the lower end is selected in the numerical control device according to Embodiment 1.

[0024] Figure 15 is a timing chart for explaining a calculation order of the other vibration waveform in the numerical control device according to Embodiment 1.

[0025] Figure 16 is a graph for explaining an operation of the vibration end deciding section of the numerical control device according to Embodiment 1.

[0026] Figure 17 is another graph for explaining an operation of the vibration end deciding section of the numerical control device according to Embodiment 1.

[0027] Figure 18 is a graph showing a positional relationship between the tool and the work in the numerical control device according to Embodiment 1.

[0028] Figure 19 is a graph showing another positional relationship between the tool and the work in the numerical control device according to Embodiment 1.

[0029] Figure 20 is a graph showing a correspondence relationship between a moving direction of the X axis, a moving direction of the Z axis, a vibration direction, and a position of a vibration region in the numerical control device according to Embodiment 1.

[0030] Figure 21 is a graph for explaining an operation of the path dividing section of the numerical control device according to Embodiment 1.

[0031] Figure 22 is a block diagram showing a structure of the numerical control device according to Embodiment 2.

[0032] Figure 23is a view for explaining a method of determining a vibration direction vector in the numerical control device according to Embodiment 2.

[0033] Figure 24 is a block diagram showing a structure of the numerical control device according to Embodiment 3.

[0034] Figure 25 is a view for explaining a waveform switching region used in the switching notification section of the numerical control device according to Embodiment 3.

[0035] Figure 26 is another view for explaining a waveform switching region used in the switching notification section of the numerical control device according to Embodiment 3.

[0036] Figure 27 is a view showing a hardware structure example of the numerical control device according to Embodiments 1 to 3. DETAILED DESCRIPTION

[0037] Hereinafter, the numerical control device and the numerical control method according to the embodiments will be described in detail based on the drawings.

[0038] Embodiment 1

[0039] Figure 1 is a block diagram showing a structure of the numerical control device 1 according to Embodiment 1. The numerical control device 1 has a program analysis section 2, a path division section 3, a vibration end determination section 4, a motion command generation section 5, a vibration waveform generation section 6, and a motion command output section 7.

[0040] The program analysis section 2 analyzes a machining program and creates information required for the motion command generation section 5 to generate a motion command. As the information required for the motion command generation section 5 to generate a motion command, there are included coordinate values of start end points (a start point and an end point) defining a relative movement path between a tool and a workpiece, an interpolation method (linear interpolation, circular interpolation, or the like) of a movement path connecting the start end points, a feed speed at the time of movement, a rotational speed of a spindle, a rotational direction of the spindle, and the like. Further, information designating whether or not vibration cutting is effective, or information designating a shape of a vibration waveform can be included. As the information designating the shape of the vibration waveform, there can be cited a vibration frequency, a vibration amplitude, a number of vibrations per unit rotation, a vibration waveform shape, and the like. Further, as the information designating the shape of the vibration waveform, it is not necessary to designate all of them, and a part of them can be omitted.

[0041] In addition, the program analysis section 2 calculates a movement direction vector 10. The movement direction vector 10 is a vector indicating the direction of the movement path of the tool before the vibration is superimposed. More specifically, in one line (hereinafter, referred to as one block) described in the machining program, the vector connecting the start point and the end point of the movement block in which the movement of the tool is described is the movement direction vector 10. The movement direction vector 10 can be a vector simply from the start point to the end point of the movement block, or a vector normalized to 1 in order to compare with other vectors. The machining program can be, for example, a string in the EIA (Electronic Industries Alliance) / ISO (International Organization for Standardization) format, or a program in a structure including information such as the shape of the workpiece, the machined shape, and the machining dimensions, which is called a conversational program.

[0042] The action instruction generation section 5 generates an action instruction for causing the machine tool to perform the desired action, based on the information created by the program analysis section 2. In the action instruction, a movement instruction for the drive shaft of the machine tool, a rotation instruction for the spindle, and the like, which are used to realize the relative movement path between the workpiece and the tool, that is, the command position, are included. In addition, the movement instruction does not have the vibration component in the vibration cutting added thereto. The movement instruction is a command for the movement path described in the machining program, which is used to realize the desired shape.

[0043] The action instruction output section 7 outputs the action instruction generated by the action instruction generation section 5 to the servo motor and the spindle motor possessed by the machine tool that is the control target. Thereby, the machine tool realizes the desired action described in the machining program. In addition, a servo amplifier that controls the servo motor, a spindle amplifier that controls the spindle motor can be interposed between the action instruction output section 7 and the machine tool, in which case the action instruction output section 7 outputs the action instruction to these amplifiers.

[0044] The above is the general action of the structural elements of the numerical control device 1 regardless of whether the vibration cutting is performed or not. Next, the vibration end decision section 4, the vibration waveform generation section 6, and the path division section 3 will be described in order.

[0045] The vibration end decision section 4 generates vibration end selection information 13 in the vibration waveform based on the movement direction vector 10, the tool tip vector 11, and the vibration direction vector 12. The vibration end selection information 13 is information indicating whether the movement path of the tool before the vibration is added, that is, the command position, is set as the upper end (upper dead point) or the lower end (lower dead point) of the vibration. The definitions of the upper end and the lower end of the vibration will be described later. The vibration end decision section 4 decides the vibration end selection information 13 in such a manner that the vibration region of the vibration cutting becomes the space on the tool side from the command position.

[0046] The tool tip vector 11 is a vector indicating which direction the tool tip of the tool is facing. Figure 2 is a diagram indicating the positional relationship between the tool tip vector 11 used in the numerical control device 1 related to Embodiment 1 and the workpiece W. Figure 3 is a diagram indicating one example of the tool tip vector 11 used in the numerical control device 1 related to Embodiment 1. In Figure 2 one example of the positional relationship among the tool T, the tool tip vector 11, and the workpiece W is shown. In Figure 3 an example in which the direction of the tool tip vector 11 is expressed as eight vector directions V1 to V8 is shown. Details of the vector directions V1 to V8 are described later. In addition, the tool tip vector 11 can also be expressed as a continuous numerical angle or vector information. The tool tip vector 11 can be set as a part of the information of the tool T, or can be calculated or selected in correspondence with the angle of the drive shaft holding the tool T.

[0047] The vibration direction vector 12 is a vector indicating which direction the relative vibration action between the workpiece W and the tool T caused by the vibration cutting is facing in the space. As for the coordinate system serving as the reference of the vector, although it is easy to understand that the direction along the drive shaft of the machine tool is set as the reference axis, a coordinate system of an arbitrary direction in the space can also be adopted. Here, for the sake of convenience of explanation, the orthogonal machine coordinate system along the drive 3 axes, i.e., the X axis, the Y axis, and the Z axis, which become the basis of the machine tool, is considered. The explanation is made with the X axis direction set as the up-down direction and the Z axis direction set as the left-right direction.

[0048] For example, the vibration direction vector 12 can be decided in correspondence with the content of the machining program. Specifically, the vibration direction vector 12 can be decided with reference to the setting specified by the parameters or the like within the machining program, or can be decided by rotating at a specific angle with respect to the movement direction. In the aforementioned setting specified by the parameters or the like, since the axis used for the vibration in the vibration cutting is designated within the machining program, the vibration direction vector 12 is decided to be along the direction of the axis. In addition, the vibration direction vector 12 can be decided with reference to the parameters or the like in correspondence with the action content of the machining program, or can be changed in correspondence with the acceleration or the load condition of the drive shaft or the like.

[0049] Next, the vibration waveform generation section 6 is described. The vibration waveform generation section 6 has a generation section 16 and a superimposition section 17. The generation section 16 generates the waveforms of the movement path and the vibration waveforms based on the information created by the program analysis section 2 and the action command generated by the action command generation section 5.

[0050] The superimposition section 17 superimposes the waveform of the movement path generated by the generation section 16 and the vibration waveform based on the vibration end selection information 13, thereby generating a final vibration waveform for realizing the machining implemented by the vibration cutting, and outputs the final vibration waveform as an action command to the action command output section 7. Further, details of the method of generating the vibration waveform will be described later.

[0051] The path division section 3 divides the movement path analyzed in the program analysis section 2 by the inflection point a, and calculates the movement direction vector 10 for each of the divided paths.

[0052] Figure 4 is a diagram for explaining a method of deriving the inflection point a used in the numerical control device 1 related to Embodiment 1. The inflection point a is derived by Figure 4 The inflection point a will be described. The inflection point a is a point at which the movement direction of any one or more of the axes included in the movement is reversed in the action of one movement block. The inflection point a does not occur in the movement of a straight line, and can occur in the movement of a curved path represented by a circular arc. At the inflection point a, the movement direction of the axis that becomes the object is reversed, and thus the inflection point a can be detected based on the zero-crossing at which the speed of the axis that generates the speed via 0 becomes the speed of the opposite sign.

[0053] In Figure 4 The first drawing of FIG. 1 shows the relative movement path G of the tool T with respect to the workpiece W in the X-axis direction and the Z-axis direction. Further, in the present specification, the nth drawing means the nth drawing from the top. Figure 4 The horizontal axis after the second drawing of FIG. 1 represents time. Figure 4 The vertical axis after the second drawing of FIG. 1 represents the position of the tool T in the Z-axis direction, the speed of the tool T in the Z-axis direction, the position of the tool T in the X-axis direction, and the speed of the tool T in the X-axis direction in this order from top to bottom. Figure 4 In the movement path G of FIG. 1, the inflection point a at which the speed of the X-axis crosses zero is present.

[0054] In addition, in the curved movement path G, the inflection point a can also be detected by comparing the tangent vector at the start point and the tangent vector at the end point. Figure 5 is a diagram for explaining another method of deriving the inflection point a used in the numerical control device 1 related to Embodiment 1. Figure 6 is a diagram for explaining another method of deriving the inflection point a used in the numerical control device 1 related to Embodiment 1. Figure 5 shows the movement path G including the inflection point a, Figure 6The following describes a movement path G that does not contain an inflection point α. In this method, the components of each axis of the tangent vector Sv at the starting point S are compared with the components of each axis of the tangent vector Ev at the ending point E. If the signs of the two components are the same, it is determined that the axis does not contain an inflection point α in the movement path G. Conversely, if the signs of the two components are different, it is determined that the axis contains an inflection point α in the movement path G.

[0055] exist Figure 5 In the case of [condition], the X-axis component of the tangent vector Sv at the starting point S is positive, and the Z-axis component is negative; the X-axis component of the tangent vector Ev at the ending point E is negative, and both the X-axis and Z-axis components are negative. Figure 5 In this case, the sign of the X-axis component of the tangent vector Sv at the starting point S is reversed compared to the sign of the X-axis component of the tangent vector Ev at the ending point E, which indicates that the inflection point α is included. Figure 6 In the case of [condition], the X-axis component of the tangent vector Sv at the starting point S is positive, and the Z-axis component is positive; similarly, the X-axis component of the tangent vector Ev at the ending point E is positive, and the Z-axis component is positive. Figure 6 In the case where the signs of the axial components of the tangent vector Sv at the starting point S are consistent with the signs of the axial components of the tangent vector Ev at the ending point E, it can be determined that it does not contain the inflection point α.

[0056] Next, the method for generating a vibration waveform executed by the vibration waveform generation unit 6 will be described. As described above, the elements that determine the shape of the vibration waveform are vibration amplitude, vibration frequency, and vibration waveform shape.

[0057] Vibration amplitude represents the interval between the upper and lower ends of a vibration waveform. For example, the vibration amplitude itself can be specified as a string in the machining program, or it can be specified as a fixed ratio (called the feed amplitude ratio) relative to the feed rate of the tool T in the machining program, which determines the vibration amplitude in relation to the feed rate.

[0058] Vibration frequency indicates the number of vibrations per unit time. For example, the vibration frequency can be specified directly as a string in the machining program, or it can be determined based on the spindle speed or the feed rate of the tool T. Alternatively, the vibration frequency corresponding to the spindle speed can be determined by specifying the number of vibrations during one revolution of the spindle, and conversely, the number of spindle rotations per vibration can be specified. These values ​​can be directly specified as strings in the machining program, or selected from parameters corresponding to machining conditions.

[0059] The shape of the vibration waveform indicates the type of vibration waveform, such as triangular wave, sine wave, cosine wave, and rectangular wave. The shape of the vibration waveform can be specified directly as a string in the machining program, or it can be set using parameter values. Regarding vibration amplitude, vibration frequency, and vibration waveform shape, only these elements need to be determined; there are no particular restrictions on the method of determination.

[0060] The specific calculation order for vibration waveforms will be explained below. First, the case of triangular waves will be explained.

[0061] Figure 7 This is a timing diagram illustrating the operation of the vibration waveform generation unit 6 of the CNC device 1 according to Embodiment 1. Figure 7 The diagram shows a movement path where only the Z-axis is used. Figure 7 The diagram shows the movement path, which includes two moving blocks, B1 and B2. Figure 7 The horizontal axis of each graph represents time. Figure 7 The vertical axis of each figure, from top to bottom, shows the Z-axis position of the forward and backward positions of the movement path, the difference between the forward and backward positions, the amplitude of the reference vibration waveform, the amount of movement of the vibration waveform with only the vibration component, and the Z-axis position of the final vibration waveform.

[0062] like Figure 7 As shown in the first figure, the generation unit 16 of the vibration waveform generation unit 6 uses the movement commands and vibration amplitudes of each axis contained in the movement blocks B1 and B2, which are the objects of calculation, to generate two movement paths: a forward position and a backward position. The backward position is a path that delays the forward position by a time corresponding to the vibration amplitude or by a spindle speed corresponding to the vibration amplitude, so as to ensure the specified vibration amplitude. Here, the time axis is considered as an example, but the vibration waveform can also be calculated using the same calculation method when the spindle speed is considered as the reference axis.

[0063] Next, as Figure 7 As shown in the third figure, the generation unit 16 generates a reference vibration waveform using the vibration frequency and the shape of the vibration waveform. The amplitude of the reference vibration waveform is 1. By multiplying this reference vibration waveform by... Figure 7 The difference between the forward and backward positions shown in the second figure generates... Figure 7 The fourth figure shows a vibration waveform consisting only of the vibration component.

[0064] Next, the superimposed section 17 will... Figure 7 The fourth figure shows the vibration waveform of only the vibration component superimposed on... Figure 7 The first figure shows a movement path that includes forward and backward positions without vibration components, thus generating... Figure 7The final vibration waveform is shown in the fifth figure.

[0065] Figure 7 This is another timing diagram used to illustrate the operation of the vibration waveform generation unit 6 of the CNC device 1 according to Embodiment 1. Figure 8 The diagram shows the movement paths along the X and Z axes. Figure 8 The diagram shows the vibration paths corresponding to the two moving blocks, including moving block B1 and moving block B2. Figure 8 The horizontal axis of each graph represents time. Figure 8 The vertical axes of each figure, arranged from top to bottom, show the Z-axis position of the forward and backward positions of the movement path, the amount of movement of the vibration waveform of the vibration component only, the Z-axis position of the final vibration waveform, the X-axis position of the forward and backward positions of the movement path, the amount of movement of the vibration waveform of the vibration component only, and the X-axis position of the final vibration waveform.

[0066] like Figure 8 As shown, when the movement path includes multiple axes, the vibration waveform generation unit 6 can also generate a vibration waveform by performing the same calculations on multiple axes. Figure 8 In the process, only the Z-axis moves in the movement block B1, while both the Z-axis and X-axis move in the movement block B2.

[0067] Generation section 16 first as follows Figure 8 As shown in the first figure, using the Z-axis movement commands and vibration amplitudes contained in the movement blocks B1 and B2, which are the objects of the calculation, two movement paths are generated: a forward position and a backward position along the Z-axis. Next, as... Figure 8 As shown in the second figure, the generation unit 16 generates a vibration waveform of the Z-axis with only the vibration component by multiplying the difference between the forward and backward positions about the Z-axis by a reference vibration waveform of the Z-axis generated using the vibration frequency and vibration waveform shape. Next, as... Figure 8 As shown in the third figure, the superimposed portion 17... Figure 8 The second figure shows the vibration waveform of the Z-axis with only the vibration component superimposed on... Figure 8 The first figure shows the Z-axis movement path, which includes forward and backward positions without vibration components, thereby generating the final vibration waveform about the Z-axis.

[0068] Similarly, such as Figure 8 As shown in Figure 4, the generation unit 16 uses the X-axis movement command and vibration amplitude to generate two movement paths: a forward position and a backward position along the X-axis. Next, as... Figure 8As shown in Figure 5, the generation unit 16 generates an X-axis vibration waveform consisting only of the vibration component by multiplying the difference between the forward and backward positions along the X-axis by a reference vibration waveform of the X-axis generated using the vibration frequency and vibration waveform shape. Next, as... Figure 8 As shown in Figure 6, the superposition unit 17 generates the final vibration waveform about the X-axis by superimposing the vibration waveform of the X-axis with only the vibration component onto the movement path of the X-axis, which includes the forward and backward positions without vibration components.

[0069] Here, in Embodiment 1, the load on the working machine is reduced by making the vibration direction different from the movement direction. By changing the ratio of the vibration amplitudes between multiple shafts relative to the ratio between multiple shafts on the movement path, the vibration direction can be changed relative to the movement direction. Figure 9 This is a diagram showing the relationship between the direction of movement and the direction of vibration in the numerical control device 1 according to Embodiment 1. Figure 10 This is a diagram showing the relationship between the direction of movement and the direction of vibration in the CNC device 1 according to Embodiment 1. Figure 9 , Figure 10 In the diagram, the vertical axis represents the X-axis position, and the horizontal axis represents the Z-axis position. Figure 9 In the moving block B2, the ratio of the vibration amplitude in the X-axis direction to the vibration amplitude in the Z-axis direction is made consistent with the ratio of the X-axis component to the Z-axis component in the moving path, and the vibration direction is consistent with the moving direction. Figure 10 In the moving block B2, the ratio of the vibration amplitude in the X-axis direction to the vibration amplitude in the Z-axis direction is different from the ratio of the X-axis component to the Z-axis component in the moving path, resulting in an inconsistency between the vibration direction and the moving direction. Figure 10 In this case, increasing the vibration amplitude in the Z-axis direction and decreasing the vibration amplitude in the X-axis direction is called moving closer to the Z-axis. Conversely, decreasing the vibration amplitude in the Z-axis direction and increasing the vibration amplitude in the X-axis direction is called moving closer to the X-axis.

[0070] Changing the direction of vibration relative to the direction of movement can also be achieved by vibrating only a single axis among the multiple axes contained in the movement path. In this case, for example, as... Figure 11 or Figure 12 That generates a vibration waveform. Figure 11 , Figure 12 In the middle, within the moving block B2, the Z-axis and X-axis move, but only the X-axis vibrates. Figure 11 The image shows the case where the upper end was selected during X-axis vibration. Figure 12 The image shows the case where the lower end was selected during X-axis vibration.

[0071] Figure 11This is another timing diagram used to illustrate the operation of the vibration waveform generation unit 6 of the CNC device 1 according to Embodiment 1. Figure 11 In, with Figure 8 Similarly, in movement block B1, only the Z-axis is used for movement, while in movement block B2, both the Z-axis and X-axis are used for movement. Figure 11 The horizontal axis of each graph represents time. Figure 11 The vertical axes of each figure, arranged from top to bottom, show the Z-axis position of the forward and backward positions of the movement path, the amount of movement of the vibration waveform of the vibration-only component in movement block B1, the Z-axis position of the final vibration waveform, the X-axis position of the forward and backward positions of the movement path, the amount of movement of the vibration waveform of the vibration-only component in movement block B2, and the X-axis position of the final vibration waveform.

[0072] Generation section 16 first as follows Figure 11 As shown in the first figure, using the Z-axis movement command and vibration amplitude contained in the movement block B1, two movement paths are generated regarding the forward and backward positions of the Z-axis in the movement block B1. Additionally, regarding the movement block B2, the generation unit 16 generates a movement path only for the forward position of the Z-axis. Next, as... Figure 11 As shown in the second figure, the generation unit 16 uses the vibration frequency and vibration waveform shape to generate a vibration waveform along the Z-axis with only the vibration component related to the moving block B1, in the same manner as described above. Next, as... Figure 11 As shown in the third figure, the superposition unit 17 generates the final vibration waveform about the Z-axis by superimposing the vibration waveform of the Z-axis component (which is the only vibration component) onto the movement path about the Z-axis of the moving blocks B1 and B2, which includes the forward position and the backward position.

[0073] Similarly, such as Figure 11 As shown in Figure 4, the generation unit 16 uses the X-axis movement command and vibration amplitude to generate two movement paths: a forward position and a backward position on the X-axis within the movement block B2. In this case, the upper end of the X-axis vibration is selected, and the forward position coincides with the commanded position. The backward position becomes a trajectory offset from the commanded position in the direction of the time delay. Next, as... Figure 11 As shown in Figure 5, the generation unit 16 uses the vibration frequency and vibration waveform shape to generate a vibration waveform along the X-axis of the vibration component only for the moving block B2, as described above. Next, as... Figure 11 As shown in Figure 6, the superposition unit 17 generates the final vibration waveform about the X-axis by superimposing the vibration waveform of the X-axis component alone onto the movement path about the X-axis of the moving block B2, which includes the forward position and the backward position.

[0074] Figure 12This is another timing diagram used to illustrate the operation of the vibration waveform generation unit 6 of the numerical control device 1 according to Embodiment 1. Figure 12 The content represented by the horizontal and vertical axes of each graph is the same as... Figure 11 same. Figure 12 The actions of the generation part 16 and the superposition part 17 involved in the first to third figures are related to... Figure 11 The situation is the same. For example... Figure 12 As shown in Figure 4, the generation unit 16 uses the X-axis movement command and vibration amplitude to generate two movement paths: a forward position and a backward position on the X-axis within the movement block B2. In this case, the lower end of the X-axis vibration is selected, and the backward position coincides with the commanded position. The forward position becomes a trajectory that shifts from the commanded position in the direction of time advancement by the amount of vibration amplitude. Next, as... Figure 12 As shown in Figure 5, the generation unit 16 uses the vibration frequency and vibration waveform shape to generate a vibration waveform along the X-axis of the vibration component only for the moving block B2, as described above. Next, as... Figure 12 As shown in Figure 6, the superposition unit 17 generates the final vibration waveform about the X-axis by superimposing the vibration waveform of the X-axis component alone onto the movement path about the X-axis of the moving block B2, which includes the forward position and the backward position.

[0075] Figure 13 This is a diagram showing the vibration amplitude when the upper end is selected in the numerical control device 1 according to Embodiment 1. Figure 14 This is a diagram showing the vibration amplitude when the lower end is selected in the numerical control device 1 according to Embodiment 1. Figure 13 Shown in Figure 11 The vibration waveform shown represents the vibration amplitude in the X-axis direction when the upper part of the X-axis vibration is selected. The horizontal axis represents the Z-axis position, and the vertical axis represents the X-axis position. Figure 14 Shown in Figure 12 The vibration waveform shown represents the vibration amplitude in the X-axis direction when the lower end of the X-axis vibration is selected. The horizontal axis represents the Z-axis position, and the vertical axis represents the X-axis position.

[0076] like Figure 13 As shown, when the upper end is selected during vibration, vibration occurs in the region returning from the direction of travel of the shaft relative to the commanded position. That is, vibration occurs with the upper end of the vibration positioned on the commanded trajectory. Figure 14 As shown, when the lower end is selected during vibration, vibration occurs in the region advancing in the direction of the axis's travel, relative to the command trajectory. That is, vibration occurs with the lower end of the vibration located on the command trajectory.

[0077] Furthermore, the calculation order of vibration waveforms can also be different from the methods mentioned above. Taking the case of cosine waves as an example, the calculation order of different vibration waveforms will be explained. Figure 15 It is a timing diagram used to explain the calculation sequence of other vibration waveforms in the numerical control device 1 according to Embodiment 1. Figure 15 The horizontal axis of each graph represents time. Figure 15 The figures are arranged from top to bottom, showing the positive (+) reference vibration waveform, the negative (-) reference vibration waveform, the position command, the vibration waveform when the lower end is selected, and the vibration waveform when the upper end is selected.

[0078] The vibration waveform generation unit 6 generates a reference vibration waveform based on the vibration frequency and the vibration end selection information 13 determined by the vibration end determination unit 4. At this time, the selection is set as follows: Figure 15 The waveform shown in the first figure oscillates between 0 and 1, or is set as follows: Figure 15 The waveform shown in the second figure, which oscillates between -1 and 0, is synonymous with setting the command position to the lower or upper end.

[0079] After multiplying the vibration amplitude corresponding to the vibration condition by the reference vibration waveform, similar to the aforementioned triangular wave case, in the superposition unit 17, a vibration waveform is generated by superimposing the reference vibration waveform multiplied by the vibration amplitude onto the action commands of each axis. Relative to... Figure 15 The position command shown in the third figure generates the following when the lower end is selected: Figure 15 The vibration waveform shown in Figure 4, when the upper end is selected, generates... Figure 15 The vibration waveform is shown in the fifth figure.

[0080] Next, the method for selecting the vibration end performed by the vibration end determination unit 4 will be explained. In Embodiment 1, in order to solve the problems of the prior art, when the tool T vibrates relative to the workpiece W in vibratory cutting, the vibration area is arranged on the tool T side of the movement path G, and not on the workpiece W side. The vibration area refers to the area sandwiched between the forward and backward positions of the commanded position. That is, the vibration operation is always performed on the tool T side and not on the workpiece W side relative to the movement path of the tool T described in the machining program. To achieve this objective, in the vibration end determination unit 4, the positional relationship between the tool T and the workpiece W is determined based on the tool tip vector 11 and the movement direction vector 10, and the positional relationship between the vibration area and the movement path G is determined based on the vibration direction vector 12 and the movement direction vector 10.

[0081] To make the explanation easier to understand and more intuitive, we will use the XZ plane as an example, viewed from the Y-axis. However, without the limitations imposed by the viewpoint, the explanation can be adapted to fit any viewpoint, even if the viewpoint and coordinate system change.

[0082] Figure 16 This is a diagram used to illustrate the operation of the vibration end determination unit 4 of the numerical control device 1 according to Embodiment 1. Figure 17 This is another diagram illustrating the operation of the vibration end determination unit 4 of the CNC device 1 according to Embodiment 1. Figure 16 , Figure 17 In the diagram, the XZ plane is divided into two regions by the movement path G. These two regions are referred to as the upper and lower sides, or the left and right sides, with the movement path G as their boundary. Figure 16 In the diagram, workpiece W is roughly located below the movement path G, while tool T (not shown) is located above the movement path G. Figure 17 In the diagram, the workpiece W is roughly located above the movement path G, and the tool T (not shown) is located below the movement path G.

[0083] Figure 18 This is a diagram showing the positional relationship between the cutting tool T and the workpiece W in the CNC device 1 according to Embodiment 1. Figure 19 This is a diagram showing another positional relationship between the tool T and the workpiece W in the CNC device 1 according to Embodiment 1. Figure 18 Corresponding to Figure 16 The positional relationship between the movement path G and the workpiece W is shown. Figure 19 Corresponding to Figure 17 The positional relationship between the movement path G and the workpiece W is shown. Figure 18 In this case, the tool T contacts the workpiece W from the +X axis direction to perform machining, which is equivalent to the normal machining situation. Figure 19 In this case, the tool T contacts the workpiece W from the -X axis direction to perform machining, for example, the kind of machining that is performed by the tool T which is used for internal diameter machining or lower tool post machining.

[0084] To determine the positional relationship between the workpiece W and the tool T, tool tip vector 11 is used. For example, when tool tip vector 11 is... Figure 3 When the vector directions are V3, V4, and V8, the tool tip of the tool T points downwards. Therefore, it can be determined that the workpiece W is located on the lower side and the tool T is located on the upper side. Furthermore, when the tool tip vector is 11... Figure 3 When the vector directions are V1, V2, and V6, the tool tip of the tool T points upwards, thus indicating that the workpiece W is on the upper side and the tool T is on the lower side. Furthermore, when the tool tip vector 11 is in the direction of V1, V4, or V5, it can be determined that the workpiece W is on the right and the tool T is on the left. When the tool tip vector 11 is in the direction of V2, V3, or V7, it can be determined that the workpiece W is on the left and the tool T is on the right.

[0085] Therefore, the positional relationship between the workpiece W and the tool T can be determined through the tool tip vector 11. Furthermore, even when the tool tip vector 11 is treated as an angle or vector value instead of a number, the same approach can be used to determine the positional relationship between the workpiece W and the tool T. Additionally, the same approach can be applied when the definition of the viewpoint or the tool tip vector number changes, by appropriately renaming it according to the situation.

[0086] Next, the relationship between the vibration direction vector 12 and the movement direction vector 10 will be explained. For example... Figure 9 As shown in the example, when vibrating along the direction of the movement path, the ratio of the axes of the movement direction vector 10 is the same as the ratio of the axes of the vibration direction vector 12. If the ratio of the axes of the vibration direction vector 12 is changed, the vibration direction becomes a direction different from the movement path. Figure 10 The example can also be used to determine which side the vibration direction of the vibration direction vector 12 is facing relative to the movement path; that is, it is determined to be facing the side of the axis with the increased ratio relative to the inter-axis ratio of the movement direction vector 10. Figure 10 In the case of the same direction, the interaxial ratio of the X-axis and Z-axis of the movement direction vector 10 is the same, but the vibration amplitude in the Z-axis direction is larger than that in the X-axis direction. The vibration direction vector 12 is close to the horizontal axis and close to the Z-axis.

[0087] like Figure 11 or Figure 12 As shown, by making only a single axis among the multiple axes contained in the movement path vibrate, it is possible to imagine that the ratio of the Z-axis direction is 0 and the ratio of the X-axis direction is 100%, close to the X-axis, when the vibration direction is different from the movement direction.

[0088] As described above, in the vibration end determination unit 4, by comparing the movement direction vector 10 with the vibration direction vector 12, it is possible to determine whether the vibration direction is above or below the movement path, or to the right or left.

[0089] Figure 20 This is a diagram showing the correspondence between the X-axis movement direction, the Z-axis movement direction, the vibration direction, and the position of the vibration region in the CNC device 1 according to Embodiment 1. Figure 20 In the diagram, the correspondence when the upper end is selected in the initial state is shown as the vibration end. The position of the vibration area indicates whether the vibration area is above or below the movement path. The vibration end determination unit 4 has a set... Figure 20 The table showing the correspondence is a storage table.

[0090] exist Figure 20For example, if the X-axis movement direction determined by the movement direction vector 10 is positive, the Z-axis movement direction is negative, and the vibration direction determined by the vibration direction vector 12 is close to the X-axis, it indicates that the vibration area is located below the movement path. Conversely, if the X-axis movement direction determined by the movement direction vector 10 is positive, the Z-axis movement direction is negative, and the vibration direction determined by the vibration direction vector 12 is close to the Z-axis, it indicates that the vibration area is located above the movement path. Similarly, if the X-axis movement direction determined by the movement direction vector 10 is negative, the Z-axis movement direction is positive, and the vibration direction determined by the vibration direction vector 12 is close to the X-axis, it indicates that the vibration area is located above the movement path. Finally, if the X-axis movement direction determined by the movement direction vector 10 is negative, the Z-axis movement direction is positive, and the vibration direction determined by the vibration direction vector 12 is close to the Z-axis, it indicates that the vibration area is located below the movement path.

[0091] In the vibration end determination unit 4, the movement direction vector 10 and the vibration direction vector 12 are used. Figure 20 The correspondence between these factors is used to determine whether the vibration direction is above, below, right, or left of the movement path, resulting in a first determination result. Additionally, in the vibration end determination unit 4, as described above, the tool tip vector 11 is used to determine the positional relationship between the workpiece W and the tool T, i.e., the vertical and horizontal positional relationship between the workpiece W and the tool T, resulting in a second determination result. In the vibration end determination unit 4, the first and second determination results are compared to determine whether the vibration area is on the workpiece W side or the tool T side. In the vibration end determination unit 4, by referring to the comparison result, if the first determination result (above, below, right, or left) indicates that the vibration direction is on the tool T side, vibration end selection information 13 is used to select the vibration end. Figure 20 The upper end associated with the corresponding relationship is selected. On the other hand, in the vibration end determination unit 4, by referring to the comparison result, if the first determination result (upper side, lower side, right side, or left side) is determined to be the workpiece W side, the lower end is selected as the vibration end selection information 13. As described above, the vibration end determination unit 4 can determine the appropriate vibration end selection information 13.

[0092] Next, the path segmentation operation performed in the path segmentation unit 3 will be explained. When the movement path includes a curve with an inflection point α, the path segmentation unit 3 divides the movement path into multiple parts. In the program analysis unit 2, by performing geometric analysis on the shape of the movement path, the position of the inflection point α of the curve can be calculated. Therefore, the path segmentation unit 3 can segment the path using the calculated inflection point α. For example, if the curve shape can be expressed mathematically, differentiation can be performed to find the point where the slope, i.e., the velocity, becomes 0. Furthermore, if mathematical calculation is not possible, the movement path can be finely segmented, and the positional changes can be calculated sequentially. The point where the positional change reverses can be determined as the inflection point α, and therefore the path can be segmented using the calculated inflection point α.

[0093] However, this method requires a large amount of computation. Therefore, in the pursuit of real-time performance, it is effective to obtain the result with less computation. Furthermore, the purpose of path segmentation is to calculate the movement direction vector 10. Regarding the movement direction vector 10, as mentioned above, the planar region is divided into two parts: one is used to combine with the tool tip vector 11 to determine the positional relationship between the tool T and the workpiece W, and the other is used to combine with the vibration direction vector 12 to determine the vibration region. Based on the above, it is not necessary to strictly calculate the inflection point α; it is sufficient to roughly grasp the various movement direction vectors 10 in the segmented path.

[0094] Figure 21 This diagram illustrates the operation of the path segmentation unit 3 of the numerical control device 1 according to Embodiment 1. For example, as... Figure 21 As shown, the vector obtained by extending the tangent vector Sv of the starting point S of the original movement path G is set as the first half of the movement direction vector G1 after the split. The intersection of the movement path G and the movement direction vector G1 is set as the inflection point α, and the second half of the movement direction vector G2 after the split is set as the vector from the inflection point α towards the endpoint E. In the case of a curved path, the direction along the movement path G, i.e., the tangent of the path, gradually changes. Therefore, in order to strictly control the movement direction vector 10, it is necessary to calculate it sequentially or process it by expressing the curve as a mathematical formula. However, according to this method, the movement direction vector 10 can be obtained with less computation.

[0095] If, relative to the path containing the inflection point α, the segmented movement direction vectors 10 are obtained, then, relative to each segmented movement path, by performing the same processing as described above, the vibration end selection information 13 of each segmented movement path can be obtained.

[0096] As described above, according to Embodiment 1, based on the movement direction vector 10, the tool tip vector 11, and the vibration direction vector 12, vibration end selection information 13 is determined, indicating whether the command position is set to the upper or lower end of the vibration, so that the vibration area becomes the space on the tool T side from the command position. Based on the vibration end selection information 13, a vibration waveform for vibratory cutting is generated. Therefore, regardless of the machining shape, vibratory cutting that avoids excessive cutting can be performed, and machining defects will not occur. Vibratory cutting that can reduce the load on the working machine can be realized.

[0097] Implementation Method 2

[0098] Figure 22 This is a block diagram illustrating the structure of the CNC device 1a according to Embodiment 2. In Embodiment 2, the vibration end determining unit 4 of Embodiment 1 is replaced with the vibration direction determining unit 8. The rest of the structure in Embodiment 2 is the same as in Embodiment 1, and repeated descriptions are omitted.

[0099] The vibration direction determination unit 8 determines the vibration direction vector 12 based on the movement direction vector 10, the tool tip vector 11, and the vibration end selection information 13, and inputs the determined vibration direction vector 12 to the vibration waveform generation unit 6. The vibration direction determination unit 8 has a set... Figure 20 The storage table showing the correspondence is shown. The vibration waveform generation unit 6 generates a vibration waveform for performing machining by vibration cutting by superimposing the waveform of the movement path with the vibration waveform based on the information created by the program parsing unit 2, the motion command generated by the motion command generation unit 5, and the vibration direction vector 12. The vibration waveform is then output as a motion command to the motion command output unit 7.

[0100] The following was also set in implementation method 2: Figure 20 The correspondence shown is as follows. Therefore, in this case, the upper end is fixedly selected as the vibration end selection information 13. The vibration direction determination unit 8, similar to Embodiment 1, uses the tool tip vector 11 and the movement direction vector 10 to determine the positional relationship between the workpiece W and the tool T, i.e., the up-down and left-right positional relationship between the workpiece W and the tool T. Furthermore, the vibration direction determination unit 8 assigns the movement direction vector 10 to... Figure 20 The correspondence, thus for Figure 20 The vibration direction determination unit 8 selects one of the four regions containing the vibration direction. Then, the vibration direction determination unit 8 uses the up-down and left-right positional relationship between the workpiece W and the tool T determined by the tool tip vector 11 to determine whether to select the region closer to the X-axis or closer to the Z-axis, so that the vibration region becomes the region on the side of the tool T.

[0101] For example, if the X-axis movement direction is - and the Z-axis movement direction is - as determined by the movement direction vector 10, then for Figure 20The vibration direction in the lower right region is selected (near the X-axis: upper side, near the Z-axis: lower side). In the positional relationship between the workpiece W and the tool T determined by the tool tip vector 11, if the tool T is on the upper side, the direction closer to the X-axis is selected, and if the tool T is on the lower side, the direction closer to the Z-axis is selected.

[0102] If it is determined whether to be closer to the X-axis or closer to the Z-axis, then the vibration direction determination unit 8 determines the vibration direction vector 12. As described above, it is possible to make the vibration direction different relative to the movement direction by making only a single axis among the multiple axes included in the movement path vibrate, or by changing the ratio of the vibration amplitudes among the multiple axes relative to the ratio among the multiple axes in the movement path.

[0103] If the former method is chosen, the decision to be closer to the X-axis or the Z-axis can be made automatically.

[0104] In the case of choosing the latter method, for example, the vibration direction vector 12 is determined based on the movement direction vector 10. Figure 23 This is a diagram illustrating the method for determining the vibration direction vector 12 in the numerical control device 1a according to Embodiment 2. (See diagram below.) Figure 23 As shown, the vibration direction vector 12a can also be generated by rotating it by a certain angle θ relative to the machining direction, i.e., the movement direction vector 10. For example, the rotation angle θ can be specified by directly declaring it as a string in the machining program and setting it as a parameter. Alternatively, various transformation calculations can be performed on the unselected vibration direction vector 12a, thereby calculating the vibration direction vectors 12b, 12c, and 12d for the region where the vibration area is on the same side as the tool T. Vibration direction vector 12b is obtained by symmetrically transforming vibration direction vector 12a relative to the movement direction vector 10. Vibration direction vector 12c is obtained by symmetrically transforming vibration direction vector 12a relative to a specific axis parallel to the X-axis. Vibration direction vector 12d is obtained by symmetrically transforming vibration direction vector 12a relative to a specific axis parallel to the Z-axis.

[0105] If the vibration direction determination unit 8 receives the vibration direction vector 12, the vibration waveform generation unit 6 calculates the vibration amplitude of each axis based on the vibration amplitude and vibration direction vector 12 determined by the information created by the program parsing unit 2 and the action command generated by the action command generation unit 5, and generates a vibration waveform in the same manner as in the aforementioned embodiment 1.

[0106] Furthermore, the vibration end selection information 13 can also be used to set the lower end. In this case, a configuration corresponding to the lower end is created. Figure 20The same storage table can be used. Furthermore, in Embodiment 2, the vibration direction determination unit 8 can determine the vibration direction vector 12 without using the vibration end selection information 13.

[0107] Furthermore, the approach described in Embodiment 1, which involves dividing the movement path containing the inflection point α into multiple parts, is also applicable to Embodiment 2. The path segmentation unit 3 calculates the corresponding movement direction vector 10 for each of the multiple segmented movement paths. The vibration direction determination unit 8 determines the vibration direction vector 12 based on the aforementioned determination method, corresponding to each movement direction vector 10.

[0108] As described above, according to Embodiment 2, the vibration direction vector 12 is determined based on the movement direction vector 10, the tool tip vector 11, and the vibration end selection information 13, so that the vibration area becomes the space on the tool T side from the command position. A vibration waveform for vibration cutting is generated based on the vibration direction vector 12. Therefore, regardless of the machining shape, vibration cutting that avoids excessive cutting can be performed, and no machining defects will be generated. Vibration cutting that can reduce the load on the working machine can be realized.

[0109] Implementation Method 3

[0110] In Embodiment 3, focusing on the action of switching the vibration waveform, a waveform switching region is set at the boundary between the movement paths. The description mainly focuses on features related to Embodiment 3, omitting content repeated in Embodiments 1 and 2.

[0111] By using the methods described in Embodiments 1 and 2, it is possible to avoid excessive cutting through vibration cutting. However, the vibration waveform sometimes changes during each movement path. Ideally, the vibration waveform should switch at the instant the movement path changes. But in reality, due to various reasons, it is difficult to accurately capture the instant the movement path changes. The timing offset of the vibration waveform switching may affect the machining process using vibration cutting.

[0112] Examples of causes include discretization errors caused by digital processing in software, timing offsets or delays in communication between the CNC device and the device controlling the motor (e.g., a servo amplifier), and overlapping processing of movement paths for purposes such as speed smoothing between movement paths. Furthermore, in the case of curved paths with an inflection point α, it is sometimes difficult to rigorously detect the inflection point α itself from the perspective of the required computational load or processing time.

[0113] Therefore, in embodiment 3, a waveform switching region Ta is set at the boundary between the movement paths, and the switching between vibration waveforms is performed in the waveform switching region Ta, so that the switching of vibration waveforms is performed without affecting the processing.

[0114] Figure 24 This is a block diagram showing the structure of the numerical control device 1b according to Embodiment 3. In the numerical control device 1b of Embodiment 3, a switching notification unit 9 is provided, a vibration end determination unit 4 of Embodiment 1 and a vibration direction determination unit 8 of Embodiment 2 are provided, and priority information 21 for switching selection of vibration end selection information 13 and vibration direction vector 12 is added.

[0115] First, the waveform switching region Ta will be explained in order to illustrate the operation of the switching notification unit 9. The waveform switching region Ta is defined as the region within a threshold range of the position or speed of the axis contained in the movement path.

[0116] Figure 25 This is a diagram illustrating the waveform switching region Ta used in the switching notification unit 9 of the numerical control device 1b according to Embodiment 3. Figure 25 The first figure shows the movement path along the XZ axis. Figure 25 The horizontal axis following the second graph represents time. Figure 25 The vertical axis following the second graph, in order from top to bottom, represents the Z-axis position of the movement path, the Z-axis velocity of the movement path, the X-axis position of the movement path, and the X-axis velocity of the movement path.

[0117] Figure 26 This is another diagram illustrating the waveform switching region Ta used in the switching notification unit 9 of the numerical control device 1b according to Embodiment 3. Figure 26 The first figure shows the movement path along the XZ axis. Figure 26 The horizontal axis following the second graph represents time. Figure 26 The vertical axis following the second graph, in order from top to bottom, represents the Z-axis position of the movement path, the Z-axis velocity of the movement path, the X-axis position of the movement path, and the X-axis velocity of the movement path.

[0118] exist Figure 25 The diagram shows the movement path of the straight line. Figure 26 The curve's path is shown in the diagram. Figure 25 In the example shown, a threshold including a lower threshold Th1 and an upper threshold Th2 is set relative to the X-axis position. The time from the point when the X-axis position enters the interval between the lower threshold Th1 and the upper threshold Th2 to the point when the X-axis position leaves the interval between the lower threshold Th1 and the upper threshold Th2 is defined as the waveform switching region Ta. Figure 25In this process, by setting a lower threshold Th1 and an upper threshold Th2 with a certain amount of additional value in both the negative and positive directions relative to the end of the movement path, the region before the end of the previous movement path and after the beginning of the next movement path in two movement paths is defined as the waveform switching region Ta.

[0119] exist Figure 26 In this context, thresholds including a lower threshold Th1 and an upper threshold Th2 are set for the X-axis velocity. In detecting the inflection point α in the curve's movement path, for example, the zero-crossing of one of the axes contained in the movement path is detected. Figure 26 In this process, by setting a lower threshold Th1 and an upper threshold Th2 with a certain amount of additional value for the velocity 0 on the X-axis in both the negative and positive directions, the region before and after the inflection point α is defined as the waveform switching region Ta.

[0120] The waveform switching region Ta is set according to the position, which is suitable for... Figure 25 Detection between movement paths with significant positional changes, as shown. However, in Figure 25 In cases where the positional change is gradual, as shown, the waveform switching region Ta may become too large if an appropriate threshold is not set. On the other hand, in setting the waveform switching region Ta based on speed, even if... Figure 26 The movement path shown, representing a gradual change in position, allows for relatively easy adjustment of the width of the waveform switching region Ta. Conversely, in situations like... Figure 25 In cases of movement paths with rapidly changing speeds, as shown, it may be difficult to set a threshold based on speed. Therefore, it is necessary to determine which information to set the threshold for, based on the characteristics of the movement path. Furthermore, in Figure 25 In this case, we also thought of using acceleration as the judgment object for detection.

[0121] The selection of data that serves as the criterion for determining thresholds such as position and velocity, or the value of the threshold, can be specified directly as a string in the machining program, or it can be selected by referring to parameters. Furthermore, as explained above, it is possible to select the appropriate data for a path, such as position for a straight path or velocity for the inflection point α of a curved path, corresponding to the path.

[0122] Furthermore, the position and speed data used for detecting the waveform switching region Ta can be either command values ​​(output from the CNC device 1b to the amplifier and motor) or feedback values ​​obtained by sending values ​​from sensors such as the encoder on the motor to the CNC device 1b. By using the feedback values, it is possible to switch to waveform switching operation based on confirmation that the motor has actually reached the position and speed relative to a threshold.

[0123] As described above, in the switching notification unit 9, if the entry into the waveform switching region Ta is detected using the action command generated by the action command generation unit 5, the vibration waveform generation unit 6 is notified of the arrival in the waveform switching region Ta, i.e., a switching signal. The waveform switching operation performed by the vibration waveform generation unit 6 will now be explained. The waveform switching operation can be any operation used to switch between two different vibration waveforms, or any arbitrary waveform switching operation can be performed.

[0124] As an example of waveform switching, vibration cessation can be cited. If the vibration waveform generation unit 6 receives a notification from the switching notification unit 9 that the waveform switching region Ta has been reached, it stops the superposition of the vibration waveform relative to the action command. That is, the switching action is achieved by switching the vibration waveform superimposed relative to the action command to the next vibration waveform. By stopping the vibration near the boundary between the two vibration waveforms, vibration cutting is not performed within the waveform switching region Ta, thereby eliminating the impact on machining caused by defects in waveform switching.

[0125] Another example of waveform switching can be the phased increase or decrease of amplitude. Ideally, the midpoint of the waveform switching region Ta should be the boundary of the movement path, but this may be offset due to the aforementioned reasons. However, if the threshold is set appropriately, a midpoint should exist within the waveform switching region Ta, and it is highly likely that the midpoint is near the center of the waveform switching region Ta. Therefore, for example, the amplitude can be gradually reduced at the center of the waveform switching region Ta with a slope that completely decays, and the amplitude can be gradually increased from the center at a slope that returns to its original value when passing through the waveform switching region Ta. Alternatively, by further steepening the slope of amplitude decay and increase, a region where vibration stops can also be formed near the center of the waveform switching region Ta.

[0126] Next, the selection of vibration in the vibration waveform generation unit 6 will be explained. In the vibration end determination unit 4, as described in Embodiment 1, the vibration end in the vibration waveform is determined based on the movement direction vector 10, the tool tip vector 11, and the vibration direction vector 12, and vibration end selection information 13 is generated so that the vibration area is the same side as the tool T. As described in Embodiment 2, the vibration direction determination unit 8 determines the vibration direction vector 12 based on the movement direction vector 10, the tool tip vector 11, and the vibration end selection information 13 so that the vibration area is the same side as the tool T.

[0127] Priority information 21 indicates whether to select either the vibration end selection priority mode using the vibration end selection information 13 output from the vibration end determination unit 4, or the vibration direction vector priority mode using the vibration direction vector 12 output from the vibration direction determination unit 8. The vibration waveform generation unit 6 selects either the vibration end selection priority mode or the vibration direction vector priority mode based on priority information 21, and operates according to the selected mode. There are no restrictions on how priority information 21 is specified; it can be specified as a string in the machining program or as a parameter.

[0128] To achieve vibratory cutting, the tool T needs to vibrate relative to the workpiece W. Depending on the construction of the machine, the adaptability of the drive shafts to this excitation operation sometimes differs. Therefore, there are situations where it is desirable to prioritize a particular shaft as the excitation shaft, or conversely, not to designate a particular shaft as the excitation shaft. Specifically, shafts closer to the front end that holds the tool T tend to be lighter, thus having the advantage of requiring less energy for excitation. On the other hand, in the case of shafts supporting multiple shafts or machine structures, the energy required for excitation is greater, which may lead to overall machine vibration, thus increasing the possibility of causing the disadvantages of excitation operation associated with vibratory cutting. Priority information 21 is information set to achieve vibration operation that takes into account the aforementioned external factors.

[0129] As described above, according to embodiment 3, at the boundary between movement paths, if the position or speed of the axis reaches a threshold, and if a waveform switching area Ta is set to notify the switching signal and a switching signal is notified, then a waveform switching action is performed to generate a vibration waveform, thereby preventing excessive cutting caused by the switching of the vibration waveform.

[0130] Here, the hardware structure of CNC devices 1, 1a, and 1b will be described. Figure 27 This diagram illustrates examples of the hardware structure of CNC devices 1, 1a, and 1b according to Embodiments 1 to 3. CNC devices 1, 1a, and 1b can be... Figure 27The processor 301, memory 302, and interface circuit 303 shown are implemented. Examples of the processor 301 include a CPU (Central Processing Unit, also known as a central processing unit, processing device, arithmetic unit, microprocessor, microcomputer, processor, DSP (Digital Signal Processor)) or a system LSI (Large Scale Integration). Examples of the memory 302 include RAM (Random Access Memory) and ROM (Read Only Memory).

[0131] The numerical control devices 1, 1a, and 1b are implemented by the processor 301 reading and executing programs stored in the memory 302 for performing the actions of the numerical control devices 1, 1a, and 1b. Alternatively, this program can be described as instructing the computer to execute the processes or methods of the numerical control devices 1, 1a, and 1b. The memory 302 also serves as temporary storage when the processor 301 performs various processes. Furthermore, the functions of the numerical control devices 1, 1a, and 1b can be partially implemented by dedicated hardware and partially by software or firmware.

[0132] The structure shown in the above embodiments is an example of the content of the present invention. It can be combined with other known technologies, and the embodiments can be combined with each other. Without departing from the spirit of the present invention, a part of the structure can be omitted or changed.

[0133] Explanation of the label

[0134] 1. 1a, 1b CNC device; 2. Program parsing unit; 3. Path segmentation unit; 4. Vibration end determination unit; 5. Action command generation unit; 6. Vibration waveform generation unit; 7. Action command output unit; 8. Vibration direction determination unit; 9. Switching notification unit; 10. G1, G2 Movement direction vector; 11. Tool tip vector; 12. 12a, 12b, 12c, 12d Vibration direction vector; 13. Vibration end selection information; 16. Generation unit; 17. Overlay unit; 21. Priority information; 301. Processor; 302. Memory; 303. Interface circuit; G. Movement path; T. Tool; Ta. Waveform switching area; W. Workpiece.

Claims

1. A numerical control device that performs vibration cutting of a workpiece using a tool, the numerical control device characterized by having: a vibration end decision section that decides vibration end selection information indicating whether to set a command position as an upper end or a lower end of vibration, based on a movement direction vector indicating a movement direction of the tool before an additional vibration, a tool tip vector indicating an orientation of a tool tip of the tool, and a vibration direction vector indicating a direction different from the movement direction vector, i.e., a vibration direction, so that a vibration region of the vibration cutting becomes a space on the tool side from a movement path of the tool before the additional vibration, i.e., the command position; and a vibration waveform generation section that generates a vibration waveform for performing the vibration cutting based on the vibration end selection information.

2. The numerical control device according to claim 1, characterized by further having a path division section that divides the movement path into a plurality of movement paths by a turning point, the vibration end decision section deciding the vibration end selection information corresponding to each of the plurality of movement paths based on the movement direction vector of each of the plurality of divided movement paths.

3. A numerical control device that performs vibration cutting of a workpiece using a tool, the numerical control device characterized by having: a vibration direction decision section that decides a vibration direction vector indicating a direction different from a movement direction vector of the tool before an additional vibration, i.e., a vibration direction, based on the movement direction vector indicating a movement direction of the tool before the additional vibration and a tool tip vector indicating an orientation of a tool tip of the tool, so that a vibration region of the vibration cutting becomes a space on the tool side from a movement path of the tool before the additional vibration, i.e., a command position; and a vibration waveform generation section that generates a vibration waveform for performing the vibration cutting based on the vibration direction vector.

4. The numerical control device according to claim 3, characterized by further having a path division section that divides the movement path into a plurality of movement paths by a turning point, the vibration direction decision section deciding the vibration direction vector corresponding to each of the plurality of movement paths based on the movement direction vector of each of the plurality of divided movement paths.

5. The numerical control device according to any one of claims 1 to 4, characterized by further having a switching notification section that notifies a switching signal of the vibration waveform, the vibration waveform generation section generating the vibration waveform based on the switching signal notified from the switching notification section to perform a waveform switching action.

6. The numerical control device according to claim 5, characterized in that the switching notification section notifies the switching signal if a position or a speed of an axis included in the movement path reaches a threshold value.

7. A numerical control method that performs vibration cutting of a workpiece using a tool, the numerical control method characterized by comprising the steps of: ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ determining vibration end selection information indicating whether the command position is set as an upper end or a lower end of the vibration, based on a movement direction vector indicating a movement direction of the tool before the additional vibration, a tool tip vector indicating an orientation of a tool tip of the tool, and a vibration direction vector indicating a direction different from the movement direction vector, so that a vibration region of the vibration cutting becomes a space on the tool side from a movement path of the tool before the additional vibration, which is the command position; and generating a vibration waveform for the vibration cutting based on the vibration end selection information.

8. A numerical control method of vibration cutting of a workpiece using a tool, The numerical control method is characterized by comprising the steps of: determining a vibration direction vector indicating a direction different from a movement direction vector indicating a movement direction of the tool before the additional vibration, based on the movement direction vector and a tool tip vector indicating an orientation of a tool tip of the tool, so that a vibration region of the vibration cutting becomes a space on the tool side from a movement path of the tool before the additional vibration, which is the command position; and generating a vibration waveform for the vibration cutting based on the vibration direction vector.

Citation Information

Patent Citations

  • Machine tool control device

    WO2022269751A1