Feed control device and feed control program

The feed control device optimizes machining by switching to interpolation control, reducing simultaneous axis movements and feed direction reversals, enhancing accuracy and preventing quadrant protrusions through strategic axis usage and path calculations.

WO2026009316A1PCT designated stage Publication Date: 2026-01-08FANUC LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/023937
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-02
Publication Date
2026-01-08

AI Technical Summary

Technical Problem

Existing feed control systems for machining processes are inefficient in minimizing the number of axes driven simultaneously and the number of feed direction reversals, which can lead to reduced machining accuracy and potential quadrant protrusions on the workpiece.

Method used

A feed control device and program that switches from normal control to interpolation control using a combination of C-axis and Xs-axis drive devices, with a center movement amount, holding movement amount, and path movement amount calculations to optimize the machining path, reducing simultaneous axis movements and feed direction reversals.

Benefits of technology

Improves machining accuracy by minimizing simultaneous axis movements and eliminating quadrant protrusions, while reducing computational load and optimizing control strategies based on machining path shapes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024023937_08012026_PF_FP_ABST
    Figure JP2024023937_08012026_PF_FP_ABST
Patent Text Reader

Abstract

The purpose of the present disclosure is to facilitate optimization of control of a feed device. A feed control device according to the present disclosure comprises an interpolation control unit, which performs preparatory control for switching from normal control settings to interpolation control settings and then performs interpolation control. The interpolation control unit calculates a center movement amount as a movement amount for setting a prescribed position of a workpiece to be a center of rotation in the preparatory control. The interpolation control unit calculates a holding movement amount as a movement amount for holding a relative position before and after performing the preparatory control. The interpolation control unit calculates a path movement amount as a movement amount for moving the relative position along a processing path in the interpolation control. The interpolation control unit performs the preparatory control on the basis of the center movement amount and the holding movement amount and then performs the interpolation control on the basis of the path movement amount.
Need to check novelty before this filing date? Find Prior Art

Description

Feed control device and feed control program

[0001] The present disclosure relates to feed control for moving the relative position of a tool with respect to a workpiece along a predetermined machining path by controlling a feed device that moves the relative position of the tool with respect to the workpiece.

[0002] Some feeders are equipped with an X-axis drive unit, a Y-axis drive unit, a C-axis drive unit, and an Xs-axis drive unit. The X-axis drive unit moves the workpiece in a predetermined X-axis direction. The Y-axis drive unit moves the workpiece in a Y-axis direction that is perpendicular to the X-axis direction. The C-axis drive unit rotates the workpiece around an axis in the Z-axis direction that is perpendicular to the X-axis and Y-axis directions. The Xs-axis drive unit moves the tool in the Xs-axis direction that is perpendicular to the Z-axis direction.

[0003] JP 2016-196074 A

[0004] The present inventors have noticed that there is room for optimization in the control of such a feed device. Specifically, for example, it is preferable to minimize the number of axes driven simultaneously from the viewpoint of machining accuracy and the load of searching for the amount of movement along the machining path. Also, for example, it is preferable to minimize the number of times the feed direction is reversed on each axis, since reversing the feed direction may cause a quadrant protrusion on the workpiece. Control that satisfies these requirements as much as possible can be said to be optimal control.

[0005] The present disclosure has been made in consideration of the above circumstances, and aims to facilitate optimization of control of a feed device.

[0006] The feed control device disclosed herein moves the relative position of a tool with respect to a workpiece along a predetermined machining path by controlling a feed device including: an X-axis drive device that moves the relative position of the tool with respect to a workpiece in a predetermined X-axis direction; a Y-axis drive device that moves the relative position in a Y-axis direction perpendicular to the X-axis direction; a C-axis drive device that rotates the relative position around a rotation center that is an imaginary line extending in a Z-axis direction perpendicular to the X-axis and Y-axis directions; and an Xs-axis drive device that moves the relative position in an Xs-axis direction perpendicular to the Z-axis direction. The feed control device includes an interpolation control unit that performs preparatory control to switch from a normal control setting in which the relative position is moved using at least one of the X-axis drive device and the Y-axis drive device to an interpolation control setting in which the relative position is moved using at least one of the C-axis drive device and the Xs-axis drive device, and then performs the interpolation control, and the interpolation control unit includes: a center movement amount calculation unit that calculates a center movement amount as a movement amount to make a predetermined position on the workpiece the center of rotation in the preparatory control; The control system includes a holding movement amount calculation unit that calculates a holding movement amount as a movement amount for holding the relative position before and after performing the preparatory control, a path movement amount calculation unit that calculates a path movement amount as a movement amount for moving the relative position along the machining path in the interpolation control, and a drive control unit that performs the preparatory control based on the center movement amount and the holding movement amount, and then performs the interpolation control based on the path movement amount.

[0007] A feed control program according to the present disclosure is a feed control program for moving a relative position of a tool with respect to a workpiece along a predetermined machining path by controlling a feed device including: an X-axis drive device that moves the relative position of the tool with respect to a workpiece in a predetermined X-axis direction; a Y-axis drive device that moves the relative position in a Y-axis direction perpendicular to the X-axis direction; a C-axis drive device that rotates the relative position around a rotation center that is an imaginary line extending in a Z-axis direction perpendicular to the X-axis and Y-axis directions; and an Xs-axis drive device that moves the relative position in an Xs-axis direction perpendicular to the Z-axis direction. The feed control program performs preparatory control to switch from a normal control setting in which the relative position is moved using at least one of the X-axis drive device and the Y-axis drive device to an interpolation control setting in which the relative position is moved using at least one of the C-axis drive device and the Xs-axis drive device, and then performs the interpolation control by configuring a computer with: a center movement amount calculation unit that calculates a center movement amount as a movement amount in which a predetermined position on the workpiece is the rotation center in the preparatory control; and a holding movement amount calculation unit that calculates a holding movement amount as a movement amount that holds the relative position before and after performing the preparatory control. a path movement amount calculation unit that calculates a path movement amount as a movement amount for moving the relative position along the machining path in the interpolation control; and a drive control unit that performs the preparatory control based on the center movement amount and the holding movement amount, and then performs the interpolation control based on the path movement amount.

[0008] FIG. 1 is a schematic diagram showing a feed control device and a machine tool of a first embodiment; FIG. 2 is a configuration diagram showing a feed control device and a feed device; FIG. 3 is a plan view showing the start stage of preparatory control in a straight section; FIG. 4 is a plan view showing the same preparatory control; FIG. 5 is a plan view showing a subsequent stage of the same preparatory control; FIG. 6 is a plan view showing interpolation control in a straight section; FIG. 7 is a plan view showing the start stage of preparatory control in a circular arc section; FIG. 8 is a plan view showing the same preparatory control; FIG. 9 is a plan view showing a subsequent stage of the same preparatory control; FIG. 10 is a plan view showing interpolation control in a circular arc section; FIG. 11 is a plan view showing a subsequent stage of the same interpolation control; FIG. 12 is a graph showing the transition of the Xs-axis position in the interpolation control; FIG. 13 is a graph showing the transition of the C-axis position in the interpolation control; FIG. 14 is a plan view showing the trajectory of one predetermined curve section with a convex portion; FIG. 15 is a plan view showing the trajectory of two predetermined curve sections; FIG. 16 is a graph showing the transition of the Xs-axis position in the interpolation control in the predetermined curve section; FIG. 17 is a graph showing the transition of the C-axis position in the interpolation control in the predetermined curve section;

