three dimensional biarc approximation of freeform surfaces for...

25
INT . J . PROD . RES ., 2000, VOL . 38, NO . 4, 739± 763 Three dimensional biarc approximation of freeform surfaces for machining tool path generation YUAN-JYE TSENG y * and YII-DER CHEN y In typical methods for machining freeform surfaces, the machining tool paths are generated by approximating the surface curves using line segments. While the approximated shape of the surface can be produced using cutters traversing along the line segments, the ® nal surface produced may lack smoothness and continuity due to the zigzag patterns of the line segments. To reduce the di erence and increase smoothness and continuity, the arc splines can be used to approx- imate the freeform curves and surfaces. A biarc is composed of two consecutive circular arcs with an identical tangent at the connecting point. Since the tangents at the connecting node are the same, the C 1 continuity property can be preserved. In addition, if the di erence between the curvatures at the connecting node is minimized, then the C 2 smoothness property can be enhanced. In this research, the biarc segments are used to approximate the 2D and 3D freeform curves and surfaces using the largest deviation distance between the curves and the biarcs as the approximation criterion. The tool contact points generated and biarcs can be used to generate NC tool paths for machining 2D curves and 3D curves and surfaces. The methodology presented is implemented on a personal computer. Example parts modelled with B-spline curves and surfaces are tested and dis- cussed. The test results show that the number of tool contact points and the number of segments are fewer than the typical linear approximation methods. 1. Introduction The main idea of CAD and CAM integration is automatic generation of manu- facturing information directly from CAD data. The purpose of machining tool paths is to guide the cutting tools to produce the part geometry speci® ed in design. The typical approach to machining tool path generation can be summarized as de® ning a cutting logic under the constraints of tool size and part geometry to generate the tool paths within the speci® ed tolerance. In tool path generation for machining freeform surfaces, tool contact points are generated based on the surface de® nitions and the tolerance speci® cations. The tool contact points then are used to generate cutter location ( CL ) data according to the speci® ed cutter geometry and size. The cutter location data can be post-processed to generate the NC ( Numerical Control) codes for driving NC machines. In previous research in machining of freeform surfaces, there are various approaches and systems. Recent reviews can be found in Jensen and Anderson ( 1996 ) and Austin et al . ( 1997 ). The di erent methods can be summarized into four categories: ( 1 ) parametric method, ( 2 ) Cartesian method, ( 3) o set surface method, and ( 4) cubic approximation method. The parametric method has been presented by Loney and International Journal of Production Research ISSN 0020± 7543 print/ISSN 1366± 588X online # 2000 Taylor & Francis Ltd http://www.tandf.co.uk/journals/tf/00207543.html Revision received July 1999. { Department of Industrial Engineering, Yuan Ze University, 135 Yuan-Tung Road, Chung-Li, Taoyuan Hsien 320, Taiwan. * To whom correspondence should be addressed. e-mail: [email protected]

Upload: others

Post on 24-Jan-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

INT J PROD RES 2000 VOL 38 NO 4 739plusmn 763

Three dimensional biarc approximation of freeform surfaces formachining tool path generation

YUAN-JYE TSENGy and YII-DER CHENy

In typical methods for machining freeform surfaces the machining tool paths aregenerated by approximating the surface curves using line segments While theapproximated shape of the surface can be produced using cutters traversingalong the line segments the reg nal surface produced may lack smoothness andcontinuity due to the zigzag patterns of the line segments To reduce the di erenceand increase smoothness and continuity the arc splines can be used to approx-imate the freeform curves and surfaces A biarc is composed of two consecutivecircular arcs with an identical tangent at the connecting point Since the tangentsat the connecting node are the same the C1 continuity property can be preservedIn addition if the di erence between the curvatures at the connecting node isminimized then the C2 smoothness property can be enhanced In this researchthe biarc segments are used to approximate the 2D and 3D freeform curves andsurfaces using the largest deviation distance between the curves and the biarcs asthe approximation criterion The tool contact points generated and biarcs can beused to generate NC tool paths for machining 2D curves and 3D curves andsurfaces The methodology presented is implemented on a personal computerExample parts modelled with B-spline curves and surfaces are tested and dis-cussed The test results show that the number of tool contact points and thenumber of segments are fewer than the typical linear approximation methods

1 Introduction

The main idea of CAD and CAM integration is automatic generation of manu-facturing information directly from CAD data The purpose of machining tool pathsis to guide the cutting tools to produce the part geometry specireg ed in design Thetypical approach to machining tool path generation can be summarized as dereg ning acutting logic under the constraints of tool size and part geometry to generate the toolpaths within the specireg ed tolerance

In tool path generation for machining freeform surfaces tool contact points aregenerated based on the surface dereg nitions and the tolerance specireg cations The toolcontact points then are used to generate cutter location (CL) data according to thespecireg ed cutter geometry and size The cutter location data can be post-processed togenerate the NC (Numerical Control) codes for driving NC machines In previousresearch in machining of freeform surfaces there are various approaches andsystems Recent reviews can be found in Jensen and Anderson (1996) and Austinet al (1997) The di erent methods can be summarized into four categories (1)parametric method (2) Cartesian method (3) o set surface method and (4) cubicapproximation method The parametric method has been presented by Loney and

International Journal of Production Research ISSN 0020plusmn 7543 printISSN 1366plusmn 588X online 2000 Taylor amp Francis Ltdhttpwwwtandfcoukjournalstf00207543html

Revision received July 1999 Department of Industrial Engineering Yuan Ze University 135 Yuan-Tung Road

Chung-Li Taoyuan Hsien 320 TaiwanTo whom correspondence should be addressed e-mail ieyjtsaturnyzuedutw

Ozsoy (1987) Choi and Jun (1989) and Elber and Cohen (1994) The parametricmethod generates tool contact curves by traversing along constant-parameter curvesThe tool contact points are obtained by approximating the isoparametric curves withline segments The Cartesian method generates tool paths in the x-y-z coordinateworld A typical Cartesian approach such as presented by Huang and Oliver (1994)generates planar equally spaced curves by intersecting parallel planes with the sur-face to dereg ne tool contact curves The tool contact points are generated by approx-imating the tool contact curves with line segments The o set surface method hasbeen presented by Kim and Kim (1995) and Tang et al (1995) In the o set surfacemethod an o set surface is generated by o setting with a proper distance such as atool radius from the original surface The tool contact points and cutter locationdata are generated on the o set surface using linear segment approximation Adi erent type of method can be characterized as cubic block approximationmethod In the research by Lee et al (1994) and Tseng and Sue (1999) a toolpath generation method is developed for machining surfaces using an octree approx-imation method A grid height approximation method is presented by You and Chu(1995) in which grid blocks with di erent heights are used to approximate a surface

Based on the observation in the previous research machining of freeform sur-faces has been performed using linear elements for example line segments or squareblocks As shown in reg gure 1(a) line segments are used to approximate a curve toproduce the approximated shape of the curve or surface While the reg nishing shapecan be produced within the specireg ed tolerance the reg nal curves and surfaces

740 Y-J Tseng and Y -D Chen

(a)

(b)Figure 1 Approximating a curve using line segments and biarcs (a) Approximating a curve

using line segments (b) Approximating a curve using biarcs

produced may lack smoothness and continuity Since the cutter actually moves ina zigzag manner the excessive sudden changes of cutter movements may causeadditional collision and tool wear To reduce the di erence and increase smoothnessand continuity arc splines can be used to approximate the curves and surfacesFigure 1(b) shows an example of approximating a curve using biarcs

