You are on page 1of 8

Journal of Materials Processing Technology 107 (2000) 111118

A feature-based inspection process planning system for co-ordinate measuring machine (CMM)
S.G. Zhanga,*, A. Ajmalb, J. Woottona, A. Chisholma
a

Software Department, LK Limited, East Midlands Airport, Castle Donington, Derby DE74 2SA, UK b School of Engineering, System and Design, South Bank University, London SE1 0AA, UK

Abstract This paper outlined a feature-based inspection process planning system for co-ordinate measuring machines (CMMs). The inspection process planning system is designed to produce an inspection process planning directly from CAD model. The prototype inspection process planning system includes ve functional modules: the tolerance feature analysis, accessibility analysis, clustering algorithm, path generation and inspection process simulation. The tolerance feature analysis module is used to input tolerance information and establish the relationship between the tolerance information and surface feature. The accessibility analysis module evaluate all the accessible probe orientations for every surface feature. The clustering algorithm module groups the inspection probe and surface features into inspection group so that time for inspection probe exchange and calibration can be reduced to minimum. The path generation module determines the number of measurement points, their distribution and their inspection sequences. The inspection process simulation module animated display the inspection probe path and check whether a collision occurs between the part and the inspection probe. The methodology and theory for corresponding ve functional modules are outlined. An example demonstrate the general process for the application of the inspection process planning system. The prototype inspection process planing system shown that the proposed theory and methods can be used in industry to generate an inspection process planning for a CMM. # 2000 Elsevier Science B.V. All rights reserved.
Keywords: Inspection process planning; Co-ordinate measuring machines; Accessibility analysis; Clustering algorithm; Path generation

1. Introduction Recently, researches in inspection process planning have been increased [1]. Some prototypes inspection process planning systems have been developed. These systems include the task-decomposition inspection process planning system [25,11], the knowledge-based inspection process planning system [6,10] and some hybrid inspection process planning systems [79]. However, these systems are not satised by the industry. This paper outlined a prototype inspection process planning system. The inspection process planning system can be used to generate an inspection process planning for a CMM. It can be used as an integrated system starting from solid model and nishing at production of inspection process planning le. However, it can also be used as ve stand alone function modules for the tolerance feature decomposition, accessibility analysis, clustering algorithm, path generation and the inspection process simulation, respectively.

The inspection process planning system can be linked to a CAD system so that an inspection process planning can be produced directly once a part design has been nished. It is expected that the laborious and error-prone manual programming currently used for a CMM can be replaced with the developed inspection process planning system. The lead-time for the CMM programming can be reduced signicantly. 2. System framework The prototype inspection process planning system includes the tolerance feature analysis, accessibility analysis, clustering algorithm, path generation and inspection process simulation as shown in Fig. 1. The tolerance feature analysis module is used to input the tolerance information and then to decompose the tolerance features into individual surface inspection features. The accessibility analysis module evaluates all the possible probe orientations for a surface feature and represents these probe orientations with an accessibility cone. The probe orientation from the accessibility cone can guar-

* Corresponding author. E-mail address: szhang@lkuk.co.uk (S.G. Zhang).

0924-0136/00/$ see front matter # 2000 Elsevier Science B.V. All rights reserved. PII: S 0 9 2 4 - 0 1 3 6 ( 0 0 ) 0 0 7 2 6 - 3

112

S.G. Zhang et al. / Journal of Materials Processing Technology 107 (2000) 111118

Fig. 1. Flow chart of integrated applications of the developed system.

antee a no collision between the probe stylus and the part during the inspection process. The clustering algorithm module arranges both the inspection probes into probe cells and the surface features into feature families so that the time for probe exchange and calibration can be reduced. As a result, the number of the inspection groups is reduced to a minimum. A knowledge-based clustering algorithm is used in the module so that a partial separated block diagonal matrix can be obtained if it is not possible to obtain a complete separated block diagonal matrix. The path generation module determines the number of sampling points, their distributions, and the sequences. Then, the inspection process simulation module is used to simulate the inspection process on a computer video display unit intuitively. The collision check is also implemented in the inspection process simulation module so that a no collision occurs during a real inspection process. Finally, an inspection process le is produced, which is a similar le as DMIS command codes. The generated inspection process planning can be used both for automated and manual inspections. On an automated inspection system, it generates the inspection instruction codes directly according to the format of the CMM instruction codes. On a manual inspection system, it guides the CMM operator for the part installation, selection of probe orientations, and determination of the distribution of the measurement points. Fig. 2 shows main menu for the prototype inspection process planning system.