[0009] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. However, the present disclosure is not limited to the following embodiments and can be appropriately modified and implemented within the scope of the present disclosure.

[0010] 1, the feed control device 30 is provided for a machine tool 70. The machine tool 70 includes a spindle 73, a table 78, and a feed device 80. A tool T is attached to the tip of the spindle 73. A workpiece W is placed on the table 78. The machine tool 70 machines the workpiece W using the tool T.

[0011] Hereinafter, the coordinate system based on the workpiece W will be referred to as the "program coordinate system." In addition, in the program coordinate system, three predetermined directions that are perpendicular to one another will be referred to as the "X-axis direction," "Y-axis direction," and "Z-axis direction." In addition, a coordinate system based on a fixed part of the machine tool 70 will be referred to as the "world coordinate system." In addition, in the world coordinate system, a predetermined imaginary line extending in the Z-axis direction will be referred to as the "rotation center Cz," and the rotation direction about the rotation center Cz will be referred to as the "C-axis direction." In addition, in the world coordinate system, a predetermined direction that is perpendicular to the Z-axis direction will be referred to as the "Xs-axis direction." In this embodiment, the Z-axis direction is the up-down direction, and the X-axis direction, Y-axis direction, C-axis direction, and Xs-axis direction are horizontal directions.

[0012] The spindle 73 and the tool T extend in the Z-axis direction and are configured to be rotatable about the Z-axis direction. Hereinafter, the relative position of the tool T with respect to the workpiece W will be simply referred to as the "relative position of the tool T." In other words, the relative position of the tool T is the position of the tool T in the program coordinate system.

[0013] The feed device 80 moves the relative position of the tool T by moving the spindle 73 and the table 78. Specifically, the feed device 80 includes five drive devices 81 to 85: an X-axis drive device 81, a Y-axis drive device 82, a Z-axis drive device 83, a C-axis drive device 84, and an Xs-axis drive device 85. As shown in FIG. 2 , each of these five drive devices 81 to 85 includes a servo motor 81 a to 85 a for moving the relative position of the tool T.

[0014] 1 , the X-axis driver 81 moves the table 78 in the X-axis direction, thereby moving the relative position of the tool T in the direction opposite to the direction of movement. The Y-axis driver 82 moves the table 78 in the Y-axis direction, thereby moving the relative position of the tool T in the direction opposite to the direction of movement. The Z-axis driver 83 moves the spindle 73 in the Z-axis direction, thereby moving the relative position of the tool T in the direction of movement.

[0015] The C-axis driver 84 moves the table 78 in the C-axis direction, thereby moving the relative position of the tool T in the direction opposite to the C-axis movement. At this time, the X-axis driver 81 and the Y-axis driver 82 also rotate together with the table 78. As a result, in the world coordinate system, the X-axis and Y-axis directions also rotate together with the table 78.

[0016] The Xs-axis driving device 85 moves the spindle 73 in the Xs-axis direction, thereby moving the relative position of the tool T in that direction. As shown in Figure 3, when viewed in the Z-axis direction, the trajectory of the tool T caused by the Xs-axis driving device 85 passes through the center of rotation Cz.

[0017] Next, the feed control device 30 will be described with reference to Figure 2. The feed control device 30 is part of a numerical control device and is mainly composed of a computer and a feed control program loaded into the computer. In other words, the feed control device 30 is realized by the cooperation of the computer and the feed control program.

[0018] A predetermined machining program 31 is input to the feed control device 30. The feed control device 30 controls the feed device 80 based on the machining program 31, thereby moving the relative position of the tool T along a predetermined "machining path." Specifically, the feed control device 30 includes an analysis unit 32, a determination unit 33, a normal control unit 34, and an interpolation control unit 40.

[0019] The normal control unit 34 performs normal control. This normal control is control for moving the relative position of the tool T by appropriately using the X-axis drive unit 81, the Y-axis drive unit 82, and the Z-axis drive unit 83. On the other hand, the interpolation control unit 40 performs preparatory control for switching from the normal control setting to the interpolation control setting, and then performs interpolation control. This interpolation control is control for moving the relative position of the tool T by appropriately using the C-axis drive unit 84, the Xs-axis drive unit 85, and the Z-axis drive unit 83.

[0020] 3, a predetermined section in the machining path that extends linearly when viewed in the Z-axis direction will be referred to as a "straight section P1." Also, hereinafter, a future machining section of the workpiece W by the tool T will be simply referred to as a "machining section." If the machining section is the straight section P1, the determination unit 33 determines that interpolation control will be performed.

[0021] 7, a predetermined section extending in an arc shape in the machining path when viewed in the Z-axis direction is referred to as an "arc section P2." The determination unit 33 determines that interpolation control is to be performed even when the machining section is the arc section P2.

[0022] Hereinafter, as shown in Figures 14 and 15, a predetermined section extending in a predetermined curved line in the machining path when viewed in the Z-axis direction will be referred to as a "predetermined curved section P3." The determination unit 33 determines that interpolation control will be performed even when the machining section is the predetermined curved section P3. Hereinafter, the arc section P2 and the predetermined curved section P3 will be referred to as the "curved sections P2, P3."

[0023] 2 performs preparatory control and interpolation control on the condition that the determination unit 33 determines that interpolation control should be performed. The interpolation control unit 40 includes a center movement amount calculation unit 41, a hold movement amount calculation unit 42, a path movement amount calculation unit 43, and a drive control unit 44.

[0024] The center movement amount calculation unit 41 calculates a predetermined "center movement amount." This center movement amount is the amount of movement, during preparation control, for example, by moving a predetermined point P2m on the workpiece W shown in FIG. 7 to the center of rotation Cz as shown in FIG. 8. This center movement amount includes the amount of movement of the workpiece W in the X-axis direction by the X-axis driving device 81 and the amount of movement of the workpiece W in the Y-axis direction by the Y-axis driving device 82.

[0025] The holding movement amount calculation unit 42 shown in Fig. 2 calculates a predetermined "holding movement amount." The holding movement amount is a movement amount for holding the relative position of the tool T, for example, immediately before the preparatory control shown in Fig. 7 is performed and immediately after the preparatory control shown in Fig. 9 is performed. This holding movement amount includes the movement amount of the workpiece W in the C-axis direction by the C-axis driver 84 and the movement amount of the tool T in the Xs-axis direction by the Xs-axis driver 85.

[0026] 2 calculates a predetermined "path movement amount." The path movement amount is the amount of movement by which the relative position of the tool T is moved along a machining path such as the arc portion P2 during interpolation control, as shown in FIG. 10 . This path movement amount includes the amount of movement of the tool T in the Xs-axis direction by the Xs-axis driver 85 and the amount of movement of the workpiece W in the C-axis direction by the C-axis driver 84.

