automated inspection planning of free-form shape parts by laser scanning

10
Robotics and Computer Integrated Manufacturing 16 (2000) 201}210 Automated inspection planning of free-form shape parts by laser scanning Kwan H. Lee*, Hyun-pung Park Department of Mechatronics, Kwangju Institute of Science and Technology, 1 Oryong-dong, Puk-gu, Kwangju 500-712, South Korea Abstract The inspection operation accounts for a large portion of manufacturing lead time, and its importance in quality control cannot be overemphasized. In recent years, due to the development of laser technology, the accuracy of laser scanners has been improved signi"cantly so that they can be used in a production environment. They are noncontact-type-measuring devices and usually have the scanning speed that is 50}100 times faster than that of coordinate measuring machines. This laser-scanning technology provides us a platform that enables us to perform a 100% inspection of complicated shape parts. This research proposes algorithms that lead to the automation of laser scanner-based inspection operations. The proposed algorithms consist of three steps: "rstly, all possible accessible directions at each sampled point on a part surface are generated considering constraints existing in a laser scanning operation. The constraints include satisfying the view angle, the depth of view, checking interference with a part, and avoiding collision with the probe. Secondly, the number of scans and the most desired direction for each scan are calculated. Finally, the scan path that gives the minimum scan time is generated. The proposed algorithms are applied to sample parts and the results are discussed. ( 2000 Elsevier Science Ltd. All rights reserved. Keywords: Automated inspection; Reverse engineering; Laser scanner 1. Introduction Inspection plays an important role in modern manu- facturing since complex speci"cations have to be met for more and more products. Inspection generally involves a time-consuming operation that takes up a large portion of manufacturing lead time, and therefore, has been cre- ating serious bottlenecks in production lines. Inspection operation can be classi"ed into two categories based on the hardware used in sampling point data from a part surface. They are contact-type methods and noncontact- type methods. The most popular contact-type method is performed by coordinate measuring machines. They are NC-driven and can program sampling of points for prede"ned features e$ciently, and have brought signi"- cant increase in productivity in performing inspection operations. However, they are inherently slow in acquir- ing point data since they need to make physical contact with a part surface for every point that is sampled. They can also deform a part surface if the part is made of soft material. They are accurate and are also e$cient for * Corresponding author. checking dimensions and tolerances of a well-de"ned part but show di$culties in measuring parts with free- form surfaces. In industry, there exists a great need to inspect parts with complicated and free-form surfaces to ensure high quality for manufactured products. However, it is di$cult and very time consuming to satisfy this need using traditional contact-type measuring devices. As industry is developing, the number of products that require free-form surfaces either by aesthetic or func- tional purpose is increasing. These are usually expensive parts and any occurrence of defects can cause costly errors at "nal assembly of products or in the performance of an entire machine system. For these kinds of products, a 100% inspection is desirable. But using a coordinate measuring machine, these parts can be inspected only by a sampling basis. In order to perform a complete inspec- tion of parts with free-form surfaces, inspection devices need to be able to quickly obtain a large amount of point data from part surface. In recent years, the accuracy of three-dimensional laser scanning devices has been im- proved greatly and can provide a viable solution for this purpose. There exist three major types of laser-scanning devices for the current practice. The "rst type has a con"guration 0736-5845/00/$ - see front matter ( 2000 Elsevier Science Ltd. All rights reserved. PII: S 0 7 3 6 - 5 8 4 5 ( 9 9 ) 0 0 0 6 0 - 5

Upload: kwan-h-lee

Post on 04-Jul-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Automated inspection planning of free-form shape parts by laser scanning

Robotics and Computer Integrated Manufacturing 16 (2000) 201}210

Automated inspection planning of free-form shape partsby laser scanning

Kwan H. Lee*, Hyun-pung ParkDepartment of Mechatronics, Kwangju Institute of Science and Technology, 1 Oryong-dong, Puk-gu, Kwangju 500-712, South Korea

Abstract

The inspection operation accounts for a large portion of manufacturing lead time, and its importance in quality control cannot beoveremphasized. In recent years, due to the development of laser technology, the accuracy of laser scanners has been improvedsigni"cantly so that they can be used in a production environment. They are noncontact-type-measuring devices and usually have thescanning speed that is 50}100 times faster than that of coordinate measuring machines. This laser-scanning technology provides usa platform that enables us to perform a 100% inspection of complicated shape parts. This research proposes algorithms that lead tothe automation of laser scanner-based inspection operations. The proposed algorithms consist of three steps: "rstly, all possibleaccessible directions at each sampled point on a part surface are generated considering constraints existing in a laser scanningoperation. The constraints include satisfying the view angle, the depth of view, checking interference with a part, and avoidingcollision with the probe. Secondly, the number of scans and the most desired direction for each scan are calculated. Finally, the scanpath that gives the minimum scan time is generated. The proposed algorithms are applied to sample parts and the results arediscussed. ( 2000 Elsevier Science Ltd. All rights reserved.

Keywords: Automated inspection; Reverse engineering; Laser scanner

1. Introduction

Inspection plays an important role in modern manu-facturing since complex speci"cations have to be met formore and more products. Inspection generally involvesa time-consuming operation that takes up a large portionof manufacturing lead time, and therefore, has been cre-ating serious bottlenecks in production lines. Inspectionoperation can be classi"ed into two categories based onthe hardware used in sampling point data from a partsurface. They are contact-type methods and noncontact-type methods. The most popular contact-type method isperformed by coordinate measuring machines. They areNC-driven and can program sampling of points forprede"ned features e$ciently, and have brought signi"-cant increase in productivity in performing inspectionoperations. However, they are inherently slow in acquir-ing point data since they need to make physical contactwith a part surface for every point that is sampled. Theycan also deform a part surface if the part is made of softmaterial. They are accurate and are also e$cient for

*Corresponding author.

checking dimensions and tolerances of a well-de"nedpart but show di$culties in measuring parts with free-form surfaces. In industry, there exists a great need toinspect parts with complicated and free-form surfaces toensure high quality for manufactured products. However,it is di$cult and very time consuming to satisfy this needusing traditional contact-type measuring devices.

As industry is developing, the number of products thatrequire free-form surfaces either by aesthetic or func-tional purpose is increasing. These are usually expensiveparts and any occurrence of defects can cause costlyerrors at "nal assembly of products or in the performanceof an entire machine system. For these kinds of products,a 100% inspection is desirable. But using a coordinatemeasuring machine, these parts can be inspected only bya sampling basis. In order to perform a complete inspec-tion of parts with free-form surfaces, inspection devicesneed to be able to quickly obtain a large amount of pointdata from part surface. In recent years, the accuracy ofthree-dimensional laser scanning devices has been im-proved greatly and can provide a viable solution for thispurpose.

There exist three major types of laser-scanning devicesfor the current practice. The "rst type has a con"guration

0736-5845/00/$ - see front matter ( 2000 Elsevier Science Ltd. All rights reserved.PII: S 0 7 3 6 - 5 8 4 5 ( 9 9 ) 0 0 0 6 0 - 5

Page 2: Automated inspection planning of free-form shape parts by laser scanning

with the laser-scanning probe mounted on a three-axistransport mechanism in which the axes are orthogonal toeach other. The second type uses a cylindrical con"gura-tion where either the part or the laser-scanning probe isrotated to acquire point data for each height level of thepart. The third type uses a robotic arm equipped witha laser probe as the end of arm tooling. In this research,the laser scanning operation with the "rst type is con-sidered. The three-axis transport mechanism has beengenerally used for the con"guration of machining centers,milling machines, and coordinate measuring machines.Some laser scanners operate by mounting the probe ona three-axis coordinate measuring machine. The laserprobe on the three-axis machine performs the scan byprojecting laser stripes along the path. The change ofa scanning direction in this case requires reorientation ofa part by adjusting setup "xtures such as the rotary table.

The laser-scanning devices can acquire a large amountof point data in a short period of time compared to thatof contact methods. However, the enormous amount ofpoint data generated by laser-scanners can cause a com-putational burden on further processing of data. Thelaser-scanning technology combined with e$cient pointdata handling algorithms and appropriate "xturing canlead to a 100% automated dimensional inspection sys-tem, which will signi"cantly contribute to achieving highquality in making complicated free-form shape parts.

In this research, the algorithms that automaticallygenerate the scanning plan for a laser scanner mountedon a three-axis transport mechanism are proposed. Thegenerated plan contains the number of scans, the direc-tion for each scan, and scan paths. Each scan directionneeds to be implemented reorienting the part and thisis performed by using a rotary table. It is assumed thatthe CAD model of a part to be inspected is given sincethe CAD models for complicated parts are mostly avail-able in a factory for generating NC codes. With theavailable CAD information of a given part, algorithmsthat can automatically calculate the scanning directionand scan path of a laser scanner are developed.

The organization of the paper starts with the relatedprevious research described in Section 2. In Section 3, theconstraints related to accessing a certain point on a sur-face are described and the main algorithms that generatethe scanning plan by considering these constraints aredescribed. Section 4 describes implementation of orient-ing a part using a rotary table. Finally, the algorithms areapplied to example part surfaces for veri"cation.

2. Past research

The laser-scanning technology has a great advantagein measuring free-form shape parts, and therefore, hasreceived a considerable recognition in industry. But thereexist no systematic methodologies for measuring parts

using laser scanners, and inspection operation has beendone by the intuition of skilled workers. Much of scan-ning task is performed by moving the scanning probemanually while maintaining scanning direction, andspeed by the feel of an operator. Even for a scanning unitequipped with a CNC transport mechanism, orientationand scan path are manually set by the operator. Themanual inspection operation takes an extensive amountof time and often causes inconsistent results due to trial-and error-based approaches. In order to perform inspec-tion operation e$ciently using a laser scanner, severalscanning parameters such as scanning direction, numberof scans, and scan path need to be calculated automati-cally from the CAD model of a given part and an appro-priate registration method need to be established. Fewalgorithms exist related to generating inspection plansfor laser scanners. The accessibility in laser scanning hasan analogy with that of NC machining, CMM-basedinspection, or machine vision-based inspection. The re-lated research activities are brie#y described below.

Spyridi and Requicha [1] suggested an algorithm thatcalculated the accessibility of a CMM probe based on theconcept of accessibility cone. An accessibility cone wasdivided into a local and a global accessibility cones tocalculate the bound of the possible probe orientationsbut they suggested only an algorithm without any imple-mentation. Lim and Menq [2] implemented an algo-rithm for accessibility and path generation based on theresearch of Spyridi and Requicha. Some researchers haveworked on calculating tool-approach directions. Tsengand Joshi [3] determined the limit of a tool approachangle using the method of subdividing a Beziercurve/surface. But their work only dealt with 2D curves,not with 3D free-form surfaces. Their algorithm deter-mined whether a work piece could be machined at onceor not. Kang and Suh [4] developed algorithms thatprovided machinability and setup orientation of "ve-axisNC machines. They implemented their algorithms usingnumerical simulations. Similar issues were addressedfor view planning in a machine vision environment.Gerhardt and Hyun [5] calculated optimal setup ori-entations that can capture an object completely. Theyconsidered two issues related to the placement of sensors:(1) how should the object be best viewed (i.e., orientationwith respect to the sensor); (2) how many views arerequired to completely view the object. By rotatinga model about x- and y-axis, they made the admissibilitymap that represents the visible surfaces. From theadmissibility map, they calculated the optimal setuporientation and the number of views.

In recent years, a few researchers have developedscanning plans that are directly related to laser-scanningoperations. Zussman et al. [6] developed an algorithmthat determined the locations of a laser sensor. But theiralgorithm was only applicable to 2D pro"le of a surfaceand could not be used to scan an entire surface of an

202 K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210

Page 3: Automated inspection planning of free-form shape parts by laser scanning

Fig. 1. Illustration of laser-scanning mechanism.

Fig. 2. Scan path with laser stripes.

object. Elber and Zussman [7] developed an algorithmthat can calculate the number of scans and correspond-ing optimal scanning directions for a part with free-formsurfaces using a surface decomposition method. Theyonly considered the angle between the surface normaland the incident beam in determining the scannability ofa point on a surface, and did not consider the occlusionby the part itself or the probe. Funtowicz et al. [8]developed an algorithm that can scan a part completelyby combining the approaches mentioned in the previoustwo papers, however, their algorithm assumed the scan-ning operation that used a laser scanning head mountedon a six-axis robot arm. In their algorithm, therefore, anysurface of a part can be accessed by the articulated robotarm and does not need any further setups of the part. Butthe acquired point data do not maintain a regular patternof line stripes that help in creating quality surfaces. Thealgorithm did not consider the occlusion by the part,either.

3. Automated inspection planning

3.1. Scanning device

The laser-scanning mechanism as illustrated in Fig. 1 isused in this research. It is a line scanner that measuresa part by one laser stripe at a time. The probe of thescanner is "xed on a three-axis transport mechanism andthe incident laser beam is parallel with the z-axis. Thelaser probe consists of a laser beam projector and twoCCD cameras that detect the re#ected laser beam. Thedetected laser beam is stored as intensity information foreach pixel, and by going through image processing andtriangulation of this information, a coordinate value isassigned for each measured point in a three-dimensionalspace. The laser scanner can detect a point within thelimit of the view angle. The view angle limit is de"ned asthe maximum angle between the z-axis and the surfacenormal of a point. The laser scanner also has a "xedstando! distance and depth of view (DOV). The stando!

distance is the desired distance that needs to be main-tained between the probe and the part surface duringscanning, and the DOV represents the range of allowabledeviation from the stando! distance in order for a partsurface to be scanned. The laser stripe that touches on thepart surface also has a predetermined length. The probetravels along the scan path by generating laser stripes,each one of which consists of hundreds of points. Fig. 2shows a scan path that is parallel to x-axis and a seriesof laser stripes generated while scanning a part. Theproposed algorithm is based on laser-scanning de-vices mounted on a three-axis machine, but it can beapplied to the other laser-scanning systems using similarmechanisms.

3.2. The constraints for scanning a point on a surface

For measuring a point on the surface using a laserscanner, following constraints need to be satis"ed [6]:

1. View angle: The angle between the incident laser beamand the surface normal of a point being measuredshould be less than limit angle c.

2. Field of view (FOV): The measured point should belocated within the length of a laser stripe.

3. Depth of view (DOV): The measured point should bewithin a speci"ed range of distance from the lasersource.

4. The incident beam as well as the re#ected beamshould not interfere with the part itself.

5. The laser probe has to be collision-free with thepart.

There exist several other factors such as roughness andre#ectance of a surface and ambient illumination thatin#uence the accuracy of scanning results. However, thisresearch does not consider all these factors since it mainlyconcerns with the problem of scannability. Fig. 3 graphi-cally illustrates the above-mentioned scannabilityconstraints that are needed in measuring a point on asurface.

K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210 203

Page 4: Automated inspection planning of free-form shape parts by laser scanning

Fig. 3. Constraints for laser scanning.

Fig. 4. Flowchart of the proposed algorithms.

Fig. 5. Example of an LAD.

3.3. Algorithms for inspection planning

3.3.1. Overview of algorithmsIn determining scanning directions, the proposed algo-

rithms do not check for the accessibility of entire surface,but instead, the sampled points along iso-parametriccurves on a surface are used for calculation. Fig. 4 showsthe overall #ow of inspection plan generation algorithms.

Firstly, a point is sampled from each mesh of theparametric surface. A set of locally accessible directions(LAD) for each mesh point is then calculated consideringscannability constraints. An LAD includes all possiblescanning directions of a point on the surface as shown inFig. 5.

Once the calculation of LADs for all sampled points iscompleted, we can determine the scanning directions that

cover the entire part surface by performing Booleanintersection operations among LADs. The scanning di-rections calculated as the result of these operations arecalled as the sets of globally accessible directions (GAD).Each GAD covers an area of the part surface that isrepresented by a set of sampled points that shares com-mon scanning directions. Since they share no commonscanning directions between GADs, the number ofGADs is equivalent to the necessary number of scans forscanning the entire part surface. Di!erent GAD meansa di!erent part orientation, which requires costly setupoperation. Therefore, it is important to minimize thenumber of GADs, and for this purpose, a heuristicmethod that "rst considers the points that have similarsurface normal vectors is introduced. For each GAD, thebest direction needs to be selected since each GAD con-tains many scanning directions. The direction that givesthe minimum average angle di!erence between the inci-dent laser beam and the surface normals of sampledpoints is selected. After scanning directions are deter-mined, the scan path for each direction is generated.Since the laser probe travels along the scan path, theshortest path that minimizes the scan time is then cal-culated. The detailed description of each step is given inthe following sections.

3.3.2. Calculation of LADAn LAD is a set of all possible directions that can

access a point on the surface by the laser probe. Fora stripe-type laser-scanning device, a scanning directioncan be represented by a fan-shape plane emanating fromthe laser source as shown in Fig. 6. When a laser stripetouches the part surface, one end of the stripe can belocated outside the limit of the view angle due to thelength of the stripe. The view angle limit c therefore isadjusted by subtracting a half of the "eld of view angle,d/2, from it. If P

iis a sampled point, ¸ is the location

vector of the laser source which is away from Piby the

stando! distance, DKiis a unit vector from the laser source

to Pi, and g

Diis a unit vector perpendicular to DK

i, then

the fan-shape plane can be represented by F(¸, d, DKi, g

Di).

204 K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210

Page 5: Automated inspection planning of free-form shape parts by laser scanning

Fig. 6. Laser stripe on the part surface.Fig. 7. Calculation of LAD in pseudocode.

The laser stripe, C453*1%

, generated on the part surface isde"ned by intersection between plane F and part surfaceM as follows:

C453*1%

"F(¸, d, DKi, g

Di) W M.

Fig. 6 illustrates the fan-shape plane, F, that contains thelaser beam, and the laser stripe formed on a part surface.The orientation of the fan-shape plane determines scan-ning directions, each one of which is determined byvectors, D

iand g

Dithat satisfy scanning constraints.

LADirepresents all possible scanning directions at point

Pi, and they are found by investigating possible direc-

tions of both Diand g

Di. First, the direction of incident

laser beam, Di, is checked for satisfying the view angle. If

it was satis"ed, the vectors of gDi

that are perpendicularto D

iare generated and the other constraints are tested.

The laser stripe, C453*1%

, is formed by intersection betweenplane F(¸, d, DK

i, g

Di) and part surface. The depth of view

constraint is checked for the laser stripe, C453*1%

. Theocclusion by a part is then checked by the lines formedfrom the points on the line stripe to the laser source. If thelines have interference with the part, then occlusion oc-curs. Finally, the interference between the laser probeand the part is checked to ensure a collision free path.The entire procedure is described in Fig. 7 using apseudocode. Here, c@ represents an adjusted view anglethat takes into account the length of the laser stripe.

3.3.3. Calculation of GADWhen LAD

1and LAD

2are LADs for points P

1and

P2, respectively, the scanning directions that can simulta-

neously measure both of two points are represented byintersection of two LADs. If the intersection is empty, itmeans that two points cannot be measured at the sametime, and thus, the number of scans increases. Likewise,by performing Boolean operations among LADs of sam-pled points, the resulting scanning directions are ob-tained. These are called as globally accessible directions(GAD), and obtaining these in terms of mathematical

expression is shown below.

GADi" Y

!-- pj|S(i)

LADpj

,

S(i)LS andn4#!/Zi/1

S(i)"S.

Here, S is the set of all sampled points, n4#!/

is thenumber of GADs, and S(i) represents the set of scannablepoints from a scanning direction D

i.

Calculating the minimum number of scans from LADsis a combinatorial problem, which is known as NP-complete [1, 5]. Therefore, a heuristic method usingnormal vectors is used in this research. In general, thepoints with similar surface normals have similar LADsand intersection between them produces a bigger set.Therefore, it is advantageous to start calculation from thepoints with similar surface normals. The calculation ofa GAD starts from selecting a start point, which isdecided by using the grand mean of surface normalvectors. Once the start point is selected, the intersectionoperation proceeds with the point that has the least angledi!erence in surface normals. An empty set resulting froman intersection operation represents the increase of thenumber of GADs, which requires additional scanningdirection. If this occurs, the point that causes the emptyset becomes a start point for another series of intersectionoperations, and the same procedure repeats. This proced-ure is described in the pseudocode given in Fig. 8.

Here, gidx is the number of GADs, LADpi

representsthe LAD at point P

i, N

piis the normal vector at P

i, S is

the entire set of sampled points, Si is the ith element of S,and ESE is the number of elements in S.

3.3.4. Determination of scanning directionsEach GAD can contain many possible scanning direc-

tions, and one direction that gives the best scanningresults should be selected for actual scanning. In general,the best scanning data are obtained when the scanning

K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210 205

Page 6: Automated inspection planning of free-form shape parts by laser scanning

Fig. 8. Calculation of GADs in pseudocode.

Fig. 9. Example of scan path generation (a) the set of points to be scanned, (b) bounding rectangle with an o!set, (c) generated scan paths.

direction and the surface normal vector are parallel toeach other. In the algorithm, the direction that minimizesthe average of angle di!erence between scanning direc-tions and the surface normal at each point is used as thecriterion to determine the scanning direction. The ithscanning direction, SD

i, is obtained as follows:

SDi"d such that min

+!-- jL(d,N

j)

n(d), d3GAD

i,

where n(d) is the number of points that can be accessiblefrom the direction d, and N

jis the surface normal at

point Pj.

3.4. Generation of scan paths

After scanning directions are determined, the scan pathfor each scanning direction needs to be generated. Ingenerating a scan path, two constraints are considered;

(1) the scan path needs to be located within the regionaccessible from the current scanning direction, (2) thetotal length of the scan path should be minimized toreduce the scan time which is generally proportional tothe length of the path.

The "rst step for scan path generation is to obtain theset of points PS

jthat can be scanned from a scanning

direction SDj. The point P

iis accessible from the direc-

tion SDj

if LADpi

includes SDj:

PSj"MP

iDSD

j3LAD

piN.

Then, the model is transformed in order for a scanningdirection to be parallel with z-axis and PS

jprojected

onto xy-plane (Fig. 9(a)). For projected points, an o!setof l

453*1%/2 is used to create a bounding rectangle in which

the scan path lies. The o!set is given to avoid the gaps atthe boundaries (Fig. 9(b)). Generally, a smaller boundingrectangle results in a shorter scan path, and therebyreduces the scan time.

The smallest bounding rectangle is determined fromthe point set that gives the smallest area when projectedon to xy-plane. For a scanning direction (D

i, g

Di), the

moving direction of the probe is determined by rotatingthe vector g

Diand "nding the direction that results in the

smallest area for point set PSi. For each available g

Di, the

point set is transformed so that gDi

is parallel to x-axis.The scan path then can be generated for the point set thatgives the smallest area. Since directions of laser stripesand scan path are parallel to y- and x-axis, respectively,the edges of a bounding rectangle are parallel to eitherx- or y-axis (Fig. 9(b)). Then it is divided into sub-rectangles along the edge parallel with x-axis to generatescan path. The width of each sub-rectangle is 1}2 mm lessthan the length of a laser stripe. This ensures the acquisi-tion of point data around boundaries by overlapping ofstripes and also facilitates surface "tting operation. Thescan paths consist of centerlines of each rectangle andthey are determined so that each rectangular region con-tains at least one sampling point (Fig. 9(c)). Each samp-ling point represents a circular area of the surface whichhas the radius of l

453*1%/2, with the center at that point. If

206 K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210

Page 7: Automated inspection planning of free-form shape parts by laser scanning

Fig. 10. Example of a three-axis rotary table.

the maximum and the minimum y-coordinate values ofa rectangular area are y

611%3, y

"0550., respectively, and the

coordinate of a sampling point is (xi, y

i), then the scan

path for the point is generated by connecting two points(x

i!l

453*1%/2, (y

611%3#y

"0550.)/2) and (x

i#l

453*1%/2,

(y611%3

#y"0550.

)/2). The entire scan path is completed bygenerating a line segment for each point and connectingthem together.

4. Part setup and registration

The automatic scan plan generated from a CAD modelcan only be implemented with appropriate setup. Whena part is scanned more than once, it needs to be re-oriented by a setup. In addition, multiple scan data fora single part have to be registered into one coordinatesystem. Tooling balls or a rotary table can be used forthis purpose. Tooling balls require additional time andlabor to handle the scanned data for the balls themselves.It is also di$cult to attach a ball manually at the exactposition on a part surface. For these reasons, the use oftooling balls is not recommended for automating inspec-tion operations. On the other hand, rotary tables have#exibility in part setup since the orientation of a part canbe changed without additional "xtures.

In this research, a rotary table is used for part setupand registration. To obtain a proper orientation of a partaccording to a scanning direction, two directions, i.e., thedirection of incident beam and the moving direction ofthe probe need to be parallel to z- and x-axis, respective-ly. This requires a six-axis mechanism. The laser scannerconsidered in this research has three-axis transportmechanism, and a rotary table provides additional threedegrees of freedom as shown by Fig. 10. Due to extradegrees of freedom from a rotary table, a part can bereoriented and accessed from any direction.

To automate part setup, the orientation of a part needsto be determined before starting a scanning operation.Two methods are generally used in determining these:one compares scanned data with reference features in theCAD model and the other compares scanned data dir-ectly with the CAD model using no reference features [9].The latter usually generates bigger error and the formeris used in this research as described below.

By comparing three datum planes in the CAD modelto the ones in scanned data, the current orientation ofa part can be calculated. Normal vectors of any pair ofthree datum planes must not lie on the same plane inorder to determine the orientation. It is assumed that thedatum planes are available in the CAD model and mostlythese are speci"ed in the design data. These planesmay not be scanned at once but they can be obtainedby registering of point cloud data from multiple scans.

Once the datum planes are scanned, a transformationmatrix [¹1] that makes the CAD model coincident with

the scanned data model is calculated by matching thescanned datum planes with corresponding ones in theCAD model. If the scanning direction that is calculatedfrom the CAD model is D

i, the scanning direction for the

real part is obtained by

D@i"[D

i][¹1].

Since the direction of laser beam is parallel to z-axisand the probe moving direction is parallel to x-axis, thepart needs to be oriented so that D@

iand g

Diare parallel

to z- and x-axis, respectively. The amount of rotation foreach axis to achieve exact orientation for a rotary tableshown in Fig. 10 is then calculated. It is assumed that the"rst and the second axes of the rotary table are set up tobe parallel with z- and y-axis, respectively. The trans-formation to make D@

icoinciding with z-axis is calculated

as follows:

[¹2]"[R]!9*41a [R]!9*42b "CCa Sa 0 0

!Sa Ca 0 0

0 0 1 0

0 0 0 1DCCb 0 !Sb 0

0 1 0 0

Sb 0 Cb 0

0 0 0 1D"CCaCb Sa !CaSb 0

!SaCb Ca SaSb 0

Sb 0 Cb 0

0 0 0 1D ,

where [R]!9*41a , [R]!9*42b represent matrices for rotationangles a, b about z- and x- axis, respectively.

The scanning direction vector D@i(x, y, z) by trans-

formation [¹2] becomes

[xyz][¹2]"Cx cos a cos b!y sin a cos b#z sin b,

x sin a#y cos a,

!x cos a sin b#y sin a sin b#z cos bD .

Since transformed values should lie on z-axis, the fol-lowing equations must be satis"ed.

K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210 207

Page 8: Automated inspection planning of free-form shape parts by laser scanning

Fig. 11. Example part d1 with a cylindrical surface.

Fig. 12. GADs and corresponding scan directions.

x cos a cos b!y sin a cos b#z sin b"0,

x sin a#y cos a"0,

!x cos a sin b#y sin a sin b#z cos b

"Jx2#y2#z2.

The rotation angles a, b obtained by solving above equa-tions become

a"tan~1(!y/x), b"tan~1(y sin a!x cos a/z).

If the vector (g@x, g@

y, g@

z) represents the unit vector

(g@x, g@

y, g@

z), transformed by matrix [¹2], the rotation

angle of the third axis that makes the vector (g@x, g@

y, g@

z)

parallel with x-axis is calculated by the followingequation:

c"cos~1(g@x/J(g@2

x#g@2

y)).

