[ieee 2009 4th ieee conference on industrial electronics and applications (iciea) - xian, china...
TRANSCRIPT
![Page 1: [IEEE 2009 4th IEEE Conference on Industrial Electronics and Applications (ICIEA) - Xian, China (2009.05.25-2009.05.27)] 2009 4th IEEE Conference on Industrial Electronics and Applications](https://reader037.vdocuments.us/reader037/viewer/2022100722/5750ac351a28abcf0ce54490/html5/thumbnails/1.jpg)
978-1-4244-2800-7/09/$25.00 ©2009 IEEE ICIEA 2009
Development of a NURBS Curve Interpolator with Look-ahead Control and Feedrate Filtering for CNC
System Xiaohui Zhang1,2, Dong Yu2, Yi Hu1,2, Haitao Hong2 , Weitang Sun2
1) Graduate University of Chinese Academy of Sciences Chinese Academy of Sciences Beijing, P. R. China, 100039
2) Shenyang Institute of Computing Technology Chinese Academy of Sciences
Shenyang, Liaoning, P. R. China, 110004 [email protected]
Abstract—The interpolator is one of the key functions modules in CNC system, which directly effects on machining accuracy, machining efficiency, and tool motion smoothness. In this paper, an interpolator with look-ahead control and feedrate filtering is proposed for non-uniform rational B-spline curves (NURBS) interpolation while considering the contour errors and feedrate fluctuations. In the proposed interpolator, the feedrate can be adaptively adjusted according to the different curvature to meet the demand of the machining accuracy, and the looked-ahead control and feedrate filtering are applied to obtain a continuous feedrate and acceleration during the whole interpolation process. Therefore, the proposed interpolator can ensure machining accuracy, reduce mechanical shock and increase machining efficiency. Finally, the designed experiments show the effectiveness of the proposed interpolator for machining NURBS curve path.
Index Terms—NURBS curve interpolator, look-ahead control, feedrate filtering, CNC
I. INTRODUCTION In modern CAD/CAM (Computer Aided Design/ Computer
Aided Manufacturing) systems, complex shape surfaces for parts such as dies, aerospace and car models are usually represented in parametric form. In contrast, conventional CNC (Computer Numerical Control) systems only provide line/circular interpolation, so the CAD/CAM systems have to divide the curves into a huge number of small linear/circular segments according to contour error limit. However, this type of machining has many disadvantages, such as heavy transmission burden between CAD/CAM and CNC systems, discontinuous feedrate profile, and unsmooth machining process, etc [1].
To overcome those disadvantages, many interpolation methods for parametric curves have been proposed by investigators. Bedi et al developed uniform interpolator by setting the curve parameter increment as a constant [2]. It provides a simple solution to parametric interpolation, but the feedrate is unable to be controlled. Shpitalni et al proposed constant feedrate interpolation algorithm based on first-order Taylor expansion [3]. Furthermore, Yang et al proposed an interpolation algorithm based on second-order Taylor expansion [4]. However, those algorithms do not explicitly consider chord error in the interpolation process. In order to
improve machining quality, the chord error must be confined within a specified tolerance range. Yeh and Hsu proposed an adaptive interpolation algorithm to achieve constant feedrate and confined chord error at the same time [5]. The adaptive interpolation algorithm can adaptively adjust feedrate according to curvature change, but the machine’s dynamic capabilities were not considered during adjusting feedrate. Later, Yong and Narayanswami improved their work by imposing limitation on the acceleration/deceleration in adaptive areas [6], but the dramatic change of acceleration/ deceleration still exists in acceleration/deceleration start stage [7].
Based on the above research, this paper proposed a NURBS curve interpolator with look-ahead control [8] and feedrate filtering [9]. Thus, the proposed interpolator can keep the feedrate constant in most of the interpolation process and adjust feedrate with continuous acceleration. The proposed interpolator has also been successfully applied to CNC.
II. DESIGN OF INTERPROLATOR ARCHITECTURE The architecture of designed interpolator is shown in Fig. 1.
As seen in Fig. 1, the interpolator is divided into two stages. The first stage consists of adaptive feedrate adjustment module and feedrate look-ahead control module, and the second stage consists of feedrate filtering module and interpolation calculation module. Each module functions are as follows:
• The function of the adaptive feedrate adjustment module is to adjust feedrate, confine chord error and make acceleration meet machine’s acceleration capabilities.
• The function of the feedrate look-ahead module is to detect deceleration point, replane feedrate of the decelerate region and make deceleration meet machine’s deceleration capabilities.
• The function of the feedrate filtering module is to obtain a continuous acceleration and avoid dramatic change of acceleration/deceleration by using filtering technique.
• The function of the interpolation calculation module is to calculate coordinate figure of interpolation points.
2755
![Page 2: [IEEE 2009 4th IEEE Conference on Industrial Electronics and Applications (ICIEA) - Xian, China (2009.05.25-2009.05.27)] 2009 4th IEEE Conference on Industrial Electronics and Applications](https://reader037.vdocuments.us/reader037/viewer/2022100722/5750ac351a28abcf0ce54490/html5/thumbnails/2.jpg)
servo control stage
Input: control points, knot vector, weight, command
feedrate, acceleration, chord error, filter length
datebuffer
feedrate filtering module
Interpolation calculation
module
servosystem
CNC machine
first stageinterpolation
second stage interpolation
feedrate looked-ahead module
adaptive feedrateadjustment module
Figure 1. Architecture of the interpolator
III. ALGORITHM DESIGN Consider that the NURBS curve is ( )C u , where the
parameter u is used to represent the position of point on the curve. For generating a motion trajectory using NURBS curve, the parameter u of curve needs to be expressed as the function of time t , and the value of ( )u t at 1it t += can be calculated on basis of the value of ( )u t at it t= . By using second-order Taylor expansions of ( )u t at it t= and neglecting the high-order terms, the value of ( )u t at it t= can be calculated as
2 2
1 4
( ) ( ( ) ( ))( )( ) 2 ( )
i
i i
i u uii i
u u u u
V u T C u C uV u Tu u
C u C u=
+= =
′ ′′•= + −
′ ′i
(1)
Where T is interpolation cycle, ( )iV u is feedrate, ( )C u′ and ( )C u′′ are the first and second derivatives of the NURBS curve. When NURBS interpolation algorithm is performed, the feedrate ( )iV u in (1) should be determined firstly.
A. Improvement of Adaptive Feedrate Adjustment Algorithm To achieve high machining quality, the feedrate should be
constant in the machining process, and the chord error should be confined within the allowable range. Therefore, the adaptive feedrate adjustment algorithm is to combine the adaptive feedrate interpolation scheme with normal acceleration and tangential acceleration. The algorithm of determine the feedrate ( )iV u is given as follows:
tan( ) min( ( ), ( ), ( ), )i error i normal i gent iV u V u V u V u F= (2)
2 2max
2( ) ( ) ( ( ) )error i i iV u u u errorT
ρ ρ= − − (3)
max( ) ( )normal i iV u A uρ= (4)
tan 1 max( ) ( ) *gent i iV u V u A T−= + (5)
Where ( )error iV u , ( )normal iV u , tan ( )gent iV u and F are the feedrate to meet the requirements of chord error, the feedrate to
meet the requirements of normal acceleration, the feedrate to meet the requirements of tangential acceleration in acceleration process and the command feedrate, respectively. T is interpolation cycle, maxerror is the allowable maximum chord error, ( )iuρ is radius of curvature, 1( )iV u − is feedrate of last interpolation cycle and maxA is allowable maximum acceleration.
B. Feedrate Look-ahead Control Algorithm The adaptive feedrate adjustment algorithm can keep the
chord error within an allowable range and meet machine’s dynamic capabilities in acceleration process. However, in deceleration process when curvature of NURBS curve changes very fast, the change of feedrate will probably exceed the machine’s deceleration capabilities. Hence, feedrate look-ahead control algorithm is introduced to deal with the dramatic change of feedrate.The feedrate look-ahead control algorithm has three tasks:
1) Perform 600 look-ahead interpolations according to the adaptive adjustment feedrate ( )iV u in (2).
2) Detect the deceleration point in the adaptive feedrate adjustment process.
3) Determine the start point of deceleration and re-plan deceleration process.
To achieve feedrate look-ahead control algorithm, the paper designs a special data structure used to store information of interpolation. The form of this data structure is shown as
{ }int[ ] , ( ), ( ), _ ( ), _ ( )i i i i ipo i u V u A u length step u length all u ,Where, iu is parameter variable of the i-th interpolation point; ( )iV u is its feedrate; ( )iA u is its acceleration; _ ( )ilength step u is the distance between this point and previous point; _ ( )ilength all u is the distance between this point and the first point. The feedrate look-ahead control algorithm is shown in Fig. 2.
The deceleration point can be determined by comparing the value of ( )iV u and 1( )iV u + .If 1( ) ( )i iV u V u +≤ , the point iu on the curve is not deceleration point and int[ 1]po i + is directly put into date buffer. If 1( ) ( )i iV u V u +> , the point iu on the curve is deceleration point and the deceleration process is re-planed as follows:
1) If 1 max( ) ( ) *i iV u V u A T+ ≥ − , it shows the deceleration process which is from point iu to point 1iu + on curve meets the deceleration capacity of the machine tool. Put int[ 1]po i − into date buffer, mark point iu as the start point of deceleration and jump to step 5).
2) If 1 max( ) ( ) *i iV u V u A T+ < − , it shows the deceleration which is from iu on curve is too late to meet the deceleration capacity of the machine tool. Find point i nu − on the curve from
int[ 1]po i − to int[0]po in the date buffer to meet (6), and mark i nu − as the start point of deceleration.
2 21
max
( ) ( )_ [ ] _ [ ]
2i i n
i i n
V u V ulength all u length all u
A+ −
−
−≤ − (6)
2756
![Page 3: [IEEE 2009 4th IEEE Conference on Industrial Electronics and Applications (ICIEA) - Xian, China (2009.05.25-2009.05.27)] 2009 4th IEEE Conference on Industrial Electronics and Applications](https://reader037.vdocuments.us/reader037/viewer/2022100722/5750ac351a28abcf0ce54490/html5/thumbnails/3.jpg)
3) Re-plan the feedrate ( )iV u from point i nu − to point 1iu + on the curve. The feedrate is re-planed accodring to the
max deceleration maxA . After re-planning, the feedrate ( )iV u at point iu can be expressed as follows:
max( ) ( ) *i i nV u V u A nT−= − (7)
4) After re-planning, update the date buffer from int[ ]po i n− to int[ 1]po i + and add some new component into
date buffer. 5) Exit feedrate look-ahead control algorithm.
1( ) ( )i iV u V u+ <
ui+1 is deceleration point
1 max( ) ( ) *i iV u V u A T+ < −
deceleration process
2 21
max
( ) ( )2
i i nV u V uL
A+ −−
=
1_ [ ] _ [ ]i i nS length all u length all u+ −= −
S L>
mark the start and end point of deceleration
no
yes
yes
no
n=n+1
yes
no
1( )iV u +
re-interpolate from point ui-n to point ui+1
update date buffer
Figure 2. Feedrate look-ahead control algorithm
C. Feedrate Filtering Algorithm After the feedrate look-ahead control module, the feedrate
not only meet the requirement of machining precision, but also meet the machine’s dynamic capabilities. But there is the dramatic change of acceleration/deceleration in acceleration/ deceleration start stage. Hence, the filter technology applied to obtain continuous acceleration/deceleration in the whole interpolation process.
+
L1
Figure 3. Architecture of moving average filter
According to moving filter principle, the feedrate ( )iV u is put into moving filter, and the Length of moving filter is L ( L is order of moving filter) as shown in Fig. 3. By calculating average of cumulative feedrate, the feedrate after filtering,
( )iV u after filtering can be expressed as
[ ]1
1 10
1 1( ) ( ) ( ) ( ) ( )L
i i i i L i kk
V u V u V u V u V uL L
−
− − + −=
= + + + = ∑… (8)
After feedrate filtering, the acceleration after filtering ( )iA u and jerk after filtering ( )iJERK u can be calculated by
feedrate ( )iV u .
1) Constant feedrate process Because of 1( ) ( ) 0i iV u V u −− = in constant feedrate process,
the acceleration ( )iA u and jerk ( )iJERK u can be expressed as follows:
1( ) ( )( ) 0i i
iV u V u
A uT
−−= = (9)
1( ) ( )( ) 0i i
iA u A u
JERK uT
−−= = (10)
2) Acceleration/ Deceleration process
If 1max
( ) ( )i iV u V uA
T−−
= , the acceleration ( )iA u and jerk
( )iJERK u can be expressed as follows:
1 max( ) sgn( ( ) ( ))i i iiA u V u V u AL −= − (11)
max1( ) sgn( ( ) ( ))i i i
AJERK u A u A u
LT−= − (12)
If 1max
( ) ( )i iV u V uA
T−−
< , the acceleration ( )iA u and jerk
( )iJERK u can be expressed as follows:
1
1
( ) ( )1( ) ( )L
i ii
i
V u V uA u
L T−
=
−= ∑ (13)
2757
![Page 4: [IEEE 2009 4th IEEE Conference on Industrial Electronics and Applications (ICIEA) - Xian, China (2009.05.25-2009.05.27)] 2009 4th IEEE Conference on Industrial Electronics and Applications](https://reader037.vdocuments.us/reader037/viewer/2022100722/5750ac351a28abcf0ce54490/html5/thumbnails/4.jpg)
12
( ) ( )( ) i i
iV u V u
JERK uLT
−−= (14)
After the feedrate look-ahead control module, the acceleration was confined within the max acceleration maxA
range, so 1max
( ) ( )i iV u V uA
T−−
> does not exist.
From (9)-(10), it is easy to see that the feedrate filtering algorithm has no effect on feedrate in constant feedrate process. However, from (11)-(14), it is easy to see that the acceleration is adjusted, and the jerk is confined within the controllable range, which depend on the length of filter. Therefore, it avoids the dramatic change of acceleration/deceleration in acceleration/deceleration start stage, and makes NURBS curve interpolation more smooth.
IV. EXPERIMENTS AND RESULTS The designed interpolator was implemented in the open
CNC system, which is based on an industrial PC with an Intel Celeron 440 2.0GHz CPU, a 1-Gbytes DDR 633Hz RAM and a 40-Gbytes hard drive. The whole CNC software is developed in C/C++ language and runs under the real-time LINUX-RTAI operating system. The CNC system parameters used in this experiment is as follows: the interpolation cycle T is 0.002s, the feedrate limit F is 12000 mm/min, the acceleration limit
maxA is 2000mm/s2, the length of filter L is 25, the chord error limit maxerror is 0.001mm. Fig. 4 shows a NURBS curve G codes, which express machining path as shown Fig. 5.
Figure 4. The NURBS G codes
Figure 5. The NURBS machining path
Fig. 6a-6c show the chord error, feedrate and acceleration profiles just after the adaptive feedrate adjustment module. Fig. 7a-7c show these profiles with feedrate look-ahead control module. Fig. 8a-8c show these profiles with feedrate filtering module.
Figure 6. Experimental results after the adaptive feedrate adjustment module
Figure 7. Experimental results after the feedrate look-ahead control module
2758
![Page 5: [IEEE 2009 4th IEEE Conference on Industrial Electronics and Applications (ICIEA) - Xian, China (2009.05.25-2009.05.27)] 2009 4th IEEE Conference on Industrial Electronics and Applications](https://reader037.vdocuments.us/reader037/viewer/2022100722/5750ac351a28abcf0ce54490/html5/thumbnails/5.jpg)
Figure 8. Experimental results after the feedrate filtering module
From Fig. 6a, it is easy to see that after the adaptive feedrate adjustment module, the feedrate automatically reduces at large curvature areas to confine the chord error. From Fig. 6b-6c, one can see that after the adaptive feedrate adjustment, the change of feedrate is confined within allowable acceleration range in acceleration process, but in deceleration process, the deceleration peak reaches 23300 /mm s−− , which is far more than limited 22000 /m s−− .
From Fig. 7a, one can see that after the feedrate look-ahead control module, the chord error still meets satisfies requirements of the CNC system. From Fig. 7a-7c, it is easy to see that the change of feedrate is confined within the allowable acceleration range not only in acceleration process but also in deceleration process. However, the acceleration/deceleration is not continuous, and there is the dramatic change of acceleration/deceleration in acceleration/ deceleration start stage.
Comparing Fig. 8b with Fig. 7b and Fig. 8c with Fig. 7c, it is easy to see that after the feedrate filtering module, feedrate and acceleration have been adjusted to make acceleration/deceleration continuous. At the same time, from Fig. 9a, one can see that the chord error is also confined within the allowable tolerance.
V. CONCLUSION A novel NURBS interpolator is proposed and implemented,
which consists of an adaptive feedrate adjustment module, a feedrate look-ahead control module, a feedrate filtering module, and an interpolation calculation module. To meet the requirement of machining accuracy, the adjustment module can adjust feedrate according to curvature. At the same time, the dynamics capabilities of machine are considered in the whole machining process, the look-ahead control module confined acceleration/deceleration within the allowable range. By using feedrate filter, the dramatic change of acceleration/deceleration
can be avoided. Experiments are performed to validate the feasibility of interpolator. Experimental results show that the developed interpolator can machine NURBS curve with high speed, high precision and efficient capability.
ACKNOWLEDGMENT This research is supported by Chinese Academy of
Sciences Knowledge Innovation Program under Grant KGCX2-YW-119.
REFERENCES [1] G. W. Vickers, C. Bradley, “Curved surface machining through circular
arc interpolation”, Compute Industry, vol. 19, pp. 329–37, 1992. [2] S. Bedi, I. Ali, and N. Quan., “Advanced interpolation techniques for
CNC machines”, ASME Journal of Engineering for Industry, vol. 115, pp. 329–336, 1993.
[3] M. Shpitalni, Y. Koren, and C. C. Lo, “Real-time curve interpolators”, Computer-Aided Design,vol. 26, pp. 832–838, 1994.
[4] D. C. H. Yang, T. Kong, “Parametric interpolator versus linear interpolator for precision surface machining”, Computer-Aided Design, vol. 26, pp. 225–234, 1994.
[5] S. Yeh, P. Hsu, “Adaptive feedrate interpolation for parametric curves with a confined chord error”, Computer-Aided Design, vol. 34, pp. 229–237, 2002.
[6] M. Tikhon, T. J. Ko, et al, “NURBS interpolator for constant material removal rate in open NC machine tools”, International Journal of Machine Tools and Manufacture, vol. 44, pp. 237–245, 2004.
[7] T. Yong, R. Narayanaswami, “A parametric interpolator with confined chord errors, acceleration, deceleration for NC machining”, Computer Aided Design, vol. 35, pp. 1249–1259, 2003.
[8] M. T. Lin, M. S. Tsai, and H. T. Yau, “Development of a dynamics-based NURBS interpolator with real-time look-ahead algorithm”, International Journal of Machine Tools and Manufacture, vol. 47, pp. 2246-2262.
[9] D. Yu, S. H. Hu, et al, “Research on acceleration and deceleration for CNC mahine tools based on filtering ”, China Mechanical Engineering, vol. 19, pp. 804-807, 2008.
2759