A biarc is composed of two connected circular arcs with the identical tangentdirection at the connecting point Since the tangents at the connecting point are thesame the tangent continuity property can be preserved In addition if the di erencebetween two curvatures at the connecting point is minimized then the smoothnessproperty can also be enhanced Furthermore line segments and single circular arcsare all special cases of biarcs Therefore the alternatives in determining the mostappropriate biarc segments for approximating a given curve are unrestricted Thetraditional line segment approximation can be considered a special case in the biarcapproximation Based on this idea the biarc segments can be used to approximatethe curves and surfaces to achieve the purpose of C1 tangent continuity and C2

curvature continuity The biarcs are suitable for generating machining tool pathsince all the NC machines are equipped with circular interpolating capability ProperNC codes can be assigned to guide the cutters to traverse the circular arcs In thisresearch new methods are developed to generate tool contact points and paths formachining 3D freeform curves and surfaces using the biarc approximation approach

The biarcs have been applied in reg tting and approximating discrete data points inprevious research such as presented in Parkinson and Moreton (1991) Moreton etal (1991) Meek and Walton (1992) Schonherr (1993) and Yeung and Walton(1994) In the related research in biarc reg tting and approximating a given curveMeek and Walton (1993) uses biarc to approximate a 2D quadratic curve Biarcsare used to build bounds for a given curve The bounded regions are used to evaluatethe tolerance between the biarcs and the given curve In Ong et al (1996) anapproach to biarc reg tting of 2D B-spline curves is presented The objective is tominimize the area between the biarcs and the curve Although the area can beminimized the important tolerance specireg cations such as the absolute deviationdistance may be out of range In common machining practice the tolerance isusually specireg ed as the largest deviation distance between the tool path and thedesigned curve

In summary in previous research biarcs have been used in approximating andreg tting a group of data points In addition biarcs have been used in approximatingand reg tting 2D curves However biarcs have not been used in approximating 3Dcurves and 3D surfaces Moreover the tolerances are not discussed from the machin-ing point of views The commonly used deviation distance has not been used as theapproximating criterion Therefore a general 3D biarc approximation model isrequired for approximating 3D curves and surfaces for machining purposes

In this research a new approach is presented for tool path generation formachining 3D curves and surfaces using biarc approximation First 2D biarcs areused to approximate a 2D B-spline curve Second a new model of 3D biarcs ispresented for approximating a 3D B-spline curve Third 3D surface curves areapproximated using biarcs for generating tool contact points and paths for machin-ing 3D surfaces The approximating criterion is the largest allowed deviation dis-tance between the curve and the biarcs The biarcs generated dereg ne the tool contactpoints and paths The tool contact points and paths can be post-processed for NCcode generation for machining The 2D biarcs are suitable for machining on a 3-axis

7413D biarc approximation for freeform surfaces

milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method

In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study

2 Biarc approximation of 3D curves

21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the

connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same

As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated

In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle

22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-

ships between the tangent angles not and shy Several special cases can be recognized

742 Y-J Tseng and Y -D Chen

Figure 2 Illustrations of the shape and the dereg nitions of a biarc

For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows

(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)

(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)

(3) not 6 0 and shy 6 0

This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape

23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D

biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical

As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single

7433D biarc approximation for freeform surfaces

Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc

model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows

If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc

As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as

P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger

744 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a

line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc

The equations of the tangents at the start and end points can be given as

hellipxiexclxSdaggerpS

hellipy iexclySdaggerqS

hellipz iexclzSdaggerrS

hellipxiexclxEdaggerpE

hellipy iexclyEdaggerqE

hellipziexclzEdaggerrE

The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as

xiexclx1

p ˆy iexcly1

q ˆziexclz1

rt where t is a real parameter and t 2permil01Š

Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective

7453D biarc approximation for freeform surfaces

Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2

Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 2: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

Ozsoy (1987) Choi and Jun (1989) and Elber and Cohen (1994) The parametricmethod generates tool contact curves by traversing along constant-parameter curvesThe tool contact points are obtained by approximating the isoparametric curves withline segments The Cartesian method generates tool paths in the x-y-z coordinateworld A typical Cartesian approach such as presented by Huang and Oliver (1994)generates planar equally spaced curves by intersecting parallel planes with the sur-face to dereg ne tool contact curves The tool contact points are generated by approx-imating the tool contact curves with line segments The o set surface method hasbeen presented by Kim and Kim (1995) and Tang et al (1995) In the o set surfacemethod an o set surface is generated by o setting with a proper distance such as atool radius from the original surface The tool contact points and cutter locationdata are generated on the o set surface using linear segment approximation Adi erent type of method can be characterized as cubic block approximationmethod In the research by Lee et al (1994) and Tseng and Sue (1999) a toolpath generation method is developed for machining surfaces using an octree approx-imation method A grid height approximation method is presented by You and Chu(1995) in which grid blocks with di erent heights are used to approximate a surface

Based on the observation in the previous research machining of freeform sur-faces has been performed using linear elements for example line segments or squareblocks As shown in reg gure 1(a) line segments are used to approximate a curve toproduce the approximated shape of the curve or surface While the reg nishing shapecan be produced within the specireg ed tolerance the reg nal curves and surfaces

740 Y-J Tseng and Y -D Chen

(a)

(b)Figure 1 Approximating a curve using line segments and biarcs (a) Approximating a curve

using line segments (b) Approximating a curve using biarcs

produced may lack smoothness and continuity Since the cutter actually moves ina zigzag manner the excessive sudden changes of cutter movements may causeadditional collision and tool wear To reduce the di erence and increase smoothnessand continuity arc splines can be used to approximate the curves and surfacesFigure 1(b) shows an example of approximating a curve using biarcs

A biarc is composed of two connected circular arcs with the identical tangentdirection at the connecting point Since the tangents at the connecting point are thesame the tangent continuity property can be preserved In addition if the di erencebetween two curvatures at the connecting point is minimized then the smoothnessproperty can also be enhanced Furthermore line segments and single circular arcsare all special cases of biarcs Therefore the alternatives in determining the mostappropriate biarc segments for approximating a given curve are unrestricted Thetraditional line segment approximation can be considered a special case in the biarcapproximation Based on this idea the biarc segments can be used to approximatethe curves and surfaces to achieve the purpose of C1 tangent continuity and C2

curvature continuity The biarcs are suitable for generating machining tool pathsince all the NC machines are equipped with circular interpolating capability ProperNC codes can be assigned to guide the cutters to traverse the circular arcs In thisresearch new methods are developed to generate tool contact points and paths formachining 3D freeform curves and surfaces using the biarc approximation approach

The biarcs have been applied in reg tting and approximating discrete data points inprevious research such as presented in Parkinson and Moreton (1991) Moreton etal (1991) Meek and Walton (1992) Schonherr (1993) and Yeung and Walton(1994) In the related research in biarc reg tting and approximating a given curveMeek and Walton (1993) uses biarc to approximate a 2D quadratic curve Biarcsare used to build bounds for a given curve The bounded regions are used to evaluatethe tolerance between the biarcs and the given curve In Ong et al (1996) anapproach to biarc reg tting of 2D B-spline curves is presented The objective is tominimize the area between the biarcs and the curve Although the area can beminimized the important tolerance specireg cations such as the absolute deviationdistance may be out of range In common machining practice the tolerance isusually specireg ed as the largest deviation distance between the tool path and thedesigned curve

In summary in previous research biarcs have been used in approximating andreg tting a group of data points In addition biarcs have been used in approximatingand reg tting 2D curves However biarcs have not been used in approximating 3Dcurves and 3D surfaces Moreover the tolerances are not discussed from the machin-ing point of views The commonly used deviation distance has not been used as theapproximating criterion Therefore a general 3D biarc approximation model isrequired for approximating 3D curves and surfaces for machining purposes

