[ieee 2009 4th ieee conference on industrial electronics and applications (iciea) - xian, china...

5

Click here to load reader

Upload: weitang

Post on 17-Apr-2017

212 views

Category:

Documents


0 download

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

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

[email protected]

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

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

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

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

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