3. Tolerance feature analysis The tolerance information representation in CAD model has been a bottleneck for manufacturing industry. The size of the tolerance value is too small to be presented in CAD model with its real dimension. It has been judged that it is very difcult to represent this information with a CSG solid model. Some CAD system, such as the AutoCAD system, uses a facility of DIMENSION to represent the tolerance information in a CAD drawing. However, this tolerance information is for displaying on the computer screen or for printing as a hard copy only. The tolerance information and its relationships to the surface features are not included in the database of the AutoCAD system. It is not possible to apply the tolerance information in the subsequent operations such as manufacturing and inspection process. Fig. 3 shows a 3D solid model that is used as a test component for the inspection process planning system. Surface features F10, F11, F14, F17, and F24 apply the dimensional or geometrical tolerances and will be inspected with a CMM. Other surface features will not be inspected with a CMM because those surface features either have the general tolerances that can be guaranteed by general manufacturing method or those tolerances are not suitable to inspect with a CMM. Therefore, it is necessary to develop a methodology to represent the tolerance information and its relationship to the surface features. In the project, tolerance information and its

Fig. 2. The main menu of the automated inspection process planning system.

S.G. Zhang et al. / Journal of Materials Processing Technology 107 (2000) 111118

113

Fig. 3. Example part and the surface features to be measured.

relationship to the surface features are represented with a frame-based data structure as shown below. 5 (F10 (F11 (F24 (F17 (F14 (WIDTH)) (WIDTH)) (WIDTH PERPENDICULARITY)) (PERPENDICULARITY CONCENTRICITY)) (CONCENTRICITY))

The number 5 indicates there are ve surface features that will be inspected. F10, F11, F24, F17 and F14 are the identiers for the corresponding surface features. WIDTH, etc., are the tolerances to be inspected for the surface feature. It is possible to include a few tolerance features for a surface feature such as surface features F17 and F24. 4. Accessibility analysis The accessibility analysis module includes three submodules:  Gauss mapping;  accessibility cone calculation;  discretisation of the accessibility cone. The Gauss map is used to analyse and to represent the normal directions for a surface feature. The Gauss map represents all the normal direction of a surface feature with a unit sphere. The radius vector of every point on the unit sphere represent a normal direction. The radius vector

direction is parallel to the normal direction of the surface feature at the corresponding point. For a plane, e.g., its normal direction is the same everywhere, therefore, its Gauss mapping is only a point on the unit sphere. For a cylinder, its Gauss mapping is a great circle (a circle with the same radius as unit sphere). For the example component, the Gauss mappings for planes F10, F11 and F24 are the points at (0, 0, 1), (0, 0, 1), and (0, 0, 1) on the unit sphere, respectively. The Gauss mapping for cylinders F14 and F17 are the great circles as shown in Fig. 4. The accessibility cone represented all the accessible directions for a surface feature. For a plane, e.g., the accessibility cone is a hemisphere. Any direction from the hemisphere and only these directions from the hemisphere can be used to approach the plane. The accessibility cone can be evaluated from the Gauss mapping, which locates a hemisphere corresponding to each point on the Gauss mapping and then the intersection is evaluated for all the hemispheres. For plane F10, e.g., there exists only one point on the Gauss mapping, the accessibility cone is a hemisphere. For a cylinder, the Gauss mapping is a great circle, there are innite points on the great circle. If 10 points are taken to approximate the great circle, the accessibility cone can be evaluated with locating a hemisphere for each points on the great circle and then the intersection is evaluated for 10 hemispheres. The accessibility cones corresponding to the surface features F10, F11, F14, F17 and F24 are shown in Fig. 5 as A10, A11, A14, A17, and A24, respectively. The accessibility cones that are displayed in Fig. 5 are called the local accessibility cones. These local accessibility cones can be used to measure the corresponding surface feature without a collision between the probe and the surface feature being measured. For example, surface feature F24 can be measured with any direction from the local accessibility cone A24, such as Z, X, X, Y, and Y directions. Surface features F14 and F17 can be measured with any direction from the local accessibility cone A14 and A17, respectively. Similarly, surface features F10 and F11 can be measured with any direction from the local accessibility cone A10 and A11, respectively. If a probe orientation is selected from the local accessibility cone, it can guarantee a no collision between the probe and the surface feature being measured. However, it is possible that there may exist interference between the probe and other surface features that is not measured. For example,