In this research a new approach is presented for tool path generation formachining 3D curves and surfaces using biarc approximation First 2D biarcs areused to approximate a 2D B-spline curve Second a new model of 3D biarcs ispresented for approximating a 3D B-spline curve Third 3D surface curves areapproximated using biarcs for generating tool contact points and paths for machin-ing 3D surfaces The approximating criterion is the largest allowed deviation dis-tance between the curve and the biarcs The biarcs generated dereg ne the tool contactpoints and paths The tool contact points and paths can be post-processed for NCcode generation for machining The 2D biarcs are suitable for machining on a 3-axis

7413D biarc approximation for freeform surfaces

milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method

In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study

2 Biarc approximation of 3D curves

21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the

connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same

As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated

In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle

22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-

ships between the tangent angles not and shy Several special cases can be recognized

742 Y-J Tseng and Y -D Chen

Figure 2 Illustrations of the shape and the dereg nitions of a biarc

For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows

(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)

(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)

(3) not 6 0 and shy 6 0

This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape

23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D

biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical

As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single

7433D biarc approximation for freeform surfaces

Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc

model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows

If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc

As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as

P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger

744 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a

line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc

The equations of the tangents at the start and end points can be given as

hellipxiexclxSdaggerpS

hellipy iexclySdaggerqS

hellipz iexclzSdaggerrS

hellipxiexclxEdaggerpE

hellipy iexclyEdaggerqE

hellipziexclzEdaggerrE

The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as

xiexclx1

p ˆy iexcly1

q ˆziexclz1

rt where t is a real parameter and t 2permil01Š

Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective

7453D biarc approximation for freeform surfaces

Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2

Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 3: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

produced may lack smoothness and continuity Since the cutter actually moves ina zigzag manner the excessive sudden changes of cutter movements may causeadditional collision and tool wear To reduce the di erence and increase smoothnessand continuity arc splines can be used to approximate the curves and surfacesFigure 1(b) shows an example of approximating a curve using biarcs

A biarc is composed of two connected circular arcs with the identical tangentdirection at the connecting point Since the tangents at the connecting point are thesame the tangent continuity property can be preserved In addition if the di erencebetween two curvatures at the connecting point is minimized then the smoothnessproperty can also be enhanced Furthermore line segments and single circular arcsare all special cases of biarcs Therefore the alternatives in determining the mostappropriate biarc segments for approximating a given curve are unrestricted Thetraditional line segment approximation can be considered a special case in the biarcapproximation Based on this idea the biarc segments can be used to approximatethe curves and surfaces to achieve the purpose of C1 tangent continuity and C2

curvature continuity The biarcs are suitable for generating machining tool pathsince all the NC machines are equipped with circular interpolating capability ProperNC codes can be assigned to guide the cutters to traverse the circular arcs In thisresearch new methods are developed to generate tool contact points and paths formachining 3D freeform curves and surfaces using the biarc approximation approach

The biarcs have been applied in reg tting and approximating discrete data points inprevious research such as presented in Parkinson and Moreton (1991) Moreton etal (1991) Meek and Walton (1992) Schonherr (1993) and Yeung and Walton(1994) In the related research in biarc reg tting and approximating a given curveMeek and Walton (1993) uses biarc to approximate a 2D quadratic curve Biarcsare used to build bounds for a given curve The bounded regions are used to evaluatethe tolerance between the biarcs and the given curve In Ong et al (1996) anapproach to biarc reg tting of 2D B-spline curves is presented The objective is tominimize the area between the biarcs and the curve Although the area can beminimized the important tolerance specireg cations such as the absolute deviationdistance may be out of range In common machining practice the tolerance isusually specireg ed as the largest deviation distance between the tool path and thedesigned curve

In summary in previous research biarcs have been used in approximating andreg tting a group of data points In addition biarcs have been used in approximatingand reg tting 2D curves However biarcs have not been used in approximating 3Dcurves and 3D surfaces Moreover the tolerances are not discussed from the machin-ing point of views The commonly used deviation distance has not been used as theapproximating criterion Therefore a general 3D biarc approximation model isrequired for approximating 3D curves and surfaces for machining purposes

In this research a new approach is presented for tool path generation formachining 3D curves and surfaces using biarc approximation First 2D biarcs areused to approximate a 2D B-spline curve Second a new model of 3D biarcs ispresented for approximating a 3D B-spline curve Third 3D surface curves areapproximated using biarcs for generating tool contact points and paths for machin-ing 3D surfaces The approximating criterion is the largest allowed deviation dis-tance between the curve and the biarcs The biarcs generated dereg ne the tool contactpoints and paths The tool contact points and paths can be post-processed for NCcode generation for machining The 2D biarcs are suitable for machining on a 3-axis

7413D biarc approximation for freeform surfaces

milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method

In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study

2 Biarc approximation of 3D curves

21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the

connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same

As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated

In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle

22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-

ships between the tangent angles not and shy Several special cases can be recognized

742 Y-J Tseng and Y -D Chen

Figure 2 Illustrations of the shape and the dereg nitions of a biarc

For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows

(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)

(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)

(3) not 6 0 and shy 6 0

This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape

23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D

biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical

As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single

7433D biarc approximation for freeform surfaces

Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc

model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows

If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc

As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as

P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger

744 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a

line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc

The equations of the tangents at the start and end points can be given as

hellipxiexclxSdaggerpS

hellipy iexclySdaggerqS

hellipz iexclzSdaggerrS

hellipxiexclxEdaggerpE

hellipy iexclyEdaggerqE

hellipziexclzEdaggerrE

The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as

xiexclx1

p ˆy iexcly1

q ˆziexclz1

rt where t is a real parameter and t 2permil01Š

Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective

7453D biarc approximation for freeform surfaces

Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2

Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 4: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

milling machine The 3D biarcs are suitable for machining on a 5-axis machine toolThe 3D surfaces can be machined by machining the 2D surface curves if the surfacecurves are generated using the Cartesian planar section method The 3D surface canbe machined by machining the 3D surface curves if the surface curves are generatedusing the isoparametric method

In the following section the methods for biarc approximation of 2D curves and3D curves are presented In 3 tool path planning for machining 3D surfaces using3D biarc approximation is discussed Section 4 presents the implementation anddiscussions Finally 5 concludes this study

2 Biarc approximation of 3D curves

21 2D biarcsA biarc can be described as two circular arcs connected at a point Also at the

connecting point the tangents of the two circular arcs are the same As shown inreg gure 2 the points S and E are the start point and end point of the biarc The pointQ is the connecting point of the two circular arcs CS and CE The tangents at theconnecting point are the same

As shown in reg gure 3 the line SE is built by connecting the start point and endpoint The angle nothellipiexclordm lt not lt ordmdaggerrepresents the tangent angle measured from tangenttS to line SE The angle shy hellipiexclordm lt shy lt ordmdaggerrepresents the tangent angle measured fromthe line SE to the tangent tE As shown in reg gure 3 the arc angles sup3 and reg can bemeasured at the centres OS and OE If the start point S end point E tangent tS at Stangent tE at E and the angles not and shy are known then the arc angles sup3 and reg can becalculated

