Abstract

In order to reduce the feed rate fluctuation of interpolation, a novel approach for NURBS interpolation with minimal feed rate fluctuation based on improved Adams-Moulton (IAM) method is proposed. At first, the representation and calculation of NURBS curve interpolation are described. Then, the constraints of feeding step length are firstly given out to calculate the minimal hoping feeding step length and the detailed IAM method of NURBS curve interpolation is presented. Finally, simulations and experiments are carried out to verify the feasibility and applicability of proposed IAM method.

1. Introduction

Along with rapid progress and development of science, technology, and social economy, the machining accuracy of CNC machine tools is increasingly demanding [1]. Just because of this condition, conventional linear and circular interpolation cannot fit the requirement of machining in modern CNC systems. However, NURBS method offers a common mathematical form for the precise representation of standard analytical shapes as well as free-form curves and surfaces [24]. Since NURBS curve has lots of advantages in designing complicated shapes compared with conventional linear and circular, its interpolation methods have been developed in CAD/CAM applications [5, 6].

Although many approximation methods connected with NURBS interpolation have been proposed to obtain efficient machining, feed rate fluctuation is an important challenge. To the best of our knowledge, the problem of NURBS interpolation for CNC machines has almost not been dealt with.

Recent publications relevant to this paper are mainly summarized. Farouki and Tsai [7] proposed PH curve interpolation which could give rational analytical relations between arc length and parameters as well as effectively reducing the interpolation output feed rate fluctuation. Tsai and Chung [8] reduced the interpolation output feed rate fluctuation through iterative methods, especially in curve curvature at the output of the feed rate fluctuation. Yong and Narayanaswami [9] proposed a spline curve interpolation algorithm based on the second-order Taylor expansion method. Yeh and Hsu [10] proposed a speed-controlled interpolator by incorporating a compensatory parameter to minimize the feed rate fluctuation. Erkorkmaz and Altintas [11, 12] adopted quintic polynomial for interpolation with minimal feed rate fluctuation. Zhiming et al. [13] proposed a real-time parametric interpolation technique. Cheng et al. [14] compared different NURBS interpolation algorithms on the basis of computing time, interpolation accuracy, and feed rate fluctuation. Tikhon et al. [15] proposed a NURBS curve interpolation device based on the adaptive feed rate control. Lei et al. [16] proposed an inverse length function method which cubic/quintic Hermite spline was used to achieve very low feed rate fluctuation in non-real-time processes. Lin et al. [17] proposed a dynamics-based interpolator with real-time look-ahead algorithm to generate a smooth and jerk-limited acceleration/deceleration feed rate profile. Jia et al. [18] presented a NURBS interpolation method based on Adams algorithm which ensured the real-time of the algorithm through reasonable simplification and approximation. Wu et al. [19, 20] presented a nonuniform rational B-spline interpolation algorithm with compensatory parameter to minimize feed rate fluctuation and contour error by improving the inverse length function method with the usage of biarc guide curve. Sun et al. [21] proposed a novel adaptive federate interpolation method for NURBS tool path with drive constraints which can acquire smooth feed rate profile. Liu et al. [22] proposed a double secant interpolation algorithm and a fast calculation and derivation algorithm of NURBS to solve the problem of feed rate fluctuation. Liu et al. [23] proposed a new NURBS interpolation method with minimal feed rate fluctuation for CNC machine tools to obtain the sampling curve parameter.

Although many approaches for NURBS interpolation have been proposed in above literature, they have some common disadvantages summarized as follows. Firstly, most of researchers presented their methods for NURBS interpolation with the second-order Taylor expansion method. However, the second-order Taylor expansion method referred to second derivative of NURBS curve and it was complicated. Secondly, some researchers considered the problem of feed rate fluctuation. Nevertheless, results of feed rate fluctuation were very high and unsatisfactory.

In order to solve the above problems, a novel approach for NURBS interpolation with minimal feed rate fluctuation based on improved Adams-Moulton method is applied and the rest of this paper is organized as follows. In Section 2, representation and calculation of NURBS curve interpolation are presented. The improved predictor-corrector formula of NURBS curve interpolation is proposed in Section 3. In Section 4, simulations with the trident and butterfly NURBS curves are conducted to verify the feasibility of the proposed method. Experimental verification is conducted in Section 5. Our conclusions are summarized in Section 6.

2. Representation and Calculation of NURBS Curve Interpolation

Suppose that represents a NURBS curve and is given by [2, 24, 25]:where are the control points, are the weights of , are the number of the control points, and is the degree of NURBS curve. is the th-degree B-spline basis function and can be calculated using the recursive formulas given as follows:where represents the knot vectors and is the interpolation parameter.

