A Dual NURBS Curve Five-Axis Interpolator With Interval Division Under Axial Kinematic Constraints

This article presents an online full real-time dual nonuniform rational B-spline interpolator. Under the constraints of the kinematic parameters of the drive axis, the nonlinear effects of the five-axis CNC are solved on the basis of dual NURBS curve trajectory. Furthermore, smooth interpolation data are generated to realize machining efficiency, balance of quality and machining accuracy. After introducing the idea of ​​interval division, this research divides the tool path into instruction speed, transition speed, and constant speed intervals. In order to prevent the increase of the computational burden of the numerical control system due to the too large sampling data points, the two-step scanning method is adopted to realize the precise expression of the parameter position of the starting point in each interval, and the calculation of the interval speed is studied. Further, in order to meet the real-time requirements of industrial systems and avoid inputting all trajectory segments into the system for calculation, this article proposes a prospective velocity bidirectional scanning planning method based on interval division, which realizes the segmented planning of the full trajectory. The planning result adopts the S-curve acceleration and deceleration control commonly used in the industry to realize the interpolation output. The proposed system interpolation method belongs to the online real-time processing and can be applied to the actual numerical control system. The proposed interpolator is verified by simulation and experimental tests for the cutter shaft to participate in the oblique flow impeller.


I. INTRODUCTION
F IVE-AXIS CNC machine tools are widely used in manufac- turing the key components in major engineering fields, such as aerospace, automotive energy and shipbuilding; and these tools have presented increasing requirements for processing efficiency and quality [1], [2].With the rapid development of electronic information technology, NURBS can express any free-form curve accurately, concisely and uniformly and have the advantages of complex curve expression.Computer-aided design and manufacturing ((CAD)/(CAM)) systems can express complex part contour trajectory as spline trajectory expressed by double NURBS curve and control processing by CNC system [3], [4], [5].However, the five-axis CNC machine tool has three translation axes and two rotation axes.The processing trajectory generated by CAM is different from the coordinate system processed by the actual machine tool, and the two coordinate systems have nonlinear correspondence.For the speed planning of the machining trajectory generated by CAM under the constraint of the machine tool drive axis, obtaining a better speed control method without affecting the machining accuracy and machining quality becomes difficult [6].
Several scholars have proposed many adaptive feed rate planning methods to address the problem of five-axis feed rate regulation.For example, Fan et al. [7] proposed a method to approximate nonlinear jerk constraints using linear function.A five-axis parameterised toolpath time-optimised speed control algorithm with kinematic constraints, including jerk constraints, calculates an approximate time-optimal solution.Beudaert et al. [8], [9] approximated the five-axis maximum feed rate at the key point by ignoring the parameter coupling term under the constraints of kinematic parameters to solve the nonlinear calculation in the process of five-axis speed planning.Furthermore, a time-optimal speed scheduling control method for five-axis microsegments and parameter curves is proposed.First, the drive kinematic parameter constraints are used to calculate the maximum and minimum moving distances allowed in each time interval.Second, the fastest speed is applied until any constraints cannot be limited, and the deceleration point is calculated through an iterative algorithm.Dong et al. [10] proposed a quadratic feed rate optimization algorithm that could obtain the global optimal solution under various constraints.By expressing the five-axis tool nose feed rate as a cubic B-spline curve, Sencer et al. [11] maximised the feedrate curve by adjusting the control points of the feedrate B-spline curve under the constraints of the feedrate and each drive axis.Sun et al. [12], [13], [14] used a similar feed rate spline idea and proposed an adaptive scaling method based on a curve evolution strategy to calculate the feed rate spline profile iteratively.Huang et al. [15] proposed a piecewise polynomial profile to plan the feed rates for the linear and angular trajectories separately and then synchronized the two trajectories so that the overall feed was continuous.However, these methods produce optimal speed curves, they suffer from low computational efficiency, making it challenging to meet real-time requirements.Simultaneously, the speed curve produced by B-spline results in a constant fluctuation of the cutting force and thickness during machining.This leads to vibrations and noise in the machine tool, affects the quality of the machined surface, and reduces the service life of the motor [16].Erkorkmaz and Altintas [17] and Tikhon et al. [18] proposed a constant feed rate algorithm to achieve control.However, when the constant feed rate is high, it may exceed the kinematic parameter constraints of the machine tool drive axis, and when the constant feed rate is low, the processing efficiency will be reduced.Jia et al. [19], [20] proposed a five-axis speed control method based on the division of sensitive interval.The sensitive interval of the feed speed at the tool nose point was determined, and the feed speed of the sensitive and nonsensitive intervals was planned according to the constraint of the drive axis.In order to further improve the processing efficiency, this article proposes a multidivision feed speed planning method based on interval division, divides the five-axis trajectory segment into multiple areas and adopts different acceleration and deceleration strategies in various areas.The machining quality and efficiency are balanced whilst satisfying the constraints of each drive axis.
On the basis of literature research, the innovative contributions of this article are further summarized as follows.A systematic real-time CNC interpolator is proposed under the constraints of the kinematic parameters of the drive axis, the nonlinear effects of the five-axis numerical control are solved, and the smooth double-NURBS curve interpolation data are generated to achieve the balance of processing efficiency, quality and accuracy.
The rest of this article is organized as follows: Section II introduces the architecture of the proposed method, Section III introduces the idea and speed planning control method based on interval division, Section IV presents the simulation and experimental results.Finally, Section V concludes the article.