[0027] The drive control unit 44 shown in FIG. 2 performs an "interference check" to determine whether interference between the workpiece W and the tool T occurs when preparatory control is performed in a predetermined operation sequence based on the center movement amount and the holding movement amount. The drive control unit 44 changes the operation sequence if the interference check determines that interference will occur. On the other hand, if the interference check determines that no interference will occur, the drive control unit 44 performs preparatory control in the operation sequence at that time. Note that the operation sequence here includes a case where any two or more of the operation by the X-axis drive unit 81, the operation by the Y-axis drive unit 82, the operation by the C-axis drive unit 84, and the operation by the Xs-axis drive unit 85 are performed simultaneously within a predetermined period. After completing this preparatory control, the drive control unit 44 performs interpolation control based on the path movement amount.

[0028] Next, the preparatory control at the start point P1s of the straight line portion P1 and the subsequent interpolation control will be described with reference to FIGS.

[0029] As shown in Figure 3, the interpolation control unit 40 performs preparatory control when the relative position of the tool T reaches the start point P1s of the straight section P1, and then performs interpolation control when the tool T processes from the start point P1s to the end point P1e of the straight section P1.

[0030] At this time, the center movement amount calculation unit 41 first calculates, as the center movement amount, the amount of movement required to move a predetermined point P1m on the straight line portion P1 toward the center of rotation Cz, as shown in Fig. 4. In this embodiment, the predetermined point P1m is a midpoint on the straight line portion P1, more specifically, the center point on the straight line portion P1. However, instead of this, for example, the point on the straight line portion P1 that is closest to the center of rotation Cz may be set as the predetermined point P1m.

[0031] Next, the holding movement amount calculation unit 42 calculates, as the holding movement amount, the movement amount for holding the relative position of the tool T at the start point P1s of the straight section P1 immediately before performing the preparatory control shown in Fig. 3 and immediately after performing the preparatory control shown in Fig. 5. The holding movement amount includes the movement amount for aligning the length direction of the straight section P1 in the Xs-axis direction by the C-axis drive device 84. Furthermore, the holding movement amount includes the movement amount for aligning the distance in the Xs-axis direction from the tip of the tool T to the center of rotation Cz by the Xs-axis drive device 85 to the distance from the tip of the tool T to the center of rotation Cz immediately before performing the preparatory control. Specifically, the holding movement amount can be calculated, for example, by calculating the coordinate value immediately after performing the preparatory control based on the following equation and subtracting the coordinate value immediately before performing the preparatory control from that.

[0032]

[0033] Next, the path movement amount calculation unit 43 calculates the amount of movement by which the relative position of the tool T is moved along the straight line portion P1 as the path movement amount, as shown in Fig. 6. Specifically, the path movement amount is the amount of movement by which the tip of the tool T is moved in the Xs-axis direction by the Xs-axis driving device 85 by the length of the straight line portion P1.

[0034] Next, the drive control unit 44 shown in Fig. 2 performs an interference check. This interference check is repeated with different operation sequences until it is determined that no interference will occur. If it is determined that no interference will occur, the drive control unit 44 performs preparatory control in the operation sequence at that time.

[0035] Specifically, for example, the drive control unit 44 first operates the X-axis drive unit 81 and the Y-axis drive unit 82 based on the calculated center movement amount. This actually moves a predetermined point P1m on the straight portion P1 shown in FIG. 3 to the rotation center Cz as shown in FIG. 4. The drive control unit 44 then operates the C-axis drive unit 84 and the Xs-axis drive unit 85 based on the calculated holding movement amount. This returns the relative position of the tool T to the relative position of the tool T immediately before the preparatory control was performed, i.e., to the start point P1s of the straight portion P1, as shown in FIG. 5. Accordingly, the length direction of the straight portion P1 coincides with the Xs-axis direction.

[0036] Thereafter, the drive control unit 44 performs interpolation control. Specifically, the drive control unit 44 operates the Xs-axis drive device 85 based on the calculated path movement amount. As a result, the relative position of the tool T is moved in the Xs-axis direction along the straight line portion P1, as shown in FIG. 6 .

[0037] The above-described interpolation control provides the following advantages. If the relative position of the tool T shown in FIG. 3 were to be moved along the straight line portion P1 using normal control, simultaneous two-axis drive by both the X-axis drive unit 81 and the Y-axis drive unit 82 would be required. However, this interpolation control allows the relative position of the tool T to be moved along the straight line portion P1 using only the Xs-axis drive unit. This improves machining accuracy on the straight line portion P1. Furthermore, because only the Xs-axis drive unit 85 needs to be driven, the computational load of path search when calculating the path movement amount can be reduced.

[0038] Next, the preparatory control at the starting point P2s of the arc portion P2 and the subsequent interpolation control will be described with reference to Figures 7 to 13. The arc portion P2 here is semicircular, convex on one side in the Y-axis direction and extending in the X-axis direction. Therefore, the central angle occupied by the range of this arc portion P2 is 180°.

[0039] As shown in Figure 7, the interpolation control unit 40 performs preparatory control when the relative position of the tool T reaches the starting point P2s of the arc portion P2, and then performs interpolation control in the section from the starting point P2s to the end point P2e of the arc portion P2.

[0040] At this time, first, the center movement amount calculation unit 41 calculates, as the center movement amount, the amount of movement by which a predetermined point P2m on the arc portion P2 is moved to the rotation center Cz as shown in Fig. 8. In this embodiment, the predetermined point P1m is a midpoint on the arc portion P2, and more specifically, is a vertex on the arc portion P2.

[0041] Next, the holding movement amount calculation unit 42 calculates, as the holding movement amount, the movement amount for holding the relative position of the tool T at the start point P2s of the arc portion P2 immediately before performing the preparatory control shown in FIG. 7 and immediately after performing the preparatory control shown in FIG. 9. The holding movement amount includes the movement amount for changing the length direction of the line connecting the start point P2s of the arc portion P2 and the center of rotation Cz to the Xs-axis direction by the C-axis drive device 84. Furthermore, the holding movement amount includes the movement amount for changing the distance in the Xs-axis direction from the tip of the tool T to the center of rotation Cz by the Xs-axis drive device 85 to the distance from the tip of the tool T to the center of rotation Cz immediately before performing the preparatory control. Specifically, the holding movement amount can be calculated, for example, by calculating the coordinate value immediately after performing the preparatory control based on the following equation and subtracting the coordinate value immediately before performing the preparatory control from that.

[0042]

[0043] Next, the path movement amount calculation unit 43 obtains the central angle occupying the range of the arc portion P2 from the command information. Then, if the central angle is 180° or less, the path movement amount calculation unit determines that the number of reversals of the feed direction of the C-axis drive unit 84 is zero. The path movement amount calculation unit 43 then calculates, as the path movement amount, the amount of movement by which the relative position of the tool T shown in FIGS. 10 and 11 is moved along the arc portion P2 by the C-axis drive unit 84 and the Xs-axis drive unit 85. The path movement amount can be calculated as follows, for example, based on the following equation. That is, from a coordinate value V=V1 of the relative position of the tool T at a predetermined time within the section of the arc portion P2 shown in FIG. 10 and a coordinate value V=V2 of the relative position after a short time from the predetermined time, coordinate values ​​in the C-axis direction and the Xs-axis direction are calculated. By subtracting the coordinate values ​​at a predetermined time from the coordinate values ​​in the C-axis direction and the Xs-axis direction after the minute time thus determined, the amount of path movement from the predetermined time to the minute time after the minute time has elapsed can be calculated. The amount of path movement for the entire arc portion P2 can be calculated from the collection of the path movement amounts in each minute section when the predetermined time is changed.