The node vector in parameter coordinates is not uniformly distributed for NURBS curve interpolation in general, so the value of the B-spline basis function is not the same and it is necessary to obtain all the B-spline basis functions, respectively. In addition, the weight factor value of NURBS curve interpolation needs to be obtained and this makes the computation more time-consuming. However, because of the simple expression and high derivative evaluation efficiency, the matrix expression of the NURBS curve can be used to solve the complicated calculation problem in the pretreatment process.

Due to the fact that the NURBS curve of degree 3 is used widely, the following example is used to be illustrated. If NURBS curve control polygon , weights , and node vectors are given, then NURBS curve of degree 3 can be expressed as follows [18]:where , , especially, , and the expression of is as follows:

Here, the expression of parameters is as follows:

When (4) and (5) are substituted into (3), the new expression of NURBS curve is as follows:

According to (6), molecular coefficients and denominator coefficients have little to do with parameter . Therefore, it is able to avoid the repeated calculation of the real-time interpolation process with condition that the numerical value of these coefficients is obtained. That is improvement of interpolation speed is promoted.

3. Improved Adams-Moulton Method of NURBS Curve Interpolation

3.1. Constraints of Feeding Step Length

In this subsection, the system architecture of proposed IAM method is established in Figure 1, which is utilized to implement CNC control tasks.

3.2. Constraints of Feeding Step Length

Normally, estimating feed step length of trajectory space is calculated as (7) and based on constraints of the maximum feed rate, chord error, normal acceleration, and jerk. Therefore, constraint equations of the maximum feed rate, chord error, normal acceleration, and jerk are given as formulas (8), (9), (10), and (11), respectively:where , , , are the maximum feed rate, chord error, normal acceleration, and jerk, respectively. , , are sample time, the radius of curvature at the parameter value , and the chord error, respectively.

However, the chord error involves the curvature calculation, so (12) is adopted to calculate the curvature:

In addition, to avoid the curvature calculation, formulas (9), (10), and (11) can be expressed as formulas (13), (14), and (15), respectively:

In summary, hoping feeding step length should be satisfied with the following formula:

3.3. Improved Adams-Moulton Method

To implement NURBS interpolation, the Adams-Moulton (AM) method is adopted here. Using the AM method, the curve approximation up is given as follows [18]:where , , and denote the feed rate, the sampling time, and the first derivatives of the NURBS curve, respectively.

Although the second-order derivative operation is avoided by AM method, an implicit is introduced and it is also needed to solve first-order derivative. Therefore, the forward-center-backward difference is used to replace the differential to improve AM method so that the operation time of interpolation algorithm can be shortened and the real-time performance is able to be ensured. The three different forward-center-backward differences are as in formulas (18), (19), and (20), respectively:

When (18), (19), and (20) are substituted into (17), the improved AM method is as in formulas (21), (22), and (23), respectively:

Due to the slow convergence rate of the traditional correction formula, the Inverse Quadratic Interpolation (IQI) is adopted to calculate the estimated parameter . When parameters , , are substituted into  (7), estimated feed step lengths , , are obtained, respectively. So, the estimated parameter calculation formula is as follows [26]:where , , .

Theoretically, sampling step size should satisfy the following equation:

However, truncation errors and the discrepancy errors between machining trajectory and the demand curve will make (25) dissatisfied; that is, feed rate fluctuation existed. So, feed rate fluctuation should be considered and it can be defined as follows:

4. Simulation Study

In this section, two NURBS curves of degree 3 named trident and butterfly shown in Figure 2 are used as examples to test the feasibility of the developed interpolation scheme and the command generator programs are written by Matlab and are executed on a personal computer with Intel(R) Core(TM) i5-2450M 2.50 GHz CPU. According to Figure 2, the trident and butterfly curves parameters are given in Appendix and the interpolation conditions for two NURBS curves of degree 3 are listed in Table 1.

In this section, feed rate precision is only considered and feed rate scheduling [27] is applied as shown in Figures 3 and 4. The AM method and IAM method are compared based on feed rate precision. Finally, simulation results of the trident and butterfly NURBS curve are shown in Figures 5 and 6, respectively. In addition, important data of simulations are given in Table 2.

From Figure 5, it can be seen that the maximum feed rate fluctuation of the AM method is about 0.0017%. The maximum feed rate fluctuation of the IAM method is about 0.0008% and it is almost close to zero. Overall, the proposed IAM method is suitable for other simple third-degree NURBS curves. In Figure 6, it can be seen that the maximum feed rate fluctuation of the AM method is about 0.023%. The maximum feed rate fluctuation of the IAM method is about 0.0033%. Feed rate fluctuation is reduced about 14 times with the IAM method. From above all, the proposed IAM method is suitable for other complex third-degree NURBS curves and it is satisfied for modern CNC machining. From Table 2, it can be seen that the interpolation time of trident and butterfly NURBS curve based on the AM method is lower than the proposed IAM method, but gap is very small. In summer, the proposed IAM interpolation method in this paper has better flexibility than the AM method.

