Numerical control device and numerical control method

The numerical control device adjusts vibration frequency and acceleration to prevent resonance, ensuring high-quality machining surface finish during vibration cutting.

JP7814645B1Active Publication Date: 2026-02-16MITSUBISHI ELECTRIC CORP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2025566850
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2025-07-24
Publication Date
2026-02-16
Estimated Expiration
2045-07-24

Smart Images

  • Figure 0007814645000001
    Figure 0007814645000001
  • Figure 0007814645000002
    Figure 0007814645000002
  • Figure 0007814645000003
    Figure 0007814645000003
Patent Text Reader

Abstract

The numerical control device (1) controls vibration cutting, which relatively vibrates a workpiece attached to a spindle of a machine tool and a cutting tool attached to the machine tool, and changes the vibration frequency of the vibration cutting in accordance with changes in the rotational speed of the spindle. The numerical control device (1) includes a resonance determination unit (433) that compares the natural frequency of the machine tool with the vibration frequency of the vibration cutting to determine whether resonance occurs in the machine tool, and a vibration waveform correction unit (434) that, if it is determined that resonance will occur, corrects the acceleration of the vibration waveform of the vibration cutting so that resonance does not occur while maintaining the number of vibrations of the vibration cutting per rotation of the spindle.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

[0002] When a machine tool processes a workpiece, chips may become tangled around the cutting tool. One method for preventing chips from becoming tangled around the cutting tool is vibration cutting, in which the cutting tool and the workpiece are vibrated relative to each other in the processing feed direction while cutting the workpiece. Vibration cutting makes it possible to break up chips generated during processing, thereby preventing chips from becoming tangled around the cutting tool.

[0003] In vibration cutting, for example, when constant peripheral speed control is performed or when the ratio of the command value for the spindle speed is changed using spindle override, the spindle rotation speed may change during command block execution. In vibration cutting, it is desirable to break up chips even when the spindle rotation speed changes in this way. Furthermore, in vibration cutting, resonance occurs when the vibration frequency of vibration cutting matches the natural frequency of the machine tool, so it is desirable to set a vibration frequency that avoids this resonance.

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

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

[0006] However, with the technology of Patent Document 1, the number of vibrations per spindle revolution at which chips can be efficiently broken switches discretely, such as 3.5 times, 2.5 times, etc., and at the points where this switches, the visual surface quality of the workpiece changes, such as the cutting marks caused by vibration cutting being interrupted halfway.For this reason, the technology of Patent Document 1 has a problem in that, when performing vibration cutting, it is not possible to achieve machining of the workpiece with good surface quality while avoiding resonance caused by the vibration frequency of the vibration cutting matching the natural frequency of the machine tool.

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

[0008] In order to solve the above-mentioned problems and achieve the object, the numerical control device in the present disclosure controls vibration cutting by vibrating a workpiece attached to a spindle of a machine tool relative to a cutting tool attached to the machine tool, and changes the vibration frequency of the vibration cutting in accordance with changes in the rotational speed of the spindle. The numerical control device includes a determination unit that compares the natural frequency of the machine tool with the vibration frequency of the vibration cutting to determine whether resonance will occur in the machine tool, and a correction unit that, if it is determined that resonance will occur, corrects the acceleration of the vibration waveform of the vibration cutting so that resonance will not occur while maintaining the number of vibrations of the vibration cutting per rotation of the spindle. [Effects of the Invention]

[0009] According to the numerical control device disclosed herein, when performing vibration cutting, it is possible to avoid resonance caused by the vibration frequency of the vibration cutting matching the natural frequency of the machine tool, while achieving processing of the workpiece with good surface properties. [Brief explanation of the drawings]

[0010] [Figure 1]FIG. 1 is a block diagram showing an example of a configuration of a numerical control device according to an embodiment; [Figure 2] FIG. 1 is a diagram schematically illustrating a configuration of an axis of a machine tool according to an embodiment. [Figure 3] FIG. 10 is a diagram for explaining an example of a vibration waveform calculated by an interpolation processing unit of the numerical control device according to the embodiment; [Figure 4] 1 is a flowchart showing a processing procedure executed by a numerical control device according to an embodiment; [Figure 5] FIG. 10 is a diagram for explaining correction of acceleration waveforms of vibrations during forward and backward movements calculated and changed by the numerical control device according to the embodiment; [Figure 6] FIG. 1 is a diagram illustrating a configuration example of a processing circuit provided in a control calculation unit of a numerical control device according to an embodiment, in the case where the processing circuit is realized by a processor and a memory. [Figure 7] FIG. 1 is a diagram illustrating an example of a processing circuit in a case where the processing circuit included in the control calculation unit of the numerical control device according to the embodiment is configured with dedicated hardware. DETAILED DESCRIPTION OF THE INVENTION