In reg gure 3 it can be observed that not Daggershy sup3 Daggerreg Therefore it can be obtainedthat reg not Daggershy iexclsup3 where sup3hellipiexclordm lt sup3 lt ordmdagger denotes the arc angle of arc CS andreg not Daggershy iexclsup3hellipiexclordm lt reg lt ordm) denotes the arc angle of arc CE An arc angle is meas-ured from the start point to the end point If an arc angle is measured in an anti-clockwise direction it is designated a positive angle If an arc angle is measured inclockwise direction it is designated a negative angle

22 Di erent cases of biarcsThe special shapes of biarcs can be identireg ed according to the di erent relation-

ships between the tangent angles not and shy Several special cases can be recognized

742 Y-J Tseng and Y -D Chen

Figure 2 Illustrations of the shape and the dereg nitions of a biarc

For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows

(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)

(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)

(3) not 6 0 and shy 6 0

This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape

23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D

biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical

As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single

7433D biarc approximation for freeform surfaces

Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc

model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows

If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc

As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as

P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger

744 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a

line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc

The equations of the tangents at the start and end points can be given as

hellipxiexclxSdaggerpS

hellipy iexclySdaggerqS

hellipz iexclzSdaggerrS

hellipxiexclxEdaggerpE

hellipy iexclyEdaggerqE

hellipziexclzEdaggerrE

The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as

xiexclx1

p ˆy iexcly1

q ˆziexclz1

rt where t is a real parameter and t 2permil01Š

Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective

7453D biarc approximation for freeform surfaces

Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2

Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 5: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

For example a line segment is a special case of biarcs A single circular arc is also aspecial case of biarcs Therefore there are various alternatives in determining themost suitable shapes of biarcs for approximating a given curve This is illustrated inreg gure 4 and the di erent cases are listed as follows

(1) not shy 0The biarc is a line segment as shown in reg gure 4(a)

(2) not shy 6 0The biarc is a single circular arc as shown in reg gure 4(b)

(3) not 6 0 and shy 6 0

This is the general case of a biarc as shown in reg gure 4(c)(a) If sup3 and reg have the same sign then the biarc is C-shape(b) If sup3 and reg have di erent signs then the biarc is S-shape

23 3D biarcsIn this research the new idea of 3D biarcs is presented The dereg nitions of 3D

biarcs are modelled and are utilized to approximate 3D curves and 3D surfaces A3D biarc is composed of two 2D biarcs twisted in space As shown in reg gure 5 two2D biarcs lie on two di erent planes and are connected at a point on the intersectingline of the two planes The reg rst biarc BS lies on the reg rst osculating plane P1 Thesecond biarc BE lies on the second osculating plane P2 The intersection of the twoosculating planes P1 and P2 is the line segment ab The two biarcs are connected atthe point Q lying on the line segment ab The line segment ab represents the tangentdirection at the connecting node The 3D biarc can be dereg ned by the two biarcs BSand BE connected at the point Q where the tangents are identical

As shown in reg gure 5 there exists a twist angle frac14 between the two osculatingplanes P1 and P2 The twist angle frac14 can be used to verify the 2D biarcs and 3Dbiarcs In this way the 2D biarcs and 3D biarcs can be represented using one single

7433D biarc approximation for freeform surfaces

Figure 3 Illustrations for determining the arc angles sup3 and reg for a biarc

model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows

If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc

As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as

P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger

744 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a

line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc

The equations of the tangents at the start and end points can be given as

hellipxiexclxSdaggerpS

hellipy iexclySdaggerqS

hellipz iexclzSdaggerrS

hellipxiexclxEdaggerpE

hellipy iexclyEdaggerqE

hellipziexclzEdaggerrE

The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as

xiexclx1

p ˆy iexcly1

q ˆziexclz1

rt where t is a real parameter and t 2permil01Š

Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective

7453D biarc approximation for freeform surfaces

Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2

Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 6: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

model If the angle frac14 0 then it is a 2D biarc If the angle frac14 6 0 then it is a 3Dbiarc This is illustrated in reg gure 5 and is summarized as follows

If the twist angle frac14 6 0 then it is a 2D biarcIf the twist angle frac14 6 0 then it is a 3D biarc

As shown in reg gure 6 the connecting point lies on the line segment dereg ned byintersecting the two osculating planes The intersecting line represents the tangentdirection at the connecting point The dereg nition of the tangent tQ and the connectingpoint Q can be calculated as follows In reg gure 6 S hellipxS yS zSdagger is the start pointE hellipxE yE zEdagger is the end point tS hellippS qS rSdagger is the tangent at the start pointand tE hellippE qE rEdaggeris the tangent at the end point The two plane equations can begiven as

P1hellipxyzdagger a1hellipxiexclxSdaggerDaggerb1hellipy iexclySdaggerDaggerc1hellipz iexclzSdaggerP2hellipxyzdagger a2hellipxiexclxEdaggerDaggerb2hellipy iexclyEdaggerDaggerc2hellipziexclzEdagger

744 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 4 The di erent cases of special shapes of biarcs (a) When not shy 0 the biarc is a

line segment (b) When not shy 6 0 the biarc can be represented as a single circular arc (c)The general case of a biarc

The equations of the tangents at the start and end points can be given as

hellipxiexclxSdaggerpS

hellipy iexclySdaggerqS

hellipz iexclzSdaggerrS

hellipxiexclxEdaggerpE

hellipy iexclyEdaggerqE

hellipziexclzEdaggerrE

The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as

xiexclx1

p ˆy iexcly1

q ˆziexclz1

rt where t is a real parameter and t 2permil01Š

Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective

7453D biarc approximation for freeform surfaces

Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2

Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 7: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

The equations of the tangents at the start and end points can be given as

hellipxiexclxSdaggerpS

hellipy iexclySdaggerqS

hellipz iexclzSdaggerrS

hellipxiexclxEdaggerpE

hellipy iexclyEdaggerqE

hellipziexclzEdaggerrE

The tangent tS intersects the plane P2 at the point a The tangent tE intersects theplane P1 at the point b Therefore the points a and b can be solved and the tangentvector at the connecting point can be obtained as tQ ab Assuming ab hellippqrdaggerthen the line equation of line ab can be expressed as

xiexclx1

p ˆy iexcly1

q ˆziexclz1

rt where t is a real parameter and t 2permil01Š

Based on the discussions the connecting point Q can be obtained by determininga proper parametric value of t according to a desired objective

7453D biarc approximation for freeform surfaces

Figure 5 Illustration and dereg nition of 3D biarcs The reg rst biarc BS lies on plane P1 Thesecond biarc BE lies on plane P2

Figure 6 The connecting point and the tangent line of a 3D biarc The connecting point Qlies on tangent line ab which is the intersection of the two planes P1 and P2

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 8: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

24 Radii of biarcs

241 Radii of 2D biarcsIf the tangent angles not and shy are known then the radii of the biarc can be

determined Figure 7 shows a 2D biarc starting at point S and ending at point EThe radius of the reg rst circular arc is denoted as rS and the radius of the secondcircular arc is denoted as rE Assuming the centres OS and OE are known then theradii of the two arcs can be represented as functions of not shy and sup3 The relationshipfunctions for the radii rS f hellipnot shy sup3daggerand rE f hellipnotshy sup3daggerare desired From reg gure 7 itcan be obtained that

rsquo iexcliquest Daggernot Daggershy

2

Also from D SQE it can be obtained that

SQ ˆ SE sinhellipshy iexcliquestdaggersinhellipnot Daggershy iexclrsquo iexcliquestdagger

Based on D SPOS D QPOS it can be obtained that sup3 2rsquo

In D SMOS it can be observed that sinrsquo hellipSQ=2dagger=rATherefore from the above equations it can be derived that the radii of the two

circular arcs of a 2D biarc are

rS ˆSE sin

