# CAD-Based Feature Recognition for Process Monitoring Planning in Assembly
## 3 Concept
### CAD Feature Extraction and Recognition for Monitoring Processes  
The feature extraction and recognition module relies on the information previously imported via the input/output module (I/O module). Here, the process plan (as JSON file) with its individual assembly processes must be imported together with the CAD model of the product (as a STEP file). The process plans consist of the individual required assembly steps and additional process information (e.g., required joining force). This file can be created manually or automatically in advance and shows the individual work plans as the sequence of parts to be assembled. The CAD model as the STEP file contains information about the individual parts, positions, and alignments, and thus the entire assembled product. The extraction step involves obtaining geometrical and topological  
Figure 2: The sequence diagram shows the interactions between the modules for automatic identification of process monitoring characteristics and the user. The user role and modules are shown in Figure 1 and provide additional information about which data must be selected and imported and how the results can be retrieved. Additionally, the individual phases can be seen, such as _Import_, _Feature Extraction_, _Feature Recognition_, and _Parameter Determination_. CAD information from the STEP file for feature recognition. For the extraction of the relevant information, an external approach based on OpenCascade Technology (OCC Technology, [[https://www.opencascade.com/](https://www.opencascade.com/)]([https://www.opencascade.com/](https://www.opencascade.com/))) was used in this work. Since the STEP format is set up as a text-based file format, the geometric and topological information relevant for feature recognition can be extracted automatically. Various topological entities, such as edges and vertices, are retrieved from the STEP file. The identification of each feature is part of the recognition process. Surfaces, shapes, solids, and connections are recognized (Figure 3). The subsequent recognition of the individual features (e.g., faces) is thus based on the extracted information from the OpenCascade Technology. Face feature recognition is performed by geometric inference (i.e., application to vertices and edges), resulting in the recognition of cylindrical, circular (conical), and spherical faces. Shape features are recognized by geometric reasoning from surface features and describe holes, hexagons, and m-t shapes, among others. A form feature, such as a hole, can be described as a cylindrical face feature with an inward orientation. An m-t-shape can be described as a cylindrical face that has one or more continuously connected faces whose axis directions are parallel to the axis direction of the cylindrical face (form feature as part of the screw, in Figure 3). Solid features are generated using form features (i.e., face features). These consist of a unique identifier, a transformation (Cartesian coordinate system), the individual planes, cylinders, cones, hexagons, spheres, component information, and, when recognized, standard components (e.g., bolt, nut). For example, a nut can be recognized if a solid feature has only one hole, one hexagon feature, and only one m-t-shape, and their axis directions are parallel to each other. Connection features refer to the intersections between different solids, which are understood as a set of intersections between the faces of different solids (also called Face2 Face features). For example, if two cylindrical surfaces have parallel directions and the vector between their centers is parallel to that direction,  
Figure 3: Different levels of features, from simple face features to connection features, relevant to assembly processes. then the cylindrical surfaces are concentric (see Appendix C). In addition to the information derived from the process plans, further information can be added to these connection features (e.g., a screw connection feature).