Previous Table of Contents Next

Intelligent Assembly Modeling and Simulation: IAMS

Designing complex electro-mechanical systems is a complicated problem because of the competing requirements for tight packing and assemblability. In current design practice, designers ofter use physical mock-ups to verify whether assemblability constraints are satisfied. The goal of IAMS is to avoid this expensive and time-consuming process by facilitating assemblability checking in a virtual, simulated environment. In addition to part-part interference checking, the IAMS tool will check for tool accessibility, stability, and ergonomics.

The simulation of the assembly process can also be used for instructional purposes. It allows for 3-dimensional interactive assembly and service instructions. The operators can interactively change their viewpoint and look at any assembly operation in a random access manner.

Our approach is based on the following two concepts:

 

Novel Features

 

Overview

These are the different componenets and capabilities of our current implementation. Each of these will be further discussed after a highlevel overview.

 

Example Scenario

This example scenario illustrates how the iams system will be used in a typical concurrent design context. (the image should be interpreted starting from the top left and circling counter clock-wise to the right top).

  1. detailed design: a design created detailed models of the parts of a complex electro-mechanical system (e.g. copier) and uses the IAMS assembly editor to create an assembly model that includes a kinematic model of the assembly.

  2. the designer can then use the assembly toolkit to verify whether there are any part-part interferences for the assembly sequence that he had in mind when designing the assembly. This sequence does not have to be complete in order to perform the analysis. One can analyze only the motions of the critical parts that may cause problems.

  3. in collaboration with a process engineer, a more detailed assembly plan can then be generated using the toolkit. The level of detail can be increased gradually: start with detailed part motions, then include tools, finally include the workspace layout. These analyses will provide feedback to the design engineers on how to improve the assembly (without having to build physical mock-ups).

  4. after several redesigns and corresponding modifications of the assembly plan, the product development team is satisfied with the results. The design and process information can be sent directly (electronically) to the shop floor. The results of the simulations can there be used as instructions for the assembly operators.

     

    Architechture

    We are adopting an agent-based architecture for the implementation of the assembly toolkit.

     

    Assembly Editor

    The assembly editor allows the user to generate an augmented assembly representation that include (besides initial part positions) a model of the kinematic structure of the assembly. From the geometric data, the editor automatically generates a contact graph indicating the contact relationships between the individual parts of an assembly. These relationships can than be modified with the "joint editor", which allows the user to define kinematic relationships between different parts. In addition, one can define attributes of individual parts with the part editor.

     

    Editing A Part

    The part editor allows one to modify attributes of individual parts of the assembly: material properties, color, reference frame etc. A very important attribute is the list of assembly features. These features are later used for the automatic generation of assembly operations and tool motions. Examples of assembly features are: thread, phillips slot, hexagonal boss, etc. The part editor includes a feature recognition algorithms that automatically determines the parameters of these features (if possible; the thread of a screw for instance is typically modeled as a plain cylinder and can therefore not be recognized from the geometry).

     

    Editing A Joint Definition

     

    The joint editor allows the user to define the kinematic relationship between different parts in the assembly. For instance, one can define a "Rotational" joint, by selecting the cylindrical surfaces on the two parts that are in contact with each other. This information is further augmented by including limits of motion, and a reference joint value.

     

    User Interface

    The user interface of the IAMS assembly toolkit consists of 4 components:

    1. a main window in which status information is displayed (top left)
    2. a graphical display in which the graphical simulation is displayed (top right)
    3. a simulation control pannel with which the user can control the simulation time: forward, backward, pause, restart, etc. (bottom right)
    4. a plan editor in which the user can specify a high level assembly plan.

     

    Plan Editor

    In the plan editor the user can specify a high level assembly plan by selecting generic assembly operations (screw, position, solder, etc.) and providing the corresponding attributes. In the background, these high-level specifications are translated into low-level simulation commands by the micro planner. For instance: a screwing operation on screw1 with phillips_screwdriver1 will be translated into an appropriate motion for the screwdriver from its position on the shelves to a position directly above the phillips slot on screw1. After the insertion motion, the microplanner will generate a screw motion with the appropriate pitch until screw1 is completely inserted. Finally, the tool will be moved back to the shelves.

     

    Smart Tools

    Tools are modeled as assemblies with additional attributes. In addition to the geometric and kinematic models contained in the assembly model, the tools contain a behavior model. This model describes how the tool should be used and consists of:

    1. applicability conditions: what are the tool and part features necessary to perform a given assembly operation.
    2. a list of operations that are supported by the tool
    3. for each of these operations a description of the tool motion. This tool motion is described using parametrized macros. the parameters are derived from tool and part features as well as positions and geometry of other parts in the assembly.

     

    Random Access Playbacks

    As a by-product of the analyses performed with the assembly toolkit, a complete detailed graphical simulation of the assembly process is generated. This graphical simulation can be used for instructing the assembly operators. The graphical simulation engine is random access in nature. One can jump back and forth between assembly operations, slow the simulation time down to study a particular operation, all while interactively changing the 3D camera viewpoint.

     

    Previous Table of Contents Next