A Virtual Assembly Design Environment

Sankar Jayaram, Yong Wang, Uma Jayaram

School of Mechanical and Materials Engineering

Washington State University

Kevin Lyons, Peter Hart

Manufacturing Systems Integration Division

National Institute of Standards and Technology

Abstract

The Virtual Assembly Design Environment (VADE) is a Virtual Reality (VR)-based engineering application that allows engineers to evaluate, analyze, and plan the assembly of mechanical systems. This system focuses on utilizing an immersive, virtual environment tightly coupled with commercial computer aided design (CAD) systems. Salient features of VADE include: 1) data integration (two-way) with a parametric CAD system, 2) realistic interaction of user with parts in the virtual environment, 3) creation of valued design information in the virtual environment, 4) reverse data transfer of design information back to the CAD system, 5) significant interactivity in the virtual environment, 6) collision detection, and 7) physically-based modeling. This paper describes the functionality and applications of VADE. A discussion of the limitations of virtual assembly and a comparison with automated assembly planning systems are presented. Experiments conducted using real-world engineering models are also described.

1. Introduction

Traditional, automatic assembly planning has used the process of studying the disassembly process on the assumption that "if you can disassemble a part, you can assemble it, and vice versa. " In a real-world, physical situation this may not be true due to irreversible fastening processes. Also, for a given product, the number of feasible assembly sequences explodes exponentially as the number of components increases. In addition, choices of the optimal plan for disassembly may not represent the best for assembly. "Attempts to accelerate the process through the development of computer aided assembly planning systems have not, in general, been successful even when the design has been carried out using a modern CAD system. One of the main reasons for this lack of success is that assembly is dependent on a great deal of expert knowledge which has proven very difficult to formalize" [7]. The development of VR applications in engineering has opened up a powerful array of tools to solve the assembly planning problem. Instead of abstract, algorithmic assembly planning, an engineer can perform the assembly intuitively in the virtual environment using VR hardware and software. The information generated by this process can be used for assembly planning and verification.

Virtual Assembly Design Environment (VADE) [6] is a research and development project, which was started in 1995 and sponsored by the National Institute of Standards and Technology (NIST). The main purpose of the project is to explore the potential for, and technical challenges in, the use of virtual reality technologies in assembly planning and evaluation. The VADE system has been created successfully and is being evaluated using test cases from industry.

In this paper, we describe the overall VADE system, the important features, and examples of use of this system. We also discuss the benefits and limitations of virtual assembly systems. A comparison of virtual assembly systems and automated assembly planning systems is also presented.

2. Related Work

Representative work on automated assembly planning can be found in [10, 16]. A successful numerical method to generate swept volume was introduced in [13]. Collision detection research can be found in [5, 8, 17]. Physically-based modeling and dynamic simulation research is described in [2, 11, 15].

VR and CAD system interaction has been described in [1]. The system described in [1] allows limited design modifications in the virtual environment through a CAD system (ProEngineerTM). However, the application is limited by the level of interactivity in the system.

In the field of virtual assembly and virtual prototyping, several systems have been created [7, 12, 14]. Jayaram et. Al. [9] described a prototype of the Virtual Assembly Design Environment (VADE). The work discussed in this paper evolved from the prototype VADE.

3. Virtual Assembly Design Environment

VADE has been designed and implemented at Washington State University (WSU) in collaboration with NIST [4, 9]. The overall system concept is illustrated in Figure 1. Once the engineer designs the mechanical system using any parametric CAD system, VADE automatically exports the necessary data to the virtual environment through a user selected option in the CAD system.

In the virtual environment, the user is presented with an assembly scene. The various parts are located initially where they would be in the real assembly plant (this is user defined). The VR user can then perform the assembly. This enables the user to make decisions, make design changes, and perform a host of other engineering tasks in the virtual environment. During this process, the virtual environment maintains a link with the CAD system and uses the capabilities of the CAD system wherever required (as described later in this section). At the end of the VADE session, the user would have generated valued design information, which is then made available automatically to the designer in the CAD system.

The VADE architecture is based on object-oriented design concepts and methods. There are eight modules in the system:

  1. InteractionManager: Harmonizes all the modules and features within the whole system;
  2. InputManager: Obtains user input including tracking data, glove data, and keyboard data;
  3. OutputManager: Creates and updates the graphics display and manages the scene graph;
  4. ModelManager: Obtains assembly model and environment model information from the CAD system;

 

