Intelligent Assembly Modeling and Simulation

Main Participants: Satyandra K. Gupta, C. J. Paredis, R. Sinha, and P. F. Brown

Sponsors: This research was funded in part by DARPA, Raytheon Company, and National Institute of Standards and Technology.

Keywords: Assembly Modeling, Assembly Planning, and Assembly Simulation


Developing high-performance electro-mechanical products is a very challenging task. In order to improve efficiency and reduce the product weight and volume, designers need to pack a large number of components in a very small space. At the same time, in order to make products easier to assemble and service, designers need to leave enough room for performing assembly and disassembly operations. These requirements are quite often in conflict and make design of electro-mechanical products a highly iterative process. In the absence of high fidelity simulation tools, most product development teams are forced to include physical prototyping in the design loop to verify proper functioning and ease of assembly. Physical prototyping is a major bottleneck. It slows down the product development process and seriously constrains the number of design alternatives that can be examined. Furthermore, after a prototype has been built and tested, a significant amount of time is spent creating instructions for performing assembly and service.

Rapid technical advances in many different areas of scientific computing provide the enabling technologies for creating a comprehensive simulation and visualization environment for assembly design and planning. We believe that developing and maintaining a single monolithic system for assembly simulations will not be practical. Instead, we have built an environment in which simple simulation tools can be composed into complex simulations. Our goal in this project is to develop high fidelity assembly simulation and visualization tools that can detect assembly related problems without going through physical mock-ups. In addition, these tools will be used to create easy-to-visualize instructions for performing assembly and service operations.

Main Results and Their Anticipated Impact

In our Intelligent Assembly Modeling and Simulation (IAMS) environment, the designer creates an assembly design using a commercial CAD package. After adding information about articulation and assembly features, the designer stores the design in the assembly format. The designer then selects a number of simulation tools and composes them into a customized simulation. In parallel, process engineers create a model of the work cell in which the parts will be assembled. The designer proposes an initial sequence in which this assembly can be performed - either interactively or through the use of assembly planning software. He uses the simulation environment to analyze the assembly, and he makes changes in the assembly after discovering problems. Currently, the simulation environment includes the facilities for performing interference detection, tool accessibility analysis, and detailed path planning.

When the designer is satisfied with the design, the process engineer can optimize the workspace and create a detailed animation of the assembly process. This sequence is downloaded to the operator's desktop computer, where it can be consulted using a browser. The operator can start assembling the parts immediately, without the need for extensive training.

Our software environment consists of four major components: (1) an assembly editor, (2) a plan editor, (3) an assembly simulator, and (4) an animation generator/viewer. The assembly editor imports CAD files of individual components from an ACIS-based solid modeling system and organizes them into an assembly representation. Using feature recognition techniques, the assembly editor recognizes joints between parts and assembly features on individual parts. The plan editor allows users to synthesize assembly plans interactively. The assembly sequence and tooling information (i.e., macro plans) entered by the user are automatically converted into low level tool and part motions (i.e., micro plans). Using the assembly simulator, the user selects and controls various simulations (such as interference and tool accessibility). The animation viewer allows the assembly operators to view the modeled assembly process interactively. The users can randomly access any particular operation in the assembly sequence and interactively change their 3D viewpoint.

Practically, these components can be used in the following manner. A designer creates an assembly design using a commercial CAD package. The design is imported into our environment using the assembly editor. The designer than uses the plan editor to enter a specific assembly sequence. The designer selects a number of simulation agents in the simulation controller and composes them into a customized simulation. Based on the feedback from the simulations he may have to change the assembly design. After several design iterations, he is satisfied with the design and hands it over to the process engineer. In parallel, using the workspace editor, the process engineer has created a model of the work-cell in which this assembly will be performed. After incorporating the assembly in the workspace, the process engineer performs a detailed simulation to check for any problems in the final assembly plan. He then generates an animation of the assembly process that is downloaded to the operator's desktop computer where it can be viewed by the operator using the animation viewer. The operator can start assembling the parts immediately, without the need for extensive training or tedious creation of documentation.

During our field trips, we found that most assembly operators already have computers on their workbenches to display digitized drawings and images illustrating the assembly operations. As a result, we do not expect any major economic or social obstacles to adopting this technology in the workplace.

Our system has been implemented using C++ programming language. It currently runs on SUN (under Solaris operating system) and SGI workstations. We use ACIS for representing various parts in the assembly model. We use RAPID for performing interference tests. We use OpenInventor for graphical rendering. We use the LEDA class library for implementing various data structures.

Our simulation environment incorporates the following new features.
  1. Articulated Tools and Products: Most electro-mechanical products have articulated devices. However, most assembly planning systems do not properly handle articulated products and tools. Our assembly simulator will be able to handle products and tools with built-in articulation. This is important for a large variety of designs, for which the articulated components need to be moved to perform the assembly operations.
  2. Automatic Plan Completion: When designing a complex electro-mechanical product, the designer usually already has a coarse assembly sequence in mind. However, to perform a high fidelity simulation, it is important to specify an assembly plan in full detail. Our framework provides plan completion features that automatically fill in the details of high-level assembly operations specified by the design and process engineers.
  3. Assembly Process Modeling: Most research efforts have focused on the geometric aspects of the assembly (i.e., finding a sequence of assembly operation without part-part interference). We believe that assembly tools and the workspace play a very significant role. Many of the problems related to assembly cannot be recognized without taking process models into account. We therefore model the workspace. This allows the process engineers to evaluate various types of environments in which the assemblies can be performed.
We believe that our assembly modeling and simulation infrastructure described in this paper will allow the creation of much more complex products in a much shorter time. Specifically, we envision the following three main advantages:

Related Publications

The following papers provide more details on the above-described results.
Some of these papers are available at the publications section of the website.


For additional information and to obtain copies of the above papers please contact:

Dr. Satyandra K. Gupta
Department of Mechanical Engineering and Institute for Systems Research
2135 Martin Hall
University of Maryland
College Park, Md-20742
Phone: 301-405-5306
FAX: 301-314-9477