5. Application examples

The proposed algorithms are demonstrated by ap-plying them to example surfaces. The laser scanner usedfor experimentation is SURVEYOR 1200 manufacturedby Laser Design, Inc. It has a view angle limit of 803,stando! distance of 149 mm, "eld of view of 5.763, depthof view of 40 mm, and laser stripe length of 15 mm. Manyroutines in the algorithms require geometric operationssuch as calculation of normal vectors of a surface andintersection between a line and a surface. These areimplemented by using CATGEO library routines pro-vided by a commercial software package CATIA fromDassault Systems with C and Fortran routines. A total of1728 uniformly distributed incident laser beam directionvectors, D

i, are used for calculating the scanning direc-

tions. For each Di, 18 normal vectors with each g

Di

having 103 angle di!erence are generated and used forcalculation.

5.1. Application example d1

The proposed algorithms are applied to a part witha cylindrical surface that is shown in Fig. 11. A 100 pointsare sampled to represent the surface of the object thatcontains a half of the cylinder. As illustrated in the "gure,the maximum angle di!erence between the normal vec-tors of two opposite points on the surface can be as big as1803. The view angle limit of 803 only allow the angledi!erence between surface normals of two oppositepoints be within 1603, in order for them to be scanned atonce. Therefore, this cylindrical surface cannot be scan-ned at once and needs at least two scans from di!erentdirections. By applying the algorithms, two GADsare generated, and the optimal scanning direction iscalculated for each GAD. Fig. 12 shows the generatedGADs as sets of triangular patches on a sphere. On the