Figure 1. VADE Usage Scenario [9].

  1. CollisionManager: Provides real-time collision detection;
  2. SweptManager: Creates and controls the editing of swept volumes and part trajectories;
  3. DesignManager: Allows the user to perform parametric design modifications in the virtual environment and integrates these modifications with the CAD system; and
  4. DynamicHandler: Simulates dynamic behaviors of the parts by applying the laws of physics.

VADE is designed to support a variety of VR peripheral devices. The test cases at Washington State University used an implementation with an SGI Onyx2 processor with 6 processors and two Infinite Reality pipes, Flock of Birds, Cyberglove, and a VR4 head mounted display. Valuable collaborative work was performed with an implementation at NIST that used an ImmersaDesk.

4. Representative Features and Capabilities of VADE

  1. Automatic data translation from CAD to VR: The assembly tree, the assembly constraints, and the geometry of the parts and subassemblies are translated automatically from the parametric CAD system (Pro/Engineer) to the virtual environment.
  2. Creation of realistic environment and initial location of parts: The user can specify any assembly environment. This environment can be defined in the CAD system or can be imported from any other system using one of the many industry file formats supported by the rendering software. The initial location and orientation of the parts are specified by creating coordinate systems in the CAD system and transferring the information to the virtual environment.
  3. Two-handed assembly and dexterous manipulations: VADE supports both one-handed and two-handed assembly. One of the two hands can be dexterous with a glove device. The non-dexterous hand is used to grab and manipulate the "base" sub-assembly on to which the other parts are being assembled. For the dexterous hand, new algorithms have been created and implemented to allow realistic gripping of parts using physics-based modeling. This allows fine motor manipulations of the part held by the gloved hand. Support for tactile feedback is also built into the system.
  4. Capturing assembly intent from CAD system and using it in the virtual environment: Modern CAD systems support capturing the designer’s intent. For the assembly process, intent is specified through the constraints used to assemble the system. VADE assumes that the model has been created with the physical assembly intent in mind. This information is used to constrain and create kinematic motions during virtual assembly. This information is also used to create valuable assembly sequence information.
  5. Constrained motion simulation: VADE simulates inter-part interaction for planar and axisymmetric parts using constrained motions along axes/planes. These axes and planes are obtained as part of the assembly design intent from the CAD system. This allows simulation of sliding, rotating, etc., without compute-expensive numerical methods (Figure 2).
  6. Interactive dynamic simulation of parts: VADE supports real-time collision detection; simulation of dynamic behaviors of the parts held in the user’s hand; dynamic interactions between the user, the parts, the base part, and the environment objects; simulation of ballistic motion of the objects in space; and, simulation of dynamic behaviors of the parts while constrained on the base part (Figure 3). All this is achieved using physically-based modeling. The properties for the parts are obtained directly from the CAD system.
  7. Swept volume generation and trajectory editing: VADE allows the user to record the trajectory of the part as it is being assembled. This trajectory can be edited within the virtual environment. The swept volume of the part is created using numerical methods and can be viewed in the virtual environment. This volume can also be sent back to the CAD system as a feature of the assembly (Figure 4).
  8. Figure 2. Constrained motion simulation. The part (indicated by the arrow) is only allowed to move along the axes during an insertion.

    Figure 3. Dynamic simulation. The pendulum-like part is rotating about the shaft and translating along the shaft axis.


  9. Parametric design modifications in the virtual environment
    : The designer can tag model parameters in the CAD system. The tagged parameters are extracted by VADE and presented to the VADE user. These parameters can be modified in the virtual environment using a 3D graphical user interface (GUI) (Figure 5). The modified parameters are sent back to the CAD system where the part is regenerated using all the variational and parametric relations set-up by the designer. The modified part is re-loaded into VADE. All this happens in near real-time without the user ever leaving the virtual environment. This allows quick design changes and "what-if" evaluations during the assembly evaluation process.

All of the above-described capabilities can function together or individually. The system is in constrained motion simulation mode by default, since it is the basic functionality that guides the assembly operation. Other capabilities, such as swept volume generation, trajectory editing, collision detection, design modifications, and dynamic simulation are optional. The user can switch these capabilities on and off during the session as desired.

Figure 4. Swept volume generated in CAD. The generated swept volume has a parametric representation.

Figure 5. Parametric design modifications in VADE. The user selects the virtual menu button to modify the diameter of the indicated part.

