Machining program correction device

WO2026159794A1PCT designated stage Publication Date: 2026-07-30FANUC LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
FANUC LTD
Filing Date
2025-01-22
Publication Date
2026-07-30

Smart Images

  • Figure JP2025001855_30072026_PF_FP_ABST
    Figure JP2025001855_30072026_PF_FP_ABST
Patent Text Reader

Abstract

Provided is a technique capable of preventing fretting of a ball screw in oscillation cutting processing in a processing program correction device for correcting a processing program. A processing program correction device 10 comprises: an oscillation cutting information acquisition unit 11 that acquires, from a processing program, an oscillation cutting command including at least the total number of oscillations and a cutting distance; an acquisition unit 12 that acquires ball screw mechanism part information on a structure of a ball screw 1 and a threshold value of the number of oscillations allowed within a determination reference distance that is a distance by which a nut part 35 of the ball screw 1 translationally moves due to rolling of a ball 40 in the ball screw 1 by a constant rotation angle; a determination reference distance calculation unit 13 that calculates the determination reference distance on the basis of the ball screw mechanism part information; a determination unit 14 that, on the basis of an oscillation cutting command, a determination reference distance, and a threshold value of the number of oscillations, determines that there is a possibility of wear when the number of oscillations by the oscillation cutting command exceeds the threshold value of the number of oscillations within the determination reference distance; and a correction unit 16 that, when the determination unit 14 determines that there is a possibility of wear, corrects at least one of a processing condition and a processing operation designated by a processing program so that wear does not occur.
Need to check novelty before this filing date? Find Prior Art

Description

Processing Program Correction Device

[0001] The present disclosure relates to a processing program correction device.

[0002] Conventionally, there is a known technique in which, during cutting, a tool is slightly oscillated in the feed axis direction in synchronization with the rotation of a workpiece to cause the cutting edge to perform idle oscillation and cut chips into fine pieces, and the machining by a machine tool is performed by specifying the oscillatory cutting in a machining program. For example, Patent Documents 1 to 3 describe this type of technique.

[0003] Japanese Patent Application Laid-Open No. 2019-136852, Japanese Patent Application Laid-Open No. 2002-059332, International Publication No. 2015 / 140905

[0004] By the way, in oscillatory cutting, a local reciprocating motion occurs, and there is a possibility that early wear called fretting occurs in the nut portion of the ball screw, the bearing portion, etc. Fretting occurs when the lubricating oil is excluded from the contact portion between the ball and the ball groove in the repeated motion (oscillatory motion) of a minute stroke in which the ball does not even rotate half a turn, and the metals come into direct contact with each other. For example, fretting is likely to occur when two-axis oscillation occurs during taper machining.

[0005] Generally, the creator of a machining program that specifies machining conditions such as oscillatory cutting does not grasp information regarding the specifications of the ball screw, such as the lead and ball diameter of the ball screw of the machine used for machining. Therefore, there has been a problem that it is difficult for the creator of the machining program to know whether fretting actually occurs when the machine tool is oscillated under the specified machining conditions.

[0006] The present disclosure has been made in view of the above problems, and an object thereof is to provide a technique capable of preventing fretting of a ball screw in oscillatory cutting in a processing program correction device that corrects a processing program.

[0007] This disclosure relates to a machining program modification device comprising: an oscillating cutting information acquisition unit that acquires an oscillating cutting command from a machining program that includes at least the total number of oscillations and the cutting distance; an acquisition unit that acquires ball screw mechanism information relating to the structure of a ball screw and a threshold value for the number of oscillations that are permissible within a judgment criterion distance, which is the distance the nut portion of the ball screw translates to as the balls inside the ball screw roll at a certain rotation angle; a judgment criterion distance calculation unit that calculates the judgment criterion distance based on the ball screw mechanism information; a determination unit that determines that there is a possibility of wear if the number of oscillations due to the oscillating cutting command exceeds the threshold value for the number of oscillations within the judgment criterion distance based on the oscillating cutting command, the judgment criterion distance, and the threshold value for the number of oscillations; and a modification unit that, when the determination unit determines that there is a possibility of wear, modifies at least one of the machining conditions and machining operations specified in the machining program so that the wear does not occur.