sphere, each triangular patch represents a direction vec-tor, and individual GADs are represented by "llingcorresponding triangles. Next, scan paths are generatedfor two scanning directions determined in the previousstep. The scan paths shown in Fig. 13 show that surfacearea covered by GAD

1is greater than that of GAD

2.

This is due to more intersection operations performedamong LADs for GAD

1. The more sampling points are

involved in this calculation, the size of GAD becomessmaller. When the real part is oriented as shown inFig. 11, the amount of rotation for each axis of the rotarytable needs to be calculated to achieve the scanningdirection, and they are shown in Table 1. During inspec-tion operation, by rotating the rotary table given by thescan plan, the direction of the incident laser beam can beautomatically made parallel with the calculated scanningdirection.

5.2. Application example d2

The proposed algorithms are also applied to a partwith a blade shape surface as shown in Fig. 14. Themodel has a drastic shape change at the end of the wingand this can cause a violation of depth of view condition

208 K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210

Page 9: Automated inspection planning of free-form shape parts by laser scanning

Fig. 13. Scan path for each scan direction.

Table 1Scan plan for example part d1

Items Calculated values

Number of scans 2

Scan direction (Di, g

i) 1st direction:

D1: (!0132,!0.182,!0.974)

gi: (0.984,0.035,0.141)