[0011] A numerical control device and a numerical control method according to an embodiment will be described in detail below with reference to the drawings.

[0012] Embodiment Fig. 1 is a block diagram showing an example of the configuration of a numerical control device 1 according to an embodiment. The numerical control device 1 is a computer that causes a machine tool to perform vibration cutting by controlling the machining of the workpiece 60 (see Fig. 2) by a cutting tool 50 (see Fig. 2) attached to the machine tool while vibrating the workpiece 60 relative to the cutting tool 50. The machine tool controlled by the numerical control device 1 is a machine that cuts the workpiece 60 while vibrating the cutting tool 50.

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

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

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

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

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

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

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

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

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

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

[0023] In the control calculation unit 40, the analysis processing unit 42, the interpolation processing unit 43, and the spindle processing unit 44 transmit and receive information via the memory unit 41, but in the following explanation, the fact that they are transmitted via the memory unit 41 may be omitted. Note that the spindle processing unit 44 may transmit information directly to the interpolation processing unit 43.

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

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

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

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

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

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

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

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

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

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

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

[0035] When spindle processing unit 44 detects a change in the spindle rotation speed, interpolation processing unit 43 calculates a vibration frequency corresponding to the spindle rotation speed and determines whether the vibration frequency is within the resonance frequency range of machine tool 110. If the vibration frequency is within the resonance frequency range of machine tool 110, interpolation processing unit 43 corrects the acceleration of the vibration waveform of vibration cutting so that resonance does not occur while maintaining the number of vibrations of vibration cutting per rotation of the spindle. Interpolation processing unit 43 sends a command corresponding to the corrected vibration acceleration waveform to drive unit 10 via axis data output unit 45.

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

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

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

[0039] Spindle override is a process that changes the spindle rotation speed at a specific rate when the command value for the spindle rotation speed is set to 100%. When changing the spindle rotation speed, the rate of change is set using a dial installed on the control panel of the machine tool 110.

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

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

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

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

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

[0045] The vibration waveform generating unit 435 generates a vibration waveform by multiplying the difference (vibration amplitude) between the vibration advance position R1 and the vibration retreat position R2 at each time by the waveform of the vibration frequency calculated by the vibration frequency calculating unit 431.

[0046] Resonance frequency acquisition unit 432 acquires a resonant frequency range including the resonant frequency of machine tool 110 from parameters 412 and the like. The resonant frequency range of machine tool 110 is a range including the natural frequency of machine tool 110. In this specification, the resonant frequency of machine tool 110 is used synonymously with the natural frequency of machine tool 110.

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

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

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

[0050] When the vibration frequency calculated by the vibration frequency calculation unit 431 overlaps with the resonant frequency range, the vibration waveform correction unit 434 corrects the vibration waveform to a vibration acceleration waveform that does not resonate. When two or more axes are vibrated during vibration cutting, the vibration waveform correction unit 434 corrects the vibration waveform to a vibration waveform that does not resonate with the axis that generates resonance.

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

[0052] When the cutting tool 50 vibrates, the vibration repeatedly advances and retreats. The vibration waveform correction unit 434 avoids resonance by changing the advance time and retreat time of this vibration. In other words, the vibration waveform correction unit 434 corrects the acceleration of the vibration waveform by correcting the advance time and retreat time to advance time and retreat time that do not resonate. When vibration cutting is performed with two or more axes to be vibrated, the vibration waveform correction unit 434 corrects the acceleration of the vibration waveform of the vibration cutting for the axis determined to cause resonance.

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

[0054] The axis data output unit 45 receives the spindle rotation speed from the spindle processing unit 44. The axis data output unit 45 also receives a movement command from the analysis processing unit 42. The axis data output unit 45 also receives a composite movement amount from the interpolation processing unit 43 when the vibration waveform has been corrected.

[0055] The axis data output unit 45 commands the received spindle rotation speed to the drive unit 10. The axis data output unit 45 also commands the received movement command to the drive unit 10. The axis data output unit 45 also commands the received composite movement amount to the drive unit 10.

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

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

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

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

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

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

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

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