One scenario is the use of swept volume and collision detection together. By using collision detection alone, we can determine whether the part can be assembled safely (without interfering with other parts or environment objects). By using swept volume and collision detection together, we can also find where the interference will occur. This identifies the exact instances of the trajectory that are colliding with the assembly or the environment object. This information is valuable for identifying solutions to the interference problem or for editing the trajectory (Figure 6).

Figure 6. Checking collision while the part is sweeping.

5. Assembly Evaluation and Planning

VADE was created to perform or assist assembly design evaluation, analysis, and assembly sequence planning. It can fulfill the design needs at all product realization stages: assembly plan verification (pre-product evaluation), maintenance verification, and alternative plan searching (post-production evaluation).

Assembly plan verification lets the user perform the assembly in a pre-defined sequence. In VADE, the user assembles the parts one by one in the virtual environment using constrained motion, swept volume, and collision detection. If any interference is detected during the process, the user can try to find a way to get around it.

Maintenance verification lets the user check the design for disassembly. If a part needs to be taken out for maintenance (e.g. a spark plug or an oil filter), we need to ensure a clear path of disassembly. There are two ways to achieve this using VADE. One way is to try to remove the part from its final position and check for collision detection during the process. The other way is to create a swept volume of the path during the disassembly process, assemble all the other parts, and check the interference of the swept volume with other parts. By observing the created swept volume, we can estimate how much space is available to perform the operation.

Sometimes it is necessary to find alternative plans or sequences for operations that are already being carried out in the workshop. It is also common to post-evaluate an assembly operation. Stopping the assembly line to perform the testing is not economical and very few alternatives can be tried out in the limited time available. VADE provides a viable alternative where assembly experts can try various alternatives, choose the best one, suggest design changes, suggest fixturing changes, perform ergonomic evaluations, and so on. All of the results of these evaluations in VADE can be presented to the designer in the original CAD environment through the CAD-VADE interface. This allows the designer to quickly perform design changes without any other data translation.

6. Test Cases and Results

To test and verify the performance and capabilities of the virtual assembly design environment, several assembly test cases have been carried out at WSU and NIST. In this paper, two of those test cases are presented to demonstrate the validity of using this system for assembly evaluations. The basic goal of these two tests was to compare the time required to carry out an assembly in a virtual environment with the actual assembly time. A small-scale, small-sized assembly and a large-scale, large-sized assembly are presented. The predicted assembly time was calculated using Boothroyd methods [3]. In each virtual assembly operation, two sets of data are recorded: total time to perform the assembly and total "pure" assembly time for all the parts. For a part, "pure" assembly time represents the time between the moment that the part is grabbed and the moment that the part is placed on the base part. The time a user spends on reaching and trying to grab the parts (gripping time) can be obtained by the difference between the total time and total pure assembly time.

Figure 7. A tele-printer assembly model in VADE.

Figure 8. A truck axle assembly.

The small-sized assembly was a tele-printer with seven parts (Figure 7). The large-sized assembly was a truck front axle assembly (Figure 8). This model had 17 parts and sub-assemblies and represented a real-world industry case study. For the large size axle assembly, a full-scale model and a half-scale model were used. The half-scale model was used not only because it can provide the information on the impact of scale factors in virtual assembly, but also because it can be treated as a mid-sized assembly model. The test results are shown in Appendix A in Table-A1 and Table-A2. Analyzed data is shown in Table-A3.

From the test data and the analyzed data in the tables, several interesting and important observations can be made:

1) Pure assembly time in a virtual environment is lower than actual assembly time (about 10%-15%). This can be attributed to the lack of fastening operations in the virtual environment.

2) Pure assembly time for each part in the assembly increases with the physical size of the part. This is because the difficulty to handle the parts increases with the size of the parts. For example, it takes more time to manipulate and align a truck wheel than it does a tape spool on a printer. This physical reality was reflected adequately in the virtual environment.

3) Average gripping time for each part in the assembly remains almost the same for different sizes of the parts. Although gripping difficulty does depend on the shape of the part (a thin, long shaft is more difficult to grab than a cubic block), gripping time mainly depends on practice and experience in the virtual environment. For new users, it takes much longer to grab a part. Providing touch feedback did not have an effect on the gripping time. We anticipate that providing grip feedback will influence the gripping time.

4) When considering the relationship of pure assembly time and total assembly time, the correlation coefficient is lowest for large assembly (0.7 for large assembly, 0.98 for half size large assembly and 0.9 for small assembly). This indicates that human considerations start influencing the assembly time for larger models. As the assembly models become larger, the user needs to walk some distance to grab the part, find better viewing positions to look at the model, align the parts, and so on. Some of the truck axle assemblies were performed by simulating a "hoist" with one user manipulating the part and another one guiding the manipulation. This seemed to work better (as it does in the real world).

Besides the quantitative information, qualitative information was also obtained. The virtual assembly of course does not require physical prototypes. The immersion in the full-size assembly provides intuitive and valuable information that is impossible to obtain in conventional CAD assembly modeling. The test case also illustrated other potential capabilities such as training, workspace study, and operation time study, in VADE. In addition to providing visualization of the assembly process, virtual assembly is a viable tool to study, analyze, evaluate, and improve the assembly design and operation processes.

7. Discussion

With VADE, the user can perform assembly design evaluation, maintenance verification, alternative assembly plan searching, and part design modification as described above. Since the system involves the experience and actions of the human, the plans generated from this system automatically include the input from the knowledge of experienced engineers. However, there are some limitations.

First, since the environment is achieved in a full immersion mode using a Head Mounted Display (HMD), the user tires if he is in the environment for a long time. Hence, this system is not suitable for assemblies with a large number of parts. However, we can get around this problem, in some cases, by combining parts into sub-assemblies. For example, when a chassis assembly is evaluated, the radiator and the engine can be brought into the environment as single sub-assemblies and treated as a single part even though each is made of several hundred parts.

Overall, virtual assembly evaluation and planning is suitable for complex assembly operations that involve human beings. Automatic assembly planning systems are suitable for assembly models with a large number of parts, but the assembly operations are simple (involving translation and one axis rotation only) and usually performed by robots. In many cases, a combination of the two might be the best solution. The automatic assembly planning system can be used to find some feasible assembly process plans. The expert assembler could then enter the virtual assembly environment for evaluation and verification, consideration of practical problems related to the realization of the assembly design, and optimization.

8. Summary and Conclusions

VADE presents, to the user, a complete scenario for assembly design. Multiple parts can be manipulated efficiently for assembly evaluations. Constrained motion simulation and dynamic simulation assist the assembly evaluation operation. The overall process is simulated realistically by mimicking the physical assembly processes. Dynamic behaviors of objects in the virtual environment are implemented using physical laws. Dynamic simulation increases realistic feeling, but its contribution to the assembly evaluation operations is still unclear.

Interactive editing of assembly path and swept volume directly by the user is achieved in the virtual environment. The editing includes swept instance addition, removal, and modifications of positions and orientations. The editing of the swept volume before the assembly geometry is finalized ensures the validity and significance of the swept volume. The swept volume is also converted to a parametric model and loaded back into the CAD system for further evaluation. Collision detection functionality is also provided in the system.

Bi-directional interaction is achieved between VADE and CAD systems. For simple parts, the interaction cycle is almost real-time. For sophisticated parts with more than 100 dimensions, the interaction speed is slower (about 1 minute).

Test cases have been carried out with models from industry. Results from VADE compare very well with results from the Boothroyd methodology [3] (which is widely used in industry) for predicting assembly time.

A significant deviation from reality occurs in the process of gripping the part. This occurs primarily from the "sluggishness" of VR systems created by tracking frequency, tracking latency, frame rates, and graphics latency. This sluggishness does not seem to affect gross motor movements (moving a part into place and aligning it) except in acute situations with large databases. However, it significantly affects fine motor movements (e.g., finger and wrist movements).

9. Acknowledgement:

This research is supported by a NIST grant.

10. Disclaimer:

Commercial product or company names in this paper are given for informational purposes only. Their use does not imply recommendation or endorsement by the National Institute of Standards and Technology.

11. References

[1]S. R. Angster, "Virtual Environment for Design and Manufacture," Ph.D. Dissertation, Washington State University, 1996.

[2]D. Baraff, "Dynamic Simulation of Non-Penetrating Rigid Bodies," Ph.D. Thesis, Cornell University, 1992.

[3]G. Boothroyd, P. Dewhurst and Winston Knight, "Product design for Assembly and Manufacture," Marcel Dekker, Inc., New York City, NY 1994.

[4]H. Chandrana, "Assembly Path Planning Using Virtual Reality Techniques," MS thesis, School of Mechanical and Materials Engineering, Washington State University, May 1997.