2nd direstion:D

i: (0.000,0.999,0.017)

gi: (0.999,0.000,0.003)

Rotation angle of rotary table 1st direction:a"1263, b"133, c"1253

2nd direction:a"893, b"!903, c"913

Fig. 14. Example part d2 with a blade surface.

Fig. 15. GAD and scan direction.

Table 2Scan plan for example part d2

Items Calculated values

Number of scans 1

Scan direction (Di, g

i) D

i: (0.512, 0.054, !0.857)

gi: (0.116, 0.993, 0.007)

Rotation angle of rotary table a"1263, b"133, c"793

when a wrong scanning direction is used. For this model,therefore, it is di$cult to decide on whether the entiresurface can be scanned by once or twice by intuition. Byapplying the algorithms, one GAD is calculated froma 100 sampling points. It shows one scan is enough

for this model as illustrated by Fig. 15. The scan pathgenerated for this scanning direction is shown in Fig. 16.Table 2 summarizes the result of the scan plan generatedfor the blade model. As it is demonstrated by thisexample, the proposed algorithms can calculate theoptimal scanning direction as well as the scan path fora part that may be di$cult for an operator to decide byintuition.

K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210 209

Page 10: Automated inspection planning of free-form shape parts by laser scanning

Fig. 16. Generated scan path.