not Daggershy Daggersup3

2 iexclnotiexcl cent2sinsup3

2iexcl cent sinnot Daggershy

2iexcl cent

rE ˆSE sin not iexcl

sup3

2iexcl cent2sinnot Daggershy iexclsup3

2iexcl cent sinnot Daggershy

2iexcl cent

746 Y-J Tseng and Y -D Chen

Figure 7 The illustrations for calculating the radii of a 2D biarc

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 9: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

242 Radii of 3D biarcsAs shown in reg gure 8 a 3D biarc is composed of biarc SQ and biarc QE con-

nected at the point Q The radii of the 3D biarc can be calculated using the resultsderived The radii of the reg rst biarc are rS1 and rS2 The radii of the second biarc arerE1 and rE2 The four radius values of the 3D biarc can be obtained and representedas

rS1 ˆSQ sin

not Daggershy Daggersup31

2iexcl cent2sinsup31

2iexcl cent sinnot Daggershy

2iexcl cent rS2 ˆSQ sin not iexcl

sup31

2iexcl cent2sinnot Daggershy iexclsup31

2iexcl cent sinnot Daggershy

2iexcl cent

rE1 ˆQE sin

not1 Daggershy 1 Daggersup33

2iexcl cent2sinsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent rE2 ˆQE sin not1 iexcl

sup33

2iexcl cent2sinnot1 Daggershy 1 iexclsup33

2iexcl cent sinnot1 Daggershy 1

2iexcl cent

25 Arc angles of biracs

251 Arc angles of 2D biarcsTwo curvatures can be considered near identical if the di erence is minimized

For a 2D biarc case if the curvatures of the two circular arcs of a biarc are almostthe same then the curvature continuity can be enhanced The arc angles of the twocircular arcs of a biarc can be determined based on the objective of minimizing thedi erence between two curvatures From the equations of rS and rE the curvaturesKS and KE of the two circular arcs can be obtained To minimize the di erenceKdif f jKS iexclKEj the following calculation is developed

7473D biarc approximation for freeform surfaces

Figure 8 The illustration of arc angles and radii of a 3D biarc

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 10: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

Kdif f ˆ2sin

not Daggershy

2iexcl centSEsinrsquo

sin rsquo iexclnot

2 Daggershy

2iexcl cent iexclsin iexclrsquo Dagger

not Daggershy

2iexcl centsinhellipnot iexclrsquodagger2664

3775Therefore Kdif f can be minimized by solving Kdif f =rsquo 0As a result it can be derived that when sup3 2rsquo hellip3not iexclshy dagger=2 the di erence

between two curvatures is minimized

252 Arc angles of 3D biarcsFrom the results of the 2D case the arc angles of 3D biarcs can also be deter-

mined based on the objective of minimizing the di erence in curvatures As shown inreg gure 8 the 3D biarc is composed of biarcs SQ and QE connected at the point QThe arc angles of the 3D biarcs can be represented as

sup31 ˆ3not iexclshy

2and sup32 not Daggershy iexclsup31

sup33 ˆ3not1 iexclshy 1

2and sup34 not1 Daggershy 1 iexclsup33

26 Centres of biarcs

261 Centres of 2D biarcsFrom the above discussions the radii and tangents of a biarc can be obtained

The centres of the biarc are to be determined As shown in reg gure 9 with the knownstart point S hellipxydagger tangent tS hellipxS ySdagger and radius R there are two possiblecentres O1hellipx1 y1) and O2hellipx2 y2dagger As shown in reg gure 10 it is observed that thecorrect centre can be determined based on the magnitudes of D 1 and D 2 Giventhe connecting point Q hellipxq yqdagger by traversing a step of D q the magnitudes of D 1and D 2 can be calculated as

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2q

748 Y-J Tseng and Y -D Chen

Figure 9 The illustration for reg nding the centres of a 2D biarc

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 11: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

The values of D 1 and D 2 are compared Between the two possible centres thecentre at the side with the smaller value of D 1 or D 2 is the correct centre

262 Centres of 3D biarcsFor a circular arc in a 3D biarc there are two possible centre points represented

as O1 hellipx1 y1 z1daggerand O2 hellipx2 y2 z2dagger as shown in reg gure 11 The following valuescan be used to verify

D 1 ˆ hellipxq iexclx1dagger2 Daggerhellipyq iexcly1dagger2 Daggerhellipzq iexclz1dagger2qD 2 ˆ hellipxq iexclx2dagger2 Daggerhellipyq iexcly2dagger2 Daggerhellipzq iexclz2dagger2q

If D 1 gt D 2 it means that O2 hellipx2 y2 z2daggeris the correct centre of arc 1 on thereg rst plane If D 1 lt D 2 it means that O1 hellipx1 y1 z1daggeris the correct centre of arc 1on the reg rst plane If the possible centres are O3 or O4 for arc 2 on the reg rst plane thenthe distance D 3 O3S and the distance D 4 O4S are used for verireg cation IfD 3 gt D 4 it means that O4 is the correct centre of arc 2 on the reg rst plane IfD 3 lt D 4 it means that O3 is the correct centre of arc 2 on the reg rst plane Using

7493D biarc approximation for freeform surfaces

Figure 10 The illustration for determining the correct centres of a 2D biarc

Figure 11 The illustration for determining the correct centres of a 3D biarc

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 12: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

the same idea the correct centre of arc 1 and arc 2 on the second plane can also bedetermined

27 Deviation distance between a curve and the approximating biarcsIf a curve is approximated by biarcs the deviation distance between the curve

and the biarcs needs to be calculated The deviation distance is needed in thetolerance evaluation For a 2D case as shown in reg gure 12 the points P and R arethe points on a parametric curve Given a parametric value t the point on the curvecan be obtained as Phelliptdagger hellipxt ytdagger If the point P is known then the arc angle sup31 canbe determined as follows

If sup31 lt sup3 then P is on arc CSIf sup31 gt sup3 then P is on arc CE

For a 2D case the deviation distance d between the curve and the biarc can begiven as

d ˆ jkPiexclOSkiexclrSjjkPiexclOEkiexclrEj

if P is on arc CS

if P is on arc CE

For a 3D case if 3D biarcs are used to approximate a 3D curve there exist adeviation distance in 3D space As shown in reg gure 13(a) the biarc B1 is on the planeP1 and the biarc B2 is on the plane P2 The 3D curve RR is approximated using the3D biarcs As shown in the reg gure there is a deviation distance d1 between the 3Dcurve RR and the biarc B1 and there is a deviation distance d2 between the 3D curveRR and the biarc B2 The deviation can be viewed from the direction of ab as shownin reg gure 13(b) The following equations can be used to calculate the deviation dis-tance between the 3D curve and the 3D biarcs As shown in reg gure 14 A1 is a pointon the 3D curve A2 is a point on the 3D biarc and A3 is the orthogonal projection ofthe point A1 onto the plane P1 of the reg rst biarc The centre of the biarc is O and theradius is R Therefore the deviation distance d can be calculated as the distancebetween points A1 and A2 and can be obtained as

d ˆ hellipx1 iexclx2dagger2 Daggerhellipy1 iexcly2dagger2 Daggerhellipz1 iexclz2dagger2q

750 Y-J Tseng and Y -D Chen

Figure 12 The deviation distance between a 2D curve and the approximating 2D biarc

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 13: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

In implementation the largest deviation distance d is found using an equi-inter-val evaluation method The start point and the end point of a biarc are S and E Thisbiarc approximates a segment of curve The two parametric values of the curve at Sand E are uS and uE The parametric range from uS to uE is divided into mu intervalsAt each of the mu parametric value the deviation distance between the curve and thebiarc segment can be calculated as du The largest deviation distance between thecurve and the biarc segment can be found by comparing all the mu intervals to reg ndthe largest maxdu