[0064] The vibration amplitude calculation unit 438 calculates the vibration amplitude, which is the difference in the amount of movement between the vibration forward position R1 and the vibration backward position R2 at each time from time t0 when the command block starts to time t4 when it is completed. Specifically, the vibration amplitude calculation unit 438 calculates the vibration amplitude W1 from time t1 to time t2 and the vibration amplitude W2 from time t3 to time t4 based on the vibration forward position R1 and the vibration backward position R2 in the graph shown in Figure 3(c).

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

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

[0067] The vibration waveform generating unit 435 calculates a vibration waveform by multiplying the vibration amplitude, which is the difference between the vibration advance position R1 and the vibration retreat position R2 at each time, by the waveform of the vibration frequency calculated by the vibration frequency calculating unit 431.

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

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

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

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

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

[0073] In this case, if the vibration frequency coincides with the natural frequency of machine tool 110 during the process of change in vibration frequency, resonance occurs, which affects the surface texture of workpiece 60.

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

[0075] To prevent such resonance from occurring, when the vibration frequency overlaps with the resonance frequency range, the vibration waveform correction unit 434 corrects the vibration frequency to an acceleration of a vibration waveform that does not cause resonance. Specifically, the vibration waveform correction unit 434 generates an acceleration / deceleration pattern in which the acceleration is increased or decreased in a cycle that is half the resonance frequency.

[0076] The vibration waveform correction unit 434 then compares the vibration frequency with the resonant frequency range set by parameters, etc. If the vibration frequency overlaps the resonant frequency range, the vibration waveform correction unit 434 dynamically corrects the acceleration of the vibration waveform to correct the vibration frequency to a vibration waveform that does not cause resonance. This allows the numerical control device 1 to avoid resonance while maintaining constant peripheral speed control. For example, correcting the vibration waveform in the dimension of the vibration waveform position can cause large accelerations at path change points, potentially preventing the servo from tracking or inducing other vibrations. However, correcting the vibration waveform in the dimension of acceleration directly prevents such problems from occurring because the acceleration itself is corrected. In other words, correcting the vibration waveform in the dimension of acceleration can effectively attenuate the frequency band of the vibration used in vibration cutting that overlaps with the resonant frequency, thereby efficiently suppressing resonance.

[0077] If there are multiple resonant frequency regions, the vibration waveform correction unit 434 may correct the vibration waveform so that the vibration frequency does not overlap with multiple resonant frequency regions. Furthermore, the vibration waveform correction unit 434 may correct the vibration waveform so that the vibration frequency does not overlap with the resonant frequency region for each servo axis. In this way, the vibration waveform correction unit 434 corrects the acceleration of the vibration waveform so that the distribution of the frequency components of the vibration frequency of the vibration becomes a distribution different from the distribution of the frequency components of the resonant frequency.

[0078] Next, a description will be given of the processing procedure executed by the numerical control device 1. Fig. 4 is a flowchart showing the processing procedure executed by the numerical control device 1 according to the embodiment. Here, a description will be given of the processing by the numerical control device 1 to generate a vibration waveform when the spindle rotation speed (spindle rotation number) changes.

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

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

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

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

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

[0084] Q = A / F (1)

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

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

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

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

[0089] W = A × T / F = Q × T (3)

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

[0091] The vibration waveform generation unit 435 recalculates the vibration waveform (step S60). Specifically, the vibration waveform generation unit 435 recalculates the vibration waveform by multiplying the vibration amplitude A, which is the difference between the vibration advance position R1 and the vibration retreat position R2 at each time, by the waveform of the vibration frequency.

[0092] Resonance frequency acquisition unit 432 acquires the resonance frequency range of machine tool 110 from parameters 412 etc. Resonance determination unit 433 calculates the frequency of vibration from the recalculated vibration waveform (step S70). Furthermore, resonance determination unit 433 calculates the acceleration of vibration (step S80).

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

[0094] If the resonant frequency range overlaps with the vibration frequency (step S90: Yes), the resonance determination unit 433 determines that the machine tool 110 is resonating, and determines whether there is an acceleration change period that can avoid resonance by correcting the acceleration of the vibration waveform (step S100).

[0095] If there is no acceleration change period that can avoid resonance (step S100: No), the vibration waveform correction unit 434 attenuates the vibration amplitude A (step S110). Then, the vibration waveform correction unit 434 corrects the vibration waveform with the attenuated vibration amplitude A (step S120). Note that if there is no acceleration change period that can avoid resonance, the vibration waveform correction unit 434 may stop the vibration.