II. DUAL NURBS CURVE AND THE PROPOSED METHOD
CAM generates two double-NURBS curve NC codes, one of the double NURBS curves represents the motion trajectory of the tool nose point, and the other represents the other NURBS curve trajectory on the tool axis with the same node vector and weight factor but different control points, except for the tool nose point.The interpolation process of the five-axis double NURBS curve refers to the generation of five drive axis position commands from the double NURBS curve equation according to the drive performance of the machine tool.

A. Dual NURBS Pathway Expression
The NURBS curve that expresses the tool nose point trajectory and the other NURBS curve, except the tool nose point, are denoted as C P (u) and C Q (u), respectively.Equation (1) expresses the two double NURBS curves where the index i = 0, 1 above provisions " 0 0 =0".The calculation of the tool nose point coordinate R(u)(R x , R y , R z ) and the tool axis vector coordinate O(u)(O x , O y , O z ) in the Cartesian coordinate system at the position that corresponds to parameter u are shown as . (3)

B. Research Framework
This article proposes an online full real-time numerical control interpolator.Based on the idea of interval division, the machining efficiency can be improved under the premise of the constraints of the kinematic parameters of the drive axis.The overall flow of the algorithm is shown in Fig. 1.The relationship between the motion of the drive axis and the motion of the virtual axis in the Cartesian space is established by using the double NURBS curve and the structure information of the five-axis machine tool.According to the five-axis trajectory interval division segmentation method proposed in this article, under the premise of the constraints of speed, acceleration and jerk of the drive axis [8], [9], the planning interval division and evaluation of the trajectory of the tool nose point of the virtual axis is realized.After two scanning methods, according to the NURBS curve trajectory of the tool nose point, it is divided into three sections.The number and starting parameter position of each interval and the speed value of the virtual axis in each interval under the condition that the constraints of the drive axis are satisfied are calculated.Furthermore, a bidirectional scanning algorithm that satisfies the real-time calculation of numerical control and the reachability of speed between intervals is proposed on the basis of interval division.

III. SPEED PLANNING CONTROL ALGORITHM
By introducing constraint values, such as drive axis speed, acceleration, and jerk, the tool nose point trajectory is divided into IS, TS, and CS intervals.Calculate the velocity and starting position of each interval, and achieve online interpolation function by adjusting the speed values within the interval through bidirectional scanning.