Fig. 4. The Gauss mapping for the surface features to be measured.

114

S.G. Zhang et al. / Journal of Materials Processing Technology 107 (2000) 111118

Fig. 5. Accessibility cones for the surface features to be inspected.

the inspection probe used for surface feature F11 is possible to interfere with surface feature F10, because surface feature F10 is just covered by plane F11. Therefore, a probe in zdirection cannot be used to measure surface feature F11. Plane F12 also restricts the accessible angle of the probe used for surface features F10 and F11. This is why a global accessible cone is required. An accessibility cone that can guarantee a no collision between all the surface features of the part to be measured is called a global accessibility cone. In the proposed project, the global accessibility cone is evaluated with the intersection of local accessibility cones. With the intersection of the local accessibility cones of surface features F10, F11 and F12, a global accessibility cone A10 for surface feature F10 is obtained as shown in Fig. 6. It can guarantee a no collision for all three surface features F10, F11 and F12. Similarly, A11, A14, A17, and A24 as shown in Fig. 6 are the global accessibility cones corresponding to the surface features F11, F14, F17, and F24, respectively. The global accessibility cones for surface features F14 and F24 are identical to their local accessibility cones because no other surface

features could interference with the probe for surface features F14 and F24. The local accessibility cone for the surface feature F17 is an innitesimal cylinder with two directions (0, 0, 1) and (0, 0, 1) on the unit sphere. Therefore, the global accessibility cone is half of the innitesimal cylinder that has only one direction (0, 0, 1) on the unit sphere. A global accessibility cone can guarantee a no collision between the probe and the component during the inspection process. Comparing the local accessibility cone with the global accessibility cone, one nds that the global accessibility cone is only a subset of the local accessibility cone. Therefore, it is also possible to obtain a global accessible probe orientation from all the local accessible probe orientations with an interference check. The accessibility cone should be sampled for discretisation so that this information about the probe orientations can be represented with discrete value and the probe orientation can be set up conveniently for an index probe. If the probe orientation can be represented with discrete value, clustering algorithm can be used to implement grouping of the inspection probe orientations into probe cells and the surface features into feature families. The output le format of the accessibility analysis module is shown as following. The le lists all the discrete probe orientations for every surface feature. For example, surface feature F10 can be measured with probe P1, P2, and P4. It indicates that anyone of three probes can be used to measure surface feature F10. 5 (F10 ((PROBE-IN-USED ((P1 0.25) (P2 0.25) (P4 0.25))) (TF PLANE))) (F11 ((PROBE-IN-USED ((P1 0.25) (P2 0.25) (P4 0.25))) (TF PLANE))) (F14 ((PROBE-IN-USED ((P5 1.0) (P6 1.0))) (TF CYLINDER))) (F17 ((PROBE-IN-USED ((P5 1.0))) (TF CYLINDER))) (F24 ((PROBE-IN-USED ((P1 0.25) (P2 0.25) (P3 0.25) (P4 0.25) (P5 1.0))) (TF PLANE))) Weight factor 1.0 and 0.25 as shown above have been used to represent the priority of the inspection probe. The weight factor 1.0 represents the top priority and 0.25 represent a relative low priority. The weight factor is assigned by the inspection process planning system according to whether the selected probe is in the optimal direction. If a probe orientation is in the optimal direction it is assigned with a weight factor 1.0, otherwise, it is assigned with a weight factor 0.25. Values 1.0 and 0.25 are used only as a weight factor and do not mean that 100% or 25% of the area can be measured. For example, when probe P1 is used to measure surface feature F24, the weight factor 0.25 represent probe P1 is not in the optimal direction. If a probe has a 0.25 weight factor, the dimensions of the probe stylus and probe head should be considered. For example, when P1 is selected as the probe orientation for surface feature F24, the length of the probe