3 Tool path planning for machining surfaces using 3D biarcs

31 Dividing and approximation curvesIn machining tool path generation there is a tolerance specireg ed as the largest

allowed deviation distance between the curve and the tool path If the deviationdistance between the biarc and the curve is larger than the tolerance specireg cation

7513D biarc approximation for freeform surfaces

(a)

(b)Figure 13 Illustrations of the deviation distance between a 3D curve and the approximating

3D biarc

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 14: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

then the curve needs to be divided The curve can be divided into smaller segmentssuch that each segment can be approximated by a biarc within the specireg ed toler-ance If the divided curve segment cannot be approximated by a biarc within thespecireg ed tolerance then the curve needs to be further subdivided Thus the approx-imation can be performed using a divide-and-approximate scheme The biarc marksout the longest segment while maintaining the tolerance specireg cation Two methodscan be used (1) binary subdivision and (2) longest arc subdivision The binarysubdivision method and the longest arc method have been used for biarc approx-imation of discrete data in Meek and Walton (1992) In the implementation of thisresearch the binary subdivision method is used in the biarc approximation of curves

In the binary subdivision method a B-spline curve is partitioned into two seg-ments by dividing the parametric range into two equal intervals Each segment of thecurve is tried and approximated using a biarc segment If the tolerance specireg cationcan be satisreg ed then this segment of curve is approximated and represented by thebiarc If the tolerance specireg cation cannot be satisreg ed then this segment of curve isfurther subdivided into two partitions The subdivision continues until all the seg-ments of the curve are approximated by biarcs within the tolerance constraints Inthe following divide-and-approximate algorithm the range of the parameter of thecurve is from t0 to t1 The tolerance specireg es the largest allowed deviation distancebetween the curve and the biarcs

Algorithm Find-Biarc2 (t0 t1)(1) Approximate the curve segment hellipt0 t1daggerusing a biarc

The largest deviation distance is calculated as d(2) If d lt then the biarc is recorded

else calculate t permilhellipt0 Daggert1dagger=2Š(3) Find-Biarc2hellipt0 tdaggermiddot

Find-Biarc2hellipt t1daggermiddot(4) end of procedure

752 Y-J Tseng and Y -D Chen

Figure 14 Calculating the deviation distance between the 3D curve and the 3D biarc

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 15: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

32 Surface curve generationA 3D surface can be machined by moving cutting tools along surface curves The

surface curves can be generated using two methods The parametric method gener-ates surface curves by traversing along isoparametric curves The generated surfacecurves are 3D curves The Cartesian method generates planar equally spaced curvesby intersecting parallel planes with the surface The generated surface curves are 2Dcurves In this research the 3D surface curves can be approximated using 3D biarcsThe 2D surface curves can be approximated using 2D biarcs Both of the 2D biarcsand 3D biarcs can be used for tool path generation

33 2D algorithms for 2D biarc approximationBased on the above analysis a complete procedure of the 2D algorithm for

approximating 2D B-spline curves using 2D biarcs are presented as follows

Algorithm for 2D biarc approximation

(1) Input a 2D B-spline curve

phellipudaggerˆXni 0piNi khellipudagger 0 microu microumax

where pi are the control points and Ni k is the B-spline functionThe start point of the B-spline is S and the end point is EThe tolerance (largest allowed deviation distance) is specireg ed as

(2) Calculate the tangents at the points S and E as tS and tE (3) Calculate the tangent angles not and shy (4) Calculate the arc angles sup3 and reg(5) Calculate the radii of the biarc as rS and rE

(6) Calculate and verify the centres of the biarc as OS and OE (7) Calculate the largest deviation distance between the curve and the biarc as d(8) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1)to (8)

(9) Output the dereg nitions of each of the biarcs in B The output data includes(a) start point S hellipx1 y1dagger(b) end point E hellipx2 y2dagger(c) connecting point Qhellipxq yqdagger(d) centre of the biarc OShellipxydaggerand OEhellipxydagger(e) radii of the biarc rS and rE

34 3D algorithms for 3D biarc approximationThe complete procedure of the 3D algorithm for approximating 3D B-spline

curves using 3D biarcs are presented as follows

Algorithm for 3D biarc approximation

(1) Input a 3D B-spline surface

7533D biarc approximation for freeform surfaces

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 16: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

phellipucedildaggerˆXmi 0 Xnj 0pi jNikhellipudaggerNj ihellip dagger 0 microu microumax 0 microcedil microcedilmax

where pi j dereg ne the control polygon and Ni k and Nj l are the B-splinefunctions

(2) Use isoparametric method to obtain the required 3D surface curves(3) For a 3D B-spline curve the start point is S and the end point is E

The tolerance (largest allowed deviation distance) is specireg ed as (4) Calculate the tangents at the points S and E as tS and tE (5) Calculate the tangent vector at the connecting point as tQ ab(6) Calculate the tangent angles not and shy of the reg rst biarc on the reg rst plane

Calculate the tangent angles not1 and shy 1 of the second biarc on the secondplane

(7) Calculate the arc angles of the 3D biarcFor the reg rst biarc on the reg rst plane the arc angles are obtained as

sup3 ˆ3not iexclshy

2and not Daggershy iexclsup3

For the second biarc on the second plane the arc angles are obtained as

sup31 ˆ3not1 iexclshy 1

2and not1 Daggershy 1 iexclsup31

(8) Calculate the radii of the 3D biarc The four radii are obtained as rS1 andrE1 for the reg rst biarc and rS2 and rE2 for the second biarc

(9) Calculate and verify the centres of the 3D biarc as O1 O2 O3 and O4(10) Calculate the largest deviation distance between the 3D curve and the 3D

biarc as d(11) If d micro then (a) record the biarc in a data list denoted as B

(b) if all the segments are processed then stopIf d gt then (a) perform binary subdivision of the curve and

(b) for each subdivided segment of the curve perform (1) to(11)

(12) Output the dereg nitions of each of the 3D biarcs in B The output dataincludes(a) start point S hellipxS yS zSdagger(b) end point E hellipxE yE zEdagger(c) connecting point Q hellipxQ yQ zQ)(d) centres O1 O2 O3 O4(e) radii of the 3D biarcs rS1 rE1 rS2 rE2

4 Implementation and test results

41 Tool path generationIn a 2D case 2D biarcs are used to approximate 2D curves The 2D biarcs dereg ne

the tool contact points and tool contact paths If the tool geometry is dereg ned thenthe tool contact points and paths can be used to dereg ne the cutter location (CL) datafor generating the required NC codes The start point end point centre and radiusof each circular arc are used to dereg ne the tool path for machining the circular arcs

In a 3D case if the surface curves are generated using Cartesian parallel planarsections then the surface curves are 2D curves In this case the 2D biarcs can be

754 Y-J Tseng and Y -D Chen

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 17: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

used to approximate the 2D surface curves After the approximation the 2D biarcsare used to dereg ne the tool contact points and tool paths for 3-axis machining

If the surface curves are generated using isoparametric curve generation then thesurface curves are 3D curves The 3D biarcs are used to approximate the 3D surfacecurves In the case of 3D biarcs 5-axis machining is suitable to machine the 3Dcircular arcs The 3D biarcs can be used to dereg ne the tool contact points and toolpaths and generate the tool paths for used on a 5-axis machine In implementationthe isoparametric method is used to generate the 3D surface curves while maintain-ing a proper cusp height between curves for machining a 3D surface