6. Conclusion

Due to the development of laser-scanning technology,the proliferation of three-dimensional laser-scanningdevices is expected in the near future. However, littleresearch has been done in developing algorithms forusing laser-scanning devices in an automated mode. Inthis research, algorithms that can automatically generatea scanning plan for a part that has the CAD model havebeen developed. It automatically calculates a scan planthat includes scanning directions, scan paths, and thenumber of scans. It also calculates the rotation angle ofeach axis of a rotary table for achieving the speci"ed partorientation for each scan. The proposed algorithms areapplied to two example models and corresponding scanplans are automatically generated and veri"ed.

The automatic generation of scanning plan will enablethe inspection operator to build a consistent and e$cientscan plan that can avoid erroneous and unnecessary userinteractions. It will also facilitate generation of an opti-mal plan for a part with free-form surfaces. For evena skilled operator, this may not be possible in manualinspection planning due to the complexity of part surfa-ces. By automating the generation of the scan plan, thecost and time of inspection operation can be signi"cantlyreduced compared to manual operations. The algorithms

developed in this research can serve as fundamentalbuilding blocks for achieving a 100% automated systemfor inspecting parts that contain complicated shapes andfree-form surfaces.

The accuracy and e$ciency of algorithms need to befurther improved by taking into account the shape of thepart. This will require the use of analytic information ofsurfaces themselves. In addition, a sampling method thatcan reduce the number of points while maintaining theaccuracy of the surface needs to be further developed.Other factors also need to be considered for fully auto-mated inspection systems, such as automatic acquisitionof tolerance information, further investigation of jigs and"xtures for part orientation, and integration with othertype of inspection devices.

