Apparatus including computer means for generating a plan for inspection of a part using a coordinate measuring machine (CMM), in a feature-based rapid design system (RDS) having a Feature-Based Design Environment (FBDE) means, an Episodal Associative Memory (EAM), a Fabrication Planning (FAB) means, and an Inspection Plan (INSP) means, wherein features include form features (D1) which define the form or shape of the part, manufacturing features (D2) , inspection features (D3) , and geometric and design (GD&T) features (D4), wherein said Inspection Plan (INSP) means comprises:
- a) means for checking appropriateness of D4 Tolerance assignments, using an "Allowable D1-D4 Specification" table which contains information regarding GD&T tolerance (D4) and form (D1) features, which is accessed each time a D4 feature is to be created;
- b) means for generating an inspection plan fragment for D4 features, wherein each D4 feature initiates an Inspection Plan Fragment (IPF) which is a set of specifications about how a D4 instance is to be inspected/evaluated;
- c) means for determining inspection surface(s) of design feature, which comprises specifying a set of surfaces by indentifying the existing surface(s) of each design feature, and then generating a measurement request (MR) instance for each specified surface, and linking these MRs to the IPF which was generated for the D4 feature instance;
- d) means for eliminating redundant measurement requests by merging MRs when information needed to evaluate tolerances can be obtained from a single pass over inspection points on the same surface;
- e) means for finding exterior surface(s) of solid to determine flat exterior surfaces upon which the model can be placed;
- f) means for determining stable surface(s) by transformation of a candidate surface to an X-Y plane followed by creation of a two-dimensional convex hull area for the candidate surface, and projection of the center of the mass of the solid model onto the X-Z plane to determine the surface stability;
- g) means for creating setups by orienting the part such that it is resting on an identified surface and then identifying which of the surfaces to be inspected can be accessed by the CMM in this part orientation, the set-up surface and list of accessible MRs being stored in a set-up class object, using simple heuristics for determining which surfaces are inspectable in a particular orientation, wherein the resulting heuristic tests the space above each inspection point for collision with the part;
- h) means for Establishing a coordinate frame in each setup by locating a CMM origin in a CMM frame of reference, establishing the origin by intersecting three ortho-normal vectors from tactile data provided the operator, the intersection vectors being created using a 3-2-1 isostasies principle;
- i) means for associating measurement requests with datum reference frames (DRFs);
- j) means for creating a process plan which consists of two sub-processes:
- 1) an ordering of setups (a global ordering), and 2) an ordering of individual measurement requests within a setup (a local ordering);
- a goal of global ordering being to find a minimum number of setups for complete inspection of the manufactured part, which is accomplished by first identifying a setup with the largest number of measurement requests (MRs), say setup X, and then removing MRs specified in X are from all other setups;
- wherein local ordering requires a logical grouping of MRs with the DRF that each MR references;
- and
- k) means for generating a CMM program, by first translating MR feature objects are into metacode feature objects, and then translating the metacode into CMM code, wherein for each DRF in a metacode object produced by the process planner, the origin of the coordinate system is determined and translated into the coordinates of the sample point to the origin of the setup datum reference frame.