42 Examples and test resultsA test software has been implemented using the C language on a personal com-

puter Several example parts are modelled and tested Two of the 2D cases areillustrated and discussed For each part the 2D curve is approximated using 2Dbiarcs The results of 2D biarc approximation are compared with the results of linesegment approximation As shown in reg gure 15 the example curve A is a 2D B-splinecurve built with six control points with a degree of 3 Figure 15(a) shows the resultsof approximating the curve A using line segments Figure 15(b) shows the results ofapproximating the curve A using 2D biarcs The two results are compared in reg gure15(c) As shown in reg gure 15(c) three values of largest allowed deviation distance

are tested and compared The three values are 01 03 and 05 In the case of 01the results of line segment approximation show that the number of tool contactpoints is 81 and the number of segments is 80 The results of biarc approximationshow that the number of tool contact points is 24 and the number of segments is 23Consider the case in which 03 if line segment approximation is used then thenumber of tool contact points is 49 and the number of segments is 48 If biarcapproximation is used then the number of tool contact points is 16 and thenumber of segments is 15 In the case given that 05 if line segment approxima-tion is used then the number of tool contact points is 35 and the number of segmentsis 34 If biarc approximation is used then the number of tool contact points is 14 andthe number of segments is 13

Figure 16 shows the test results for the example curve B The example curve B is a2D B-spline curve built with eight control points with a degree of 4 Figure 16(a)shows the results of line segment approximation Figure 16(b) shows the results ofbiarc approximation Figure 16(c) shows the comparison between the two resultsBased on the test results it can be observed that the biarc approximation methodgenerates a smaller number of tool contact points and fewer segments of tool contactpaths

Two of the 3D cases are illustrated and discussed Figure 17 shows the examplesurface C The example surface C is a 3D B-spline surface built with four-by-fourcontrol points Figure 17(a) shows the results of approximating using line segmentsFigure 17(b) shows the results of approximating using 3D biarcs Figure 17(c) showsa summary and comparison of the two results To make a more concise result threelarger values of are compared and presented The three values are 10 30 and 50In reg gure 17(c) it shows that when 10 is tested the results of line segmentapproximation show that the number of tool contact points is 343 and thenumber of segments is 332 The results of 3D biarc approximation show that thenumber of tool contact points is 217 and the number of segments is 206 Theremaining data can be interpreted in the same way Figure 18(a) (b) and (c) show

7553D biarc approximation for freeform surfaces

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 18: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

756 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 15 Test results of the B-spline curve A using 2D biarc approximation Curve A