[0008] This is a functional block diagram of the machining program modification device according to the first embodiment. This figure shows an example of a machining program including an oscillating cutting command that is the target of modification by the machining program modification device. This is a schematic diagram illustrating a method for calculating a judgment criterion distance based on lead and root diameter. This is a table showing an example of a judgment criterion distance corresponding to a ball screw. This is a schematic diagram showing an example of the target shape of a workpiece to be tapered. This is a table showing an example of a judgment on whether the number of oscillations exceeds a threshold number of oscillations and wear avoidance conditions. This is a functional block diagram of the machining program modification device according to the second embodiment. This figure shows an example of a machining program including an oscillating cutting command that is the target of modification by the machining program modification device. This is a schematic diagram showing the operation path of the tool based on the machining program before modification. This figure shows an example of the modification content of the machining program by the avoidance operation command generation unit. This is a schematic diagram showing the first operation path, second operation path, third operation path, and fourth operation path of the tool based on the modified machining program. This is a schematic diagram showing the positional relationship between the screw and the ball to explain an example of a method for calculating the diameter of the ball.

[0009] The embodiments of this disclosure will be described in detail below with reference to the drawings. In the description of the second and subsequent embodiments, components common to the first embodiment will be denoted by the same reference numerals, and their descriptions will be omitted as appropriate.

[0010] [First Embodiment] Figure 1 is a functional block diagram of the machining program modification device 10 according to the first embodiment.

[0011] The machining program modification device 10 modifies the machining program, including the oscillating cutting command. The machining program is created by the machining program creator to specify machining conditions for the machine tool. The machine tool performs oscillating cutting, which generates air cuts and shreds chips by driving a ball screw based on the machining conditions specified in the machining program, causing the tool and workpiece to oscillate relative to each other during machining.

[0012] The processing program modification device 10 is configured, for example, using a computer equipped with memory such as ROM (read-only memory) and RAM (random access memory), a CPU (central processing unit), and a communication control unit, all connected to each other via a bus.

[0013] The machining program modification device 10 is, for example, a computer implemented in a numerical control device that controls a machine tool. The machining program modification device 10 may consist of an edge computer, cell computer, or host computer connected to the numerical control device via a wired / wireless network, or it may be implemented in a cloud server or the like.

[0014] In this embodiment, the CPU, memory, and control program stored in the memory of the machining program modification device 10 work together to realize a functional unit for modifying the machining program.

[0015] As shown in Figure 1, the machining program modification device 10 includes, as functional units, an oscillating cutting information acquisition unit 11, an acquisition unit 12, a judgment criterion distance calculation unit 13, a judgment unit 14, a wear avoidance condition calculation unit 15, and a modification unit 16.

[0016] The oscillating cutting information acquisition unit 11 acquires an oscillating cutting command (oscillating cutting information) from the machining program, which includes at least the total number of oscillations and the cutting distance.

[0017] Here are some examples of information included in a machining program. A machining program includes information necessary for machining, such as spindle speed (1 / min), feed rate per spindle revolution (mm / rev), machined shape (mm), tool relief path (mm), tool number for referencing information about the tool tip shape, and oscillation conditions. The feed rate per spindle revolution (mm / rev) can also be calculated by combining the spindle speed (1 / min) and the tool feed rate (mm / min). The feed rate per minute may also be included in the machining conditions. In addition, instead of feed rate, frequency parameter, and amplitude parameter, the forward amount, forward speed, retraction amount, retraction speed, control period, number of teeth, etc., may be included in the machining conditions.

[0018] The oscillation conditions include, at a minimum, a frequency parameter, which is information about the number of oscillations per revolution relative to the tool and workpiece, and an amplitude parameter, which is information about the oscillation amplitude relative to the feed amount per revolution relative to the tool and workpiece, as information for uniquely identifying the vibration waveform. The frequency parameter and amplitude parameter may also be the period parameter or the distance parameter of the forward and backward movement. These period parameters and distance parameters of the forward and backward movement may be determined from the forward speed, backward speed, forward distance, backward distance, spindle speed, control period, etc. The frequency parameter and amplitude parameter may also be determined from the spindle speed, feed rate per stroke, feed rate per minute, frequency multiplier, amplitude multiplier, etc. For example, the frequency parameter is the oscillation frequency f (Hz) or oscillation frequency multiplier I (times) per revolution of the spindle. The amplitude parameter may be the maximum amplitude / oscillation amplitude A (mm) or the oscillation amplitude multiplier K (times) which indicates the magnitude of the oscillation amplitude relative to the feed amount per revolution of the spindle.

[0019] Figure 2 shows an example of a machining program that includes an oscillating cutting command, which is the target of modification by the machining program modification device 10. Note that the term "target of modification" here means that the program may be modified depending on the determination result of the determination unit 14, which will be described later, and it does not necessarily mean that the program will be modified depending on the determination result.

[0020] Figure 2 shows an example where machining conditions are specified by a code. In Figure 2, "S1000" indicates a spindle speed of 1000 mins. -1 It specifies that "F0.1" is the distance the cutting edge moves during one rotation of the spindle (feed rate) (mm / rev), and that the feed rate is 1000 × 0.1 = 100 mm / min. "I1.4" is the vibration frequency of 1000 × 1.4 = 1400 min. -1 The specifications indicate that the amplitude is 0.1 × 1.2 = 0.12 mm. "Z-100.0" indicates that the displacement is 100 mm.

[0021] Next, the acquisition unit 12 will be described with reference to Figure 3. Figure 3 is a schematic diagram illustrating the method for calculating the judgment criterion distance based on the lead L and the root diameter V. Figure 3 schematically shows a ball screw 1 comprising a screw shaft 30, a ball 40 arranged in the groove 31 of the screw shaft 30, and a nut portion 35 that moves with the rotation of the screw shaft 30.

[0022] Furthermore, when one of the screw shaft 30 and nut portion 35 of the ball screw 1 rotates once, the other portion advances axially, and the lead is defined as the feed amount per rotation when the ball screw 1 is moving in a linear motion, and the root diameter (diameter of the root portion) of the screw shaft 30 is defined as V.

[0023] The acquisition unit 12 acquires ball screw mechanism information relating to the mechanism of the ball screw 1 and a threshold value for the number of oscillations allowed within the judgment criterion distance. The ball screw mechanism information in this embodiment includes at least the lead L of the ball screw 1 described above, the ball diameter r which is the radius of the ball 40, and the root diameter V of the screw shaft 30.

[0024] The lead L and ball diameter r of the ball screw 1 and the root diameter V of the screw shaft 30 are set, for example, based on catalog values. The ball screw mechanism information is stored in the machining program modification device 10 or a computer or database linked to the machining program modification device 10.

[0025] The threshold for the number of oscillations is a preset value used for the determination of the determination unit 14, which will be described later, and represents the acceptable number of oscillations at a certain distance (the determination criterion distance, which will be described later). The threshold for the number of oscillations is set empirically or theoretically, for example, to 1000, 1500, 2000, etc.

[0026] The judgment criterion distance calculation unit 13 acquires the ball screw mechanism information acquired by the acquisition unit 12 and calculates the judgment criterion distance based on the acquired ball screw mechanism information.

[0027] The judgment criterion distance is the distance that the nut portion 35 of the ball screw 1 moves translationally as the ball 40 inside the ball screw 1 rolls at a certain rotational angle. In this embodiment, the judgment criterion distance is the translational distance of the nut portion 35 as the ball 40 rolls at a rotational angle equivalent to half a rotation. Note that the rotational angle is not limited to a rotational angle equivalent to half a rotation.

[0028] Referring to Figure 3, the method for calculating the criterion distance will be explained. As shown on the left side of Figure 3, the outer circumference of the valley diameter V can be calculated by valley diameter V × π, so a hypothetical right triangle can be assumed that includes the outer circumference of the valley diameter V and the lead L. The hypotenuse of this right triangle is the direction in which the ball 40 rolls. Since the angle θ between the hypotenuse of the right triangle and the adjacent piece can be determined by the outer circumference of the valley diameter V and the lead L, the criterion distance can be calculated using the following formula 1.