Fig. 6. Global accessibility cones for the surface features to be inspected.

S.G. Zhang et al. / Journal of Materials Processing Technology 107 (2000) 111118

115

stylus and the dimension of the probe head must be considered so that no collision between the probe stylus and the component. For this case, generally, an extended probe stylus should be used according to the dimension of the workpiece. 5. Clustering algorithm The clustering algorithm module is used to implement the group of inspection tasks after the accessibility analysis is carried out. The clustering algorithm module arranges the inspection probes into probe cells and the surface features into feature families [13]. In the same group no relocation of the component is needed and even no probe exchange is needed. This will reduce both the inspection errors and time signicantly. In the adjacent matrix, the column represents the inspection features and the row represents the probe orientations. The inspection features are listed in the order of F10, F11, F14, F17 and F24. The probe orientations are represented as P1, P2, P3, P4, P5 and P6. If the jth inspection feature uses the ith probe orientation, element aij of the adjacent matrix will be set to be equal to its weight factor, otherwise it will be set to 0. The weight factors are used as the matrix elements so that the priority of probe can be considered when the probe is selected. With the adjacent matrix representation, all the discrete probe orientations can be represented with an adjacent matrix as shown in Table 1. The elements in the same column are discretised from the same accessibility cone. For example, in the column for surface F10 three elements 0.25, 0.25, and 0.25 exist, which implies that surface feature F10 can be measured with the corresponding probes P1, P2, or P4. Similarly, three probe orientations P1, P2, and P4 can be used for surface feature F11, two probe orientations P5 and P6 for surface feature F14, one probe orientation P5 for surface feature F17 and ve probe orientations P1, P2, P3, P4, and P5 for surface feature F24. The probe orientations in a column are produced from the same accessibility cone. If a probe is used for measuring the related surface feature all the other probe orientations in the same column are ignored. This means that there is a kind of

Table 1 Adjacent matrix representation for a test part Probe orientations P1 P2 P3 P4 P5 P6 Inspection features F10 0.25 0.25 0.25 F11 0.25 0.25 0.25 1.0 1.0 1.0 F14 F17 F24 0.25 0.25 0.25 0.25 1.0

logical ``or'' relationship among matrix elements in the same column. The clustering algorithm has been used to evaluate the inspection probe cells and inspection surface feature families. First, a probe P1 is selected as the inspection probe for the probe cell 1, and the surface features F10, F11, and F24 that can be inspected with the selected probe P1 are selected as the elements of the surface features family 1. Then column F10, F11, F24 and the row P1 are deleted from the adjacent matrix. The same process is repeated for the new adjacent matrix, therefore, P5 is taken as a probe and then temporary surface feature family {F14 F17} is obtained. Columns F14 and F17, row P5 of the adjacent matrix are removed and the adjacent matrix becomes 0. Finally, all the surface features are checked to see whether a probe with top priority can be used in the inspection of the surface feature. If a probe with top priority can be used, the surface features should be exchanged from a feature family to another feature family. For example, surface feature F24 is changed from feature family 1 to feature family 2 so that probe P5 can be used to measure surface feature F24 with a top priority. The nal result of clustering algorithm for the test part is shown in Table 2. It can be seen that two groups are obtained. In the rst group, probe P1 is used for inspecting surface features F10 and F11. Similarly, probe P5 is used for inspecting surface features F14, F17, and F24 in the second inspection group. The knowledge-based technique has been used in the development of the clustering algorithm module so that a block diagonal matrix from the inspection adjacent matrix can be obtained. The knowledge-based clustering algorithm (KBCA) rst constructs an adjacent matrix and assigns initial values for all the parameters in the variables and all the elements in the adjacent matrix. Then the system forms the temporary probe cells and the corresponding feature families according to the rule-base for the grouping. Every time when a probe is selected KBCA checks whether the constraints have been violated and then remove all features violating the constraints. When a probe cell has been formed and analysed by the KBCA, the corresponding surface features form a feature family. Then the probe cell and feature family are removed from the adjacent matrix. The process is repeated until the probe-feature adjacent matrix become 0. Finally, all the surface features that use a probe with lower weight factor are checked to see whether it is possible to use a probe with higher
Table 2 Two probe cells and the corresponding surface feature families Probe orientations P1 P5 Inspection features F10 0.25 F11 0.25 F12 1.0 F17 1.0 F24 1.0