[0044]

[0045] For example, when the machining section is the arc portion P2, the function f(x) is expressed by the following formula.

[0046]

[0047] Next, the drive control unit 44 shown in Fig. 2 performs an interference check. This interference check is repeated with different operation sequences until it is determined that no interference will occur. If it is determined that no interference will occur, the drive control unit 44 performs preparatory control in the operation sequence at that time.

[0048] Specifically, for example, the drive control unit 44 first operates the X-axis drive unit 81 and the Y-axis drive unit 82 based on the calculated center movement amount. This actually moves a predetermined point P2m on the arc portion P2 shown in FIG. 7 to the rotation center Cz as shown in FIG. 8. Furthermore, the drive control unit 44 then operates the C-axis drive unit 84 and the Xs-axis drive unit 85 based on the calculated holding movement amount. This returns the relative position of the tool T to the relative position of the tool T immediately before the preparatory control was performed, i.e., to the start point P2s of the arc portion P2, as shown in FIG. 9. Accordingly, the line connecting the start point P2s of the arc portion P2 and the rotation center Cz coincides with the Xs-axis direction.

[0049] Thereafter, the drive control unit 44 performs interpolation control. Specifically, the drive control unit 44 operates the C-axis drive unit 84 and the Xs-axis drive unit 85 based on the calculated path movement amount. As a result, the relative position of the tool T is moved along the arc portion P2, as shown in FIGS. 10 and 11 .

[0050] Specifically, at this time, driving in the Xs-axis direction is performed as shown in the graph of Fig. 12. Also, driving in the C-axis direction is performed as shown in the graph of Fig. 13.

[0051] The above-described interpolation control provides the following effects. If the relative position of the tool T were to be moved along the arc portion P2 shown in FIG. 7 using normal control, it would be necessary to control the Y-axis drive device 82 as follows, while moving the workpiece W in one direction in the X-axis direction using the X-axis drive device 81. That is, it would be necessary to first move the workpiece W in one direction in the Y-axis direction using the Y-axis drive device 82, and then move the workpiece W in the other direction in the Y-axis direction. Therefore, it would be necessary to reverse the feed direction of the Y-axis drive device 82. This reversal could result in the machining of a quadrant protrusion on the workpiece W.

[0052] In contrast, with this interpolation control, as shown in Fig. 12, it is only necessary to move the tool T in one direction along the Xs axis by the Xs-axis drive unit 85, while moving the workpiece W in one direction along the C-axis by the C-axis drive unit 84, as shown in Fig. 13. This eliminates the need to reverse the feed direction, making it possible to prevent the machining of quadrant protrusions.

[0053] Next, the preparatory control at the start point P3s of the predetermined curve section P3 and the subsequent interpolation control will be described with reference to FIGS.

[0054] First, as shown in FIG. 14 , a case will be described in which the predetermined curve section P3 is convex on one side in the Y-axis direction, similar to the case of the arc section P2 described above. In this case, processing proceeds in substantially the same manner as in the case of the arc section P2 described above. That is, the center movement amount calculation unit 41 sets the apex of the convexity on the predetermined curve section P3 as a predetermined point P3m. Then, the center movement amount is calculated as the movement amount for moving the predetermined point P3m to the rotation center Cz. Thereafter, similar to the case of the arc section P2 described above, the hold movement amount calculation unit 42 calculates the hold movement amount, and the path movement amount calculation unit 43 calculates the path movement amount. Thereafter, similar to the case of the arc section P2 described above, the drive control unit performs preparatory control and then interpolation control.

[0055] Next, a case will be described in which the predetermined curve section P3 is convex in two directions, one on one side of the Y-axis direction and the other on the opposite side, as shown in Figure 15. In this case, the center movement amount calculation unit 41 sets the inflection point between the convex portions on the predetermined curve section P3 as the predetermined point P3m. Then, the center movement amount is calculated as the movement amount for moving the predetermined point P3m to the rotation center Cz. Thereafter, as in the case of the arc section P2 described above, the holding movement amount calculation unit 42 calculates the holding movement amount, and the path movement amount calculation unit 43 calculates the path movement amount.

[0056] Thereafter, the drive control unit 44 performs preparatory control in the same manner as in the case of the arc portion P2 described above. As a result, the length direction of the straight line connecting the start point P3s of the predetermined curve portion P3 and the rotation center Cz, which is the inflection point, becomes the Xs-axis direction. Thereafter, as in the case of the arc portion P2 described above, the drive control unit 44 performs interpolation control. As a result, driving in the Xs-axis direction is performed as shown in the graph of FIG. 16. Furthermore, driving in the C-axis direction is performed as shown in the graph of FIG. 17.

[0057] The above-described interpolation control provides the following effects. If, under normal control, the relative position of the tool T were to be moved along the two convex predetermined curved portions P3 shown in FIG. 15 , the Y-axis drive unit 82 would need to be controlled as follows while the X-axis drive unit 81 moves the workpiece W in one direction along the X-axis. That is, the Y-axis drive unit 82 would need to first move the workpiece W in one direction along the Y-axis, then move it in the other direction along the Y-axis, and then move it again in one direction along the Y-axis. Therefore, the feed direction of the Y-axis drive unit 82 would need to be reversed twice.

[0058] In contrast, with this interpolation control, while the Xs-axis drive unit 85 moves the tool T in one direction in the Xs-axis direction, the C-axis drive unit 84 first moves the workpiece W in one direction in the C-axis direction and then moves it in the other direction in the C-axis direction, as shown in FIG. 17. Therefore, the C-axis drive unit 84 only needs to reverse the feed direction once. This allows the number of reversals of the feed direction to be reduced from two to one. This makes it possible to suppress the occurrence of quadrant protrusions.

[0059] Next, the control flow by the above-described feed control device 30 will be described with reference to FIG.

[0060] First, in step sA, the determination unit 33 acquires command information from the analysis unit 32 according to the machining program 31, and the interpolation control unit 40 acquires information relating to the configuration settings of the machine tool 70. The configuration settings include, for example, the type of axis, the number of axes, the parent-child relationships between the axes, and the movable ranges of the axes.

[0061] Next, in step sB, the determination unit 33 acquires information on the G-code command from the command information, that is, acquires information on the machining path.

[0062] Next, in step sC1, the determination unit 33 determines whether the G-code command is a straight line command. If the determination is negative, that is, if it is determined that the G-code command is not a straight line command, then in step sC2, the determination unit 33 determines whether the G-code command is a circular arc command. If the determination is negative, then in step sEX, the determination unit 33 determines that interpolation control will not be performed, that is, that normal control will be performed. On the other hand, if the determination is positive in step sC2, that is, if it is determined that the G-code command is an arc command, then in step sE2, the determination unit 33 determines that interpolation control will be performed because the machining section is the circular arc section P2, and the process proceeds to step sF.