[0029] r: radius of ball 40

[0030] Figure 4 is a table showing examples of judgment criteria distances corresponding to ball screw 1. Figure 4 shows examples of calculating judgment criteria distances for "ball screw A" and "ball screw B". In this example, "ball screw A" has a ball radius of 1.825 mm, a lead L of 10, and a root diameter V of 26.4, and the judgment criteria distance is calculated to be 0.686 using formula 1. Also, "ball screw B" has a ball radius of 3.572 mm, a lead L of 16, and a root diameter V of 34.1, and the judgment criteria distance is calculated to be 1.658 using formula 1.

[0031] The determination unit 14 acquires the oscillating cutting information acquired by the oscillating cutting information acquisition unit 11, the judgment criterion distance acquired by the judgment criterion distance calculation unit 13, and the threshold value for the number of oscillations acquired by the acquisition unit 12. The determination unit 14 determines whether the number of oscillations due to the oscillating cutting command exceeds the threshold value for the number of oscillations within the judgment criterion distance.

[0032] The determination unit 14 of this embodiment calculates the frequency within the reference distance, which is the frequency of vibration when moving the determination reference distance, based on the following formula 2.

[0033] J: Judgment criterion distance S: Spindle speed I: Oscillation frequency multiplier F: Feed rate α: Taper angle

[0034] The taper angle in Equation 2 is the taper angle α of the workpiece W as shown in Figure 5. Figure 5 is a schematic diagram showing an example of the target shape of the workpiece W to be tapered. Figure 5 shows the taper angle α when forming a taper on a workpiece W with target sizes of large diameter a and small diameter b.

[0035] In equation 2, the part S / 60 × I represents the frequency in s, and S × F / 60 × sinα represents the x-component of the velocity. The travel time (s) is obtained by dividing the reference judgment distance J by the x-component of the velocity, S × F / 60 × sinα. Note that there may be cases where the travel distance in the x-axis direction is less than the reference judgment distance. In this case, the actual processing time of the command block of interest shall be used as the travel time.

[0036] When the number of swings specified in the machining program exceeds the threshold value of the number of swings within the reference distance calculated from the swing cutting command, the determination unit 14 determines that there is a possibility of wear.

[0037] When the determination result of the determination unit 14 indicates a possibility of wear, the wear avoidance condition calculation unit 15 calculates machining conditions for avoiding wear. The machining conditions for avoiding wear are, for example, vibration frequency, spindle rotation speed, feed rate, etc. The machining conditions for avoiding wear are output to the correction unit 16.

[0038] The correction unit 16 performs a correction process that reflects the wear avoidance conditions on the machining program before correction.

[0039] FIG. 6 is a table showing an example of determining whether the number of swings exceeds the threshold value of the number of swings and wear avoidance conditions. In FIG. 6, examples of determination for "ball screw A" and "ball screw B" are shown for each taper angle. In this determination example, the threshold value of the number of swings is set to 1000.

[0040] In the example of FIG. 6, when using "ball screw A" and the taper angle α is 0 degrees, based on Equation 2, the vibration frequency within the reference distance is calculated to be 9, which is within the threshold value of the number of swings. Also, when using "ball screw A" and the taper angle α is 1 degree, based on Equation 2, the vibration frequency within the reference distance is calculated to be 550, which is within the threshold value of the number of swings. Also, when using "ball screw A" and the taper angle α is 3 degrees, based on Equation 2, the vibration frequency within the reference distance is calculated to be 183, which is within the threshold value of the number of swings.

[0041] Also, when using "ball screw B" and the taper angle α is 0 degrees, based on Equation 2, the vibration frequency within the reference distance is calculated to be 23, which is within the threshold value of the number of swings. Also, when using "ball screw B" and the taper angle α is 1 degree, based on Equation 2, the vibration frequency within the reference distance is calculated to be 1329, which is outside the threshold value of the number of swings. Also, when using "ball screw B" and the taper angle α is 3 degrees, based on Equation 2, the vibration frequency within the reference distance is calculated to be 443, which is within the threshold value of the number of swings.