116

S.G. Zhang et al. / Journal of Materials Processing Technology 107 (2000) 111118

Fig. 7. The distribution of sampling points on a complex boundary surface.

weight factor by changing them into another feature family. The output le of clustering algorithm module is shown as following: 2 (PROBE-CELL 1) P1 ((F10 (WIDTH)) (F11 (WIDTH))) (PROBE-CELL 2) P5 ((F24 (WIDTH PERPENDICULARITY)) (F14 (CONCENTRICITY)) (F17 (PERPENDICULARITY CONCENTRICITY))) stop Two probe cells and surface feature families are formed for the test part. In the rst group, probe P1 is selected for measurement of two surfaces features F10 and F11. In the second group, probe P5 is selected for measurement of surfaces features F14, F17 and F24. The tolerance feature is included in the list as a parameter of surface features since the tolerance feature will be used to determine the number of sampling points.

Fig. 9. The dialogue box for selecting the inspection probes.

6. Path generation The path generation module determines:  the number of sampling points,  the distribution of sampling points,  the sequences of sampling points. The number of sampling points for a CMM is within 5 and 15 for various individual shapes of features according to the recommended guidelines of the British Standard BS 7172 [12]. The number of sampling points is 6 and 12 for the test part according to the tolerance value. The

Fig. 8. Probe paths for the test part.

S.G. Zhang et al. / Journal of Materials Processing Technology 107 (2000) 111118

117

Fig. 10. Probe movement simulation.

number of sampling points selected is 6 for the width tolerance and 12 for the perpendicularity and concentricity tolerances. The surface features for the test part are planes and cylinders only. Therefore, the uniform distribution of sampling points is used. If a surface feature has a simple boundary such as a rectangle or a circle it is easy to distribute the inspection points uniformly. However, if a surface feature has a complex boundary, it is complex to distribute these points uniformly. Fig. 7 shows an example of sampling points for surface feature F24. Fig. 7 shows the distributions of sampling points Q1, Q2, Q3, Q4, Q5, Q6 on surface feature F24. The inspection probe routes include:  the measuring movement,  the approach movements. The measuring movement is used to measure the part dimension and the probe must be moved along the normal direction of the inspection points using a lower speed. The approaching movement is used to move the probe from an offset point to another. The approaching movement uses a faster speed to implement the inspection process. The offset point is a point that has a clearance from the sampling point on the surface feature at the normal direction. The value for the clearance should be input from a keyboard. Similarly, the inspection start point of the inspecting process also needs to be input from a keyboard. The inspection start point of the surface feature is a point that takes a safety distance in the direction of the probe orientation from the rst point on the surface feature. The inspection start point of the surface feature is created by the inspection process planning system automatically. Every time when a probe will measure a surface feature it must rst go to the inspection start point of the surface feature.