[0063] On the other hand, if the determination in step sC1 is affirmative, the determination unit 33 determines in step sD whether the length of "one block" as each divided section in the straight line command is equal to or greater than a predetermined threshold. If the determination is affirmative, the determination unit 33 determines in step sE1 that the machining section is a straight line section P1 and therefore that interpolation control is to be performed, and the process proceeds to step sF.

[0064] On the other hand, if the determination in step sD is negative, that is, if it is determined that the length of one block is less than the threshold value, the determination unit 33 determines that it is a set of minute straight lines. Therefore, in step sE3, the determination unit 33 determines that the processing section is the predetermined curve section P3 and therefore performs interpolation control, and proceeds to step sF.

[0065] In step sF, the center movement amount calculation unit 41 calculates the center movement amount. In the following step sG, the holding movement amount calculation unit 42 calculates the holding movement amount. In the following step sH, the path movement amount calculation unit 43 calculates the path movement amount. In the following step sI, the drive control unit 44 performs preparatory control based on the center movement amount and the holding movement amount, and then performs interpolation control based on the path movement amount.

[0066] The configuration and effects of this embodiment will be summarized below.

[0067] Depending on the shape of the machining section, such as the straight section P1 shown in FIG. 3, the arc section P2 shown in FIG. 7, or the predetermined curve section P3 shown in FIGS. 14 and 15, interpolation control may be used rather than normal control to reduce the number of axes driven simultaneously and the number of reversals of the feed direction. In this regard, the feed control device 30 shown in FIG. 2 includes an interpolation control unit 40 that performs preparatory control to switch from normal control to interpolation control before performing interpolation control. This allows for switching from normal control to interpolation control as appropriate depending on the shape of the machining section. This reduces the number of axes driven simultaneously and the number of reversals of the feed direction for each axis. This facilitates optimization of the control of the feed device 80.

[0068] 2 determines whether to perform normal control or interpolation control. The interpolation control unit 40 performs preparatory control and interpolation control on the condition that the determination unit 33 determines that interpolation control should be performed. This makes it possible to efficiently perform interpolation control only under circumstances where interpolation control should be performed.

[0069] As shown in Fig. 3, when the processing section is a straight line portion P1, the center movement amount calculation unit 41 calculates, as the center movement amount, the amount of movement required to move a point P1m on the straight line portion P1 to the rotation center Cz, as shown in Fig. 4. As a result, when the preparatory control shown in Fig. 5 is completed, the length direction of the straight line portion P1 coincides with the Xs-axis direction. As a result, the length direction of the straight line portion P1 can be efficiently aligned with the Xs-axis direction.

[0070] As shown in FIG. 4, the center movement amount calculation unit 41 calculates the amount of movement by which the midpoint on the straight line portion P1 is moved to the center of rotation Cz as the center movement amount. As a result, the center movement amount can be kept short. Alternatively, the center movement amount calculation unit 41 may calculate the amount of movement by which the point on the straight line portion P1 that is closest to the center of rotation Cz is moved to the center of rotation Cz immediately before the preparatory control is performed as the center movement amount. In this case, the center movement amount can be kept short more efficiently. Note that the same applies when the machining section is a circular arc portion P2 or a predetermined curve portion P3.

[0071] 5, when the machining section is a straight section P1, the path movement amount is calculated as follows. That is, the path movement amount calculation unit 43 calculates, as the path movement amount, the movement amount by which the relative position of the tool T is moved in the Xs-axis direction along the straight section P1 without changing the center of rotation Cz with respect to the workpiece W by either the X-axis drive device 81 or the Y-axis drive device 82. As a result, interpolation control can be performed only by the feed operation by the Xs-axis drive device 85. As a result, the machining accuracy in the straight section P1 is improved and the calculation load of the path movement amount can be reduced.

[0072] As shown in Fig. 7, when the machining section is a circular arc section P2, the center movement amount calculation unit 41 calculates the movement amount for moving one point on the circular arc section P2 to the center of rotation as the center movement amount, as shown in Fig. 8. Therefore, as shown in Fig. 9, when the preparatory control is completed, the length direction of the straight line connecting the start point P2s of the circular arc section P2 and the center of rotation Cz becomes the Xs-axis direction. Note that this configuration and effect are similar when the machining section is a predetermined curved section P3, as shown in Fig. 14. In other words, this configuration and effect are common to the curved sections P2 and P3.

[0073] As shown in FIG. 9 , when the machining section is a circular arc section P2, the path movement amount is calculated as follows. That is, the path movement amount calculation unit 43 calculates, as the path movement amount, the movement amount by which the relative position of the tool T is moved along the circular arc section P2 by the Xs-axis drive unit 85 and the C-axis drive unit 84 without changing the center of rotation Cz with respect to the workpiece W by either the X-axis drive unit 81 or the Y-axis drive unit 82. As a result, the number of axes driven simultaneously in interpolation control can be reduced to only two axes: the Xs-axis and the C-axis. Note that this configuration and effect are similar when the machining section is a predetermined curved section P3, as shown in FIG. 14 . That is, this configuration and effect are common to the curved sections P2 and P3.

[0074] 9, when the machining section is a circular arc portion P2, the path movement amount calculation unit 43 acquires the central angle that occupies the range of the circular arc portion P2 from the command information. Then, if the central angle is 180° or less, the path movement amount calculation unit determines that the number of reversals of the feed direction of the C-axis drive device 84 is zero. Then, the path movement amount calculation unit 43 calculates the path movement amount based on the number of reversals. This makes it possible to efficiently determine the number of reversals and calculate the path movement amount.

[0075] As shown in FIG. 7 , when the machining section is a circular arc section P2 extending in a curved shape that is convex in one direction, the center movement amount calculation unit, as shown in FIG. 8 , sets the apex of the convexity of the circular arc section P2 as a predetermined point P2m. Then, the center movement amount is calculated as the movement amount for moving the predetermined point P2m to the rotation center Cz. This makes it possible to efficiently eliminate the number of reversals, as shown in FIG. 13 . Note that this configuration and effect are similar when the machining section is a predetermined curved section P3 that is convex in one direction, as shown in FIG. 14 . In other words, this configuration and effect are common to the curved sections P2 and P3.

[0076] As shown in Fig. 15, when the machining section is a predetermined curved section P3 that extends in a curved shape with convexities in two directions, that is, a predetermined direction and the opposite direction, the center movement amount calculation unit 41 sets an inflection point between the convexities on the predetermined curved section P3 as a predetermined point P3m. Then, the center movement amount calculation unit 41 calculates the movement amount for moving the predetermined point P3m to the rotation center Cz. As a result, the number of reversals can be efficiently reduced to one, as shown in Fig. 17.

[0077] 1 performs an interference check to determine whether interference between the workpiece W and the tool T will occur when the preparatory control is performed in a predetermined operation sequence before performing the preparatory control. Then, the drive control unit 44 changes the operation sequence if it determines that interference will occur in the interference check. This allows the interference to be avoided efficiently.