[0096] On the other hand, if there is an acceleration change period that can avoid resonance (step S100: Yes), the vibration waveform correction unit 434 corrects the acceleration of the vibration waveform for vibration cutting (step S120). The vibration waveform correction unit 434 corrects the acceleration of the vibration waveform for vibration cutting so that resonance does not occur, while maintaining the number of vibrations for vibration cutting per rotation of the spindle. Specifically, when the vibration amplitude A is not attenuated, the vibration waveform correction unit 434 corrects the vibration waveform so that resonance does not occur by changing the acceleration when the vibration advances or retreats, while maintaining the vibration advance position R1 and the vibration retreat position R2. Furthermore, when the vibration amplitude A is attenuated, the vibration waveform correction unit 434 corrects the vibration waveform so that resonance does not occur by applying the attenuated vibration amplitude A.

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

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

[0099] Here, the acceleration waveforms of the vibrations when moving forward and backward will be described. Fig. 5 is a diagram for explaining the correction of the acceleration waveforms of the vibrations when moving forward and backward, which are calculated and changed by the numerical control device 1 according to the embodiment.

[0100] The first graph in Figure 5(a) shows a vibration waveform. The horizontal axis of this graph is time, and the vertical axis is the vibration position corresponding to the vibration command. The triangular vibration waveform shown in the vibration waveform is a vibration waveform generated based on the vibration conditions defined in the command block.

[0101] The second graph in Figure 5(b) shows the velocity waveform of the feed axis, where the horizontal axis represents time and the vertical axis represents the velocity of the feed axis.

[0102] The third graph in Figure 5(c) shows the acceleration waveform and jerk waveform of the feed axis before correction. The horizontal axis of this graph represents time, the solid line on the vertical axis represents acceleration FA1, and the dotted line on the vertical axis represents jerk.

[0103] The fourth graph shown in FIG. 5(d) shows the acceleration waveform and jerk waveform of the feed axis after correction. The horizontal axis of this graph represents time, the solid line on the vertical axis represents acceleration FA2, and the dotted line on the vertical axis represents jerk. When the vibration waveform has a frequency that overlaps with the resonant frequency range, the vibration waveform correction unit 434 changes the acceleration as shown in the graph of the acceleration and jerk waveform of the vibration feed axis shown in FIG. 5(d). The period for changing the acceleration is determined by the resonant frequency t n The vibration is suppressed by performing the correction at a timing that is the opposite phase of the vibration of half of the resonant frequency t n The jerk can be changed at a timing that is the opposite phase of half the vibration.

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

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

[0106] As described above, according to the numerical control device 1 of the embodiment, when it is determined that resonance will occur when operating at the vibration frequency for vibration cutting, the acceleration FA1 of the vibration waveform for vibration cutting is corrected to the acceleration FA2 of the vibration waveform so as not to cause resonance while maintaining the vibration frequency for vibration cutting (feed axis) per rotation of the spindle, and the machine tool 110 is controlled with the acceleration FA2 of the corrected vibration waveform. This allows the numerical control device 1 to avoid resonance without switching the vibration frequency for vibration cutting per rotation of the spindle. Therefore, the numerical control device 1 can perform vibration cutting that avoids resonance due to the vibration frequency for vibration cutting matching the natural frequency of the machine tool 110, while achieving machining of the workpiece 60 with good surface texture. Furthermore, unlike when the vibration waveform is corrected in the dimension of the position of the vibration waveform, the vibration waveform is corrected in the dimension of acceleration, which directly prevents problems such as large acceleration occurring at a change point in the path, causing the servo to be unable to follow, or inducing other vibrations. In other words, by correcting the vibration waveform in the dimension of acceleration, it is possible to effectively attenuate the band of vibration frequencies used in vibration cutting that overlaps with the resonance frequency, thereby making it possible to efficiently suppress resonance.

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

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

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

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

[0111] The control calculation program can also be said to be a program that causes control calculation unit 40 to execute the processing of steps S10 to S130 in Fig. 4. The control calculation program can also be said to be a program that causes control calculation unit 40 to execute a determination step of comparing the natural frequency of machine tool 110 with the vibration frequency of vibration cutting to determine whether resonance will occur in machine tool 110, and a correction step of correcting the acceleration of the vibration waveform of vibration cutting so that resonance will not occur while maintaining the number of vibrations of vibration cutting per rotation of the spindle if it is determined that resonance will occur.

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

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

