Numerical control device and numerical control method
The numerical control device automatically adjusts the amplitude feed ratio during vibration cutting by comparing servo data across cycles, addressing the inefficiency of manual adjustments and optimizing chip shredding.
Patent Information
- Application Number
- JP2025559749
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2025-06-20
- Publication Date
- 2026-02-16
- Estimated Expiration
- 2045-06-20
AI Technical Summary
Existing vibration cutting methods require users to manually adjust vibration amplitude to an optimal value, which is burdensome and inefficient, and existing techniques still necessitate pre-setting ideal values, increasing user workload.
A numerical control device that adjusts the amplitude feed ratio during vibration cutting by comparing servo data across cycles to ensure optimal chip shredding without requiring user intervention.
Automatically adjusts the amplitude feed ratio to optimize chip shredding, reducing user burden and ensuring efficient cutting without manual adjustments.
Smart Images

Figure 0007814640000001 
Figure 0007814640000002 
Figure 0007814640000003
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a numerical control device and a numerical control method for controlling vibration cutting. [Background technology]
[0002] When machining a workpiece with a machine tool, a machining method called vibration cutting is known in which the tool and workpiece are vibrated relative to each other in the machining feed direction to break up chips. In vibration cutting, chips are broken up by setting vibration conditions such as vibration amplitude and vibration frequency when vibrating the tool.
[0003] However, when vibrating the tool, the motor may not be able to keep up with the command value for the vibration amplitude, and the actual vibration amplitude may tend to be smaller than the command value, resulting in failure to break the chips. On the other hand, if the command value for the vibration amplitude is set too high, the load on the motor that vibrates the tool increases. Therefore, the user must adjust the vibration amplitude to an optimal value. However, adjusting to the optimal value requires repeatedly inputting the amplitude feed ratio and checking data to see if the chips are being broken, which places a heavy burden on the user.
[0004] Various techniques have been proposed to reduce the burden on users when adjusting the vibration amplitude to an optimal value. For example, Patent Document 1 discloses a technique for calculating the difference between the feedback position of the feed axis and a command position, which is an ideal position, and correcting the amplitude feed ratio, which is the ratio between the vibration amplitude and the tool feed amount per one spindle rotation, so as to approach the command position. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent No. 6843314 Summary of the Invention [Problem to be solved by the invention]
[0006] However, in the above Patent Document 1, the user needs to set an ideal value for the amplitude feed ratio as a vibration condition in advance, which requires a step of obtaining the vibration condition before machining, which is a burden on the user.
[0007] The present disclosure has been made in consideration of the above circumstances, and aims to provide a numerical control device that can reduce the burden on the user when setting vibration conditions related to vibration cutting. [Means for solving the problem]
[0008] In order to achieve the above object, the numerical control device of the present disclosure has an amplitude feed ratio adjustment unit that causes a machine tool to perform vibration cutting, and during the execution of vibration cutting in which the spindle rotates once in a predetermined cycle, compares first servo data acquired in a first period synchronized with the predetermined cycle with second servo data acquired in a second period which is the period of the cycle next to the first period, and gradually changes the amplitude feed ratio, which is the ratio between the vibration amplitude of the vibration cutting and the amount of tool movement per vibration, based on the comparison result so that chips generated during vibration cutting are shredded. [Effects of the Invention]
[0009] According to the present disclosure, it is possible to provide a numerical control device that can reduce the burden on the user when setting vibration conditions related to vibration cutting. [Brief explanation of the drawings]
[0010] [Figure 1] 1 is a diagram showing an example of the configuration of a machine tool that is a control target of a numerical control device according to an embodiment; [Figure 2] FIG. 1 is a diagram showing an example of the configuration of a numerical control device according to an embodiment. [Figure 3] 5A and 5B are diagrams for explaining an example of the operation of the numerical control device according to the embodiment; [Figure 4] 10A and 10B are diagrams for explaining an example of a method for determining a swing-out period according to an embodiment. [Figure 5]10A and 10B are diagrams for explaining another example of a method for determining a swing-out period according to an embodiment. [Figure 6] 10A to 10C are diagrams for explaining an example of successive change of the amplitude feed ratio according to the embodiment. [Figure 7] FIG. 2 is a diagram showing dedicated hardware for realizing the functions of the numerical control device according to the embodiment. [Figure 8] FIG. 2 is a diagram showing the configuration of a control circuit for realizing the functions of the numerical control device according to the embodiment.
[0011] Hereinafter, numerical control devices according to embodiments will be described in detail with reference to the drawings, although the present invention is not limited to these embodiments.
[0012] Embodiment 1 is a diagram showing an example of the configuration of a machine tool 100 to be controlled in the embodiment. Machine tool 100 is, for example, a lathe. Machine tool 100 includes, for example, a tool 110 that processes the front surface of a workpiece, a tool 120 that processes the back surface of the workpiece, and a transport machine 140 that carries the workpiece in and out of a processing chamber 130.
[0013] Fig. 2 is a block diagram showing an example of a numerical control device 1 according to an embodiment. The numerical control (NC) device 1 shown in Fig. 1 is, for example, a computer that controls vibration cutting, which performs cutting while vibrating a tool, on a machine tool 100 that performs cutting. The numerical control device 1 has an input operation unit 2, an output unit 3, and a control calculation unit 4. Fig. 2 also shows, for example, a drive unit 7 that is a component of the machine tool 100. Note that the drive unit 7 may be an element independent of the machine tool 100.
[0014] The drive unit 7 is connected to the control and calculation unit 4 and is a mechanism that drives at least one of a tool for machining a workpiece, which is the object of machining by the machine tool, and the workpiece itself. In this embodiment, the drive unit 7 is a mechanism that, for example, drives a tool in two directions, a direction parallel to the X-axis direction and a direction parallel to the Z-axis direction, while rotating the workpiece, to machine the workpiece. The X-axis direction is, for example, the vertical direction, i.e., the direction of gravity. The Z-axis direction is, for example, the horizontal direction. In this embodiment, the central axis of the workpiece is defined as the Z-axis, and the direction perpendicular to the Z-axis is defined as the X-axis. The axial directions depend on the machine configuration and are not limited to the above directions.
[0015] The drive unit 7 includes an X-axis servo motor 71x, a detector 72x, and an X-axis servo control unit 73x. The X-axis servo motor 71x moves the tool along the X-axis defined by the numerical control device 1. The detector 72x detects the position and speed of the X-axis servo motor 71x. The X-axis servo control unit 73x performs feedback control of the X-axis servo motor 71x based on commands from the numerical control device 1 and various information, such as position information and speed information, detected by the detector 72x. Hereinafter, feedback control will also be referred to as "FB." The X-axis servo control unit 73x performs feedback control of the X-axis servo motor 71x to realize movement of the tool in the X-axis direction. The drive unit 7 outputs various information detected by the detector 72x to the control calculation unit 4 as X-axis servo data. At this time, the X-axis servo data includes, for example, the X-axis feedback position and X-axis feedback current, which are servo data when the X-axis servo motor 71x is operated.
[0016] The drive unit 7 also includes a Z-axis servo motor 71z, a detector 72z, and a Z-axis servo control unit 73z. The Z-axis servo motor 71z moves the tool along the Z-axis defined by the numerical control device 1. The detector 72z detects the position and speed of the Z-axis servo motor 71z. The Z-axis servo control unit 73z performs feedback control of the Z-axis servo motor 71z based on commands from the numerical control device 1 and various information, such as position information and speed information, detected by the detector 72z. The Z-axis servo control unit 73z controls the movement of the tool in the Z-axis direction by performing feedback control of the Z-axis servo motor 71z. The drive unit 7 outputs various information detected by the detector 72z to the control calculation unit 4 as Z-axis servo data. At this time, the Z-axis servo data includes, for example, the Z-axis feedback position and Z-axis feedback current, which are servo data when the Z-axis servo motor 71z is operated.
[0017] The machine tool may have one tool post, or two or more. When the machine tool has two or more tool posts, the drive unit 7 has two or more sets of an X-axis servo motor 71x, a detector 72x, and an X-axis servo control unit 73x, a Z-axis servo motor 71z, a detector 72z, and a Z-axis servo control unit 73z for each tool post.
[0018] The drive unit 7 also has a spindle motor 71s, a detector 72s, and a spindle control unit 73s. The spindle motor 71s rotates a spindle that rotates a workpiece. The detector 72s detects the position and rotation speed of the spindle motor 71s. The spindle control unit 73s performs feedback control of the spindle motor 71s based on commands from the numerical control device 1 and position information and speed information detected by the detector 72s. The spindle control unit 73s controls the rotation of the workpiece by performing feedback control of the spindle motor 71s. The rotation speed detected by the detector 72s corresponds to the rotation speed of the spindle motor 101s.
[0019] The machine tool may simultaneously machine two or more workpieces. When the machine tool simultaneously machines two or more workpieces, the drive unit 7 includes two or more sets of spindle motor 71s, detector 72s, and spindle control unit 73s. In this case, the machine tool includes, for example, two or more tool rests.
[0020] The input operation unit 2 is a means for inputting information to the control calculation unit 4. The input operation unit 2 is configured with input means such as a keyboard, buttons, or a mouse. The input operation unit 2 receives, for example, input of commands to the numerical control device 1 by an operator, input of machining program numbers, and input of parameters related to vibration cutting, and inputs the information to the control calculation unit 4. The input operation unit 2 may be separate from the numerical control device 1, and may, for example, input information input from a predetermined operation panel via a predetermined PLC (Programmable Logic Controller).
[0021] The output unit 3 is a means for outputting information from the control calculation unit 4. The output unit 3 is configured with a display means such as a liquid crystal display device. The output unit 3 displays information processed by the control calculation unit 4 on a display screen. In the embodiment, the output unit 3 is provided with a display means, but is not limited to this configuration. For example, when the numerical control device 1 is connected to a network, the output unit 3 may be a display device connected to the network or a display device of a computer. The output unit 3 may also be an audio device such as a speaker.
[0022] The control calculation unit 4 has an input control unit 41, a data setting unit 42, a memory unit 43, an output control unit 44, an analysis processing unit 45, a control signal processing unit 46, a PLC circuit unit 47, an interpolation processing unit 48, an acceleration / deceleration processing unit 49, and an axis data input / output unit 50. In this embodiment, the PLC circuit unit 47 is arranged inside the control calculation unit 4, but the PLC circuit unit 47 may also be arranged outside the control calculation unit 4.
[0023] The input control unit 41 receives information input from the input operation unit 2. The data setting unit 42 stores the information received by the input control unit 41 in the storage unit 43. That is, the input information received by the input operation unit 2 is written into the storage unit 43 via the input control unit 41 and the data setting unit 42.
[0024] The storage unit 43 has a parameter storage area 431 , a machining program storage area 432 , a display data storage area 433 , and a shared area 434 .
[0025] The parameter storage area 431 stores parameters used in the processing of the control calculation unit 4, specifically, control parameters for operating the numerical control device 1, servo parameters, tool data, and parameters related to vibration cutting. Parameters related to vibration cutting include, for example, vibration frequency and amplitude-feed ratio. The amplitude-feed ratio is, for example, the ratio between the vibration amplitude and the feed amount of the tool per one rotation of the spindle. The amplitude-feed ratio may also be expressed as the ratio between the vibration amplitude and the movement amount of the tool per vibration.
[0026] A machining program including one or more blocks used for machining a workpiece is stored in the machining program storage area 432. In this embodiment, the machining program includes a movement command that moves a tool, a rotation command that rotates a spindle, etc. The movement command includes, for example, a position command that describes information indicating a start position, a destination position, etc.
[0027] The display data memory area 433 stores screen display data to be displayed on the output unit 3. The screen display data is data for displaying information on the output unit 3. The shared area 434 stores, for example, data that is temporarily used when the control calculation unit 4 executes each process. For example, the machining program number accepted by the input operation unit 2 is written to the shared area 434 of the memory unit 43 via the input control unit 41 and the data setting unit 42. The shared area 434 also stores, for example, servo data including the FB position, FB current, etc. output from the drive unit 7. The FB position is, for example, servo data indicating the current position of the workpiece. The FB current is, for example, servo data indicating the current sent to the X-axis servo motor 71x and / or the Z-axis servo motor 71z, etc. The servo data includes the spindle phase when the FB position, FB current, etc. are detected.
[0028] The output control unit 44 causes the output unit 3 to display the screen display data stored in the display data storage area 433 of the storage unit 43 .
[0029] In the control calculation unit 4, the analysis processing unit 45, the control signal processing unit 46, and the interpolation processing unit 48 are connected to one another via the storage unit 43, and information is written and read out via the storage unit 43. In the following, when describing the writing and reading of information between the analysis processing unit 45, the control signal processing unit 46, and the interpolation processing unit 48, the intermediation of the storage unit 43 may be omitted.
[0030] The analysis processing unit 45 is connected to the memory unit 43. The analysis processing unit 45 refers to the machining program number written in the shared area 434 of the memory unit 43, and when it receives a selected machining program number from the shared area 434, it reads out the selected machining program from the machining program storage area 432 and performs analysis processing on each block (each line) of the machining program. The analysis processing unit 45 analyzes S-codes which are spindle motor rotation speed commands, G-codes which are commands related to axis movement etc., and M-codes which are machine operation commands, etc. When the analysis processing unit 45 finishes analysis processing on each line of the machining program, it writes the analysis results of the S-codes, G-codes, M-codes etc. into the shared area 434 of the memory unit 43. Write.
[0031] Furthermore, when an S code is included in the machining program, the analysis processing unit 45 analyzes the S code to acquire the spindle rotation speed, which is the rotation speed of the spindle. Then, the analysis processing unit 45 writes the acquired spindle rotation speed into the shared area 434 of the storage unit 43.
[0032] Furthermore, when a machining program includes a G-code, the analysis processing unit 45 analyzes the G-code to acquire movement conditions, which are conditions for tool feed for moving the tool to the machining position. These movement conditions are indicated by the speed in the X-axis and Z-axis directions at which the tool post is moved, and the positions in the X-axis and Z-axis directions at which the tool post is moved. The analysis processing unit 45 then writes the acquired movement conditions into the shared area 434 of the memory unit 43.
[0033] Furthermore, when the machining program includes a G-code for vibration cutting, the analysis processing unit 45 analyzes the G-code to acquire vibration conditions including, for example, a vibration frequency, which is a frequency at which the tool is vibrated in vibration cutting, and an amplitude-feed ratio. Then, the analysis processing unit 45 writes the acquired vibration conditions into the shared area 434 of the storage unit 43.
[0034] The control signal processing unit 46 is connected to the PLC circuit unit 47, and receives signal information from the PLC circuit unit 47, such as relays that operate the machine tool. The control signal processing unit 46 writes the received signal information into the shared area 434 of the memory unit 43. The interpolation processing unit 48 references this signal information during machining operation. Furthermore, when an auxiliary command is output to the shared area 434 by the analysis processing unit 45, the control signal processing unit 46 reads this auxiliary command from the shared area 434 and sends it to the PLC circuit unit 47. The auxiliary command is a command other than a command that operates a drive axis, which is a numerically controlled axis. The auxiliary command is, for example, an M code or a T code.
[0035] The interpolation processing unit 48 is connected to the storage unit 43 and the acceleration / deceleration processing unit 49. The interpolation processing unit 48 refers to the shared area 434 of the storage unit 43. When the analysis processing unit 45 writes the movement conditions and the vibration conditions to the shared area 434, the interpolation processing unit 48 reads the movement conditions and the vibration conditions and generates an X-axis command vibration movement amount, which is a command vibration movement amount in the X-axis direction, and a Z-axis command vibration movement amount, which is a command vibration movement amount in the Z-axis direction, using the read movement conditions and vibration conditions. Note that the X-axis command vibration movement amount and the Z-axis command vibration movement amount are also collectively referred to simply as command vibration movement amount. The interpolation processing unit 48 writes the generated command vibration movement amount to the shared area 434 of the storage unit 43 and outputs it to the acceleration / deceleration processing unit 49. Furthermore, when the interpolation processing unit 48 acquires servo data from the acceleration / deceleration processing unit 49, it writes the acquired servo data to the shared area 434 of the storage unit 43.
[0036] The acceleration / deceleration processing unit 49 is connected to the interpolation processing unit 48 and the axis data input / output unit 50. The acceleration / deceleration processing unit 49 converts the command vibration movement amount output from the interpolation processing unit 48 into a movement command per unit time that takes into account acceleration and deceleration in accordance with a pre-specified acceleration / deceleration pattern, and outputs this converted movement command to the axis data input / output unit 50. In addition, the acceleration / deceleration processing unit 49 outputs the servo data output from the axis data input / output unit 50 to the interpolation processing unit 48.
[0037] The axis data input / output unit 50 is connected to the acceleration / deceleration processing unit 49 and the driving unit 7. The axis data input / output unit 50 outputs the movement command per unit time output from the acceleration / deceleration processing unit 49 to the driving unit 7. In addition, the axis data input / output unit 50 outputs the servo data output from the driving unit 7 to the acceleration / deceleration processing unit 49.
[0038] The interpolation processing unit 48 according to this embodiment adjusts the amplitude-feed ratio in consideration of the data received from the driving unit 7. Specifically, the interpolation processing unit 48 has an amplitude-feed ratio adjusting unit 481, a waveform generating unit 482, and a vibration movement amount generating unit 483.
[0039] During the execution of vibration cutting in which the spindle makes one revolution in a predetermined cycle, the amplitude feed ratio adjustment unit 481 compares first servo data acquired in a first period synchronized with the predetermined cycle with second servo data acquired in a second period which is the period of the cycle next to the first period, and based on the comparison result, gradually changes the amplitude feed ratio so that chips generated during vibration cutting are shredded, i.e., so that an optimal idle period occurs.
[0040] The waveform generating unit 482 generates a vibration waveform, which is a basic waveform of vibration, based on the information acquired from the analysis processing unit 45. When the amplitude-feed ratio adjusting unit 481 changes the vibration conditions including the amplitude-feed ratio, the waveform generating unit 482 generates a vibration waveform based on the changed vibration conditions.
[0041] The vibration movement amount generating unit 483 calculates, for example, a vibration movement amount on the X axis using the vibration waveform generated by the waveform generating unit 482 and the movement path of the tool. Specifically, the vibration movement amount generating unit 483 calculates, for each vibration, a vibration forward position obtained by adding the amplitude of the vibration waveform to the movement path of the tool, and a vibration backward position obtained by subtracting the amplitude of the vibration waveform from the movement path of the tool, and generates a vibration movement amount on the X axis.
[0042] The vibration movement amount generated by the vibration movement amount generation unit 483 is sent to the drive unit 7 via the acceleration / deceleration processing unit 49 and the axis data input / output unit 50. The drive unit 7 controls, for example, the X-axis servo motor 71x based on the vibration movement amount sent from the vibration movement amount generation unit 485, thereby performing vibration cutting.
[0043] The processing executed by the numerical control device 1 configured as above will be described with reference to FIG. 3. FIG. 3 is a diagram for explaining an example of the operation of the numerical control device 1 according to the embodiment. FIG. 3 shows a flowchart for gradually changing the amplitude-feed ratio. In FIG. 3, when the initial value of the amplitude-feed ratio is set, the amplitude-feed ratio adjustment unit 481 performs control such that the amplitude-feed ratio is gradually increased if no idle period occurs, and conversely, performs control such that the amplitude-feed ratio is gradually decreased if an idle period occurs. Specific operations will be described below. Note that in this embodiment, it is assumed that vibration conditions other than the amplitude-feed ratio are not changed among the parameters related to vibration cutting.
[0044] Referring to FIG. 3, when the vibration cutting process is started, the amplitude-feed ratio adjusting unit 481 sets the value of the amplitude-feed ratio to, for example, "1" (step S1).
[0045] After the value of the amplitude-feed ratio is set in step S1, the amplitude-feed ratio adjuster 481 determines whether the spindle has made one or more revolutions with the vibration amplitude stable (step S2).
[0046] When it is determined that the spindle has made one or more revolutions (Yes in step S2), the amplitude-feed ratio adjustment unit 481 compares the servo data (step S3). Specifically, the amplitude-feed ratio adjustment unit 481 acquires first servo data acquired in a first period corresponding to one revolution of the spindle after the spindle has made one or more revolutions, and second servo data acquired in a second period which is the period of the cycle next to the first period. The amplitude-feed ratio adjustment unit 481 compares the acquired first servo data with the second servo data.
[0047] Next, the amplitude-feed ratio adjusting unit 481 determines whether or not a swing-out period has occurred based on the comparison result (step S4). Specifically, the amplitude-feed ratio adjusting unit 481 compares the FB position and FB current included in the first servo data with the FB position and FB current included in the second servo data, and determines whether or not a swing-out period has occurred.
[0048] A method for determining whether or not a miss period has occurred will be described below with reference to Figs. 4 and 5. Fig. 4 is a diagram for explaining an example of a method for determining a miss period according to an embodiment. Fig. 4 shows the comparison result of servo data when it is determined that a miss period has not occurred. Fig. 5 is a diagram for explaining another example of a method for determining a miss period according to an embodiment. Fig. 5 shows the comparison result of servo data when it is determined that a miss period has occurred.
[0049] Figure 4 shows that there is no overlap between the waveform of FB position A contained in the first servo data and the waveform of FB position B contained in the second servo data. Figure 4 also shows that both FB current A contained in the first servo data and FB current B contained in the second servo data are greater than the FB current reference value and are constant across all spindle phases. In other words, when vibration cutting is performed in the second period, which is the period following the first period, cutting is performed in direct contact with the workpiece body throughout the entire second period, and there is no period in which the blade misses the ball and breaks up the chips generated from the workpiece during the first period.
[0050] In this way, the amplitude feed ratio adjustment unit 481 determines that no idling period has occurred because there is no overlap between the waveform at FB position A and the waveform at FB position B, and FB current B is constant throughout the second period, etc. In this embodiment, the amplitude feed ratio adjustment unit 481 determines that no idling period has occurred based on the comparison result of the FB position and / or the FB current.
[0051] Figure 5 shows that there is an overlap between the waveform of FB position A included in the first servo data and the waveform of FB position B included in the second servo data. Specifically, overlap occurs between the waveform of FB position A and the waveform of FB position B during periods T1 and T2. Figure 5 also shows that FB current A included in the first servo data is greater than the FB current reference value and is constant across all spindle phases. On the other hand, FB current B included in the second servo data is smaller than FB current A during periods T1 and T2 where the overlap occurs, and in some sections it is below the FB current reference value.
[0052] In this way, the amplitude feed ratio adjustment unit 481 determines that a swing-out period has occurred based on the fact that there is an overlap between the waveform at FB position A and the waveform at FB position B, that FB current B is lower than the value of FB current A during part of the second period, etc. In this embodiment, the amplitude feed ratio adjustment unit 481 determines that a swing-out period has occurred based on the comparison result of the FB position and / or the FB current.
[0053] 3, when it is determined that no idle period has occurred (No in step S4), the amplitude-feed ratio adjuster 481 increases the value of the amplitude-feed ratio by, for example, 0.1 (step S5), which causes the value of the amplitude-feed ratio to become 1.1.
[0054] After step S5, the amplitude-feed ratio adjustment unit 481 executes steps S6 to S8. The processing contents of steps S6, S7, and S8 are the same as the processing contents of steps S2, S3, and S4, respectively. If the amplitude-feed ratio adjustment unit 481 determines in step S8 that an idle period has occurred (Yes in step S8), it ends the adjustment of the amplitude-feed ratio and executes subsequent vibration cutting at the amplitude-feed ratio set at this time.
[0055] If it is determined in step S8 that no idle period has occurred (No in step S8), the amplitude-feed ratio adjustment unit 481 executes steps S5 to S8 again. At this time, the value of the amplitude-feed ratio is increased by another 0.1 to 1.2. In this way, when the initial value of the amplitude-feed ratio is set, if no idle period has occurred, the amplitude-feed ratio adjustment unit 481 performs control such that the amplitude-feed ratio is gradually increased, thereby adjusting the amplitude-feed ratio to an optimal value so that chips generated during vibration cutting are shredded.
[0056] FIG. 6 is a diagram illustrating an example of a gradual change in the amplitude-feed ratio according to the embodiment. FIG. 6 shows the amplitude-feed ratio adjustment unit 481 gradually increasing the amplitude-feed ratio. In FIG. 6, the amplitude-feed ratio adjustment unit 481 gradually increases the amplitude-feed ratio from the initial value of "1.0" to "1.2." When the amplitude-feed ratio is set to "1.2," the amplitude-feed ratio adjustment unit 481 determines that a missed vibration period has occurred based on the comparison between the feed-band position A and the feed-band position B, terminates the amplitude-feed ratio adjustment, and performs subsequent vibration cutting using the amplitude-feed ratio set at that time. Note that in FIG. 6, times T11, T12, and T13 indicate the start times of comparison between the feed-band position A and the feed-band position B when the amplitude-feed ratio is "1," the amplitude-feed ratio is "1.1," and the amplitude-feed ratio is "1.2," respectively. Also, F1, F2, and F3 in FIG. 6 indicate the tool feed amount per spindle rotation, respectively. In this embodiment, the values of F1, F2, and F3 are equal.
[0057] 3, when it is determined that an idle period has occurred (Yes in step S4), the amplitude-feed ratio adjuster 481 decreases the value of the amplitude-feed ratio by, for example, 0.1 (step S9). As a result, the value of the amplitude-feed ratio becomes 0.9.
[0058] After step S9, the amplitude-feed ratio adjusting unit 481 executes steps S10 to S12. The processing contents of steps S10, S11, and S12 are similar to the processing contents of steps S2, S3, and S4, respectively.
[0059] If the amplitude feed ratio adjustment unit 481 determines in step S12 that no idle period has occurred (No in step S12), it increases the value of the amplitude feed ratio by, for example, 0.1 (step S13), terminates the adjustment of the amplitude feed ratio, and performs subsequent vibration cutting at the amplitude feed ratio set at this time.
[0060] If it is determined in step S12 that an idle period is occurring (No in step S12), the amplitude-feed ratio adjustment unit 481 executes steps S9 to S12 again. At this time, the value of the amplitude-feed ratio is further decreased by 0.1 to 0.8. In this way, when the initial value of the amplitude-feed ratio is set, the amplitude-feed ratio adjustment unit 481 performs control to gradually decrease the amplitude-feed ratio if an idle period is occurring, thereby adjusting the amplitude-feed ratio to an optimal value so that chips generated during vibration cutting are shredded.
[0061] According to the above embodiment, during vibration cutting in which the spindle rotates once in a predetermined cycle, the amplitude feed ratio adjustment unit 481 of the numerical control device 1 compares first servo data acquired in a first period synchronized with the predetermined cycle with second servo data acquired in a second period which is the period of the cycle next to the first period, and based on the comparison result, gradually changes the amplitude feed ratio, which is the ratio between the vibration amplitude of the vibration cutting and the feed amount of the tool per rotation of the spindle, so that chips generated during vibration cutting are shredded.
[0062] This allows the control calculation unit 4 to adjust the amplitude feed ratio to an optimum value while performing vibration cutting, for example, without bothering the user.
[0063] Therefore, according to this embodiment, it is possible to reduce the burden on the user when setting vibration conditions related to vibration cutting.
[0064] In the above embodiment, the output control unit 44 may output the amplitude-feed ratio set at each point in time when the amplitude-feed ratio adjustment unit 481 is adjusting the amplitude-feed ratio. This allows the user to recognize that the amplitude-feed ratio has been adjusted by checking whether the amplitude-feed ratio has been increased, decreased, or fixed.
[0065] In the above embodiment, the amplitude-feed ratio adjustment unit 481 may successively compare the first servo data with the second servo data, and if it is determined that an idle period has occurred after a predetermined number of comparisons, it may stop changing the amplitude-feed ratio. This reduces the possibility of erroneous determination due to noise in the servo data, and ensures that chips are cut off reliably.
[0066] Furthermore, in the above embodiment, association information that associates the first servo data, the second servo data, and vibration conditions including the amplitude-feed ratio when an idling period occurs may be stored in the storage unit 43. Then, when the vibration conditions included in the association information stored in the storage unit 43 are the same as the vibration conditions of the vibration cutting to be performed, the amplitude-feed ratio adjustment unit 481 may set the amplitude-feed ratio based on the association information. This makes it possible to shorten the time required to adjust the amplitude-feed ratio and set an optimal value.
[0067] In the above embodiment, the output control unit 44 may use upper and lower limit values set in advance for the amplitude-feed ratio, and output an alarm when the amplitude-feed ratio exceeds the set upper or lower limit value. This makes it possible to prevent the amplitude-feed ratio from being set to an unintended value by the user.
[0068] In the above embodiment, the amplitude-feed ratio adjusting unit 481 may adjust the amplitude-feed ratio by, for example, executing a new G code. amplitude If the vibration conditions other than the feed ratio, such as the vibration frequency or the feed amount, are changed, the adjustment of the amplitude-feed ratio may be re-executed, i.e., restarted from the beginning. At this time, for example, the amplitude-feed ratio set during the adjustment may be readjusted as the initial value. Note that the initial value of the amplitude-feed ratio may be the one contained in the new G-code. This makes it possible to adjust the amplitude-feed ratio to shred chips in vibration cutting, even if the vibration conditions other than the amplitude-feed ratio are changed during the adjustment of the amplitude-feed ratio.
[0069] Next, a hardware configuration of the numerical control device 1 according to the embodiment will be described. The control calculation unit 4 of the numerical control device 1 is realized using a processing circuit. The processing circuit may be realized by dedicated hardware or may be a control circuit using a CPU (Central Processing Unit). good.
[0070] When the above processing circuits are realized by dedicated hardware, they are The processing circuit 500 is realized using the processing circuit 500. FIG. 7 is a diagram showing dedicated hardware for realizing the functions of the numerical control device 1 according to the embodiment. The processing circuit 500 may be 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 the like. ), or a combination of these.
[0071] When the above processing circuit is realized by a control circuit using a CPU, this control circuit may be, for example, The control circuit 600 has a configuration shown in Fig. 8. Fig. 8 is a diagram showing the configuration of the control circuit 600 for realizing the functions of the numerical control device 1 according to the embodiment. As shown in Fig. 8, the control circuit 600 includes a processor 610 and a memory 620. The processor 610 is a CPU, and is also called a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a DSP (Digital Signal Processor), etc. The memory 620 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 (Electrically EPROM), a magnetic disk, a flexible disk, an optical disk, a compact disk, a minidisk, or a DVD (Digital Versatile Disk).
[0072] When the above processing circuit is realized using the control circuit 600, it is realized by the processor 610 reading and executing a program corresponding to the processing of each component, which is stored in the memory 620. The memory 620 is also used as a temporary memory for each process executed by the processor 610. The program executed by the processor 610 may be provided in a state stored in a storage medium, or may be provided via a communication path such as the Internet.
[0073] The present disclosure allows various embodiments and modifications without departing from the broad spirit and scope of the present disclosure. Furthermore, the above-described embodiments are intended to explain the present disclosure and do not limit the scope of the present disclosure. That is, the scope of the present disclosure is defined by the claims, not the embodiments. Various modifications made within the scope of the claims and the meaning of equivalent disclosures are considered to be within the scope of the present disclosure. [Industrial Applicability]
[0074] According to the present disclosure, it is possible to provide a numerical control device that can reduce the burden on the user when setting vibration conditions related to vibration cutting. [Explanation of symbols]
[0075] 1 Numerical control device, 2 Input operation unit, 3 Output unit, 4 Control calculation unit, 41 Input control unit, 42 Data setting unit, 43 Memory unit, 44 Output control unit, 45 Analysis processing unit, 46 Control signal processing unit, 47 PLC circuit unit, 48 Interpolation processing unit, 481 Amplitude feed ratio adjustment unit, 482 Waveform generation unit, 483 Vibration movement amount generation unit, 49 Acceleration / deceleration processing unit, 50 Axis data input / output unit, 7 Drive unit, 71x X-axis servo motor, 72x Detector, 73x X-axis servo control unit, 71z Z-axis servo motor, 72z Detector, 73z Z-axis servo control unit.
Claims
1. A numerical control device that causes a machine tool to perform vibration cutting, an amplitude-feed ratio adjusting section that, during execution of the vibration cutting in which the spindle makes one revolution in a predetermined cycle, compares first servo data acquired in a first period synchronized with the predetermined cycle with second servo data acquired in a second period which is a period of the cycle next to the first period, and gradually changes an amplitude-feed ratio, which is the ratio between the vibration amplitude of the vibration cutting and the feed amount of the tool per one revolution of the spindle, based on the comparison result, so that chips generated during the vibration cutting are shredded; A numerical control device having:
2. An output control unit that outputs the set amplitude feed ratio is further provided. The numerical control device according to claim 1 .
3. the amplitude feed ratio adjustment unit sequentially compares the first servo data with the second servo data, and stops changing the amplitude feed ratio when it is determined that an idle period has occurred in a predetermined number of comparison results. The numerical control device according to claim 1 or 2.
4. a storage unit that stores association information that associates the first servo data, the second servo data, and vibration conditions including an amplitude feed ratio when an idling period occurs; the amplitude-feed ratio adjustment unit sets the amplitude-feed ratio based on the association information when the vibration conditions included in the association information stored in the storage unit are the same as the vibration conditions of the vibration cutting to be performed. The numerical control device according to claim 1 or 2.
5. an output control unit that uses a preset upper limit value and a preset lower limit value for the amplitude feed ratio and outputs an alarm when the amplitude feed ratio becomes equal to or greater than the upper limit value or the lower limit value; The numerical control device according to claim 1 .
6. the amplitude-feed ratio adjusting unit re-adjusts the amplitude-feed ratio when a vibration condition other than the amplitude-feed ratio is changed during adjustment of the amplitude-feed ratio. The numerical control device according to claim 1 or 2.
7. A numerical control method for causing a machine tool to perform vibration cutting, comprising: During execution of the vibration cutting in which the spindle makes one revolution in a predetermined cycle, first servo data acquired in a first period synchronized with the predetermined cycle is compared with second servo data acquired in a second period which is a cycle period following the first period, and based on the comparison result, gradually change an amplitude feed ratio which is a ratio between the vibration amplitude of the vibration cutting and the feed amount of the tool per one revolution of the spindle so that chips generated during the vibration cutting are shredded. Includes numerical control methods.
Citation Information
Patent Citations
Numerical control device and numerical control method
JP6984790B1
Numerical control device, learning device, inference device, and numerical control method
JP7158604B1
Driving condition determination device and driving condition determination method
JP7313585B1
Numerical control device, numerical control method, and machine learning device
JP6843314B1
JPP6984790B