A. Define Different Kinds of Intervals
The five-axis CNC machine tool has three translation axes and two rotary axes.As shown in Fig. 2, the axis under the workpiece coordinate system (O wcs − XY Z) is defined as the virtual axis, and the axis under the machine tool coordinate system (O mcs − XY Z) is the drive axis.
The position q i of the drive axis in the machine tool coordinate system can be obtained through the inverse kinematics operation of (4) through the five-axis tool nose point coordinate R(u) and the tool axis vector coordinate O(u) where inv_rtcp() is the kinematic inverse transformation function of the five-axis machine tool that changes with the machine configuration [2].Discrete sampling is performed on the NURBS curve of the tool nose point, which provides the premise for the subsequent establishment of the mathematical relationship between the virtual axis and the drive axis.In this article, the equal arc length discrete algorithm is used, that is, a point is sampled at the interval arc length δ s on the NURBS curve of the tool nose point.In the discretization process of equal arc length, the second-order Taylor expansion method is used to improve the computational efficiency.Denote the parameter of the ith discrete point as u i , then the parameter at the i+1th discrete point is calculated by The interval arc length δ s is on the virtual axis, and the corresponding relationship between the position coordinates of the drive axis and the interval arc length can be established.The first-order, second-order, and third-order derivatives of the drive axis position vector to the arc length of the tool nose point Authorized licensed use limited to the terms of the applicable license agreement with IEEE.Restrictions apply.
interval are expressed as q s , q ss and q sss , as shown in According to the knowledge of the differential principle, the relationship between the five machine tool drive axes and the virtual axis of the tool nose point can be shown in ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ q(j) = q s (j)ṡ(j) q(j) = q ss (j)ṡ(j) 2 + q s s(j) ... q (j) = q sss (j)ṡ(j) 3 +3q ss (j)ṡ(j)s(j) + q s (j) ... s (j) where q represents the axis position vector of the drive axis; q(j), q(j) and ... q (j) represent the first-, second-and third-order derivatives of the shaft position of each drive axis to time, respectively; s represents the axis position vector of the virtual axis; ṡ(j), s(j), and ... s (j) represent the first-, second-and third-order derivatives of the axis position of each virtual axis to time, respectively; q s (j), q ss (j) and q sss (j) represent the first-, second-, and third-derivatives of the axis position of each drive axis to the virtual axis position increment, respectively.
In the actual CNC machining process, the kinematic parameters of the speed, acceleration and jerk values of the drive axis must meet the kinematic characteristic requirements of the machine tool, that is, certain constraint values must be met.Assuming that the constraint values of the kinematic parameters of each drive axis are set to qmax (j), qmax (j), and ... q max (j), that is, for machine tool processing, (7) should meet the requirements of ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ qmax (j) = q s (j)ṡ(j) qmax (j) = q ss (j)ṡ(j) 2 + q s s(j) ... q max (j) = q sss (j)ṡ(j) 3 +3q ss (j)ṡ(j)s(j) + q s (j) ... s (j) Equation ( 8) contains 15 operational expressions because the requirements of the speed, acceleration and jerk of the five drive axis need to be met.The essence of the five-axis speed planning is to calculate the corresponding virtual axis speed, acceleration and jerk values, namely, ṡ(j), s(j), and ... s (j), under the given constraints of the drive axis.However, calculating the speed, acceleration and jerk values of each axis separately in the virtual axis speed planning is difficult, so conservative kinematic parameters can be used in the virtual axis speed planning (synthetic speed value v max , composite acceleration value a t,max , composite jerk value j t,max ) replaces the kinematic parameter value of each single axis.To meet the constraints of the maximum speed qmax (j), acceleration qmax (j) and jerk ... q max (j) value of each drive axis, the conservative composite speed v max , acceleration a t,max and jerk value j t,max are used to construct a five-axis constraint equation, as shown in In view of (8), to solve the nonlinear problem, the double NURBS region that satisfies ( 9) is generally defined as a highspeed region, that is, the speed can be adjusted arbitrarily when the combined speed, acceleration and jerk values are satisfied.The double-NURBS region that does not satisfy ( 9) is defined as the constant-speed region, so that the constraints of each axial drive axis of the double-NURBS trajectory can be realized.However, this method is too conservative and may cause the entire double NURBS curve to run at a lower speed, thereby resulting in lower processing efficiency.On this basis, this article further divides the double NURBS curve into IS interval, TS interval and CS interval.In satisfying the entire double NURBS curve trajectory, it cannot only meet the constraints of each drive axis, but also make the kinematic parameters of the virtual axis speed planning not too conservative and improve the overall processing efficiency.
The definitions of the IS, TS, and CS intervals are explained in detail as follows.
1) IS Interval: The command speed interval is defined as the virtual axis in the workpiece coordinate system running at the command speed, tangential acceleration and tangential jerk, and the motion parameters of the drive axis in the machine tool coordinate system caused by nonlinearity do not exceed the given maximum constraint value.That is, the interval satisfies the definition of (9).Therefore, in any area of the IS interval, you can freely accelerate and decelerate whilst reaching the command speed.2) CS Interval: Defining all regions that do not satisfy (9) as a CS interval is too conservative.In this article, the region that does not satisfy ( 9) is defined as the CS and TS interval.The CS interval is defined as the interval in which the motion parameters of the drive axis in the machine tool coordinate system must exceed the given maximum constraint value due to the nonlinear acceleration and deceleration control of the virtual axis in the workpiece coordinate system, the specific expression is presented as (10).Therefore, in the CS interval, the virtual axis cannot perform acceleration and deceleration control, and the virtual axis can only run at a CS (10) 3) TS Interval: In this article, the interval that neither belongs to the IS interval nor the CS interval is defined as the TS interval, as shown in The definition of the TS interval indicates that if the virtual axis runs with the command speed, tangential acceleration and jerk kinematics parameters in the workpiece coordinate system, the constraint of the drive axis must exceed the constraint; but if the command speed in the workpiece coordinate system is set to 0, then it will not exceed the machine tool drive axis constraint, which further means that certain speed value between 0 and the command speed value can satisfy the axis drive constraint in the machine tool coordinate system.Defining the TS range can improve the overall motion efficiency to a certain extent.