[0042] In the example of FIG. 6, the determination unit 14 determines that there is wear because the number of swings is 1329 only when the taper angle α of the “ball screw B” is 1 degree, exceeding 1000 which is set as the threshold value of the number of swings. Then, the wear avoidance condition calculation unit 15 calculates, as a wear avoidance condition, that the swing frequency magnification I is less than 1.05.

[0043] In contrast, the correction unit 16 corrects the swing frequency magnification I of the machining program so that the swing frequency magnification I is less than 1.05. For example, when the swing frequency magnification I in the machining program is set to 1.4, the correction unit 16 corrects it to be less than 1.05 based on the set wear avoidance condition.

[0044] As described above, the machining program correction device 10 includes a swing cutting information acquisition unit 11 that acquires a swing cutting command including at least the total number of swings and the cutting distance from the machining program, a ball screw mechanism unit information regarding the structure of the ball screw 1, and an acquisition unit 12 that acquires a threshold value of the number of swings allowed within a determination reference distance that is the distance by which the nut portion 35 of the ball screw 1 translates when the ball 40 in the ball screw 1 rolls through a certain rotation angle, a determination reference distance calculation unit 13 that calculates the determination reference distance based on the ball screw mechanism unit information, a determination unit 14 that determines that there is a possibility of wear when the number of swings by the swing cutting command exceeds the threshold value of the number of swings within the determination reference distance based on the swing cutting command, the determination reference distance, and the threshold value of the number of swings, and a correction unit 16 that corrects at least one of the machining conditions and the machining operation specified in the machining program so that wear does not occur when the determination unit 14 determines that there is a possibility of wear.

[0045] Thereby, the determination reference distance set as the maximum stroke at which fretting may occur is calculated based on the ball screw mechanism unit information. Then, when there is a possibility that fretting occurs, the machining program is corrected so that fretting does not occur within the determination reference distance. Since the machining program is corrected so as not to be worn by fretting, the occurrence of wear in swing cutting can be effectively suppressed.

[0046] The machining program modification device 10 of the first embodiment further includes a wear avoidance condition calculation unit 15 that calculates wear avoidance conditions for setting machining conditions to avoid wear when the determination unit 14 determines that there is a possibility of wear, and the modification unit 16 reflects the wear avoidance conditions in the machining program. As a result the machining conditions are modified to suppress the occurrence of fretting of the ball screw 1, so that wear due to fretting can be suppressed more reliably.

[0047] Furthermore, in the first embodiment, the wear avoidance condition is information indicating the oscillation frequency, and the modification unit 16 modifies the machining program to perform oscillating cutting at a frequency lower than the information indicating the oscillation frequency calculated by the wear avoidance condition calculation unit 15. As a result, wear can be easily and reliably prevented by modifying the oscillation frequency multiplier of the machining conditions.

[0048] Furthermore, in the first embodiment, the ball screw mechanism information acquired by the acquisition unit 12 includes at least the lead L of the ball screw 1, the ball diameter r, and the root diameter V of the screw shaft 30. This allows for accurate calculation of the judgment criterion distance based on the lead L of the ball screw 1, the ball diameter r, and the root diameter V of the screw shaft 30.

[0049] In the first embodiment, the wear avoidance condition is information indicating the oscillation frequency, but it is not limited to this. The wear avoidance condition may be the spindle speed or feed rate, and the modification unit 16 may make modifications such as lowering the spindle speed or increasing the feed rate in the machining program.

[0050] [Second Embodiment] Figure 7 is a functional block diagram of the machining program modification device 10a according to the second embodiment. The machining program modification device 10a shown in Figure 7 is configured with the same hardware as the machining program modification device 10 of the first embodiment.

[0051] As shown in Figure 7, the machining program modification device 10a includes, as functional units, an oscillating cutting information acquisition unit 11, an acquisition unit 12, a judgment criterion distance calculation unit 13, a judgment unit 14, an avoidance operation command generation unit 25, and a modification unit 16a. The machining program modification device 10a of the second embodiment includes an avoidance operation command generation unit 25 in place of the wear avoidance condition calculation unit 15 of the first embodiment.