[0078] Other Embodiments The above-described embodiment can be modified, for example, as follows.

[0079] Interpolation control may be performed only when the machining section is any one or two of the straight line section P1 shown in Fig. 3, the arc section P2 shown in Fig. 7, and the predetermined curve section P3 shown in Fig. 14 and Fig. 15. Furthermore, instead of or in addition to the determination requirements in the first embodiment, interpolation control may be performed on the condition that the number of axes driven when interpolation control is performed is smaller than the number of axes driven when normal control is performed. Furthermore, instead of or in addition to these requirements, interpolation control may be performed on the condition that the number of reversals of the feed direction when interpolation control is performed is smaller than the number of reversals of the feed direction when normal control is performed.

[0080] The Z-axis direction may be a direction other than the up-down direction, and the X-axis, Y-axis, C-axis, and Xs-axis directions may be a direction other than the horizontal direction. Specifically, for example, the Z-axis direction may be horizontal, and the Xs-axis direction may be up-down. Alternatively, for example, the Z-axis and Xs-axis directions may be horizontal, and the direction perpendicular to the Z-axis and Xs-axis directions may be up-down. Alternatively, for example, the Z-axis direction may be oblique to the up-down direction.

[0081] The configuration of the feed device 80 may be changed within a range that ensures the movement of the relative position of the tool T in the same manner as in the first embodiment. Specifically, for example, the C-axis drive device 84 may be provided on the spindle 73 side. The C-axis drive device 84 may then move the spindle 73 and the tool T in the C-axis direction together with the Xs-axis drive device 85.

[0082] 4, for example, when the machining section is a straight line section P1, the center movement amount calculation unit 41 may calculate, as the center movement amount, a movement amount for moving a start point P1s or an end point P1e of the straight line section P1 to the rotation center Cz. This also applies when the machining path is a circular arc section P2 or a predetermined curve section P3.

[0083] For example, as shown in FIG. 8 , when the machining section is a circular arc section P2, the center movement amount calculation unit 41 may calculate the center movement amount as follows. That is, the center movement amount may be calculated as a movement amount for moving a point on the circular arc section P2 to the rotation center Cz so that the distance from the start point P2s to the rotation center Cz is equal to the distance from the tool T to the rotation center Cz. According to this aspect, it is only necessary to calculate the movement amount in the C-axis direction as the holding movement amount, and the movement amount in the Xs-axis direction can be set to zero. Note that this also applies when the machining section is a straight line section P1 or a predetermined curve section P3.

[0084] The holding movement amount calculation unit 42 shown in FIG. 1 may calculate the holding movement amount with higher accuracy in the C-axis direction when the distance from the rotation center Cz to the tool T, for example, as shown in FIG. 10 , used in the process of calculating the holding movement amount, is greater than a predetermined value, compared to when the distance is equal to the predetermined value. Furthermore, the path movement amount calculation unit 43 shown in FIG. 1 may calculate the path movement amount with higher accuracy in the C-axis direction when the distance from the rotation center Cz to the tool T, for example, as shown in FIG. 10 , used in the process of calculating the path movement amount, is greater than a predetermined value, compared to when the distance is equal to the predetermined value. This aspect can solve the following problem. That is, the holding movement amount and path movement amount used by the drive control unit 44 are more affected by the accuracy in the C-axis direction as the distance from the rotation center Cz increases. That is, the movement amount in the program coordinate system may not have the required accuracy. Here, the accuracy of the movement amount in the program coordinate system is given in a unit that is the smallest of a certain input unit. In this case, according to this aspect, the unit in the C-axis direction can be calculated in an even smaller unit so that the movement amount in the program coordinate system satisfies the required accuracy.

[0085] According to the above embodiment, the feed control device (30) of Supplementary Notes 1 to 13 and the feed control program of Supplementary Note 14 can be realized.

[0086] [Supplementary Note 1] A feed control device (30) that moves the relative position of a tool (T) with respect to a workpiece (W) along a predetermined machining path by controlling a feed device (80) that includes: an X-axis drive device (81) that moves the relative position of the tool (T) with respect to the workpiece (W) in a predetermined X-axis direction; a Y-axis drive device (82) that moves the relative position in a Y-axis direction perpendicular to the X-axis direction; a C-axis drive device (84) that rotates the relative position around a rotation center (Cz) that is an imaginary line extending in a Z-axis direction perpendicular to the X-axis and Y-axis directions; and an Xs-axis drive device (85) that moves the relative position in an Xs-axis direction perpendicular to the Z-axis direction, wherein the feed control device (30) comprises an interpolation control unit (40) that performs preparatory control for switching from a normal control setting in which the relative position is moved using at least one of the X-axis drive device (81) and the Y-axis drive device (82) to an interpolation control setting in which the relative position is moved using at least one of the C-axis drive device (84) and the Xs-axis drive device (85), and then performs the interpolation control, The interpolation control unit (40) comprises: a center movement amount calculation unit (41) that calculates a center movement amount as a movement amount for making a predetermined position on the workpiece (W) the rotation center (Cz) in the preparatory control; a holding movement amount calculation unit (42) that calculates a holding movement amount as a movement amount for holding the relative position before and after performing the preparatory control; a path movement amount calculation unit (43) that calculates a path movement amount as a movement amount for moving the relative position along the machining path in the interpolation control; and a drive control unit (44) that performs the preparatory control based on the center movement amount and the holding movement amount, and then performs the interpolation control based on the path movement amount.

[0087] [Supplementary Note 2] The feed control device (30) according to Supplementary Note 1, further comprising a determination unit (33) that determines whether to perform the normal control or the interpolation control, wherein the determination unit (33) determines that the interpolation control should be performed in at least one of the following cases: when a section of the workpiece (W) being machined by the tool (T) is a straight section (P1) extending in a straight line; when the machining section is an arc section (P2) having a circular arc shape; and when the machining section is a predetermined curve section (P3) extending in a predetermined curve shape; and the interpolation control unit (40) performs the preparatory control and the interpolation control on the condition that the determination unit (33) determines that the interpolation control should be performed.

[0088] [Supplementary Note 3] When the section in the machining path where the interpolation control is performed is a straight line section (P1) extending in a straight line, the center movement amount calculation unit (41) calculates, as the center movement amount, an amount of movement for moving one point (P1m) on the straight line section (P1) to the center of rotation (Cz), so that when the preparatory control is completed, the length direction of the straight line section (P1) becomes the Xs-axis direction. This is the feed control device (30) described in Supplementary Note 1 or 2.

[0089] [Supplementary Note 4] The feed control device (30) according to any one of Supplementary Notes 1 to 3, wherein the center movement amount calculation unit (41) calculates, as the center movement amount, a movement amount for moving a start point (P1s, P2s, P3s), an intermediate point (P1m, P2m, P3m), or an end point (P1e, P2e, P3e) on the section (P1, P2, P3) in which the interpolation control is performed on the machining path to the rotation center (Cz).