B. Calculation of Starting Position and Speed Based on Interval Division
To determine the starting position of each interval division, many data points should be collected on the NURBS curve of the tool nose point, and the interval judgment of the data points should be conducted.However, this is a time-consuming task.In order to reduce the amount of calculation, this section uses a two-step scanning method to determine the starting position of each interval.
The node parameter [u 0 , u n+p+1 ] of the NURBS curve of the tool nose point is divided into N r parts by equal arc lengths, and the arc length is defined as the length of each interpolation cycle corresponding to the command speed.A series of divided sampling points {u r,i }, i = 0, 1, 2 • • • N r is obtained.The first scanning method is adopted at the N r divided sampling points through ( 9)-( 11) to judge whether each divided sampling point belongs to the IS, TS, or CS interval.
After the first scan, the rough parameter area of the interval division on the NURBS trajectory of the entire tool nose point can be obtained.After the first scan is completed, the second scan will be performed assuming that the node parameter that corresponds to a certain speed planning interval after the first scan is [u r,a , u r,b ].The second scan is detailed as follows.First, the initial local neighborhood [u r,a−1 , u r,a ] is divided into N p parts (greater than 10), and a series of divided sampling sequences {u p,i }, i = 0, 1, 2 • • • N p is obtained.The second scan begins from i = 0 and must be judged according to (9)- (11).The point that satisfies the condition of the interval is recorded as the precise starting parameter of the planned interval.Secondly, the end local neighborhood [u r,b , u r,b+1 ] is also divided into N p parts, and a series of divided sampling sequences {u p,i }, i = 0, 1, 2 • • • N p is obtained.Scanning begins from i = 0 and must be judged according to ( 9)- (11), and the point that satisfies the condition of the interval is recorded as the precise end parameter of the planned interval.
Two scans are completed according to the judgment conditions of the IS, TS or the CS interval (CS), and the NURBS curve at the tool nose point is divided into three intervals.The total number of interval divisions on the curve are N Is , N T s and N Cs , respectively.The three interval division discrete point indicator sets are denoted as After two scans, according to the NURBS curve trajectory of the tool nose point, it is divided into three kinds of intervals, and the number of each interval and the position of the starting parameters are calculated.The next step is to calculate the speed value of the virtual axis in each interval under the condition that the constraints of the drive axis are satisfied.
1) IS Interval: For the command speed range, the maximum kinematic parameters of the virtual axis will not exceed the constraints of the drive axis, so the maximum command speed v max , the maximum tangential acceleration a t,max , and the maximum tangential jerk j t,max are allowed in this range.Therefore, for the IS interval, the allowable maximum command speed, tangential acceleration and tangential jerk are v max ,a t,max , j t,max , respectively.2) CS Interval: As long as speed change occurs in the virtual axis, acceleration and jerk will be generated.The kinematic parameters of the drive axis after nonlinear transformation will exceed the constraint value, and the speed in this range can only be a CS.The virtual axis acceleration and jerk values in the CS interval are set to 0, and the CS interval ...
3) TS Interval: For the TS interval, the virtual axis in the workpiece coordinate system has a certain speed value between 0 and the command speed value, which can satisfy the axis drive constraint in the machine tool coordinate system.The acceleration and jerk values in this interval are a t,max and j t,max , respectively.The arc length of parts to obtain a series of divided sampling points {u r,q }, q = 0, 1, 2 • • • N T and take one of the divided sampling points to calculate the speed of the divided sampling point.The calculation method is detailed as follows: First, the calculation is performed for the acceleration constraint of the drive axis.According to (9), the calculation is performed for one divided sampling point in the TS interval, as shown in Authorized licensed use limited to the terms of the applicable license agreement with IEEE.Restrictions apply.Next, the jerk constraint of the drive axis is calculated as ...
Under the condition of known tangential acceleration a t,max and tangential jerk j t,max , the velocity under the constraint of jerk is calculated according to (15) shown at the bottom of this page by using Cardan's formula Finally, the speed expression of the TS interval is shown as For the convenience of calculation, the speed value for the TS interval can be determined by taking half of the sum of the adjacent IS interval and CS interval.Any range that falls below this calculated speed value can then be classified as CS interval.After two scans, it is divided into three areas, and the velocity and starting position of each interval are obtained.