5. Experimental Verification

The CNC platform is developed for verifying the proposed IAM method experimentally. The hardware and software structures are as follows:(i)CPU: Intel(R) Core(TM) i5-2450M 2.50 GHz(ii)Servo system(a)-/-axis: Panasonic MBDKT2510E (driver) + Panasonic MHMJ042G1U (motor)(iii)Drive system: ball screws, 5 mm screw pitch(iv)Software(a)OS: 32-bit Windows 7(b)Real-time core: motion control card based on DSP+FPGA, including linear, circular and NURBS interpolator, and other basic modules, the sampling time being 1 ms

The butterfly NURBS curve is represented and machined by the CNC platform. The maximum feed rate is 4800 mm/min. The machining result is shown in Figure 7. In Figure 7(b), there are bulges at positions 1 and 3. However, interpolation lines are continuous at positions 1 and 3 from Figure 7(c). In Figure 7(b), the break point is sunken and unsmooth at position 2. Nevertheless, transition of the break point is smooth at position 2 from Figure 7(c). From above all, the final experimental results show the proposed IAM method is more feasible than AM method.

6. Conclusions

In this paper, an improved Adams-Moulton method for NURBS interpolation with minimal feed rate fluctuation has been proposed. The main conclusions of the study are as follows:(i)The theoretical model of the proposed IAM method is built based on the derived analytic relations between the kinematic characteristics and the parameters of path curve as well as feed rate profile.(ii)The proposed IAM method has been validated by simulations and experimental tests. It is effective and reliable for the feed rate interpolation of geometrically simple and complex NURBS curves of degree 3 and smaller feed rate fluctuation based on the proposed IAM method can be obtained compared with the AM method.

Appendix

Parameters of Trident and Butterfly NURBS Curves

The Simple Trident NURBS CurveControl points (mm): (20, 0), (40, 40), (24, 16), (20, 40), (16, 16), (0, 40), (20, 0)Knot vector: [0, 0, 0, 0, 0.25, 0.5, 0.75, 1, 1, 1, 1]Weight vector:

The Complex Butterfly NURBS CurveControl points (mm): (54.493, 52.139), (55.507, 52.139), (56.082, 49.615), (56.780, 44.971), (69.575, 51.358), (77.786, 58.573), (90.526, 67.081), (105.973, 63.801), (100.400, 47.326), (94.567, 39.913), (92.369, 30.485), (83.440, 33.757), (91.892, 28.509), (89.444, 20.393), (83.218, 15.446), (87.621, 4.830), (80.945, 9.267), (79.834, 14.535), (76.074, 8.522), (70.183, 12.550), (64.171, 16.865), (59.993, 22.122), (55.680, 36.359), (56.925, 24.995), (59.765, 19.828), (54.493, 14.940), (49.220, 19.828), (52.060, 24.994), (53.305, 36.359), (48.992, 22.122), (44.814, 16.865), (38.802, 12.551), (32.911, 8.521), (29.152, 14.535), (28.040, 9.267), (21.364, 4.830), (25.768, 15.447), (19.539, 20.391), (17.097, 28.512), (25.537, 33.750), (16.602, 30.496), (14.199, 39.803), (8.668, 47.408), (3.000, 63.794), (18.465, 67.084), (31.197, 58.572), (39.411, 51.358), (52.204, 44.971), (52.904, 49.614), (53.478, 52.139), (54.492, 52.139).Knot vector: [0, 0, 0, 0, 0.0083, 0.0150, 0.0361, 0.0855, 0.1293, 0.1509, 0.1931, 0.2273, 0.2435, 0.2561, 0.2692, 0.2889, 0.3170, 0.3316, 0.3482, 0.3553, 0.3649, 0.3837, 0.4005, 0.4269, 0.4510, 0.4660, 0.4891, 0.5000, 0.5109, 0.5340, 0.5489, 0.5731, 0.5994, 0.6163, 0.6351, 0.6447, 0.6518, 0.6683, 0.6830, 0.7111, 0.7307, 0.7439, 0.7565, 0.7729, 0.8069, 0.8491, 0.8707, 0.9145, 0.9639, 0.9850, 0.9917, 1, 1, 1, 1].Weight vector: [1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 2.0000, 1.0000, 1.0000, 5.0000, 3.0000, 1.0000, 1.1000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 3.0000, 5.0000, 1.0000, 1.0000, 2.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000].

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this article.

Acknowledgments

The support of National Natural Science Foundation (no. 51605477), Discipline Frontier Research Project (no. 2015XKQY10), and Priority Academic Program Development of Jiangsu Higher Education Institutions (PAPD) in carrying out this research is gratefully acknowledged.