[0090] [Supplementary Note 5] The feed control device (30) according to any one of Supplementary Notes 1 to 4, wherein the center movement amount calculation unit (41) calculates, as the center movement amount, an amount of movement by which a point located closest to the rotation center (Cz) on the section (P1, P2, P3) in the machining path where the interpolation control is performed is moved to the rotation center (Cz).

[0091] [Supplementary Note 6] The feed control device according to any one of Supplementary Notes 1 to 4, wherein the center movement amount calculation unit (41) calculates, as the center movement amount, a movement amount for moving a point on the section (P1, P2, P3) to the center of rotation (Cz) so that a distance from a start point (P1s, P2s, P3s) of the section (P1, P2, P3) in which the interpolation control is performed on the machining path to the center of rotation (Cz) is equal to a distance from the tool (T) to the center of rotation (Cz).

[0092] [Supplementary Note 7] The feed control device (30) according to any one of Supplementary Notes 1 to 6, wherein, when the section in the machining path where the interpolation control is performed is a straight line section (P1) extending in a straight line, the center movement amount calculation unit (41) and the hold movement amount calculation unit (42) calculate the center movement amount and the hold movement amount such that the length direction of the straight line section (P1) is the Xs-axis direction, and the path movement amount calculation unit (43) calculates, as the path movement amount, a movement amount for moving the relative position along the straight line section (P1) in the Xs-axis direction without changing the center of rotation (Cz) with respect to the workpiece (W) by either the X-axis drive device (81) or the Y-axis drive device.

[0093] [Supplementary Note 8] The feed control device (30) according to any one of Supplementary Notes 1 to 7, wherein when the section in the machining path where the interpolation control is performed is a curved portion (P2, P3) extending in a curved line, the center movement amount calculation unit (41) calculates, as the center movement amount, an amount of movement for moving one point (P2m, P3m) on the curved portion (P2, P3) to the center of rotation (Cz), so that when the preparatory control is completed, the length direction of a straight line connecting a start point (P2s, P3s) of the curved portion (P2, P3) and the center of rotation (Cz) becomes the Xs-axis direction.

[0094] [Supplementary Note 9] The feed control device (30) according to any one of Supplementary Notes 1 to 8, wherein when the section in the machining path where the interpolation control is performed is a curved portion (P2, P3) extending in a curved line, the path movement amount calculation unit (43) calculates, as the path movement amount, a movement amount by which the relative position is moved along the curved portion (P2, P3) by the Xs-axis drive device and the C-axis drive device (84) without changing the center of rotation (Cz) with respect to the workpiece (W) by either the X-axis drive device (81) or the Y-axis drive device.

[0095] [Supplementary Note 10] When the section in the machining path where the interpolation control is performed is an arc portion (P2) extending on an arc, the path movement amount calculation unit (43) acquires information on a central angle occupying the range of the arc portion (P2) from predetermined command information, and determines that the number of reversals of the feed direction in the C-axis drive unit (84) is zero on the condition that the central angle is 180° or less, and calculates the path movement amount based on the number of reversals.

[0096] [Supplementary Note 11] The feed control device (30) according to any one of Supplementary Notes 1 to 10, wherein when the section in the machining path where the interpolation control is performed is a curved portion (P2, P3) extending in a curved shape that is convex in one direction, the center movement amount calculation unit (41) calculates, as the center movement amount, an amount of movement for moving the apex of the convexity to the rotation center (Cz).

[0097] [Supplementary Note 12] The feed control device (30) according to any one of Supplementary Notes 1 to 11, wherein when the section in the machining path where the interpolation control is performed is a curved portion (P3) extending in a curved shape that is convex in two directions, i.e., a predetermined direction and an opposite direction, the center movement amount calculation unit (41) calculates, as the center movement amount, an amount of movement for moving an inflection point (P3m) between the convex portions on the curved portion (P3) to the rotation center (Cz).

[0098] [Supplementary Note 13] The feed control device (30) according to any one of Supplementary Notes 1 to 12, wherein the drive control unit (44) performs an interference check to determine whether interference between the workpiece (W) and the tool (T) will occur when the preparatory control is performed in a predetermined operation sequence before performing the preparatory control, and changes the operation sequence on the condition that it is determined in the interference check that interference will occur.

[0099] [Supplementary Note 14] The feed control device according to any one of Supplementary Notes 1 to 13, wherein the holding movement amount calculation unit (42) and the path movement amount calculation unit (43) calculate the holding movement amount and the path movement amount with higher accuracy of the movement amount in the rotation direction about the center of rotation (Cz) when the distance from the center of rotation (Cz) to the tool (T) is greater than a predetermined value compared to when the distance is a predetermined value.

[0100] [Supplementary Note 15] A feed control program for moving the relative position of a tool (T) with respect to a workpiece (W) along a predetermined machining path by controlling a feed device (80) including: an X-axis drive device (81) that moves the relative position of the tool (T) with respect to the workpiece (W) in a predetermined X-axis direction; a Y-axis drive device (82) that moves the relative position in a Y-axis direction perpendicular to the X-axis direction; a C-axis drive device (84) that rotates the relative position around a rotation center (Cz) as an imaginary line extending in a Z-axis direction perpendicular to the X-axis and Y-axis directions; and an Xs-axis drive device (85) that moves the relative position in an Xs-axis direction perpendicular to the Z-axis direction, the program comprising: a computer that performs preparatory control for switching from a normal control setting in which the relative position is moved using at least one of the X-axis drive device (81) and the Y-axis drive device (82) to an interpolation control setting in which the relative position is moved using at least one of the C-axis drive device (84) and the Xs-axis drive device (85), and then performs the interpolation control. a center movement amount calculation unit (41) that calculates a center movement amount as a movement amount for making a predetermined position on the workpiece (W) the center of rotation (Cz) in the preparatory control; a holding movement amount calculation unit (42) that calculates a holding movement amount as a movement amount for holding the relative position before and after performing the preparatory control; a path movement amount calculation unit (43) that calculates a path movement amount as a movement amount for moving the relative position along the machining path in the interpolation control; and a drive control unit (44) that performs the preparatory control based on the center movement amount and the holding movement amount, and then performs the interpolation control based on the path movement amount.

[0101] 30 Feed control device 33 Determination unit 34 Normal control unit 40 Interpolation control unit 41 Center movement amount calculation unit 42 Hold movement amount calculation unit 43 Path movement amount calculation unit 44 Drive control unit 80 Feed device 81 X-axis drive unit 82 Y-axis drive unit 84 C-axis drive unit 85 Xs-axis drive unit Cz Center of rotation P1 Straight line portion P2 Circular arc portion (curved portion) P2s Starting point of circular arc portion P3 Predetermined curve portion (curved portion) P3s Starting point of predetermined curve portion T Tool W Workpiece

Claims