control points (110 330) (157 152) (218 282) (287 113) (365 272) (428 141) (a)Approximating the B-spline curve A using line segments ( 01) (b) Approximatingthe B-spline curve A using 2D biarcs ( 01dagger (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 81 80 24 23A 6 3 03 49 48 16 15

05 35 34 14 13

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 19: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

7573D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 16 Test results of the B-spline curve B using 2D biarc approximation Control

points (91 166) (161 303) (221 200) (273 281) (335 339) (406 112) (443 290) (510232) (a) Approximating the B-spline curve B using line segments ( 01) (b)Approximating the B-spline curve B using 2D biarcs ( 01) (c) Comparison of theresults of approximation using line segments and biarcs

Line segments BiarcsControl

Curve points Degree Points Segments Points Segments

01 98 97 29 28B 8 4 03 64 63 21 20

05 54 53 19 18

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 20: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

758 Y-J Tseng and Y -D Chen

(a)

(b)

(c)Figure 17 Test results of the 3D B-spline surface C using 3D biarc approximation Control

points (0 0 100) (0 50 100) (0 100 100) (0 150 125) (50 010) (50 50 10) (50 100 10)(50 150 5) (100 10 10) (100 50 100) (100 100 150) (100 150 200) (150 0 10) (15050 10) (150 10 30) (150 150 50) (a) Approximating the B-spline surface C using linesegments ( 10) (b) Approximating the B-spline surface C using 3D biarcs ( 10)(c) Comparison of the results of approximation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 343 332 217 206C 4pound4 4 30 204 193 173 162

50 160 149 146 135

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 21: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

7593D biarc approximation for freeform surfaces

(a)

(b)

(c)Figure 18 Test results of the 3D B-spline surface D using 3D biarc approximation (a)

Approximating the B-spline surface D using line segments ( 10) (b) Approximatingthe B-spline surface D using 3D biarcs ( 10) (c) Comparison of the results of approx-imation using line segments and biarcs

Line segments Biarcs3D Controlsurface points Degree Points Segments Points Segments

10 766 745 420 399D 5pound5 3 30 453 432 322 301

50 344 323 255 234

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 22: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

the test results for the example surface D Based on the observation when 3D biarcapproximation is used the number of tool contact points and the number of toolcontact segments are smaller

43 DiscussionsBased on the test results it can be observed that the biarc approximation method

requires a smaller number of tool contact points and a smaller number of segmentsTherefore a general summary can be made that the biarc approximation methodpresents the advantages of fewer tool contact points and fewer approximatingsegments Moreover the biarc approximation method preserves the advantages oftangent continuity and curvature smoothness Therefore it can be summarized thatthe biarc approximation method is betterrsquo than the line segment approximationmethod based on the above aspects

In 2D cases the output data set includes the coordinates of the start point theconnecting point the end point the centre of the reg rst arc and the centre of thesecond arc for each biarc Also the output for each biarc includes the radius valuesof the two circular arcs Figure 19(a) shows the output data for the example curve BIn the data set the dereg nitions of the 28 biarcs for approximating the curve B with 01 are listed Figure 19(b) shows a portion of the output data for the examplesurface C In the data set the start points end points centres and radii are listed Inpractical machining the presented output data format is adequate for NC codegeneration

5 Conclusions

In this research new tool path generation methods using biarc approximation aredeveloped In the 2D cases 2D curves are approximated using 2D biarcs to generatethe required tool contact points and paths In the 3D cases the 3D curves andsurfaces are approximated using 3D biarcs The biarcs mark out the largest arclength within the specireg ed tolerance The approximating criterion is the largestallowed deviation distance between the curves and the biarcs By using biarc approx-imation the tangent continuity can be preserved Also the near curvature continuitycan be maintained by minimizing the di erence between curvatures of the linkedarcs The new methods presented are implemented and tested using B-spline curvesand surfaces with arbitrary number of control points and degrees The test resultsshow that the biarc approximation methods present fewer tool contact points andfewer tool path segments than the line segment approximation method In practicalmachining the generated tool contact points and paths can be used to dereg ne the NCtool paths for use on 3-axis or 5-axis milling machines or machining centre In thisresearch the tool contact points and paths are generated and the output data can beused for downstream machining applications The test results are listed but are notpost processed to generate the reg nal NC codes Therefore selection of cutters deter-mining cutter o set and solving gouging problems are not addressed in thisresearch In future research more work needs to be done on surface analysis andtool approach direction determination cutter selection o set calculation and gou-ging avoidance in order to generate the reg nal NC codes In conclusion this researchpresents a new method for approximating curves and surfaces using a general modelof biarcs for tool path generation for the purpose of a better CADCAMintegration

760 Y-J Tseng and Y -D Chen

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 23: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

7613D biarc approximation for freeform surfacesR

adiu

sR

adiu

sof

ofSt

artin

gPo

int

Con

nect

ing

Poin

tE

ndPo

int

Cen

tre

ofA

rc1

Cen

tre

ofA

rc2

Arc

1A

rc2

xy

xy

xy

xy

xy

r 1r 2

biar

c1

9116

610

76

196

112

25

218

559

95

iexcl93

834

66

531

571

127

89

biar

c2

122

521

85

135

523

43

147

324

528

18

100

910

64

168

119

81

97bi

arc

314

73

245

157

625

16

167

255

219

01

189

517

77

212

270

144

3bi

arc

416

725

52

175

325

64

183

256

177

215

917

71

213

340

543

1bi

arc

518

325

619

63

252

620

79

248

117

44

196

66

3iexcl2

575

6154

44

biar

c6

207

924

81

217

824

48

226

924

35

248

635

29

227

127

91

112

435

6bi

arc

722

69

243

523

49

244

624

25

247

522

73

272

122

39

284

328

641

2bi

arc

824

25

247

524

94

251

725

625

68

217

129

71

188

333

74

557

105

2bi

arc

925

625

68

262

262

126

79

267

716

29

367

9iexcl3

11

574

914

542

86

biar

c10

267

926

77

278

727

828

94

286

6iexcl2

421

130

824

331

223

838

927

754

biar

c11

289

428

66

294

289

429

87

291

531

73

245

631

07

257

849

635

7bi

arc

1229

87

291

530

32

292

630

77

293

308

526

31

307

127

130

22bi

arc

1330

77

293

308

729

29

309

829

28

309

633

63

307

267

843

325

2bi

arc

1430

98

292

831

83

290

132

71

284

306

426

72

295

247

258

491

biar

c15

327

128

433

527

61

343

226

627

41

223

117

99

142

880

720

46

biar

c16

343

226

635

05

255

935

824

51

105

867

2765

1915

729

81

2930

biar

c17

358

245

136

46

235

537

13

226

311

951

818

859

08

394

510

149

276

4bi

arc

1837

13

226

337

43

222

637

72

219

119

23

871

455

828

89

226

810

51

biar

c19

377

221

91

382

821

34

388

420

91

442

627

69

407

924

04

872

368

biar

c20

388

420

91

393

320

68

398

220

58

401

222

94

398

922

29

2417

1bi

arc

2139

82

205

840

25

206

340

68

207

839

87

222

239

74

227

616

421

9bi

arc

2240

68

207

841

07

210

141

47

213

139

423

47

378

325

73

298

573

biar

c23

414

721

31

422

121

98

430

227

935

36

287

191

23

iexcl254

496

682

1bi

arc

2443

022

79

436

623

42

443

724

02

580

378

950

06

165

121

16

942

biar

c25

443

724

02

449

624

42

456

247

448

65

182

947

35

204

671

546

2bi

arc

2645

624

74

466

625

01

478

824

92

470

421

17

470

421

238

438

1bi

arc

2747

88

249

248

56

247

149

28

243

746

88

204

946

24

189

345

562

3bi

arc

2849

28

243

750

06

238

750

923

245

63

177

742

914

175

512

12

Fig

ure

19(a

)O

utpu

tda

taof

the

test

resu

ltsfo

rth

ecu

rve

Bw

ith

01

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 24: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

762 Y-J Tseng and Y -D ChenSt

artp

oint

End

poin

tC

entr

eR

adiu

s

Bia

rcx

yz

xy

zx

yz

r

biar

c1

arc

10

010

01

20

985

45

010

25

52

arc

21

20

985

23

095

86

40

981

46

biar

c2

arc

12

30

958

44

093

114

50

102

814

arc

24

40

931

70

188

148

092

89

1bi

arc

3ar

c1

70

188

87

01

853

241

iexcl01

985

201

arc

28

70

185

311

40

281

24iexcl0

189

115

biar

c4

arc

111

40

281

131

02

784

322

iexcl02

945

248

arc

213

10

278

415

80

374

532

7iexcl0

386

220

6bi

arc

5ar

c1

158

03

745

207

05

677

165

4iexcl5

317

83

182

2ar

c2

207

05

677

306

08

527

553

iexcl09

941

482

biar

c6

arc

130

60

852

736

1iexcl0

465

455

6iexcl1

47

945

51ar

c2

361

iexcl04

654

493

22

372

165

iexcl54

317

518

85

biar

c7

arc

149

32

237

253

52

434

182

8iexcl1

42

772

546

arc

253

52

434

154

92

632

556

80

539

17

2bi

arc

8ar

c1

549

26

325

592

21

365

575

iexcl24

1810

8ar

c2

592

21

365

619

328

280

6iexcl1

33

566

377

Fig

ure

19(b

)A

port

ion

ofth

eou

tput

data

ofth

ete

stre

sults

for

the

3Dsu

rfac

eC

with

1

0

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces

Page 25: Three dimensional biarc approximation of freeform surfaces for …dwalton/ResearchDocs/p739_s_a.pdf · 2003. 11. 19. · machining 3D curves and surfaces using biarc approximation

Acknowledgement

This research is supported in part by the National Science Council of TaiwanROC under research project No NSC-87-2213-E-155-023

References

AUSTIN S P JERARD R B and DRYSDALE R L 1997 Comparison of discretizationalgorithms for NURBS surfaces with application to numerically controlled machiningComputer-Aided Design 29 71plusmn 83

CHOI B K and JUN C S 1989 Ball-end cutter interference avoidance in NC machining ofsculptured surfaces Computer-Aided Design 21 371plusmn 378

ELBERG and COHENE1994 Toolpath generation for freeform surface models Computer-Aided Design 26 490plusmn 496

HUANG Y and OLIVER J H 1994 Non-constant parameter NC tool path generation onsculptured surfaces International Journal of Advanced Manufacturing Technology 9281plusmn 290

KIM K I and KIM K 1995 A new machine strategy for sculptured surface using o setsurface International Journal of Production Research 33 1683plusmn 1697

JENSEN C G and ANDERSON D C 1996 A review of numerically controlled methods forreg nish-sculpture-surface machining IIE Transactions 28 30plusmn 39

LEE K KIM T J and HONG S E 1994 Generation of toolpath with selection of propertools for rough cutting process Computer-Aided Design 26 823plusmn 831

LONEY G C and OZSOY T M 1987 Machining of free form surfaces Computer-AidedDesign 19 85plusmn 90

MEEK D S and WALTON D J 1992 Approximation of discrete data by G1 arc splinesComputer-Aided Design 24 301plusmn 306

MEEK D S and WALTON D J 1993 Approximating quadratic NURBS curves by arcsplines Computer Aided Design 25 371plusmn 376

MORETONDNPARKINSONDB and WUWK1991 The application of biarc techniquein CNC machining Computer Aided Engineering Journal 8 54plusmn 60

ONG C J WONG Y S LOH H T and HONG X G 1996 An optimization approach forbiarc curve-reg tting of B-spline curves Computer-Aided Design 28 951plusmn 959

PARKINSON D B and MORETON D N 1991 Optimal biarc-curve reg tting Computer AidedDesign 23 411plusmn 419

SCHONHERR J 1993 Smooth biarc curves Computer-Aided Design 25 365plusmn 370TANGKCHENCC and DAYANY1995 O setting surface boundaries and 3-axis gouge-

free surface machining Computer-Aided Design 27 915plusmn 926TSENG Y-J and SUE Y-R 1999 Machining of free-form solids using an octree volume

decomposition approach International Journal of Production Research 37 49plusmn 72YEUNG M K and WALTON D J 1994 Curve reg tting with arc splines for NC toolpath

generation Computer-aided Design 26 845plusmn 849YOU C-F and CHU C-H 1995 An automatic path generation method of NC rough cut

machining from solid models Computers in Industry 26 161plusmn 173

7633D biarc approximation for freeform surfaces