After measuring all the points on the surface feature, the probe comes back to the inspection start point of the surface feature. When the probe is moved from a surface feature to the next surface feature, it must rst go to the inspection start point of the part and then go to the inspection start point of next surface feature. Fig. 8 shows the probe routes produced by the developed system. 7. Inspection process simulation and graphic display The inspection process simulation start from the group 1, the system prompts the user to select probe P1 as shown in Fig. 9. Then the system displays the inspection process with an animated inspection probe. The probe moved along the probe trajectories and the probe routes are drawn with solid line so that a clear probe trajectories can be seen. Fig. 10 shows a probe position during the inspection process simulation, where the probe has nished the measurement of the surface features F10 and F11, and returns into the inspection start point. 8. Conclusions The methodologies developed in the research project for the tolerance feature analysis, accessibility analysis, clustering algorithm, path generation and inspection process simulation are tested and a prototype of inspection process planning system that includes corresponding ve functional modules about these techniques have been built up. The time for evaluating a probe orientation is thus reduced signicantly due to the application of the developed accessibility analysis module. Two methods of adjacent matrix representations are used to represent the relationships between the

118

S.G. Zhang et al. / Journal of Materials Processing Technology 107 (2000) 111118 [5] A.J. Spyridi, A.A.G. Requicha, Automatic programming of coordinate measuring machines, in: Proceedings of IEEE International Conference on Robotics and Automation, 1994, pp. 11071112. [6] H.A. ElMaraghy, P.H. Gu, Expert system for inspection planning, Ann. CIRP 36 (1) (1987) 8589. [7] C.W. Brown, D.A. Gyorog, Generative inspection process planner for integrated production, in: P.H. Cohen, S.B. Joshi (Eds.), Advances in Integrated Product Design and Manufacturing, The American Society of Manufacturing Engineers, New York, 1990. [8] H.T. Yau, C.H. Menq, An automated dimensional inspection environment for manufactured parts using coordinate measuring machines, Int. J. Prod. Res. 30 (7) (1992) 15171536. [9] C.H. Menq, H.T. Yau, G.Y. Lai, Automated precision measurement of surface prole in CAD-directed inspection, IEEE Trans. Robotics Automat. 8 (2) (1992) 268278. [10] D.T. Pham, K.F. Martin, L.P. Khoo, A knowledge-based preprocessor generator for coordinate measuring machines, Int. J. Prod. Res. 29 (4) (1991) 677694. [11] X.Q. Tang, B.J. Davies, Integration of inspection planning system and CMM via DMIS, Int. J. Adv. Manuf. Technol. 10 (1995) 422 426. [12] BS 7172: British Standard Guide to Assessment of Position, Size and Departure from Nominal Form of Geometric Features, British Standards Institution, 1989. [13] A. Ajmal, S.G. Zhang, Application of a knowledge-based clustering algorithm as an aid to probe selection and inspection process planning, in: Proceedings of the Institution of Mechanical Engineers, J. Eng. Manuf. B 212 (B4) (1998) 299305.

probe orientations and the surface features. The knowledgebased clustering algorithm provides a methodology to produce a partial separated block diagonal matrix when a block diagonal matrix does not exist. A comprehensive example about the application of the developed system for a test component is provided and it is conrmed that all the functional modules work properly and the prototype of inspection process planning system can be used as an aid for the inspection process planning. References
[1] A. Ajmal, S.G. Zhang, Feature-based automated inspection planning: a review and its impact on integrated manufacturing system, in: Proceedings of the 12th Conference of the Irish Manufacturing Committee, IMC 12 Competitive Manufacturing, University College Cork, Cork, Ireland, September 68, 1995, pp. 847854. [2] T.H. Hopp, K.C. Lau, A hierarchical model-based, control system for inspection, in: Proceedings of the First International Symposium on Automated Integrated Manufacturing, ASMT, San Diego, CA, Vol. 1, April 56, 1983, pp. 3236. [3] F.L. Merat, G.M. Radack, Automatic inspection within a featurebased CAD system, Robotics Comput.-Integrated Manuf. 9 (1) (1992) 6169. [4] S. Kim, S. Chang, The development of the off-line measurement planning system for inspection automation, Comput. Ind. Eng. 30 (3) (1996) 531542.