C. Speed Bidirectional Scanning Based on Interval Division
To meet the requirements of real-time calculation, that is, the CNC system generally cannot read and process all the trajectory segments because the burden of the system will increase.A certain length of tool path must be preread into the numerical control system for analysis, and an appropriate acceleration and deceleration strategy must be adopted to enable the tool to accelerate or decelerate to the next interval smoothly and avoid rapid acceleration or deceleration.As such, this article proposes a forward-looking velocity bidirectional scanning planning algorithm based on interval division, and the principle is shown in Fig. 3.
The speed of each interval in the look-ahead window is scanned bidirectionally so that the speed can be reached at the connection points of each interval under the constraints of a t,max and j t,max .According to (17), the speed at the connection point of each interval is assumed to be the smaller value of the speed of the adjacent interval, i is assumed to represent the position of the current interval, and v(i) represents the planned speed of the ith interval The bidirectional scanning algorithm flow of the five-axis speed control algorithm based on interval division proposed in this article can be divided into three steps.
Step 1. Forward Scan: Starting from the start segment point u 0 of the look-ahead window, let i = 0 begin a forward scan cycle, The forward scanning method is used to determine if the current section's trajectory length meets the requirements of the acceleration from the starting speed at the current segmentation to the starting speed at the next segmentation point.Notably, the speed at the segment point u i of the interval is v(i), and the maximum speed that can be achieved after accelerating through the S-shaped curve [15] of the acceleration distance L total (i + 1), the maximum acceleration a t,max and the maximum jerk j t,max is v (i).If v (i) < v(i + 1), then the acceleration distance of section i is insufficient, the speed v(i) at the section point u i cannot be accelerated to the speed v(i + 1) of the next section point, and the speed v(i + 1) of the section point u i+1 of the next speed section needs to be updated to v (i).Subsequently, i is updated to make i = i + 1.The forward scanning process is repeated if the acceleration distance does not meet the requirements.The speed is adjusted until i = n (n is the number of look-ahead window intervals), and the forward scanning cycle ends.After the forward scan, the acceleration distance of the S-curve from the start point to the end point of each section is sufficient.Acceleration control in the CS interval will cause the kinematic constraints of the drive axis to exceed the set value.Thus, acceleration control cannot be achieved in this range.
When the i segment is in the CS interval, the forward scan will not be processed, and it will directly jump to the i + 1 segment.
Step 2. Scan in Reverse: The principle of reverse scanning implies that when decelerating from the segment start point of the speed planning interval to the segment end point of the look-ahead planning window, it is equivalent to reverse acceleration from the segment end point of the look-ahead window speed planning interval to the segment start point of the look-ahead window.Starting from the segment end point of the speed planning interval (n is the number of the look-ahead window planning area, n = 8 in Fig. 3), method is similar to forward scan.Implementing acceleration control in the CS interval will cause the kinematic constraints of the drive axis to exceed the set value.Thus, acceleration control cannot be implemented in this range.When i segment is in the CS interval, then the reverse scan will not be processed, and it will directly jump to the i − 1 segment.Step 3. Move the Look-Ahead Window: After forward and reverse scanning, if the last speed planning interval of the NURBS curve at the tool nose point is already included in the current look-ahead window, then all the previous look-ahead windows are outputted, that is, all the five-axis Authorized licensed use limited to the terms of the applicable license agreement with IEEE.Restrictions apply.dual NURBS curves are outputted, and the speed planning process is ended.If the last speed planning interval of the tool nose point NURBS curve is not included in the current look-ahead window (see Fig. 4), then the speed planning interval with the segment point u 0 as the starting point is outputted to the queue to be interpolated, and the starting point of the look-ahead window is moved to the segment point u 1 of the next speed planning interval.

