System and method for automatic recognition and restraint of fastener components
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-12-10
- Publication Date
- 2026-08-14
Smart Images

Figure 2026131568000001_ABST
Abstract
Description
Detailed Description of the Invention
[0001] [Field of the Invention] The present invention relates to the modeling operation and implementation of manufacturing assemblies, and more particularly to the automation of the classification and restraint of fastening devices for assemblies.
[0002] [Background of the Invention] Manufactured assemblies typically include a plurality of fastening devices for attaching assembly components. For example, a machine can be assembled using a number of fastening devices such as nuts, washers, bolts, etc. Such fastening devices must be specified as part of the design process and implemented as part of the manufacturing process. The design and manufacture of such assemblies are often performed and / or implemented using a computer-based computer-aided drafting (CAD) system.
[0003] Each fastening device generally mates with (is constrained by) a receptacle (hole) of an assembly component. In a CAD system, the process of constraining a fastening device has typically been achieved by the user dragging a graphic representation of the fastening device onto the graphic representation of the receiving hole of the assembly. At this time, the user needs to manually set geometric constraints. For example, a bolt typically has a cylindrical shaft portion terminated at one end by a flat surface. To constrain the bolt, it is necessary to ensure that the first thread on the cylindrical shaft portion matches the second thread of the receiving receptacle, and that the proximal surface of the fastening device properly matches the surface surrounding the receptacle of the assembly. Manual constraint can be cumbersome and time-consuming, especially when the number of fastening devices in an assembly is large. Therefore, there is a need in the industry for means to solve the above drawbacks.
[0004] [Summary of the Invention] Embodiments of the present invention provide a system and method for the automatic recognition and constraint of fastener components. Briefly, the present invention relates to a method for automatically recognizing and constraining fastener components of a modeled assembly displayed in a CAD environment. This method detects a drag operation of a component dragged near the assembly, receives a preview image of the dragged component, and provides the preview image to a trained fastener classification neural network. The neural network receives fastener classification inference that classifies the dragged component as a fastener. A fastener receptacle near the drag location is identified. The mating surfaces of the fastener and the fastener receptacle are determined, and the fastener is constrained by the fastener receptacle. The CAD system graphically displays the state in which the fastener is constrained by the fastener receptacle.
[0005] By examining the following drawings and detailed description, other systems, methods, and features of the present invention will become apparent to those skilled in the art. All such additional systems, methods, and features are included in this description, are within the scope of the present invention, and are intended to be protected by the appended claims.
[0006] The accompanying drawings are included to provide a further understanding of the present invention and are incorporated herein and constitute part thereof. The elements in the drawings are not necessarily in accurate dimensional proportions; rather, the emphasis is on clearly illustrating the principles of the present invention. The drawings illustrate embodiments of the present invention and, together with this description, serve to illustrate the principles of the present invention. [Brief explanation of the drawing]
[0007] [Figure 1A] This is a schematic diagram illustrating an exemplary first embodiment in which fastener components are dragged toward an assembly in a CAD environment. [Figure 1B] Figure 1A is a schematic diagram showing the assembly and mated fastener components. [Figure 2]This is a schematic diagram of an exemplary embodiment of a CAD host system for recognizing and restraining fastener components. [Figure 3] This is a flowchart illustrating an exemplary method for training a neural network to classify and recognize dragged components as fasteners. [Figure 4] This flowchart illustrates an exemplary method for automatically recognizing a dragged fastener in a CAD environment and constraining it to an assembly. [Figure 5] This flowchart provides further details on the automatic restraint of the fastener components recognized according to Figure 4. [Figure 6] This is a schematic diagram showing an example of a system that performs the functions of the present invention. [Figure 7A] This is a screenshot of the component window in a CAD environment, showing the selected bolt component. [Figure 7B] This is a screenshot of the component window in a CAD environment, showing the selected nut component. [Figure 8] This is a flowchart illustrating an exemplary method for determining concentric and coincident mates of recognized (classified) fasteners. [Figure 9] Figure 8 is a flowchart illustrating in detail the determination of concentric alignment of bolts using the method shown. [Figure 10] This flowchart shows in detail the determination of bolt matching in the method shown in Figure 8. [Figure 11] Figure 8 is a flowchart illustrating in detail the determination of concentric alignment of nuts or washers using the method shown. [Figure 12] Figure 8 is a flowchart illustrating in detail the determination of the matching fit of nuts or washers using the method shown. [Modes for carrying out the invention]
[0008] The following definitions are useful for interpreting terms that apply to the features of the embodiments disclosed herein and are intended solely to define elements within this disclosure. In this disclosure, “assembly” means a workpiece modeled in a CAD environment, such as a machine or structure. An assembly typically includes multiple components.
[0009] In this disclosure, "component" refers to an element of an assembly displayed in a CAD environment, or an element added to an assembly, for example, by dragging it from a parts list to a display window for drawing the assembly.
[0010] In this disclosure, “fastener” means a component used to fasten (connect) two or more other components together. Examples of coaxially arranged fasteners include, but are not limited to, nuts, bolts, pins, cotter pins, and washers. Other fasteners, such as cam fasteners, may also be used.
[0011] In this disclosure, “pin” means a cylindrical fastener (without a head). The pin may be threadless, fully threaded, or partially threaded. In this disclosure, “bolt” means a fastener (Figure 7A) having a head positioned at one end of a cylindrical shaft. The shaft may be threadless, fully threaded, or partially threaded. The head may have a maximum radius greater than the shaft radius, for example, cylindrical, hemispherical, or conical. The profile of the head may be circular or polygonal. The distal surface of the head may be smooth, have a recess (for example, for receiving a bit such as a slotted or Phillips screwdriver bit or a hex wrench), or have a projection.
[0012] In this disclosure, "nut" refers to a fastener (Figure 7B) having, for example, two parallel planes and coaxially arranged screw holes positioned between these two planes. In the present disclosure, "constraint" refers to a rule or restriction that defines one or more geometric relationships between different components of a modeled assembly to control aspects such as size, position, orientation, etc. Constraints limit how components can move or be manipulated within the modeled assembly.
[0013] In the present disclosure, "drag" refers to selecting and moving a component within a graphical user interface (GUI, such as a CAD environment GUI) from a component source list or menu to a graphic area of a display screen that depicts a modeled assembly using a user interface device such as a mouse, trackpad, touch screen, or virtual reality system.
[0014] In the present disclosure, "transfer learning" refers to a machine learning technique that uses knowledge obtained from one task to improve the performance of a model in a related task. Transfer learning may be similar to the process by which humans apply previously acquired knowledge to acquire new skills. Transfer learning is sometimes also referred to as meta-learning, knowledge integration, or inductive transfer.
[0015] In the present disclosure, "topography walk" refers to a process of systematically verifying each of a plurality of geometric surfaces of an assembly component and determining its suitability for a specific purpose, such as fitting with other system components.
[0016] In the present disclosure, "concentric surface" refers to the cylindrical surface of a fastener or receptacle. In the present disclosure, "coincident surface" refers to a plane or conical surface that coincides with the concentric surface. In the present disclosure, "coincidence" refers to each of two surfaces where the first surface and the second surface are constrained by each other.
[0017] In the present disclosure, a "descriptor" refers to a data structure of parameters related to a component of a CAD model that includes data describing the geometric features of the component. For example, the geometric data of a fastener may include dimensions such as length, width, relative angle, radius, and threads of component features.
[0018] Hereinafter, embodiments of the present invention will be described in detail based on the examples shown in the accompanying drawings. In the drawings and the specification, the same or similar elements are denoted by the same reference numerals as much as possible.
[0019] As described in the background section, manually constraining assembly components and fasteners in a CAD environment can be cumbersome and time-consuming, especially when dozens or hundreds of fasteners are involved in a typical assembly.
[0020] Some CAD systems provide shortcuts for constraining fasteners, which include a preparatory step of assigning specific attributes to the fasteners. Thereby, when dragging a fastener into an assembly, the CAD system searches for a receptacle with appropriate attributes and creates appropriate constraints. Similarly, in other existing shortcuts, for example, by selecting a specific shaped part of a fastener, such as an edge between the shaft of a bolt and the face of the bolt head, and dragging the selected face while pressing a modifier key, the automatic creation of constraints is triggered.
[0021] In contrast, exemplary embodiments of the present invention provide a system and method that automatically recognizes a component dragged by a user as a fastener and automatically constrains the recognized fastener with an assembly receptacle in the vicinity of the dragged fastener.
[0022] As shown in Figure 1A, an exemplary fastener, a bolt 120, has a cylindrical head 121 and a coaxially arranged cylindrical shaft 125. The head 121 has a proximal surface 122 (adjacent to the shaft 125), a distal surface 123 (opposite the proximal surface 122), and a cylindrical surface 124. The shaft 125 has a threaded portion 127, an unthreaded cylindrical surface 128, and a distal axial surface 126.
[0023] Assembly 110 has a plurality of receptacle holes 116, 117 on its top surface 112, which penetrate the top surface 112 of the assembly and extend into the interior of the assembly 110. Each receptacle hole 116, 117 has a cylindrical inner surface (not shown) inside the assembly 110. Each receptacle hole 116, 117 has either a base surface (not shown) to which the receptacle holes 116, 117 terminate inside the assembly, or an exit hole (not shown) that opens into the bottom surface 114 of the assembly 110. In a first exemplary embodiment, a user of the CAD system drags a preview image of component 120 from a parts list 150 toward the receptacle hole 117 of the assembly 110, depending on the proximity of the dragged component 120 to the receptacle hole 117. For example, proximity may be a changeable system parameter. This embodiment identifies whether component 120 is a fastener, determines the compatibility of matching surfaces between the fastener 120 and the designated receptacle hole 117, automatically determines the corresponding constraint, and fits the fastener 120 into the receptacle hole 117 of the assembly 110, as shown in Figure 1B.
[0024] Each relationship between the surface of the fastener 120 and the surface of the assembly 110 is called a constraint that secures the fastener to the assembly. In the example in Figure 1A, the constraints include the fitting of the shaft surface 128 to the receptacle hole 117, the fitting of the shaft thread portion 127 to the female thread (not shown) of the receptacle hole 117, and the fitting of the proximal head surface 122 to the top surface 112 of the assembly. Figures 1A-1B show a simplified example, but depending on the situation, there may be additional constraints between the bolt 120 and other assembly components, such as intermediate components (not shown) that are fastened to the assembly 110 by the bolt 120. In this embodiment, once the fastener 120 is recognized, the matching surfaces (constraints) are automatically determined, as will be described later, and the fastener 120 automatically fits into the receptacle hole 117.
[0025] As shown in Figure 2, an exemplary system embodiment operates on a CAD environment 200, such as SolidWorks. The system performs three main functional tasks, each carried out by a module: a learning module 300 that trains a convolutional neural network-based classification model to recognize and classify fastener components; a recognition module 400 that detects component drag operations within the CAD environment 200 and determines whether the dragged component is a fastener; and a constraint module 500 that automatically determines the mating surface of a fastener and determines the constraint between the fastener and the corresponding assembly receptacle hole near the dragged fastener. The learning module 300 is typically independent of the CAD environment 200, and the classification model trained by the learning module is accessible to the recognition module 400 and the constraint module 500 within the CAD environment 200.
[0026] In the first embodiment, a machine learning (ML) classification model is trained to generate and infer the type of fastener. Figure 3 is a flowchart 300 of an exemplary method for training a neural network to classify and recognize a dragged component as a fastener. Process descriptions and blocks in the flowchart should be understood to represent modules, segments, parts of code, or steps containing one or more instructions for implementing a particular logical function within a process. The scope of the present invention includes alternative embodiments in which functions may be performed in an order different from that illustrated or described. This includes performing functions substantially in parallel or in reverse order, depending on the functions involved, as will be understood by those skilled in the art of the present invention.
[0027] As shown in block 310, for each of the multiple fastener components used to train the model, an image of the preview image size is generated. For example, the preview image may be a PNG file with any image resolution, such as 640(W)×480(H), and the format used is PNG.
[0028] As shown in block 320, the training image data is augmented by generating multiple images for each of the multiple single-part files for the fastener component. For example, the multiple images may be views of the component rotated around different axes. As shown in block 330, transfer learning is applied to a base image classification model, such as VGG16, to generate a fastener classification model, as shown in block 340. For example, to train a fastener classifier based on images, a large dataset containing images of all fastener types to be classified may be generated. Typically, the dataset may contain thousands of images for each fastener type. More images may be generated from a limited dataset using CAD model transformation. Arbitrary image dimensions can be used, as long as there are no dimensional constraints imposed on the machine learning model used for classification. The machine learning model is trained using this image dataset according to its specifications. The model can then be used as a fastener classification model once it has been trained and meets the selected accuracy criteria.
[0029] Figure 4 is a flowchart illustrating a computer-based method for automatically recognizing and constraining a fastener component 120 (Figure 1A) in a CAD environment 200 (Figure 2). As shown in block 410, the CAD environment detects a user drag operation of component 120 (Figure 1A) to a drag position near a hole (fastener receptacle) 117 (Figure 1A) in the displayed assembly 110 (Figure 1A). The drag operation of the component does not necessarily need to pause near the fastener receptacle 117. Here, component 120 (Figure 1A) may be a fastener such as a bolt, nut, pin, or washer. The user may drag component 120 (Figure 1A) from multiple source locations, such as the file system of the host computer for the CAD environment, from the platform, from other files within the user's software session, such as a parts list 150 (Figure 1A), from existing fasteners in an assembly file, or by creating a copy of a fastener component already inserted into the target assembly.
[0030] The CAD environment 200 (Figure 2) accesses a preview image of the dragged component 120 (Figure 1A) and provides the preview image to the trained fastener classification neural network, as shown in block 420. The preview image may be a standard isometric projection image of the component that is periodically generated by the host CAD system (e.g., SolidWorks), or it may be an image obtained from outside the CAD system and associated with the dragged component. For example, since such isometric projection images are industry standards, the preview image may be obtained from the website of the component's parts supplier.
[0031] The neural network receives the preview image and infers whether the dragged component 120 (Figure 1A) is a fastener, as shown in block 430. Here, the neural network infers whether the dragged component 120 (Figure 1A) is a fastener based on a fastener classification model. The dimensions of the fastener preview image are irrelevant to this embodiment in recognizing the dragged component as a fastener; it only determines whether the preview image represents a type of fastener that the neural network has learned to recognize.
[0032] If the inference results in block 435 ("No" branch) and the dragged component 120 is determined not to be a fastener, the process terminates as shown in block 480. In this case, the neural network returns that the classification of the dragged component 120 is unknown. On the other hand, if the neural network infers that the dragged component 120 is a fastener, as shown in block 500, which is explained in more detail in Figure 5, the method attempts to constrain the fastener 120 to the assembly receptacle.
[0033] Note that the classification inference step (block 430) does not verify whether the dragged component 120 fits with the receptacle 117 near the drag position. In fact, classification inference is performed without considering the dimensions (scaling) of the dragged component. An advantage is that the recognition process 400 does not require a complete CAD descriptor of the fastener that shows the detailed shape of all surfaces of each fastener. [Constraint processing 500] Figure 5 is a flowchart illustrating a computer-based method for automatically constraining a fastener component 120 (Figure 1A) recognized in the CAD environment 200 (Figure 2).
[0034] As shown in block 440, the receptacle 117 (Figure 1A) of assembly 110 (Figure 1A) near the drag position of the classified fastener 120 is identified. For example, SolidWorks' Smart Mating function utilizes this function. As shown in block 450, the mating surfaces of the classified fastener 120 (Figure 1A) are determined. Here, access to the fastener topology is made, for example, via the API of the modeling kernel. For example, if the fastener 120 is a bolt, the faces of the cylindrical shaft 125 and / or the proximal head face 122 may be identified as mating surfaces. Also, mating surfaces with potential compatibility with the receptacle 117 are identified.
[0035] The shapes of the mating surfaces of the classified fasteners and the potential mating surfaces of the receptacle are compared via a topology walk of the fastener 120 and the receptacle 117, as shown in block 452, as described later with reference to Figures 8-12, for example. If the topologies match (see block 455), the dragged component 120 (Figure 1A) is constrained to the receptacle 117 (Figure 1A), as shown in block 460. The constraint process in block 460 may be similar to the constraint process when the mating surfaces are identified by the user, rather than being automatically identified as in blocks 450, 452, and 455. The CAD environment 200 draws the state in which the dragged component 120 (Figure 1A) is constrained to the receptacle, as shown in block 470 and Figure 1B.
[0036] Figure 8 is a flowchart 800 of an exemplary method for determining concentric and coincident mates of recognized (classified) fasteners. Classification of the dragged fasteners is received, as shown in block 810. In the first embodiment, fasteners may be classified as bolts, nuts, or washers. The cylindrical faces of the fasteners are identified, as shown in block 820. Here, the preview image is used only for classification, and the faces are identified using the geometry / topology of the CAD model. The identified cylindrical faces are grouped by a shared axis, as shown in block 830. This usually generates a single group. The principal axis of the fasteners is identified as the axis of the group with the most cylindrical faces, as shown in block 840. Subsequent processing differs depending on the type of fastener, as shown in block 845. For bolts, the determination of concentric (block 900) and coincident (block 1000) mates is shown in detail in Figures 9 and 10. On the other hand, the determination of concentric matching (block 1100) and coincidence matching (block 1200) for washers and nuts is shown in detail in Figures 11 and 12.
[0037] Figure 9 is a flowchart 900 that details the determination of concentricity of a bolt in the method of Figure 8. As shown in block 910, the head end of the bolt is established. This involves obtaining the bounding box and center of mass of the bolt (block 920) and evaluating the center of mass (block 930). The bolt end closest to the center of mass is determined to be the head end of the bolt (block 940). As shown in block 950, the bolt end opposite to the head end is determined to be the shaft end. As shown in block 960, the cylindrical surface closest to the shaft end is concentrically coincided.
[0038] Figure 10 is a flowchart 1000 detailing the determination of the bolt coincidence in the method of Figure 8. After a concentric coincidence is found (block 960, Figure 9), the remaining non-cylindrical faces are counted, as shown in block 1010. If only one face remains (block 1015), this face is used as the coincidence, as shown in block 1060. If there are multiple remaining faces (block 1015), the smallest face smaller than the bolt axis is found, as shown in block 1020, and this is used as the coincidence, as shown in block 1060.
[0039] If no faces remain after counting block 1010, check whether the target hole is countersunk, as shown in block 1025. If the hole is not countersunk, there is no coincident match, as shown in block 1040. If the hole is countersunk, this method obtains a conical face of the fastener that has the same angle as the hole, as shown in block 1030. Here, the conical face must have the same normal direction as the hole. If there is exactly one conical face (block 1035), use this face as the coincident match, as shown in block 1060. If no conical face exists, there is no coincident match, as shown in block 1040. If there are multiple conical faces (block 1035), the conical face closest to the head (block 1050) is used as the coincident match, as shown in block 1060.
[0040] The method for determining the mating of a nut and washer is similar. Figure 11 is a flowchart 1100 that details the determination of concentric mating of a nut or washer in the method of Figure 8. The mounting end of the nut / washer is established as shown in block 1110. This includes obtaining the bounding box of the nut / washer (block 920) and evaluating the center of mass (block 1130). The end of the nut / washer closest to the center of mass is determined to be the mounting end of the nut / washer (block 1140). Starting from the mounting end, the first cylindrical surface coaxial with the main axis is concentrically mated (block 1150).
[0041] Figure 12 is a flowchart 1200 detailing the determination of the concentric mate of a nut or washer in the method of Figure 8. This method obtains a plane perpendicular to the principal axis of the nut / washer, as shown in block 1210, and then obtains the plane closest to the mounting end, as shown in block 1220. This plane is used as the coincident mate, as shown in block 1230.
[0042] Figure 13 is a flowchart 1300 outlining an embodiment of an exemplary method for automatically mating a dragged fastener with an assembly receptacle. As shown in block 410, the component is dragged to a drag location near the assembly. The dragged component is identified as a fastener, as previously described (see blocks 420 and 430 in Figure 4). A mate reference is identified for the fastener, as shown in block 800 (see Figure 8). If the dragged component's drag location is on a circular edge (block 1305), the method searches for the corresponding mate reference geometry of the receptacle on the circular edge, as shown in block 1310. If a matching mate is found (block 1315), a preview image of the mated fastener component is displayed, as shown in block 1330. As shown in block 1335, if the user drops the dragged fastener (for example, by releasing the dragged fastener and completing the drag-and-drop operation), the method inserts the fastener component with the identified mate, as shown in block 1350. As shown in block 1345, if the user drags the fastener away from the receptacle, the process flow returns to block 1305 and continues.
[0043] The system performing the functions described in detail above may be a computer, an example of which is shown in the schematic diagram of Figure 6. System 600 comprises a processor 502, a storage device 504, a memory 506 containing software 508 that defines the functions described above, an input / output (I / O) device 510 (or peripheral device), and a local bus or local interface 512 that enables communication within System 600. The local interface 512 may be, but is not limited to, one or more buses, or other wired or wireless connections known in the art. The local interface 512 may have additional elements, which have been omitted for simplification, such as controllers, buffers (caches), drivers, repeaters, and receivers, in order to enable communication. Furthermore, the local interface 512 may include address, control, and / or data connections to enable proper communication between the aforementioned components.
[0044] The processor 502 is a hardware device for executing software, particularly software stored in memory 506. The processor 502 may be a custom-made or commercially available single-core or multi-core processor, a central processing unit (CPU), an auxiliary processor among several processors associated with the system 600, a semiconductor-based microprocessor (in the form of a microchip or chipset), a microprocessor, or any device in general for executing software instructions. While the processor is shown as a single unit in Figure 6, alternatively, the processor may include two or more processing units distributed across two or more locations, communicating via a communication network, for example, in addition to or instead of the local interface 512.
[0045] Memory 506 may include one or a combination thereof of volatile memory elements (e.g., random access memory (RAM such as DRAM, SRAM, SDRAM, etc.)), volatile memory elements (e.g., hard drives, solid-state drives (SSDs), flash drives, optical drives, tapes), and non-volatile memory elements (e.g., ROM, CD-ROM, etc.). Furthermore, memory 506 may include electronic, magnetic, optical, holographic, and / or other types of storage media. Memory 506 may have a distributed architecture. In this case, various components are located in separate locations from each other but are accessible by the processor 502.
[0046] Software 508 defines the functions that the system 600 performs in accordance with the present invention. Software 508 in memory 506 may include one or more independent programs, each containing an ordered list of executable instructions for implementing the logical functions of the system 600 described below. Memory 506 may also include an operating system (O / S) 520. The operating system essentially controls the execution of programs within the system 600 and provides scheduling, input / output control, file and data management, memory management, communication control, and related services.
[0047] The input / output device 510 may include input devices. Examples include, but are not limited to, keyboards, mice / trackpads, tactile sensors, touchscreens, scanners, microphones, barcode readers, and QR code® readers. Furthermore, the input / output device 510 may also include output devices. Examples include, but are not limited to, printers, displays (2D, 3D, virtual reality headsets), and transducers. Finally, the input / output device 510 may further include devices that communicate bidirectionally through both inputs and outputs, or composite interfaces such as full-duplex serial buses (e.g., Universal Serial Bus (USB)), interfaces for accessing other devices, systems, or networks (e.g., wireless transceivers, copper wire, optical or wireless telephone interfaces, bridges, routers, and other devices). Outputs may include interfaces for controlling manufacturing equipment such as 3D printers, computer numerical control (CNC) machine tools, and / or milling machines.
[0048] When the system 600 is running, the processor 502 is configured to execute the software 508 stored in the memory 506, send and receive data to and from the memory 506, and to control the overall operation of the system 600 according to the software 508, as described above.
[0049] The fasteners in the exemplary embodiments include coaxial fasteners such as nuts, bolts, pins, and washers, but in other embodiments, the technology disclosed above may be applied to other types of fasteners.
[0050] Those skilled in the art will understand that various modifications and variations can be made to the structure of the present invention without departing from the scope or spirit of the invention. From this perspective, the present invention is intended to encompass modifications and variations of the present invention insofar as they are included in the following claims and their equivalents.
Claims
1. A computer-based method for automatic recognition and constraint of fastener components in a CAD environment for displaying assembly drawings, The steps include detecting the drag operation of the dragged component to the drag location near the assembly, The steps include receiving a preview image of the dragged component, The steps include providing the aforementioned preview image to a trained fastener classification neural network, The steps include receiving a fastener classification inference for the dragged component from the trained fastener classification neural network that classifies the dragged component as a fastener, A step of identifying the fastener receptacle of the assembly located near the drag position, A step of determining the matching surface of the classified fasteners, A step of determining the mating surface of the fastener receptacle, The steps include: restraining the fastener with the fastener receptacle; A method comprising the step of graphically rendering the fastener restrained by the fastener receptacle.
2. The method according to claim 1, wherein the fastener is selected from the group consisting of bolts, washers, pins, and nuts.
3. The method according to claim 1, wherein the preview image includes an isometric projection.
4. The process further includes a step of training the aforementioned fastener classification neural network, wherein the training step is To generate a set of preview images, including a preview-sized image, for each of the multiple fasteners, The method according to claim 2, further comprising extending the set of preview images in one or more views of the plurality of fasteners.
5. The method according to claim 4, further comprising the step of applying transfer learning to a base image classification model to generate a fastener classification model.
6. The method according to claim 1, wherein the step of determining the mating surfaces of the classified fasteners further includes accessing a descriptor containing geometric data relating to the features of the fasteners and performing a topographic walk of the geometric features of the fasteners.
7. The method according to claim 6, wherein the step of determining the mating surface of the fastener receptacle includes performing a topographic walk of the geometric features of the fastener receptacle.
8. The method according to claim 7, further comprising the step of comparing the geometric properties of the mating surface of the classified fastener with the mating surface of the fastener receptacle.
9. The method of claim 7, further comprising the step of identifying concentric and / or coincident matches of the fastener.
10. A computer-based system for automatic recognition and constraint of fastener components in a CAD environment for displaying assembly drawings, A learning module configured to train a fastener classification neural network, Recognition module and A restraint module is provided, The aforementioned recognition module The drag operation of the dragged component to the drag position near the assembly is detected, The preview image of the dragged component is received, The preview image is provided to the trained fastener classification neural network, The system is configured to receive fastener classification inference regarding the dragged component from the trained fastener classification neural network that classifies the dragged component as a fastener. The aforementioned constraint module, Identify the fastener receptacle of the assembly near the drag position, Determine the mating surfaces of the classified fasteners, Determine the mating surface of the fastener receptacle, The fastener is restrained by the fastener receptacle, A system configured to graphically represent the fastener while it is restrained by the fastener receptacle.
11. The system according to claim 10, wherein the fastener is selected from the group consisting of bolts, washers, pins, and nuts.
12. The system according to claim 10, wherein the preview image includes an isometric projection.
13. The process further includes the step of training the fastener classification neural network, wherein the learning module For each of the multiple fasteners, a set of preview images including a preview-sized image is generated. The system according to claim 10, configured to extend the set of preview images with one or more views of the plurality of fasteners.
14. The system according to claim 10, wherein determining the mating surfaces of classified fasteners further comprises accessing a descriptor containing geometric data relating to the features of the fasteners and performing a topographic walk of the geometric features of the fasteners.
15. The system according to claim 14, wherein determining the mating surface of a fastener receptacle includes performing a topographic walk of the geometric features of the fastener receptacle.