References

[1] Spyridi AJ, Requicha AAG. Accessibility analysis for the auto-matic inspection of mechanical parts by coordinate measuringmachines. Proceedings of the IEEE International Conference onRobotics and Automation, Cincinnati, OH, 1990;1284}9.

[2] Lim CP, Menq CH. CMM feature accessibility and path genera-tion. Int J Production Res 1994;32:597}618.

[3] Tseng Y, Joshi S. Determining feasible tool-approach directionsfor machining Bezier curves and surfaces. Comput-Aided Design1991;23:367}79.

[4] Kang J, Suh S. Machinability and set-up orientation for "ve-axisnumerically controlled machining of freeform surfaces. Int J AdvManuf Technol 1997;13:311}25.

[5] Gerhardt, LA, Hyun K. View planning for veri"cation usingmachine vision. IEEE International Conference on Image Pro-cessing, Austin, Texas, Nov. 13}16, 1994;217}20.

[6] Zussman E, Schuler H, Seliger G. Analysis of the geometricalfeature detectability constraints for laser-scanner sensor planning.Int J Adv Manuf Technol 1994;9:56}64.

[7] Elber G, Zussman E. Cone visibility decomposition of freeformsurfaces. Comput-Aided Design 1998;30:315}20.

[8] Funtowicz F, Zussman E, Meltser M. Optimal scanning of free-form surfaces using a laser-stripe. Israel}Korea GeometricModeling Conference, TelAviv, Israel. February 1998. p. 47}50.

[9] Ristic M, Brujic D. A framework for non-contact measurementand analysis of NURBS surfaces. Int J Adv Manuf Technol1994;14:210}9.

210 K.H. Lee, H.-p. Park / Robotics and Computer Integrated Manufacturing 16 (2000) 201}210