[0052] The processing performed by the oscillating cutting information acquisition unit 11, acquisition unit 12, judgment criterion distance calculation unit 13, and judgment unit 14 is the same as in the first embodiment. The avoidance action command generation unit 25, which differs from that of the first embodiment, will now be described.

[0053] The avoidance action command generation unit 25 generates an avoidance action command when the determination unit 14 determines that there is a possibility of wear. In this embodiment, the avoidance action command generation unit 25 generates an avoidance action command so that the avoidance action is performed at a distance where the number of oscillations becomes a threshold.

[0054] The avoidance action command generation unit 25 of this embodiment calculates the distance at which the number of oscillations becomes a threshold value based on the following formula 3.

[0055] C: Threshold for the number of oscillations F: Feed rate α: Taper angle I: Oscillation frequency multiplier

[0056] The avoidance action command generation unit 25 generates an avoidance action command that, for example, moves each axis (x-axis, z-axis, etc.) by 10 times the judgment criterion distance and then returns to the original position. The avoidance action command generated by the avoidance action command generation unit 25 is output to the modification unit 16a.

[0057] The modification unit 16a performs a modification process on the machining program before modification to reflect the avoidance operation command.

[0058] Next, we will explain with specific examples the avoidance action commands generated by the avoidance action command generation unit 25 and the modification process performed by the modification unit 16a.

[0059] Figure 8 shows an example of a machining program that includes an oscillating cutting command, which is the target of modification by the machining program modification device 10a. In Figure 8, "S1000" indicates a spindle rotation speed of 1000 mins -1 It specifies that the feed rate is 1000 × 0.1 = 100 mm / min. "I1.4" specifies that the vibration frequency is 1000 × 1.4 = 1400 min. -1 This specifies that the amplitude is 0.1 × 1.2 = 0.12 mm.

[0060] In Figure 8, the block 90 enclosed by the dashed line has its coordinates specified as "X1.745 Z-99.984" along with the feed rate. This "X1.745 Z-99.984" is the command for when the taper angle α is 1 degree. In other words, the machining program in Figure 8 includes an oscillating cutting command for a taper angle α of 1 degree in the target shape of the workpiece W.

[0061] The determination unit 14 determines that the machining program in Figure 8 needs to be modified, similar to the case where the taper angle α in Figure 6 is 1 degree. Upon receiving this determination, the avoidance action command generation unit 25 generates an avoidance action command.

[0062] Referring to Figures 9 to 11, the correction process based on avoidance operation commands will be explained. Figure 9 is a schematic diagram showing the tool's motion path 91 based on the machining program before correction. As shown by the dashed arrow in Figure 9, the tool's motion path 91 based on the machining program before correction is a linear motion corresponding to the target taper shape of the workpiece W.

[0063] Figure 10 shows an example of the modifications made to the machining program by the avoidance action command generation unit 25. Figure 11 is a schematic diagram showing the first operation path 91a, second operation path 91b, third operation path 91c, and fourth operation path 91d of the tool based on the modified machining program.

[0064] As shown in Figure 10, the modification unit 16a performs a modification process that divides the pre-modification block 90 of the machining program into four stages: the first block 90a, the second block 90b, the third block 90c, and the fourth block 90d. This modification process is performed based on avoidance operation commands generated by the avoidance operation command generation unit 25. As a result of this modification process, as shown in Figure 11, the pre-modification tool operation path 91 is divided into the first operation path 91a, the second operation path 91b, the third operation path 91c, and the fourth operation path 91d.

[0065] The first block 90a is a command to move the tool along the first operation path 91a shown in Figure 11, using the command "G01 X1.247 Z-71.418 F0.1". The first operation path 91a is the same as the operation path 91 before modification up to a certain point, and the endpoint is set based on a distance where the number of oscillations becomes a threshold. The first operation path 91a is also a path that is traversed in the machining program before modification.

