COMPUTER-AIDED DESIGN Computer-Aided Design 32 (2000) 605–616 www.elsevier.com/locate/cad
Recognition of machining features and feature topologies from NC programs X. Yan*, K. Yamazaki, J. Liu IMS Laboratory, Department of Mechanical and Aeronautical Engineering, University of California, 1065 Bainer Hall, Davis, CA 95616, USA Received 24 July 1999; received in revised form 6 January 2000; accepted 12 January 2000
Abstract The machining feature is a high-level product geometric representation and macro description of the product geometry. It is vital to machining operation planning and integration of CAD and CAM systems. In the feature-based operation planning, given a feature, the operator needs its associated machining operation data. Since successful NC programs contain machining know-how of skilled workers associated with the machining features, this paper studies the recognition of machining features in milling from the NC programs through reverse engineering, for reuse of the know-how in operation planning. First, the concepts of the machining element, machining feature and feature topology are presented, and the classification and representation of the features are performed from the machining point of view. Then algorithms for recognizing the machining features and feature topologies by analyzing NC programs are developed based on progressive Z-maps. Finally, a prototype is developed to extract the machining features and their associated operation data, and the machining know-how database is generated accordingly. The recognition of a variety of machining features and topologies, as well as their associated machining operations, is demonstrated through an example part from NIST parts repository. By using the generated machining know-how database, the machining operation planning will be automated by its counterpart system—the machining operation planner. 䉷 2000 Elsevier Science Ltd. All rights reserved. Keywords: NC program; Feature recognition; Machining feature; CAM; CAPP
1. Introduction As production operations are shifting from domestic to global, rapid product development and cost reduction are becoming critical factors to a company’s success. To achieve these competitions, agile manufacturing, concurrent engineering and information technology have been introduced to the manufacturing industry. Computer-Integrated Manufacturing (CIM) is a primary system in realizing these development and production processes. The CIM system is an automated computer system for the whole manufacturing processes. Basically, a CIM system includes CAD, CAM and CAPP sub-systems. Nowadays, CAD/CAM systems are evolving rapidly. Thus far, varieties of CAD/CAM tools have been developed for product design, process and production planning, and machining. It allows information transfer from design into manufacturing planning. However, CAD data cannot be directly used in CAM operation due to the difficulties in automation of operation planning. * Corresponding author. Tel./fax: ⫹ 1-530-752-8253. E-mail address:
[email protected] (X. Yan).
CAPP is a system for automating operation planning, among other things. So far, a great deal of research has been conducted and many results have been achieved on CAPP [1,2]. Feature-based approach is the most attractive topic in operation planning, because it has the following advantages: (1) features are convenient product representations for the planning system; (2) process knowledge needed for planning can be associated with features; (3) geometric reasoning for process plans is facilitated by features; (4) downstream operations such as NC program generation can be supported. Therefore, almost all the modern operation planning systems utilize features as the link between CAD and CAM systems to automate operation planning [2]. To automate operation planning by utilizing machining features, two major problems need to be solved: feature recognition from product models and machining database generation from successful machining operations. So far, a great deal of research work has been performed on the recognition of machining features from CAD models [3–14]. The work can be summarized into five approaches: (1) hint-based reasoning [9,10]; (2) convex decomposition [11]; (3) face-edge graph based approach [12]; (4) curvature region approach [13] and (5) cell-based decomposition [14]. Although further
0010-4485/00/$ - see front matter 䉷 2000 Elsevier Science Ltd. All rights reserved. PII: S0010-448 5(00)00045-2
606
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
improvements on the recognition methods need to be made, some of them can recognize 3D or sculptured surface features, in addition to regular and 2.5D features. Parallel to the feature recognition from CAD models is machining database generation. Needless to say, without a practical machining database [15] associated with the features, the operation planning cannot be automated even though the machining features are recognized from product models. So far, manual collection of the proprietary machining know-how is the most popular way to generate the database. There is no practical machining know-how database automatically generated. In operation planning, operators refer to nothing but existing catalogs and handbooks. To automatically generate the machining know-how database from daily successful machining operations, two main tasks need to be performed: machining feature recognition and machining operation data extraction. Unlike the above mentioned feature recognition approaches, the feature recognition for the machining database is performed from daily machining operations. Since actual NC programs contain the machining know-how of experienced NC programmers and machinists, the feature recognition for the machining database can be efficiently performed from successful NC programs. However, it is much more difficult than the feature recognition from CAD models because there is not even low-level geometric data for the features such as vertices, edges and faces in the NC programs. To solve the aforementioned problems, a system called Autonomous Machining Process Analyzer (AMPA) has been developed [16–18]. This system is used to extract the machining knowledge or know-how of the skilled operators and machinists which is implied in successful NC programs, and automatically export it into the know-how database. This machining know-how can be represented by machining features and their associated machining operations such as operation sequence and cutting conditions. In the database, there are mapping relationships between the machining features and machining operations. Using this machining know-how database will drastically increase the realization of automating operation planning. In this paper, the recognition of machining features and feature topologies from existing NC programs will be addressed. The feature topologies represent the topological and chronological relationships among the features in machining operations. Since successful NC programs contain actual machining operations, in this way, not only the features but also their associated machining operation parameters will be extracted and reused in future machining.
2. Definition, classification and representation of machining feature 2.1. Definition and classification of machining feature There are many definitions for the machining feature.
Fields and Anderson [19] defined it as a set of adjacent faces of a part that correspond to shapes occurring on the surface of machined parts. Wu and Liu [20] summarized some definitions of machining features and described them as the mapping between two distinct spaces: the machining feature space and the machining process space. Gao and Shah [21] defined it as a continuous volume that can be removed by a single machining operation in a single set-up. Lee and Kim [22] defined it as a shape that represents volumes to be removed by machining. Tseng and Joshi [23] defined it as a portion of a part having some manufacturing significance that can be created with certain machining operations. In this research, a machining feature is defined as a distinctive object in a workpiece with geometric and topological characteristics. It can be associated with a set of machining operations. There are many kinds of classifications for machining features. Some are based on the properties of the faces on the component and some are based on the properties of the feature volume [6]. Xu and Hinduja [6] gave four basic classes: hole/pocket, open pocket/slot, through-hole and free features. All these classifications are from product models. From the machining point of view, machining features (this paper deals with milling features) are classified basically into five categories: Hole, Pocket, Open pocket, Face and Boss. Furthermore, the more complicated features are subdivided so that more specific information on the feature can be obtained. By this classification, the feature type depends on the cutting tool and cutting mode applied. It is beneficial to the decision on machining operations since it gives the open sides of the feature so that tool approaches and tool path pattern can be chosen accordingly. For example, for an open pocket feature, the tool can access it from the open side. The classification of the machining features is listed in Fig. 1. In Fig. 1, the particular features are defined as follows: Milled hole: A cylindrical hole machined usually by an endmill in 2- or 3-axis motion. Pocket: A closed removal area (depression) with an arbitrary contour. Slot: A closed pocket with a constant width. Open pocket: A partial open area with an arbitrary contour. Groove: An open pocket with a constant width. Step: A 2 or 3-side open pocket with an arbitrary contour. Horizontal face: An all-side open horizontal plane with an arbitrary contour. Slope: An all-side open inclined plane with an arbitrary contour. Freeform surface: An all-side open curved surface with an arbitrary contour. Boss: A closed remainder area (protrusion) on a surface.
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
607
Fig. 1. Classification of machining features.
2.2. Representation of machining feature and machining element 2.2.1. Representation parameters of machining feature and element A machining feature is machined in several machining operations. In NC machining, operations are distinguished by tool change, positioning (rapid feed), reference point return and changed feedrate and spindle speed code. In each operation, usually a part of the material is removed from the workpiece by one tool. The geometry of this part of the material is defined as a machining element [17,18]. In some cases, the removed material in one operation consists of several discrete parts. Each part is a machining element. A machining feature is the Boolean operation (union) of the inclusive or intersected machining elements. Fig. 2 illustrates the relationships between a machining feature and its machining elements. The machining element defined here is similar to featurette or sub-feature in other literature [8], in that both are primitive and represent the composition of a feature. However, the machining element is defined from the machining point of view and thus is associated with
machining operation while the others are from product models and thus only express the geometry. A machining element/feature can be represented by three types of parameters: cut contour, cut surface and previous surface. The cut contour is defined as the projection of the boundary of a discrete area machined onto the cutting plane. This area forms a machining element/feature. The cut surface is the surface within the cut contour(s) machined in the current operation, and the previous surface is the surface within the cut contour(s) in the previous operation. When the three are known, its geometric shape and material removal volume will be known. Furthermore, a machining element/feature can be described by three classes of common measures: maximum dimensions (length L, width W and height H), circularity of the cut contour and removal volume. The circularity c is defined as c 4pA=p2
where A is the area within the cut contour and p the perimeter of the cut contour. For a rectangular contour of the ratio of the two sidelengths l, the circularity c is calculated as c pl=
1 ⫹ l2 :
Fig. 2. Relationships between machining elements and feature.
1
2
From Eq. (2), it is seen that when l 1; i.e. the contour is a square, the circularity c p=4; which is the maximum; and the circularity decreases as the ratio l of the longer to the shorter side-lengths increases. The circularity is used to roughly describe how much the cut contour looks like a circle or a square. The circularity is 1 when the cut contour is a circle; otherwise it is less than 1. It is a critical parameter in choosing tool path patterns. Besides the common measures, each particular element/ feature has its own specific measures. They are listed in
608
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
Table 1 Specific measures of milling feature Feature
Measure
Illustration
Pocket
Fillet r
Corner radius
Pocket with island
Minimum width
Minimum width between pocket and island
Boss, step
Fillet r
Corner radius between side and base
Groove/slot
Fillet r
Slope
Slope
Slope angle
Freeform surface
Curvature
Maximum concave curvature
Table 1. In a pocket feature, the corner radius is a specific measure. This kind of specific measure is critical in choosing the type and diameter of the tool. Furthermore, the location and orientation [24] of the machining feature should be represented so that the tool path patterns and tool approach position will be decided accordingly and the relationships between the machining features will be known. The orientation of the feature is defined as the direction of the longer side of the minimum circumscribed rectangle of the cut contour. As shown in Fig. 3, the angle u is the orientation angle at the minimum circumscribed rectangle. The left lower corner O 0
x 0 ; y 0 of the circumscribed rectangle is used to represent the
Fig. 3. Orientation and location of the feature.
Description
location of the feature in the x–y-plane and the highest Z level of the feature is used to represent the location in the z-axis. 2.2.2. Calculations of representation parameters Of all the representation parameters for the machining feature/element, the orientation, length and width of the minimum circumscribed rectangle, and curvature or corner radius of the contour are not straightforward. In the following, the calculation algorithms for these parameters will be described. 2.2.2.1. Orientation, length and width of the element/ feature. Given the cut contour of a machining element/ feature in a point array, the orientation, length and width of the element/feature can be calculated by recognizing the minimum circumscribed rectangle. The calculation procedures will be explained as follows, as shown in Figs. 3 and 4. First, calculate the initial circumscribed rectangle of the contour in the workpiece coordinate system at the orientation u 0; so that the length and width of the rectangle is obtained, along with the four tangent points Pl, Pb, Pr and Pt, each in a side. In the case of multiple tangent points in the side, the last counterclockwise one is taken as the tangent point in this side. Next, rotate the orientation angle counterclockwise with an increment Du , and create a new coordinate system by
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
609
Fig. 6. Estimation error of corner radius.
Therefore, the calculation time will be dramatically reduced. Finally, after the above process is completed from u 0 to 90⬚, the minimum circumscribed rectangle is obtained. Accordingly, the orientation, length and width of the element/feature will be derived, as well as the origin.
Fig. 4. Flowchart of feature size and orientation extraction.
rotating the angle u from the original workpiece coordinate system. Calculate the four new tangent points Pl, Pb, Pr and Pt, by checking if contour points exist to the left of Pl, bottom of Pb, right of Pr, or top of Pt, in the transformed coordinate system of rotation u . Thereby the length l and width w of the rectangle formed through the four points will be calculated. Then, compare the areas of the current and previous rectangles and take the smaller one. Repeat this process until u 90⬚: In the interim, the coordinate transformation is needed between the workpiece coordinate system and that of rotation u . In this process, for each tangent point, it is enough to check only the contour points between two successive tangent points obtained previously, not all the contour points.
2.2.2.2. Curvature and corner radius. Given the cut contour of a machining element/feature, the minimum curvature radius or corner radius can be calculated as follows. In Fig. 5, the closed curve is the contour of the element/ feature. It is given in a point array. To calculate the curvature radius r, take three points A, Band C in the contour. AB e1 ; BC e2 ; CA e3 ; M, N are the midpoints and K the center of the arc formed through the three points. The following relationships exist: sin u1 e1 =2r; sin u2 e2 =2r;
and
cos
u1 ⫹ u2
e23 ⫺ e21 ⫺ e22 =2e1 e2 : Therefore, p r e1 e2 e3 =
e1 ⫹ e2 ⫹ e3
e1 ⫹ e2 ⫺ e3
e1 ⫺ e2 ⫹ e3
⫺e1 ⫹ e2 ⫹ e3 :
3 When e1 e2 e; and u1 u2 u; q r e2 = 4e2 ⫺ e23 :
4
To calculate the error dr, differentiating Eq. (4) yields dr
2e
2e2 ⫺ e23 de ⫹ e2 e3 de3 =
4e2 ⫺ e23 3=2 :
5
Since cos u e3 =2e; we have de3 2 de cos u e3 de=e: Therefore, dr r de=e de=2 sin u:
Fig. 5. Calculation of contour curvature.
6
Plotting Eq. (6) yields Fig. 6. Fig. 6 shows that when u 90⬚; the error dr has the minimum value; when u 0⬚; the error dr is infinite, and dr increases in proportion to de. Therefore, to obtain an accurate value of radius r, u should be large and de should be small. The following will give an
610
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
followed by the length and width. For instance, P100X80 is a Pocket of length 100 mm and width 80 mm. 2.3. Machining feature topology
Fig. 7. Feature topology.
estimation of the number of the points between two successive points chosen for the calculation of radius r. Suppose the mesh interval of the Z-map is D , and generally, de ⬍ D . The number of the points n should be n ⬇ e=D r=dr
7
For instance, if the diameter of the tool is 10 mm and the allowance error of the radius calculation is 0.5 mm, Eq. (7) evaluates the number of points n ⱖ 10: In particular, p when ⬔ABC 90⬚ and e1 e2 e; we have e3 2e: From Eq. (4), we derive p r e= 2:
8 Comparing Eqs. (7) and (8), we obtain when p dr ⬎ D= 2
9 p Eq. (8) is false. Therefore, when both Eq. (9) and r ⱕ e= 2 are true, the radius r 0: To check if the curve is concave or convex, first calculate the inclination angles a 1, a 2 of AB and BC in [0,2p) using the coordinates of the points, and then compare the two angles. Since the contour points are arranged counterclockwise, if a1 ⬍ a2 ; it is concave and r ⬎ 0; otherwise, if a1 ⬎ a2 ; it is convex and r ⬍ 0: If a1 a2 ; it is straight and r ∞: For a rectangle contour of m corners, once its length L, width W and circularity c are extracted, the corner radius r can be derived from Eq. (1) and calculated as
In actual machining, the features that have topological relationships with the feature being machined affect the machining of this feature. Therefore, in planning the operation sequence for this feature, such related features should be considered. To express the topological relationships, concepts of machining feature set and feature topology have been proposed. The feature set is defined as the machining features that have inclusive relationships, and the feature topology is defined as the topological structure of a feature set in descending order of the contours. Given the feature topology, the prerequisite for machining the next feature will be known. For example, as shown in Fig. 7, in machining feature 5, features 1 and 2 should be considered since they have topological relationships; however, feature 6 should not generally. In the AMPA system, the feature topological relationship is unique. It is determined by the NC program used for the machining. While in the operation planning system, the relationship is not unique. You may obtain numerous operation sequences of the related features, depending on how many records for this class of feature the machining database contains. To represent the feature topology, a chained code is assigned which is a series of feature numbers in descending order with hyphen in between such as 1-2-5, as shown in Fig. 7. The features in the chained numbers have been machined. 3. Recognition algorithms for machining feature and feature topology To recognize machining features and feature topologies, the NC program, tool data and workpiece blank model are required as input into the recognition system. The system then divides operations by tool change code M06, positioning code G00, reference point return codes G28–G30, end program code M30/M02, changed feedrate F code and spindle speed S code, or changed cutting mode. For each operation, the system creates and updates the Z-map of the machined area and extracts cut contours and machining
p c
4 ⫺ pm
L ⫹ W ^ p
4 ⫺ pm
pLW
4 ⫺ mc ⫺ 4c
L ⫹ W2 ⫺ mLW r
4 ⫺ pm
p ⫹
1 ⫺ p=4mc or if perimeter p is given instead of circularity c, the radius r can be calculated as r
L ⫹ W ⫺ p=2=
m
1 ⫺ p=4:
10
element(s). In the following, the recognition of the machining features and feature topologies will be described in detail.
11
To represent a feature in the database, a code is assigned which is the feature type character (Fig. 1)
3.1. Recognition algorithm for machining features The recognition algorithm of machining features is
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
611
Fig. 8. Flowchart of feature type recognition.
designed as follows, as shown in Fig. 8, where Zmin is the Z level of the bottom surface of the workpiece. 1. Generate and update the Z-map of the machined area in the workpiece for the current machining operation. 2. Extract the cut contour(s) from the Z-map by searching for transit points where the Z levels of points change from unchanged to updated values along the x- or y-axis. 3. Check the continuity of each cut contour by tracing it. If some segments in the loop of the contour are the boundaries of the workpiece or another feature of lower Z levels, it is a discontinued or an open contour; otherwise it is a closed contour. 4. Finally, extract the machining feature/element by comparing the Z levels inside and outside the cut contour at the contour segment sides and by checking the continuity of the cut contour. If Zin ⬎ Zout ; then it is a boss. Otherwise, if Zin Zout ; it is a flat face; and if Zin ⬍ Zout ; it is a pocket, a hole, or a groove, etc. depending on the continuity of the cut contour. Fig. 9 illustrates an example of pocket feature recognition. Primarily, the recognition of feature types is performed based on the generated Z-map and cut contours. Since
generic Z-map is used, this recognition method applies to features of arbitrary contours. In recognizing a machining feature, not only its type but also its location and measures such as the maximum sizes, circularity and orientation will be calculated while the cut contour is extracted. 3.2. Construction algorithm of machining feature Generally, a machining feature is composed of several machining elements. To construct the feature, all the related elements should be assembled by the Boolean union. The construction algorithm of a machining feature is designed as follows: 1. Extract the machining elements including their cut contours and Z levels in the process of feature recognition. 2. Calculate the relation of two cut contours and their resulting cut contour by Boolean unions, as shown in Figs. 10 and 11 where Rect1 and Rect2 are the circumscribed rectangles of cut contours C1 and C2, respectively. As shown in Table 2, given C1 and C2, there are four Boolean relations: C1 傻 C2 ; C1 債 C2 ; C1 傽 C2 苷 F; and C 1 傽 C2 F: To indicate the four relations, four values 1, ⫺1, 2 and 0 are assigned. 3. Finally, construct the machining feature from the machining elements based on their relation and Z levels, and obtain the final cut contour and Z level or Z-map of the feature, as shown in Fig. 11. 3.3. Recognition algorithm for feature topology
Fig. 9. Illustration of pocket feature recognition.
The machining feature topology is recognized based on the Boolean relations of the cut contours. Once the
612
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
the number of feature sets; and n 0 the updated number of feature sets
n 0 ⱖ n: 4. Implementation and verification of feature and feature topology recognition
Fig. 10. Illustration of Boolean union of contours.
Fig. 11. Construction of machining feature from machining elements.
contours are extracted and their relations are recognized, the machining feature topology can be recognized by arranging the cut contours in the descending order, shown in Fig. 12, where C 0ij is the cut contour of a feature; m the number of contours in a feature set; n
The above recognition algorithms of machining features and feature topologies have been implemented in the prototype of the AMPA system, developed under Windows NT/95. The inputs include the NC program, tool data and workpiece blank model. Machining elements, features and feature topologies are extracted and saved in the machining know-how database. The machining features with their cut contours are displayed in Z-map. In addition, the machining operation data can be extracted by the system. With the developed prototype, NC programs for machining a variety of features have been analyzed and machining features with their machining operation data have been extracted successfully. As an example, we take part DEMO03 from the NIST repository [25] with a new groove feature added in the part so that all the features classified in this research are in the same typical part. Fig. 13 is the part model, and Fig. 14 is the extracted results including machining features (Fig. 14a), machining elements (Fig. 14b) and feature topologies (Fig. 14a). In addition, the machining operation data has been extracted (Fig. 14c), and the final workpiece has been displayed in Z-map (Fig. 14d). The machining feature table shows that 12 features (face, step, open pocket, hole, pocket and groove) have been recognized with their code, type, element count, location, orientation, and geometrical dimensions (length, width and height, corner radius and circularity), as well as their feature topologies. For instance, feature no. 11 is
Fig. 12. Construction of feature topology.
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
613
Table 2 Return value and Boolean relation of contours C1 and C2 Return value Boolean relation
1 C1 傻 C2
⫺1 C1 債 C2
2 C1 傽 C2 苷 F
0 C 1 傽 C2 F
Illustration
The machining know-how extracted by the AMPA system is represented by the three tables: machining features, machining elements and machining operations. These three tables constitute the primary part of the machining know-how database. They are used in future operation planning. The operation planning task is realized by a module called the autonomous machining operation planner (AMOP). Fig. 15 is the system integration of the AMPA and AMOP in conjunction with the machining database (know-how and resource). In the machining know-how database, there is a mapping relationship between the machining feature and machining operation. The whole system works as follows:
2. In operation planning, given a product model by a CAD tool, first the features in this model are recognized so that they are represented by features such as grooves and holes. This is done by the feature recognizer module (developed separately from the AMPA and AMOP modules). The recognized features are the input to the AMOP module. 3. By referring the machining know-how database in conjunction with the machining resource database, the AMOP system generates the operation plan for each feature recognized. In this process, AMOP queries the database to search for the features of similar geometry or the same type. If the know-how database is big enough to contain all types of features, the machining operation data for a give product can definitely be found. The operation data found from the database can be directly used if the feature in the database is similar enough to the one in the product. Otherwise, modifications by interpolations, similarity transformation or other methods should be made before used in operation planning. This process is the essential task of AMOP. 4. After the operation planning data such as cutting condition and operation sequence are obtained, NC programs can be generated by a CAM tool as the final process for machining the new product.
1. Inputting NC programs, tool data and workpiece blank, the AMPA system extracts the machining features and operations, and generates the machining know-how database. This process is reverse engineering.
6. Conclusion
composed of two machining elements Nos. 10 and 11 as shown in Fig. 14e, since it is machined in two layers in Z level machining (Ser nos. 10 and 11 in Fig. 14c). In the tables, there are one-to-many relationships, between the machining feature table and the machining element table, and between the operation table and the machining element table.
5. Application of machining database in operation planning
Fig. 13. Model of DEMO03 part.
To accumulate the machining knowledge or know-how, the concepts of the machining element, machining feature and feature topology have been proposed. The algorithms for recognizing the features from NC programs have also been developed. The prototype of the AMPA system has been developed in which the feature and feature topology recognition is implemented. The recognition of the features has been successfully verified by analyzing sample NC programs. In addition, the machining know-how associated with the features can be extracted from successful NC programs simultaneously with the feature recognition.
614
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
Fig. 14. Extracted results: (a) machining feature table; (b) machining element table; (c) machining operation table; (d) workpiece model in Z-map; (e) feature No. 11 and its machining elements.
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
615
Fig. 15. System integration of AMPA and AMOP.
References [1] ElMaraghy H. Evolution and future perspectives of CAPP. Annals of the CIRP 1993;42:739–51. [2] Shah JJ, Mantyla M. Parametric and feature-based CAD/CAM— concepts, techniques, and applications. New York: Wiley, 1995. [3] Shpitalni M, Fischer A. Separation of disconnected machining regions on the basis of a CSG model. Computer-Aided Design 1994;26:46–58. [4] Tseng YJ, Joshi SB. Recognizing multiple interpretations of interacting machining features. Computer-Aided Design 1994;26:667–88. [5] Sae-Tang A, Igoshi M, Aomura S, Arai E. Volumetric machining form feature recognition using feature loop. Transactions of the JSME 1997;C63:1021–8. [6] Xu X, Hinduja S. Recognition of rough machining features in 2 1/2D components. Computer-Aided Design 1998;30:503–16. [7] Gaines DM, Hayes CC. Custom-cut: a customizable feature recognizer. Computer-Aided Design 1999;31:85–100. [8] Gibson P, Ismail HS, Sabin MA. Optimization approaches in feature recognition. International Journal of Machine Tools & Manufacture 1999;39:805–21. [9] Han J, Regli WC, Brooks S. Technical note 4—hint-based reasoning for feature recognition: status report. Computer-Aided Design 1998;30:1003–7. [10] Han J, Requicha A. Feature recognition from CAD models. IEEE Computer Graphics and Applications 1998:80–94. [11] Wang E, Kim YS. Technical note 1—form feature recognition using convex decomposition: results presented at the 1997 ASME CIE feature panel session. Computer-Aided Design 1998;30:983–9. [12] Little G, Tuttle R, Clark D, Corney J. Technical note 2—the Heriot– Watt FeatureFinder: CIE97 results. Computer-Aided Design 1998;30:991–6. [13] Sonthi R, Gadh R. Technical note 3—MMCs and PPCs as constructs of curvature regions for form feature determination. Computer-Aided Design 1998;30:997–1001. [14] Dong J, Vijayan S. Manufacturing feature determination and extraction—Part 1: optimal volume segmentation. Computer-Aided Design 1997;29:427–40. [15] Wang ZY. Architecture for agile manufacturing and its interface with computer integrated manufacturing. Journal of Materials Processing Technology 1996;61:99–103.
[16] Chan L, Yamazaki K. A study on autonomous machining process analyzer for TRUE-CNC. Rapid product development. London: Chapman & Hall, 1997 (p. 329–38). [17] Yan X, Chan L, Yamazaki K, Liu J. A study on autonomous hole machining process analysis by reverse engineering of NC programs. 1999-1-2297, IMTC’99, Society of Automotive Engineers, Seattle, 1999. [18] Yan X, Yamazaki K, Liu J. Extraction of milling know-how from NC programs through reverse engineering. International Journal of Production Research 2000;38 Page number unknown (in press). [19] Fields MC, Anderson DC. Fast feature extraction for machining applications. Computer-Aided Design 1994;26:803–12. [20] Wu MC, Liu CR. Analysis on machined feature recognition techniques based on B-rep. Computer-Aided Design 1996;28:603–16. [21] Gao S, Shah JJ. Automatic recognition of interacting machining features based on minimal condition subgraph. Computer-Aided Design 1998;30:727–39. [22] Lee JY, Kim K. A feature-based approach to extracting machining features. Computer-Aided Design 1998;30:1019–35. [23] Tseng YJ, Joshi SB. Recognition of interacting rotational and prismatic machining features from 3-D mill-turn parts. International Journal of Production Research 1998;36:3147–65. [24] Li H, Dong Z, Vickers GW. Optimal toolpath pattern identification for single island, sculptured part rough machining using fuzzy pattern analysis. Computer-Aided Design 1994;26:787–95. [25] Regli WC, Gaines DM. A repository for design, process planning and assembly. Computer-Aided Design 1997;29:895–905.
Dr Xiren Yan is a postdoctoral researcher at the IMS & Mechatronics Laboratory, University of California, Davis. He received a PhD degree from the Northeastern University, Shenyang, China, in 1995 and a Doctor of Engineering degree from Kanazawa University, Kanazawa, Japan, in 1998. He has 28 published journal papers and four books. Moreover, he has two China patents of assembly machines and has won a second prize awarded by Liaoning Society for Invention in China. He received Japanese government scholarships during 1995–1998. His research interests include computer programming, research and development for CAD/CAPP/CAM systems and CNC controllers, and machine design.
616
X. Yan et al. / Computer-Aided Design 32 (2000) 605–616
Dr Kazuo Yamazaki has been a professor of the Department of Mechanical and Aeronautical Engineering at University of California, Davis, since 1990. He is currently also the Director of the IMS (Intelligent Manufacturing Systems) & Mechatronics Laboratory. He has received BS, MS, and Doctor of Engineering Degrees from Keio University, Japan, in 1970, 1972 and 1975, respectively. Professor Yamazaki’s research fields include: microprocessor applied numerical control for machine tool systems, CAD/CAM system development for manufacturing, ASIC (application specific integrated circuit) development for mechatronics control, design methodology of mechatronics system, manufacturing network system, and factory automation technology.
Dr Jiancheng Liu has been a post doctorate researcher at the IMS & Mechatronics Lab, University of California at Davis since 1997. He was born in April 1, 1964. Dr Liu obtained his BS, MS in Mechanical Engineering in 1984 and 1987 in China, respectively, and received his PhD in 1996 in Japan. He was previously a university lecturer and a senior engineer in the industry. Dr Liu has published about 30 technical publications including one book. He has experience in machine design and two patents pending.