[5] J. Cohen, M. Lin, D. Manocha and K. Ponamgi, "I-Collide: An Interactive and Exact Collision Detection System for Large Scaled Environment," Proceedings of the ACM International 3D Graphics Conference, pp189-196, 1995.

[6]H. Connacher, S. Jayaram, and K. Lyons, "Virtual Assembly Design Environment," Proceedings of 1995 Computers in Engineering Conference, Boston, MA, September 1995.

[7]R. G. Dewar, I. D. Carpenter, J. M.Ritchie and J. E. Simmons, "Assembly planning in a Virutal Environment," Proceedings of PICMET, Portland, 1997.

[8]S. Gottschalk, M.C. Lin, and D. Manocha, "OBB-Tree: A Hierarchical Structure for Rapid Interface Detection," Technical Report TR96-013, Dept. of Computer Science, UNC, 1996.

[9]S. Jayaram, H. Connacher, and K. Lyons, "Virtual Assembly using Virtual Reality Techniques," Computer-Aided Design, Vol. 29, No. 8, August 1997.

[10]S. Kaufman, R. Wilson, R. Jones, T. Calton and A. Ames, "The Archimedes 2 Mechanical Assembly Planning System," Proceedings of 1996 IEEE International Conference on Robotics and Automation, pp. 3361-3368.

[11]B. Mirtich, "Impulse Based Dynamic Simulation of Rigid Body Systems," Ph.D. Dissertation, Department of Computer Science, Univ. of California, Berkeley, 1996.

[12]J. Oliver and R. Kuehne, "A Virtual Environment for Interactive Assembly Planning and Evaluation," Proceedings of ASME Design Automation Conference, 1995.

[13]W. J. Schroeder, H. Martin and B. Lorensen, "The Visualization Toolkit- an Object Oriented Approach to 3D Graphics," Prentice Hall, Engelwood Cliffs, NJ, 1996.

[14]M. Schulz, Th. Ertl and Th. Reuding, "Crashing in Cyberspace-Evaluating Structural Behavior of Car Bodies in a Virtual Environment," Proceedings of VRAIS98, Atlanta, GA March 1998.

[15]Y. Wang, "Physically Based Modeling in Virtual Assembly," Ph.D. Dissertation, Washington State University, December 1998.

[16]R. Wilson, "Tool Reasoning in the Mechanical Assembly Planning System," Proceedings 1996 IEEE International Conference on Robotics and Automation, pp. 2567-2575.

[17]G. Zachmann, "Rapid Collision Detection by Dynamically Aligned DOP-Trees," Proceedings of VRAIS98, Atlanta, Georgia, 1998.

 

Appendix A

Test Case (printer)

"Pure" Assembly Time (PAT)

Total Assembly Time (TT)

Gripping Time (GT=TT - PAT)

Percentage time Gripping(GT/TT)

1

43

101

58

57.4%

2

45

103

58

56.3%

3

46

98

52

53.6%

4

50

130

80

61.5%

5

43

103

60

58.2%

6

53

132

79

59.8%

7

49

128

79

61.7%

Average

47.0

113.6

66.6

58.4%

Table-A1: Recorded time for small assembly (in seconds)


Test Case (axle) Half/Full Size

"Pure" Assembly Time (PAT)

Half Size Full Size

Total Assembly Time (TT) Half Size Full Size

Gripping Time (GT=TT - PAT) Half Size Full Size

Percentage of Gripping(GT/TT) Half Size Full Size

1

264 332

431 521

167 189

38.7% 36.3%

2

242 353

422 518

180 165

42.6% 31.8%

3

318 347

537 534

219 187

40.8% 35.2%

4

237 375

398 523

161 148

40.4% 28.3%

5

229 395

390 582

161 187

41.3% 32.1%

6

267 337

462 509

195 172

42.2% 29.2%

7

239 339

411 542

172 203

41.8% 37.5%

Average

256 354

436 533

179 179

41% 33%

Table-A2: Recorded time for large assembly with full size and half-size (in seconds)

Test Cases

PAT /SD

TT/SD

r of PAT and TT

GT PAT/GT each part

Actual Time from [3]

Printer

47.0/3.8

113.6/15.5

0.903

66.6 7.8/11.1

55.2

Axle(half Size)

256/31

436/51

0.983

179 16.0/11.2

Axle(full size)

354/23

533/24

0.701

179 22.1/11.2

403.8

Table-A3: Analysis of test data (time in seconds). Key: PAT-pure assembly time; TT-total assembly time; GT-gripping time; r-correlation coefficient; SD-standard deviation