[0066] The second block 90b is a command to move the tool along the second operation path 91b shown in Figure 11, indicated by "G00 G91 X16.58 Z16.58". The second operation path 91b is an avoidance operation path that moves the tool to a position away from the end point of the first operation path 91a relative to the workpiece W. The second operation path 91b is a path that is not taken in the machining program before modification.

[0067] The third block 90c is a command to move the tool along the third operation path 91c shown in Figure 11, indicated by "G00 G91 X-16.58 Z-16.58". The third operation path 91c is the return operation path that returns the tool, which has been moved to the avoidance position by the second operation path 91b, to the position where it contacts the workpiece W. The third operation path 91c is a path that is not traversed in the machining program before modification.

[0068] The fourth block 90d is a command to move the tool along the fourth operation path 91d shown in Figure 11, indicated by "G01 X1.745 Z-99.984 F0.1". The fourth operation path 91d is the path through which the tool, which has returned to the return position where it contacts the workpiece W via the third operation path 91c, moves to its final destination. The fourth operation path 91d is also a path that is traversed in the machining program before modification.

[0069] As shown in Figures 10 and 11, by modifying the machining program, the tool's movement will be such that it avoids fretting, which was not present in the original machining program.

[0070] Next, we will explain how to calculate the diameter of the ball 40 when its diameter is not listed in the catalog or other documentation. Even if the diameter of the ball 40 is unknown, its diameter can be estimated based on the deepest part of the groove 31 of the screw shaft 30 and the outer diameter of the screw shaft 30.

[0071] Figure 12 is a schematic diagram showing the positional relationship between the screw shaft 30 and the ball 40 to illustrate an example of a method for calculating the diameter of the ball 40. Figure 12 shows the ball 40 positioned in the groove 31 of the screw shaft 30.

[0072] If the diameter of the ball 40 is not specified, the radius of the ball 40 can be calculated using the following formula 4. If the groove 31 of the screw shaft 30 has a deep groove that is close to a V-shape, a gap may be formed between the deepest part of the groove 31 and the ball 40. In this case as well, the value calculated using formula 4 can be considered as the radius of the ball 40.

[0073]

[0074] As described above, the machining program modification device 10a of the second embodiment further includes an avoidance action command generation unit 25 that generates an avoidance action command to avoid wear when the determination unit 14 determines that there is a possibility of wear, and the modification unit 16a reflects the avoidance action command in the machining program. As a result the machining operation is modified to suppress the occurrence of fretting of the ball screw 1, so that wear due to fretting can be suppressed more reliably without changing the machining conditions.

[0075] In the second embodiment, the avoidance operation command generation unit 25 generates an avoidance operation command that performs an avoidance operation (second operation path 91b) to avoid wear from the middle of the tool's operation path 91 (first operation path 91a) based on the machining program before modification, and then returns to the operation path 91 (fourth operation path 91d) by a return operation (third operation path 91c) to the original position. This makes it possible to suppress wear due to fretting while suppressing the impact on other parts of the operation path.

[0076] This disclosure is not limited to the above-described implementation; any modifications or improvements that can achieve the purpose of this disclosure are included.

[0077] The following additional information is disclosed regarding the above embodiments and modifications. (Note 1) An oscillating cutting information acquisition unit (11) that acquires an oscillating cutting command from a machining program that includes at least the total number of oscillations and the cutting distance; an acquisition unit (12) that acquires ball screw mechanism information relating to the structure of the ball screw (1) and a threshold value for the number of oscillations that is permissible within a judgment criterion distance, which is the distance the nut portion (35) of the ball screw (1) moves translationally as the ball (40) inside the ball screw (1) rolls at a certain rotation angle; a judgment criterion distance calculation unit (13) that calculates the judgment criterion distance based on the ball screw mechanism information; a determination unit (14) that determines that there is a possibility of wear if the number of oscillations due to the oscillating cutting command exceeds the threshold value for the number of oscillations within the judgment criterion distance based on the oscillating cutting command, the judgment criterion distance, and the threshold value for the number of oscillations; and a modification unit (16, 16a) that modifies at least one of the machining conditions and machining operations specified in the machining program so as not to cause wear when the determination unit (14) determines that there is a possibility of wear. A processing program modification device (10, 10a) is provided.