1. A feed control device that moves the relative position of a tool with respect to a workpiece along a predetermined machining path by controlling a feed device that includes: an X-axis drive device that moves the relative position of the tool with respect to the workpiece in a predetermined X-axis direction; a Y-axis drive device that moves the relative position in a Y-axis direction perpendicular to the X-axis direction; a C-axis drive device that rotates the relative position around an axis that is a rotation center that is an imaginary line extending in a Z-axis direction perpendicular to the X-axis and Y-axis directions; and an Xs-axis drive device that moves the relative position in an Xs-axis direction perpendicular to the Z-axis direction, wherein the feed control device comprises an interpolation control unit that performs preparatory control to switch from a normal control setting in which the relative position is moved using at least one of the X-axis drive device and the Y-axis drive device to an interpolation control setting in which the relative position is moved using at least one of the C-axis drive device and the Xs-axis drive device, and then performs the interpolation control, the interpolation control unit comprising: a center movement amount calculation unit that calculates a center movement amount as a movement amount to make a predetermined position on the workpiece the center of rotation in the preparatory control; and a holding movement amount calculation unit that calculates a holding movement amount as a movement amount to hold the relative position before and after performing the preparatory control. a path movement amount calculation unit that calculates a path movement amount as a movement amount for moving the relative position along the machining path in the interpolation control; and a drive control unit that performs the preparatory control based on the center movement amount and the holding movement amount, and then performs the interpolation control based on the path movement amount.

2. A feed control device as described in claim 1, further comprising a judgment unit that judges whether to perform the normal control or the interpolation control, wherein the judgment unit judges to perform the interpolation control in at least one of the following cases: when the machining section of the workpiece by the tool is a straight section extending in a straight line, when the machining section is an arc section in a circular arc, and when the machining section is a specified curve section extending in a specified curve; and the interpolation control unit performs the preparatory control and the interpolation control on the condition that the judgment unit judges to perform the interpolation control.

3. A feed control device as described in claim 1 or 2, wherein, when the section of the machining path where the interpolation control is performed is a straight line section that extends in a straight line, the center movement amount calculation unit calculates the amount of movement for moving a point on the straight line section to the center of rotation as the center movement amount, so that when the preparatory control is completed, the length direction of the straight line section becomes the Xs axis direction.

4. A feed control device according to any one of claims 1 to 3, wherein the center movement amount calculation unit calculates the amount of movement by which a start point, an intermediate point or an end point on a section of the machining path where the interpolation control is performed is moved to the center of rotation as the center movement amount.

5. A feed control device according to any one of claims 1 to 4, wherein the center movement amount calculation unit calculates the center movement amount as the amount of movement for moving a point located closest to the rotation center on the section of the machining path where the interpolation control is performed to the rotation center.

6. A feed control device according to any one of claims 1 to 4, wherein the center movement amount calculation unit calculates, as the center movement amount, a movement amount for moving a point on the section to the center of rotation so that the distance from the start point of the section in which the interpolation control is performed on the machining path to the center of rotation is equal to the distance from the tool to the center of rotation.

7. A feed control device according to any one of claims 1 to 6, wherein, when the section of the machining path where the interpolation control is performed is a straight line section extending in a straight line, the center movement amount calculation unit and the holding movement amount calculation unit calculate the center movement amount and the holding movement amount so that the length direction of the straight line section is the Xs axis direction, and the path movement amount calculation unit calculates, as the path movement amount, a movement amount for moving the relative position along the straight line section in the Xs axis direction without changing the center of rotation with respect to the workpiece by either the X-axis drive device or the Y-axis drive device.

8. A feed control device as described in any one of claims 1 to 7, wherein, when the section of the machining path where the interpolation control is performed is a curved section extending in a curved line, the center movement amount calculation unit calculates the amount of movement for moving one point on the curved section to the center of rotation as the center movement amount, so that when the preparatory control is completed, the length direction of the straight line connecting the start point of the curved section and the center of rotation becomes the Xs axis direction.

9. A feed control device according to any one of claims 1 to 8, wherein, when the section of the machining path where the interpolation control is performed is a curved portion extending in a curved line, the path movement amount calculation unit calculates, as the path movement amount, an amount of movement by which the relative position is moved along the curved portion by the Xs-axis drive device and the C-axis drive device without changing the center of rotation with respect to the workpiece by either the X-axis drive device or the Y-axis drive device.

10. A feed control device as described in any one of claims 1 to 9, wherein, when the section of the machining path where the interpolation control is performed is an arc portion extending on an arc, the path movement amount calculation unit obtains information about the central angle occupying the range of the arc portion from specified command information, determines that the number of reversals of the feed direction in the C-axis drive unit is zero on the condition that the central angle is 180° or less, and calculates the path movement amount based on the number of reversals.

11. A feed control device according to any one of claims 1 to 10, wherein when the section of the machining path where the interpolation control is performed is a curved section extending in a curved line that is convex in one direction, the center movement amount calculation unit calculates the amount of movement for moving the apex of the convex shape to the center of rotation as the center movement amount.

12. A feed control device as described in any one of claims 1 to 11, wherein, when the section of the machining path where the interpolation control is performed is a curved section that extends in two convex curved directions, that is, a predetermined direction and the opposite direction, the center movement amount calculation unit calculates, as the center movement amount, the amount of movement for moving an inflection point between the convex portions on the curved section to the center of rotation.

13. A feed control device according to any one of claims 1 to 12, wherein the drive control unit, before performing the preparatory control, performs an interference check to determine whether interference between the workpiece and the tool will occur if the preparatory control is performed in a predetermined operation sequence, and changes the operation sequence on the condition that the interference check determines that interference will occur.

14. A feed control device according to any one of claims 1 to 13, wherein the holding movement amount calculation unit and the path movement amount calculation unit calculate the holding movement amount and the path movement amount with higher accuracy of the movement amount in the rotation direction about the rotation center when the distance from the rotation center to the tool is greater than a predetermined value compared to when the distance is a predetermined value.

15. A feed control program for moving the relative position of a tool with respect to a workpiece along a predetermined machining path by controlling a feed device comprising: an X-axis drive device that moves the relative position of the tool with respect to the workpiece in a predetermined X-axis direction; a Y-axis drive device that moves the relative position in a Y-axis direction perpendicular to the X-axis direction; a C-axis drive device that rotates the relative position around a rotation center that is an imaginary line extending in a Z-axis direction perpendicular to the X-axis and Y-axis directions; and an Xs-axis drive device that moves the relative position in an Xs-axis direction perpendicular to the Z-axis direction, the program comprising: a computer that performs preparatory control to switch from a normal control setting in which the relative position is moved using at least one of the X-axis drive device and the Y-axis drive device to an interpolation control setting in which the relative position is moved using at least one of the C-axis drive device and the Xs-axis drive device, and then performs the interpolation control; a center movement amount calculation unit that calculates a center movement amount as a movement amount to make a predetermined position on the workpiece the center of rotation in the preparatory control; and a holding movement amount calculation unit that calculates a holding movement amount as a movement amount to hold the relative position before and after performing the preparatory control a path movement amount calculation unit that calculates a path movement amount as a movement amount for moving the relative position along the machining path in the interpolation control; and a drive control unit that performs the preparatory control based on the center movement amount and the holding movement amount, and then performs the interpolation control based on the path movement amount.

Citation Information

Patent Citations

  • Numerical control device

    JP2003195917A

  • Processing method and NC program generation device

    JP2012068918A

  • Numerical control device

    JP2018190352A