[0114] The configurations shown in the above embodiments are examples of the contents of the present disclosure, and may be combined with other known technologies, and parts of the configurations may be omitted or modified within the scope of the gist of the present disclosure. [Explanation of symbols]

[0115] 1 Numerical control device, 10 Drive unit, 11 X-axis servo control unit, 12 Z-axis servo control unit, 13 Spindle servo control unit, 14 X-axis servo motor, 15 Z-axis servo motor, 16 Spindle motor, 20 Input operation unit, 30 Display unit, 40 Control calculation unit, 41 Memory unit, 42 Analysis processing unit, 43 Interpolation processing unit, 44 Spindle processing unit, 45 Axis data output unit, 50 Cutting tool, 51 Turret, 52 Movement path, 60 Workpiece, 70 Headstock, 71 Rotation axis, 90, 93 Processing circuit, 91 Processor, 92 Memory, 110 Machine tool, 411 Machining program, 412 Parameters, 413 Screen display data, 414 Temporary data storage area, 421 Movement command analysis unit, 422 Vibration command analysis unit, 431 Vibration frequency calculation unit, 432 Resonance frequency acquisition unit, 433 Resonance determination unit, 434 vibration waveform correction unit, 435 vibration waveform generation unit, 436 movement command calculation unit, 437 phase difference calculation unit, 438 vibration amplitude calculation unit, 441 spindle rotation command creation unit, 442 spindle rotation speed calculation unit.

Claims

1. A numerical control device that controls vibration cutting by relatively vibrating a workpiece attached to a spindle of a machine tool and a cutting tool attached to the machine tool, and changes a vibration frequency of the vibration cutting in accordance with a change in rotation speed of the spindle, a determination unit that compares the natural frequency of the machine tool with the vibration frequency of the vibration cutting and determines whether resonance occurs in the machine tool; a correction unit that corrects the acceleration of the vibration waveform of the vibration cutting so that the resonance does not occur while maintaining the number of vibrations of the vibration cutting per one rotation of the spindle when it is determined that the resonance will occur. A numerical control device characterized by:

2. the determination unit determines that the resonance occurs when the vibration frequency overlaps with a resonance frequency region including the natural frequency of the machine tool, When it is determined that the resonance occurs, the correction unit corrects the acceleration of the vibration waveform while maintaining a vibration forward position that is a forward position of the vibration cutting and a vibration backward position that is a backward position of the vibration cutting.

2. The numerical control device according to claim 1 .

3. When it is determined that the resonance will occur, the correction unit determines whether or not there is an acceleration change period that can avoid the resonance, and if there is an acceleration change period that can avoid the resonance, corrects the acceleration of the vibration waveform without attenuating the amplitude of the vibration, and if there is no acceleration change period that can avoid the resonance, attenuates the amplitude of the vibration or stops the vibration.

2. The numerical control device according to claim 1 .

4. The correction unit corrects the acceleration of the vibration waveform so that a distribution of frequency components of a vibration frequency of the vibration becomes a distribution different from a distribution of frequency components of the natural frequency of the machine tool.

3. The numerical control device according to claim 2.

5. The vibration cutting is vibration cutting in which the workpiece and the cutting tool are vibrated relatively about two or more axes, the determination unit determines on which of the two or more axes the resonance occurs, The correction unit corrects the acceleration of the vibration waveform of the vibration cutting for the axis determined to cause resonance.

5. The numerical control device according to claim 1, wherein the numerical control device is a control device for controlling a control unit.

6. A numerical control method for controlling vibration cutting in which a workpiece attached to a spindle of a machine tool and a cutting tool attached to the machine tool are vibrated relatively, and for changing a vibration frequency of the vibration cutting in accordance with a change in rotation speed of the spindle, comprising: a determining step of comparing the natural frequency of the machine tool with the vibration frequency of the vibration cutting and determining whether resonance occurs in the machine tool; and a correction step of correcting the acceleration of the vibration waveform of the vibration cutting so that the resonance does not occur while maintaining the number of vibrations of the vibration cutting per one rotation of the spindle when it is determined that the resonance will occur. A numerical control method characterized by:

Citation Information

Patent Citations

  • Machine tool

    JP2024003322A

  • Apparatus, control device and method for generating signals for a weaving operation - Patents.com

    JP7583176B2

  • Method for processing sulfide minerals and concentrates

    US7682419B2

  • Numerical control device and numerical control method

    WO2022085114A1

  • Numerical control device and numerical control method

    JP6984790B1