[0078] (Note 2) In the machining program modification device (10) described in Note 1, if the determination unit (14) determines that there is a possibility of wear, the device further includes a wear avoidance condition calculation unit (15) that calculates wear avoidance conditions for setting machining conditions to avoid wear, and the modification unit (16) reflects the wear avoidance conditions in the machining program.

[0079] (Note 3) In the machining program modification device (10) described in Note 2, the wear avoidance condition is information indicating the oscillation frequency, and the modification unit (16) modifies the machining program to perform oscillating cutting at an oscillation frequency lower than the information indicating the oscillation frequency calculated by the wear avoidance condition calculation unit.

[0080] (Note 4) In the machining program modification device (10a) described in Note 1, the device further includes an avoidance action command generation unit (25) that generates an avoidance action command to avoid the occurrence of wear when the determination unit (14) determines that there is a possibility of wear, and the modification unit (16a) reflects the avoidance action command in the machining program.

[0081] (Note 5) In the machining program modification device (10a) described in Note 4, the avoidance operation command generation unit (25) generates an avoidance operation command which involves performing an avoidance operation to avoid wear from the middle of the tool's movement path based on the machining program before modification, and then returning to the movement path by a return operation to the original position.

[0082] (Note 6) In the machining program modification device (10, 10a) described in any of Notes 1 to 5, the ball screw mechanism information acquired by the acquisition unit (12) includes at least the lead (L) of the ball screw, the ball diameter (r), and the root diameter (V) of the screw shaft (30).

[0083] 10, 10a Machining program modification device 11 Oscillating cutting information acquisition unit 12 Acquisition unit 13 Judgment criterion distance calculation unit 14 Judgment unit 15 Wear avoidance condition calculation unit 16, 16a Modification unit 25 Avoidance action command generation unit

Claims

1. A machining program modification device comprising: an oscillating cutting information acquisition unit that acquires an oscillating cutting command from a machining program that includes at least the total number of oscillations and the cutting distance; an acquisition unit that acquires ball screw mechanism information relating to the structure of a ball screw and a threshold value for the number of oscillations that are permissible within a judgment criterion distance, which is the distance the nut portion of the ball screw translates to as the balls inside the ball screw roll at a certain rotation angle; a judgment criterion distance calculation unit that calculates the judgment criterion distance based on the ball screw mechanism information; a determination unit that determines that there is a possibility of wear if the number of oscillations due to the oscillating cutting command exceeds the threshold value for the number of oscillations within the judgment criterion distance, based on the oscillating cutting command, the judgment criterion distance, and the threshold value for the number of oscillations; and a modification unit that, when the determination unit determines that there is a possibility of wear, modifies at least one of the machining conditions and machining operations specified in the machining program so that the wear does not occur.

2. The machining program modification device according to claim 1, further comprising a wear avoidance condition calculation unit which calculates wear avoidance conditions for setting machining conditions to avoid wear when the determination unit determines that there is a possibility of wear, and the modification unit reflects the wear avoidance conditions in the machining program.

3. The machining program modification device according to claim 2, wherein the wear avoidance condition is information indicating the oscillation frequency, and the modification unit modifies the machining program to perform oscillating cutting at a frequency lower than the information indicating the oscillation frequency calculated by the wear avoidance condition calculation unit.

4. The machining program modification device according to claim 1, further comprising an avoidance action command generation unit that generates an avoidance action command to avoid the occurrence of wear when the determination unit determines that there is a possibility of wear, and the modification unit reflects the avoidance action command in the machining program.

5. The machining program modification device according to claim 4, wherein the avoidance operation command generation unit generates an avoidance operation to avoid wear from the middle of the tool's operating path based on the machining program before modification, and then generates an avoidance operation to return to the operating path by a return operation to the original position.

6. The machining program modification device according to any one of claims 1 to 5, wherein the ball screw mechanism information acquired by the acquisition unit includes at least the lead of the ball screw, the ball diameter, and the root diameter of the screw shaft.