Content area
For the conventional NURBS curve interpolation, such as the one based on Taylor series expansion, it is difficult to synchronize the feed travel with the arc length for scheduled feedrate, resulting in serious acceleration fluctuation. Aiming at this issue, a high precision interpolation is proposed in this paper based on the preceding work. The curvature monotonicity of the NURBS curve was analyzed, and it was segmented according to its critical curvature point, the critical curvature value point and knots; meanwhile, the arc length of each subsegment was calculated under the predefined accuracy index. Then, the feedrate of each subsegment was scheduled with S-shape acceleration and deceleration profile, respectively. Afterward, on the basis of the scheduled feedrate datum, two cubic splines relating to arc length relative to time and parameter relative to arc length were constructed, respectively. In the real-time interpolation, the arc length corresponding to the actual feed step was calculated using the arc length relative to time splines, and then, the parameters corresponding to the arc length were obtained with parameter relative to arc length splines. Compared with Taylor series expansion interpolation, the results show that the proposed one significantly suppresses the acceleration fluctuation and improves the interpolation accuracy.
Introduction
Non-uniform rational B-spline (abbr. NURBS) can represent analytical and freeform curve and surface in a universal and unified mathematical form. Due to this crucial ability, NURBS is still the prevalent technology for curve and surface modeling in computer-aided design/computer-aided manufacturing (CAD/CAM) and an integral part of most existing CAD/CAM commercial software [1]. Therefore, the research on NURBS interpolation is of great significance to improve the performance of CNC system. However, the arc length of the NURBS cannot be analytically expressed with its parameter. On interpolating NURBS with feedrate scheduled according to its arc length, the actual interpolation output feedrate is often inconsistent with the scheduled feedrate [2], resulting in feedrate and acceleration fluctuation and feed actuator vibration [3]. So how to effectively control feedrate fluctuation and interpolation accuracy has always been the core problem to be solved in NURBS curve interpolation [4].
In the past few decades, researchers have designed various interpolation methods to suppress the feedrate fluctuation in parametric curve interpolation from the aspects of feedrate scheduling and interpolation calculation. The feedrate scheduling is mainly divided into methods based on model-based method [5, 6, 7, 8, 9, 10, 11–12] and optimization method [13, 14–15], while interpolation methods mainly include polynomial fitting method [13, 16, 17–18] and compensation method [5, 19, 20, 21, 22, 23, 24, 25, 26, 27–28].
When interpolating parametric curve, the next parameter point is calculated based on the feedrate at the current parameter point, so the feasible feedrate of it obviously affects the feedrate fluctuation. Traditional acceleration and deceleration (abbr. Acc/Dec) profiles, such as linear Acc/Dec profile that cannot achieve continuous acceleration, are not suitable for parametric curve interpolation; nevertheless, those with limited jerk that can achieve continuous acceleration transition are widely used in parametric curve interpolation so far. Du et al. [8] searched the feedrate twice from both ends of the parameter interval, respectively, using jerk-limited Acc/Dec, so that the scheduled feedrate can adapt to the curvature of the curve to be interpolated better, but it cannot restrain the feedrate fluctuation by only using the Taylor series interpolation, especially at the connection point of two NURBS curve segments. Ji et al. [7] segmented the NURBS curve according to the monotonicity of its curvature and then optimized the feedrate for interpolation. However, using Taylor series expansion interpolation also makes it difficult to suppress the feedrate or acceleration fluctuation. Wang et al. [5] and Xu et al. [6] also used a polynomial jerk-limited Acc/Dec profile to schedule the feedrate. In addition to the typical jerk-limited Acc/Dec, some novel Acc/Dec modes [9, 11] that can achieve continuous acceleration are also used to schedule the feedrate. Li introduced a B-spline curve feedrate profile [11]. Although it can achieve high-order flexible acceleration, its calculation process is quite complex and prone to truncation errors. Ren scheduled the feedrate for NURBS with quartic polynomial jerk-continuous Acc/Dec profile [9]. However, it divides the Acc/Dec process into 11 types and requires complicated subcurve merging algorithms to schedule the feedrate. The algorithm is not conducive to widespread use in CNC. Wu et al. proposed a feedrate scheduling scheme that processes S-shaped quartic feedrate profiles at the initial stage followed by S-shaped cubic feedrate profiles to ensure machining quality and efficiency [12]. Using Acc/Dec profile to schedule feedrate essentially involves dividing the servo motion process by interpolation cycle. Therefore, the span of each Acc/Dec phase should be an integer multiple of the interpolation cycle. He Tao proposed an algorithm for rounding the span of each phase of S-shape Acc/Dec profile [10], this method helps to suppress feedrate fluctuation to a certain extent. Although it is efficient and simple to incorporate more constraints in the model-based feedrate profile, the time optimality of the derived feedrate profile is difficult to reach global optimum since the preset velocity profile cannot flexibly adapt to the Acc/Dec requirements of complex tool paths [11].
The method of optimizing the feedrate point by point along the parametric curve under various kinematic, dynamic, and geometric constraints is another means to schedule the feedrate. Zhao proposed a two-stage feedrate scheduling scheme [13]. Firstly, the feedrate scheduling problem is constructed as a minimum time trajectory planning and solved it using linear programming method. After that, the second stage re-plans the feedrate based on a bell-shape profile. Zhang used a nonlinear optimization method to plan the feedrate [14], combined with the fitted feedrate function polynomial interpolation to suppress feedrate fluctuation. However, the calculation process is quite complex, and the algorithm is only suitable for his specially developed five-axis machine tool. Zhao Kai transformed the optimization of minimum time feedrate into two convex subproblems [15], solved them using nonlinear programming to obtain the time minimal feedrate in the parameter domain, and then transformed it into a smooth feedrate in the time domain. Finally, a real-time interpolation method based on parameter correction B-spline was adopted to eliminate feedrate fluctuation. This method indicates that a fairly complex algorithm is required to achieve time optimal and high-order continuous feedrate. It has been revealed that the higher-order kinematic behavior, such as jerk and jounce, of each drive axis or the tangential tool path is closely related to the motion smoothness of machine tools in the cutting process. To guarantee the high machining precision, such higher-order constraints should be involved in the feedrate scheduling process [11]. Although optimization method can fully utilize the kinematic and dynamic performances of servo mechanisms to achieve efficient feedrate, they are generally difficult to incorporate high-order performance constraints, and optimization calculations are time-consuming. Therefore, they are not widely used methods for scheduling feedrate.
Due to the inability of parameterizing parametric curve with its arc length in generally, many scholars have attempted to use data fitting method to eliminate the discrepancy between interpolated arc length and feed chord length during real-time interpolation to suppress feedrate fluctuation. Erkorkmazz constructed a seventh-order polynomial between arc length and parameters [16] and then determined the appropriate feedrate through least square optimization to suppress feedrate fluctuation. Zhao used the seventh-order feedrate correction polynomial to calculate the interpolation points [13]. In [17], by segmenting parameter interval and calculating the curve length of each segmented interval, an inverse arc length function to be used in real-time interpolation was constructed for each segment with respect to the parameter. Considering Runge phenomenon of higher-order polynomial interpolation, its accuracy cannot be guaranteed at the midpoints of the piecewise polynomial, the feedrate fluctuation is difficult to satisfy by using polynomial fitting methods, Lu proposed using NURBS curve to fit the relationship between parameter and arc length [18]. From the above analysis, it can be seen that in terms of algorithm stability, fitting accuracy, and computational efficiency, it is necessary to carefully design interpolation algorithm in order to use fitting method to suppress feedrate fluctuation.
Since the feedrate fluctuation has been concerned, researchers have paid more and more attention to the compensation method to suppress the feedrate fluctuation. Zhao pointed out that the feedrate fluctuation in parametric curve interpolation is caused by parameter calculation error and the deviation between the actual feed chord length and the desired feed arc length [22]. And he proposed a feedback interpolation combining parameter compensation to eliminate feedrate fluctuation. By constructing the polynomial equation of curve parameter increment, and selecting appropriate parameter increment through iterative solving, Liu et al. proposed an interpolation method to suppress the feedrate fluctuation [21, 24]. Similar to [22], Jiang et al. [23] proposed an iterative feedback interpolator for suppressing feedrate fluctuation. In their method, based on Steffensen iterative method, the feedback of current feedrate and command feedrate is used to update parameter value repeatedly until feedrate fluctuation rate reaches the allowable value in the correcting stage. Chen et al. [19] used the parameter calibrator at the knot to eliminate the cumulative error of incremental arc length during real-time interpolation calculation. The Steffensen iteration method was used to modify the real-time interpolating parameters to eliminate the feedrate fluctuation by Chen et al. [20]. In [5], Wang et al. split the NURBS curve according to the local allowable maximum feedrate of it and scheduled the feedrate in each segment. On this basis, the two times interpolation based on cosine theorem was adopted to suppress the feedrate fluctuation. Fang et al. [25] proposed an interpolatior based on Taylor series expansion with arc length prediction and feedback correction. The compensation interpolation strategy based on arc length parameterization is adopted to solve the accumulated error problem in parameter interpolation in [26]. Using the Newton's backward difference quotient to calculate the temporary interpolation point and combining the chord direction of the current interpolation point and the tangent direction of the temporary interpolation point, Hu calculated the arc length compensation [27] and, then, used the fourth-order Runge–Kutta method to calculate the ideal interpolation point. Nie proposed a two-Level parameter compensation interpolation [28], its method requires iterative calculation to determine the second level parameter compensation value in curvature sensitive areas, and in non-curvature sensitive areas, the derivative value of the compensation point needs to be calculated to determine the first level parameter compensation value. Compared with polynomial fitting method, compensation method has received increasing attention in recent years, but it requires the design of efficient compensation algorithms.
It can be seen from the above that the existing research work mainly focuses on restraining the feedrate fluctuation for interpolating parametric curve, while restraining the acceleration fluctuation during it needs to be further discussed. Because the acceleration fluctuation of servo inertia actuator caused by it will cause the tool directly to leave vibration marks and scars on the workpiece surface, affecting the machining quality of the workpiece [3]. To address this issue, based on the feedrate optimization for the NURBS curve in the preceding work, this paper presents a NURBS interpolation which aim at suppressing the acceleration fluctuation and realizing high precision cutting.
As shown in Fig. 1, during interpolating a parametric curve C(u), at the current interpolation point A, the next interpolation point B is calculated based on the scheduled feedrate. Due to the nonlinear relationship between the arc length of the parametric curve and its parameters, there is prone to be a calculation error in the parameters of the interpolation point B. After parameter compensation, interpolation point D is obtained. However, the actual servo feed direction should be along the chord direction , while the desired feed direction should be along the tangential direction of the arc AD. Obviously, the AD arc length is not equal to the chord length. Therefore, assuming that point D is the precise interpolation point after compensation, the discrepancy between the AD arc length and the chord length cannot be eliminated during actual feed motion, and there will inevitably be feedrate fluctuation. From this analysis, it can be concluded that the feedrate fluctuation is an inherent defect in parametric curve interpolation. Considering further restrain the acceleration fluctuation, it is need to design the parametric curve interpolator more carefully.
[See PDF for image]
Fig. 1
Feedrate fluctuation in parametric curve interpolation
In the next section of this paper, the NURBS curve is segmented according to its curvature monotonicity, and the jerk-limited S-shape Acc/Dec profile is used to schedule feedrate. In the third section, the process of NURBS curve interpolation algorithm to suppress the acceleration fluctuation is presented. Then, in the fourth section, an case of the proposed interpolation is given and compared with the existing typical NURBS curve interpolation methods. Finally, conclusions are given in the fifth section.
Feedrate scheduling
Calculating NURBS arc length
In generally, it is used the recursive formula to calculate the parameter point of the NURBS curve, but the recursive formula cannot make use of the intermediate value in the calculation process effectively. In order to improve the calculation efficiency, the NURBS curve is represented in matrix form [29] here to calculate its parameter point coordinates. For a planar NURBS curve with parameter , and are the parameter components of the NURBS curve , respectively. The arc length in any parameter subinterval , , can be calculated with formula (1),
1
where is the index number of the subinterval and , ; is the arc length in subinterval [ui, ui+1], , , .Because the primitive function of the integrand function in formula (1) cannot be obtained for the NURBS curve, the arc length of it can only be calculated with numerical integration method. For many numerical integration methods, the 9-point Gauss–Legendre formula [30] has high calculation accuracy. Here, it is used to calculate the arc length of the NURBS curve. The 9-point Gauss–Legendre arc length integral formula is as (2),
2
In formula (2), are the Gauss nodes and are the quadrature coefficients. For the 9-point Gauss–Legendre, the Gauss nodes and the quadrature coefficients are shown in Table 1 [30].
Table 1. Nodes and quadrature coefficient of the 9-point GL formula
± 0.968 160 239 5 | 0.081 274 388 4 |
± 0.836 031 107 3 | 0.180 648 160 7 |
± 0.613 371 432 7 | 0.260 610 696 4 |
± 0.324 253 423 4 | 0.312 347 077 0 |
0 | 0.330 239 355 0 |
To use the 9-point Gauss–Legendre formula. For parameter subinterval , it is need to use formula (3) to transform subinterval into ,
3
After obtaining the arc length of the subinterval , the arc length of the entire NURBS curve is the sum of the arc lengths of each subinterval .
When 9-point Gauss–Legendre is used to calculate the arc length of the NURBS curve, the method of successive bisection quadrature interval is used to ensure the accuracy of arc length calculation. For the kth bisection interval, the interval is divided into subintervals, the arc length of each subinterval is calculated with the 9-point Gauss–Legendre formula, respectively, and then the summation of the arc length of each subinterval is taken as the arc length of the NURBS curve in the interval . Next, each subinterval are divide into two parts equally further, and calculate the new summation of arc length using the above-mentioned method.
when ,
where is the preset arc length accuracy index, then take the summation of arc length as the arc length of the NURBS curve in the interval .
Scheduling feedrate based on S-shape Acc/Dec profile
The jerk-limited S-shape Acc/Dec profile [13, 27] can realize the continuous transition of acceleration in the process of feedrate change, here, it is used to schedule feedrate for the NURBS curve. Considering the stability of feed motion and the dynamic performance of machine tool, the constraint inequality on feedrate scheduling is as shown in (4),
4
In inequality system (4), , , , and are the feedrate, normal acceleration, tangential acceleration, normal jerk and tangential jerk of the interpolation period, respectively, , , , and are the maximum feedrate, normal maximum acceleration, tangential maximum acceleration, normal maximum jerk and tangential maximum jerk that can be adopted for scheduling the feedrate, respectively.
Define the critical curvature value as [31]
5
In expression (5), , are interpolation period and chord height error tolerance, respectively. The points whose curvature equal to the critical curvature value are called the critical curvature value points. Figure 2 shows the local curvature distribution of a parametric curve. In Fig. 2, A, C, E, G are critical curvature value points.
[See PDF for image]
Fig. 2
Critical curvature and curvature extremum
The curvature of any point on the curve is determined by the formula (6) [25].
6
where and are the first and second derivatives of the NURBS curve, respectively. Then, according to the curvature derivative being zero, the extreme point of curvature and its curvature can be calculated.The local maximum point of curvature where the curvature exceeds the critical curvature value on the NURBS curve is defined as the curvature critical point, in Fig. 2, B, F are curvature critical points.
The feedrate at the curvature critical point will be significantly constrained by the dynamic performance of the machine tool, and the feasible feedrate at these points can be calculated by expression (7) [8],
7
where the is the curvature of the curvature critical points .The critical curvature value is determined according to the formula (5). By combining expression (5) and formula (6), Eq. (8) can be obtained. The parameter of the critical curvature value points are determined by solving Eq. (8) using Newton Raphson's method [10]. Obviously, from the expression (5), the feasible feedrate at the critical curvature point is .
8
According to the definition of the curvature critical point, the feasible feedrate at the curvature critical point determined by expression (7) is the minimum feedrate near this point. Taking into account the curvature of the curve near the curvature critical point changes sharply, therefore, dividing the curve with the curvature critical point is convenient to scheduling the feedrate near these points, and it can mitigate the adverse effects of sharp curvature changes near them on the accurate calculation of curve arc length.
Considering the restriction of the arc length between the curvature critical point and the critical curvature value point on the feasible feedrate at the critical curvature value point, and the need to further weaken the nonlinear relationship between the arc length and the curve parameters, the critical curvature value points should be taken as the curve segmentation point.
When using matrix to represent NURBS curve, the parameter knot interval determines the specific value of the matrix element, so it is also necessary to use the parameter knot value to segment the curve.
In summary, in order to weaken the feedrate fluctuation resulting from the nonlinear relationship between parameters and arc length, as well as the impact of curvature on feasible feedrate, it is necessary to segment the NURBS curve into several subcurves by the curvature critical point, critical curvature value point and parameter knot according to its curvature monotonicity. In doing so, it may even be possible to suppress acceleration fluctuation. After segmenting the NURBS curve into several subsegments, the arc length of each subsegment is calculated using the 9-point GL formula.
According to the calculated arc length and the feedrate of the curvature critical point, combining it with the machining accuracy, kinematics and dynamics conditions, it can schedule the feedrate for the arc segment between the critical curvature value point and the curvature critical point using the S-curve Acc/Dec [32] profile shown in Fig. 3. In Fig. 3, the ACC/DEC process is divided into seven stages, the first three are the acceleration stages, the last three are the deceleration stages, and the middle is the constant feedrate stage. v1–v6 and ve are the feedrate at the end of each stage, fs is the initial feedrate at the beginning of acceleration. T1–T7 are the duration for each stages, respectively, t1–t7 are the time variables for each stages, respectively, t is the time variable, At, Jt are tangential acceleration and tangential jerk.
[See PDF for image]
Fig. 3
The process of S-shape ACC/DEC profile
For the arc segment between the point of local minimum curvature and the critical curvature value point, such as the arc segment CD and ED in Fig. 2, take the feedrate of one point between points C and E as the one to be evaluated.
Considering the acceleration process with S-shape Acc/Dec profile, which includes the stages of accelerating acceleration, constant acceleration, and decelerating acceleration. If the actual motion displacement is large enough, the actual acceleration process has a constant acceleration stage, namely , then
9
10
11
In expression (9)–(11), , , are jerk, acceleration and feedrate, respectively; according to the symmetry of the acceleration process of S-shape Acc/Dec profile, it is obvious that,
12
From the expression (11), the feedrate at the end of acceleration process is
13
In expression (13), is the feedrate at the end of acceleration process. The displacements at the end of three stages of acceleration are as follows:
14
In expression (14), s is the displacement. So the displacement at the end of the third stage of the acceleration process is
15
where is displacement at the end of the third stage of the acceleration process.If the actual motion displacement is small, there is no constant acceleration stage in the actual acceleration process, namely , so the displacement of the two acceleration stages is
16
and the displacement at the end of the two acceleration stages is17
where is the feedrate at the end of two acceleration stages.For arc segment CE, there may be three possible acceleration combinations cases, namely two , one and one , and two , from points C and D to the intermediate point with feedrate , in order of the arc length from the large to small one between points C and D. If there are two , takes as and , takes as in expression (15), respectively, then there is a displacement compatibility equation as expression (18),
18
In Eqs. (18), lCE is the arc length between the critical curvature value point C and E, respectively, , are the feasible feedrate at the points C and E scheduled in terms of subsegments BC and EF, respectively. Similarly, the other two displacement compatibility equations are
19
20
Then, the displacement compatibility Eqs. (18)–(20) are used to calculate the appropriate feedrate in turn and then schedule the feedrate along this kind of arc segment using S-shape Acc/Dec profile. If the above method cannot obtain the appropriate feedrate, the feedrate between the ends C and E can be scheduled directly according to the feedrate of the ends C and E and the displacement between them by relaxing the feasible jerk and acceleration.
In the CNC system, the essence of data sampling interpolation is to use fixed interpolation cycle to segment the parametric curve in one of the combination ways of acceleration, uniform feedrate and deceleration. Therefore, the elapsed time of each Acc/Dec phase must be an integer multiple interpolation period. However, the time of each acceleration and deceleration phase scheduled here cannot be an integer multiple interpolation period. Based on the above-mentioned feedrate scheduled in continuous time field, in the acceleration and deceleration mode of S-shape profile, take the jerk and acceleration as the values to be determined, and modify the jerk and acceleration in each Acc/Dec phase, respectively, within the dynamic performance of the machine tool, thereby the duration of each feed phase can be modified to an integer multiple interpolation period.
Suppress acceleration fluctuation interpolation
Interpolation preprocessing
The parameter and arc length pairs , , can be obtained from Sect. 2 after feedrate scheduling. Then, there are parameter sequence and arc length sequence . Therefore, the cubic arc length spline function of the parameter relative to the arc length is constructed in the parameter interval . The arc length spline should meet the conditions as the followings.
has a Second-order continuous derivative in the whole interval ;
In each subinterval (i = 1,2,…, K), it is the cubic polynomial of its parameter ;
Satisfy the interpolation conditions at each node .
At each inner node of the spline, satisfies continuity conditions,
In addition, there are n + 1 interpolation conditions; thus, there are solution conditions in total for ; therefore, the cubic arc length spline interpolation function in the interval can be obtained as (21),
21
where ; the coefficient to be determined satisfy Eq. (22),22
In Eq. (22),
So far, there still lack two conditions for solving Eq. (22). Considering that the arc length is zero at the beginning and is at the end of the feed motion, the cubic arc length spline can be constructed in the interval .
During scheduling the feedrate for the NURBS curve interpolation in Sect. 2.2, it can be obtained the pairs , , of elapsed time and arc length. Using the method similar to the one for constructing the parameter relative to arc length cubic arc length spline and considering that the feedrate are zero at the beginning and end of the feed motion, cubic time spline that relates the arc length to time can be constructed according to the elapsed time and arc length pairs .
Real-time interpolation
During real-time interpolation, for the interpolation step , , substitutes the elapsed time into the arc length relative to time spline to obtain the passed arc length corresponding to the current interpolation step, then substitutes the passed arc length into the parameter relative to arc length cubic spline to obtain the NURBS curve parameter corresponding to the passed arc length, and finally substitute into the curve equation to obtain the corresponding coordinate . Combining it with the current position of feed motion, and then the interpolation coordinate increment can be obtained from the expression (23).
23
In expression (23), is the interpolation step of real-time interpolation.
Figure 4 shows the operation flowchart of the proposed method, including analysis offline and interpolation online. Analysis offline is used for preprocessing before interpolation, analyzing the geometric characteristics of NURBS curve, and scheduling the feedrate based on the kinematic and dynamic performance of the machine tool. Interpolation online calculate the feed step for servo axis. The proposed method eliminates the time-consuming iterative compensation for suppressing feedrate fluctuation in online interpolation.
[See PDF for image]
Fig.4
The flowchart of the proposed method
Numerical case and result analysis
In this section, the trident NURBS toolpath is applied to verify the effectiveness of the proposed interpolation method. The trident NURBS is interpolated with the proposed algorithm based on preceding work. Afterward, the trident NURBS is interpolated with the method in [8] and the second-order Taylor series expansion interpolation [27] based on curvature monotonic segmentation [7] (abbr. STCMS), respectively.
In [8], firstly, the NURBS curve is segmented using critical curvature and then is interpolated using second-order Taylor series expansion with distributed arc length error compensation. The distributed arc length error compensation function distributes arc length errors to each feed step. Compared with many iterative compensation methods, it has the outstanding advantage of not requiring time-consuming iterative calculations. This compensation method for suppressing feedrate fluctuation has strong application value. Additionally, the second-order Taylor series reduces the parameter calculation truncation error and is a classic interpolation method for obtaining small feedrate fluctuation [27].
The parameters of the trident NURBS curve are as following, respectively, control point vector P = ((10,0), (20,20), (12,8), (10,20), (8,8), (0,20), (10,0)), unit: mm; weight factor vector W = (1, 1, 1, 1, 1, 1, 1); knot vector U = (0, 0, 0, 0, 0.2, 0.4, 0.6, 0.8, 1, 1, 1, 1). Figure 5 shows the trident NURBS curve and its control polygon. The parameters used to schedule the interpolation feedrate are shown in Table 2. Figure 6 shows its curvature distribution, and from the expression (5), the critical curvature value is 0.1. Table 3 gives the curve parameter segmentation points and its corresponding curvature.
[See PDF for image]
Fig. 5
The trident NURBS curve and its control polygon
Table 2. Feedrate scheduling parameters for S-shape profile
Parameter | Symbol | Value |
|---|---|---|
Command feedrate/(mm·s−1) | Vmax | 100 |
Normal acceleration/(mm·s−2) | An | 1 000 |
Normal jerk/(mm·s−3) | Jn | 30 000 |
Tangential acceleration/(mm·s−2) | At | 1 000 |
Tangential jerk/(mm·s−3) | Jt | 30 000 |
Chord height tolerance/(μm) | δ | 5 |
Interpolation cycle/(ms) | Ts | 1 |
[See PDF for image]
Fig. 6
The trident NURBS curve curvature
Table 3. Parameter segmentation points and their curvature
Parameter | Curvature | Parameter | Curvature | Parameter | Curvature |
|---|---|---|---|---|---|
0.00 | 0.00 | 0.39 | 0.10 | 0.69 | 1.05 |
0.12 | 0.10 | 0.40 | 0.07 | 0.77 | 0.10 |
0.15 | 32.19 | 0.44 | 0.10 | 0.80 | 0.04 |
0.18 | 0.10 | 0.50 | 6.00 | 0.82 | 0.10 |
0.20 | 0.03 | 0.56 | 0.10 | 0.85 | 32.19 |
0.23 | 0.10 | 0.60 | 0.03 | 0.88 | 0.10 |
0.31 | 1.05 | 0.61 | 0.10 | 1.00 | 0.00 |
According to the critical curvature value points, curvature critical points and knots, as listed in Table 3, the trident NURBS curve is divided into 20 subsegments, the segmented points are indicated by the stars in Fig. 5, and the curvature of the segmented points are indicated by the black points in Fig. 6. The arc length numerical calculation accuracy index mm is taken, and the arc length of each subsegment is calculated using the 9-point Gauss Legendre formula in Sect. 2.1.
Figure 7 shows the feedrate and acceleration of interpolation output by using the method STCMS, Figure 8 shows the feedrate and acceleration of interpolation output by using the method in reference [8], and the actual feedrate and acceleration of interpolation output of the proposed method are shown in Fig. 9. Comparing Fig. 7 and Fig. 8, it can be seen that there is little difference between the interpolation output feedrate and acceleration fluctuation in the methods in reference [7] and [8]. The output acceleration fluctuation of the both is very serious, and the significant feedrate or acceleration fluctuation all occur at the knot position in the knot vector. From the results in Figs. 7, 8 and 9, it can be seen that the proposed method well suppresses the fluctuation of interpolation output feedrate and acceleration, especially significantly suppresses the fluctuation of interpolation output acceleration.
[See PDF for image]
Fig. 7
Output feedrate and acceleration after interpolation with STCMS
[See PDF for image]
Fig. 8
Output feedrate and acceleration after interpolation with ref [8] method
[See PDF for image]
Fig. 9
The feedrate and acceleration with the proposed method
After the toolpath is discretized, in the subsequent interpolation period, although the feedrate fluctuation can be controlled by calculating the difference between the actual arc length and the desired arc length and then compensating the arc length difference to the feed displacement in the current interpolation period, or calculating the difference between the actual feedrate and the desired feedrate for feedrate compensation in the current interpolation period. However, these two methods are difficult to accurately control the feedrate variation between the adjacent interpolation periods; that is, it is difficult to accurately control the acceleration fluctuation. Additionally, by using displacement or feedrate compensation in the subsequent interpolation period, the feedrate of each point cannot be guaranteed to be the maximal feedrate satisfying the various constraints from the feedrate scheduling mechanism of view.
Comparing the interpolated contour with the command contour, especially with the contour at the position with large curvature which is apt to large contour error, the tool trajectory of the machined contour can be well obtained by using the method proposed in present paper, as shown in Fig. 10. The interpolation chord height error from the proposed method is shown in Fig. 11, with the maximum of it being 0.1466 μm. Figures 12 and 13 show the interpolation chord height error from the method in [8] and STCMS, with the maximum of them being 0.8787 µm and 0.2170 µm, respectively [7].
[See PDF for image]
Fig. 10
Command contour and the proposed interpolation trajectory
[See PDF for image]
Fig. 11
The chord height error with the proposed method
[See PDF for image]
Fig. 12
The chord height error with ref [8] method [7]
[See PDF for image]
Fig. 13
The chord height error with the STCMS method [7]
From the maximum of chord height error among the three mentioned above, it can see that the maximal chord height error of the proposed method is 67.56% of the one from STCMS [7] and 16.68% of the one from [8]. These results can indicate that the proposed method improves the machining accuracy significantly. It also indicates that curvature characteristics are the main factor affecting the processing chord height error.
Conclusion
The reason for the feedrate and acceleration fluctuation in NURBS curve interpolation is manifested as the discrepancy between the actual feed arc length and the desired feed arc length. However, in nature, the nonlinear mapping between NURBS curve arc length and its parameters and the inconsistency between the actual feed direction and the desired feed direction are the fundamental reasons for the feedrate and acceleration fluctuation during interpolation. Therefore, minimizing the influence of NURBS curve curvature on feasible feedrate is an effective method to suppress feedrate and acceleration fluctuation.
From this perspective, the article uses critical curvature value points, curvature critical points, and control knots to divide the NURBS curve into several subsegments according to the monotonicity of itself and uses the jerk-limited Acc/Dec profile to schedule the feedrate. On this basis, two cubic splines were used to fit the mapping relationship of parameter relative to arc length as well as arc length relative to elapsed time, respectively, and used them for real-time interpolation. The method described in the article weakens the influence of NURBS curve curvature on the feasible feedrate during interpolation from both feedrate scheduling and interpolation perspectives, thereby significantly suppressing feedrate and acceleration fluctuation.
For a specific parameter interval, if the curvature monotonicity of the NURBS curve changes frequently and violently, the algorithm proposed in this paper can better suppress the acceleration fluctuation, but it takes more time to construct the cubic splines of parameter relative to arc length and arc length relative to elapsed time. Therefore, it is necessary to design the implementation of the proposed algorithm according to the comprehensive requirements on contouring accuracy, feedrate and acceleration smoothness of the practical application object.
Funding
The authors disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: The authors are grateful for the financial support from the Joint Funds of the National Natural Science Foundation of China (Grant No. U1931127), and the Basic public welfare research program of Zhejiang Province (Grant No. LGG22E050015).
Declarations
Conflict of interest
The authors declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Adriano Fagali de Souza
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
References
1. Taheri, AH; Suresh, K. Surface approximations using generalized NURBS. Eng Comput; 2022; 38,
2. Wang, G; Shu, Q; Wang, J et al. Research on adaptive non-uniform rational B-spline real-time interpolation technology based on acceleration constraints. Int J Adv Manuf Technol; 2017; 91, pp. 2089-2100. [DOI: https://dx.doi.org/10.1007/s00170-016-9914-4]
3. Zhong, W; Luo, X; Chang, W et al. toolpath interpolation and smoothing for computer numerical control machining of freeform surfaces: a review. Int J Autom Comput; 2020; 17, pp. 1-16. [DOI: https://dx.doi.org/10.1007/s11633-019-1190-y]
4. Altintas, Y; Tulsyan, S. Prediction of part machining cycle times via virtual CNC. CIRP Ann Manuf Technol; 2015; 64, pp. 361-364. [DOI: https://dx.doi.org/10.1016/j.cirp.2015.04.100]
5. Wang, T-Y; Zhang, Y-B; Dong, J-C et al. NURBS interpolator with adaptive smooth feedrate scheduling and minimal feedrate fluctuation. Int J Precis Eng Manuf; 2020; 21, pp. 273-290. [DOI: https://dx.doi.org/10.1007/s12541-019-00288-6]
6. Bo, Xu; Yi, D; Wei, Ji. An interpolation method based on adaptive smooth feedrate scheduling and parameter increment compensation for NURBS curve. ISA Trans; 2022; 128, pp. 633-645. [DOI: https://dx.doi.org/10.1016/j.isatra.2021.12.003]
7. Ji Guoshun, Yu; Wujia, CZ. Bilateral optimization feedrate on splitting NURBS curve with its curvature monotonicity. J Comput-Aided Des Comput Gr; 2017; 29,
8. Du, X; Huang, J; Zhu, LM. A complete S-shape feed rate scheduling approach for NURBS interpolator. J Comput Des Eng; 2015; 2,
9. Xingfei, R; Jinwei, F; Ri, P. A novel and efficient jerk-smooth feedrate scheduling algorithm for NURBS interpolation. Int J Adv Manuf Technol; 2024; 130, pp. 1221-1239. [DOI: https://dx.doi.org/10.1007/s00170-023-12732-z]
10. Tao, He; Yujun, Y. A S-shape feedrate scheduling method with rounding error elimination. Int J Adv Manuf Technol; 2023; 129, pp. 5261-5269. [DOI: https://dx.doi.org/10.1007/s00170-023-12555-y]
11. Li, Y; Liang, FS; Lu, L; Fan, C. Improved time-optimal B-spline feedrate scheduling for NURBS tool paths in CNC machining. Adv Manuf; 2023; 11,
12. Bingcai, Wu; Junyan, Ma; Lutao, W et al. NURBS interpolator with scheduling scheme combining cubic and quartic S-shaped feedrate profiles under drive and chord error constraints. Comput Aided Des; 2022; 152, 103380. [DOI: https://dx.doi.org/10.1016/j.cad.2022.103380]
13. Zhao, K; Li, S; Kang, Z. Smooth minimum time trajectory planning with minimal feed fluctuation. Int J Adv Manuf Technol; 2019; 105, pp. 1099-1111. [DOI: https://dx.doi.org/10.1007/s00170-019-04308-7]
14. Guixin, Z; Jian, G; Lanyu, Z et al. Generalised NURBS interpolator with nonlinear feedrate scheduling and interpolation error compensation. Int J Mach Tools Manuf; 2022; 183, 103956. [DOI: https://dx.doi.org/10.1016/j.ijmachtools.2022.103956]
15. Kai, Z; Shurong, Li; Zhongjian, K et al. Smooth trajectory generation based on contour error constraint and parameter correction b-spline. Int J Adv Manuf Technol; 2022; 119, pp. 4359-4373. [DOI: https://dx.doi.org/10.1007/s00170-021-08367-7]
16. Erkorkmazz, K. Efficient fitting of the feed correction polynomial for real-time spline interpolation. J Manuf Sci E-T ASME; 2015; 137, 044501. [DOI: https://dx.doi.org/10.1115/1.4030300]
17. Lei, WT; Sung, MP; Lin, LY et al. Fast real-time NURBS path interpolation for CNC machine tools. Int J Mach Tools Manuf; 2007; 47, pp. 1530-1541. [DOI: https://dx.doi.org/10.1016/j.ijmachtools.2006.11.011]
18. Lu, L; Zhang, L; Gu, Y et al. A parametric interpolation method with minimal feedrate fluctuation by nonuniform rational basis spline. Proc Inst Mech Eng Part C J Mech Eng Sci; 2017; 231,
19. Chen, M; Zhao, W; Xi, X. Augmented Taylor's expansion method for B-spline curve interpolation for CNC machine tools. Int J Mach Tools Manuf; 2015; 94, pp. 109-119. [DOI: https://dx.doi.org/10.1016/j.ijmachtools.2015.04.013]
20. Chen, M; Sun, Y. Contour error-bounded parametric interpolator with minimum feedrate fluctuation for five-axis CNC machine tools. Int J Adv Manuf Technol; 2019; 103, pp. 567-584. [DOI: https://dx.doi.org/10.1007/s00170-019-03586-5]
21. Liu, H; Liu, Q; Sun, P et al. A polynomial equation-based interpolation method of NURBS tool path with minimal feed fluctuation for high-quality machining. Int J Adv Manuf Technol; 2017; 90, pp. 2751-2759. [DOI: https://dx.doi.org/10.1007/s00170-016-9603-3]
22. Huan, Z; LiMin, Z; Han, D. A parametric interpolator with minimal feed fluctuation for CNC machine tools using arc-length compensation and feedback correction. Int J Mach Tools Manuf; 2013; 75, pp. 1-8. [DOI: https://dx.doi.org/10.1016/j.ijmachtools.2013.08.002]
23. Jiang, J; Lin, F; Zhang, Y; Zhang, H; Ye, P. A real-time feedrate planning method and efficient interpolator with minimal feedrate fluctuation for parametric toolpath. IEEE Access; 2019; 7, pp. 112953-112962. [DOI: https://dx.doi.org/10.1109/ACCESS.2019.2934977]
24. Huan, L; Qiang, L; Shengkai, Z; Chuanjun, Li; Songmei, Y. A NURBS interpolation method with minimal federate fluctuation for CNC machine tools. Int J Adv Manuf Technol; 2015; 78, pp. 1241-1250. [DOI: https://dx.doi.org/10.1007/s00170-014-6753-z]
25. Lijin, F; Guanghui, L; Qiang, Li et al. A high-precision non-uniform rational B-spline interpolator based on S-shaped feedrate scheduling. Int J Adv Manuf Technol; 2022; 121, pp. 2585-2595. [DOI: https://dx.doi.org/10.1007/s00170-022-09411-w]
26. Liu, X; Xu, Y; Cao, J; Liu, J; Zhao, Y. A high-precision planar NURBS interpolation system based on segmentation method for industrial robot. Appl Sci; 2023; 13,
27. Yifei, Hu; Xin, J; Guanying, H et al. A novel method for calculating interpolation points of NURBS curves based on chord length-parameter ratio. Int J Adv Manuf Technol; 2023; 129, pp. 2843-2860. [DOI: https://dx.doi.org/10.1007/s00170-023-12427-5]
28. Nie, M; Zhu, T; Li, Y. NURBS interpolator with minimum feedrate fluctuation based on two-level parameter compensation. Sensors; 2023; 23,
29. Zheng, Y; Qureshi, AJ; Ahmad, R. Algorithm for remanufacturing of damaged parts with hybrid 3D printing and machining process. Manuf Lett; 2018; 15, pp. 38-41.
30. Qingjin, Y. Numerical analysis; 2006; 3 Beijing, Beihang University Press: pp. 168-170.
31. Bo, Li; Taiyong, W; Peng, W. An analytical and optimal corner smoothing method for CNC machine tools along linear segments. J Mech Sci Technol; 2022; 36, pp. 1959-1973. [DOI: https://dx.doi.org/10.1007/s12206-022-0332-2]
32. Tajima, S; Sencer, B. Global tool-path smoothing for CNC machine tools with uninterrupted acceleration. Int J Mach Tools Manuf; 2017; 121, pp. 81-95. [DOI: https://dx.doi.org/10.1016/j.ijmachtools.2017.03.002]
© The Author(s), under exclusive licence to The Brazilian Society of Mechanical Sciences and Engineering 2025.