IV. SIMULATION AND EXPERIMENT
In this section, simulation and experiments are used to verify the correctness and effectiveness of the proposed online full real-time CNC system interpolator based on interval division for five-axis dual NURBS curves.The five-axis speed planning and interpolation algorithm is implemented in PC and verified on the five-axis vertical milling machining centre.The experimental platform is shown in Fig. 5(a).
The actual cutting workpiece adopts the oblique flow impeller as shown in Fig. 5(b), including large blades and small blades, the shapes of large and small blades are different and there are excessive tool paths.The characteristic is that both the tool tip and the tool axis are involved in the actual machining.
The numerical control simulation parameters are set as given in Table I.
For the virtual axis speed planning results in the workpiece coordinate system, Fig. 6 show that the speed, acceleration and jerk obtained by the virtual axis speed planning of the two methods are all within the given maximum value.From Fig. 6(a), the processing time of the algorithm in this article is 11.4 s, and the traditional algorithm [19], [20] is 12.8 s.The processing efficiency of the algorithm in this article is increased by 10.9%.Fig. 7 shows the results of the drive axis interpolation data in the machine tool coordinate system.The speed, acceleration and jerk parameters of X, Y, Z translation axes and A, C rotation axes are all limited within the parameter limits set in Table I, thereby also proves the improvement of the efficiency of the algorithm in this article.
The speed of the spindle with the milling cutter is set to 10000 r/min, and the operation of the machine tool is controlled by the CNC system of the five-axis vertical machining centre.Fig. 8(d) is the processing result of the traditional method, and Fig. 8(e) is the processing result of the proposed method.First, use a three-coordinate measuring instrument [see Fig. 8(a)] to test the position accuracy of the leading edge of the large blade.The test data includes a probe with a radius of 1 mm.Fig. 8(b) is the result of the traditional method, the maximum deviation is 0.0505 mm, and Fig. 8(c) is the result of the proposed square test, the maximum deviation is 0.0778 mm, and the accuracy meets the actual processing requirements.Next, the surface roughness in the red area of Fig. 8(d) and (e) was tested by using a three-dimensional white light interferometer [ZYGONexView, Fig. 8(f)].The results are shown in Fig. 8(g) and (h), The 3-D average surface roughness of the traditional method and the proposed method is 0.176 and 0.175 μm, and the results are similar.Therefore, the proposed online full real-time CNC system interpolator can improve machining efficiency whilst obtaining similar machining quality.

V. CONCLUSION
In the five-axis interpolation, the nonlinear relationship between the workpiece coordinate system and the machine tool coordinate system makes it difficult to plan the feed rate.This article proposes an online real-time and efficient CNC interpolation method for five-axis CNC machining based on interval division, which improves the machining efficiency.
The proposed method has the characteristics of high processing efficiency, which is realized by introducing the idea of interval division.After the speed, acceleration and jerk constraints of each drive axis of the machine tool are given, the interval division is obtained according to the relationship between the drive axis motion and the virtual axis motion established by the five-axis machine tool structure.The efficiency can be improved by more than 10% compared with the traditional method through experiments.At the same time, the proposed method has the characteristics of real-time in industrial systems.In this article, a forward-looking velocity bidirectional scanning planning method based on interval division is proposed, which avoids inputting all trajectory segments into the system for calculation.
Therefore, the five-axis interpolator proposed in this article can achieve smooth and efficient machining, and can be embedded in an open CNC system.However, both servo control and mechanical transmission have an impact on the machining results.In future research, a numerical control interpolator based on servo performance can be studied.

Fig. 1 .
Fig.1.Five-axis system online full real-time numerical control interpolator system structure.