configManager.useSimulation();The simulation takes the form of a 3-D animation, displayed in a viewer containing scene graphs corresponding to the various ACME devices. Collisions are detected and reported to the user.
Our implementation currently provides a kinematic model [#!lee82!#,#!paul81!#] of four robotic devices mounted on a table. Extension to a dynamic model and support for additional devices is feasible within the framework we have chosen. Adding new devices - given support by the rest of the ACME package - would require a minimal amount code (the hardest part probably being the creation of a new scene graph). Moreover, by closely following the ACME design paradigm, we have made the simulator compatible with the (seemingly imminent) extension of ACME to a multi-user client-server architecture.
The simulator software can be logically subdivided into an API, which is the ACME programmer's interface to the simulation; a viewer, which displays the simulation and detects collisions; and a back-end, which performs kinematic2 computations and updates the viewer.
The remainder of this report is organized as follows: