A key challenge in this project is to enable real-time interaction during the simulation. This includes not only the timely computation of the dynamic processes. The complex geometric models of the satellite and robot have to be visualized at refresh rates of at least 30Hz in high resolution and photo-realistic quality. Additionally, the integration of haptic feedback, which requires challenging update rates of 1kHz, demands fast computation techniques. In order to achieve these real-time requirements, optimizations of algorithms and state-of-the-art high-performance computing hard- and software, such as supercomputers, PC-clusters, as well as multi-core and GPGPU programming techniques, are used.
Fig.: System overview.
Fig.: Distributed architecture.
Fig.: Generic simulation process.
Modular, Distributed Architecture
The VR-OOS system is implemented in a distributed architecture, where the physics simulation, haptic rendering and visualization are moved to separate simulation processes running independently on dedicated machines. The synchronization of the simulations is handled via fast message transmission across the network. In the software framework, the functional structure of a simulation process is generic. This means that our system is easily extensible with further simulation processes and can also be integrated easily into existing simulation software packages with a C/C++ API.
The objects and their behavior in a simulation scene are described using COLLADA, an open, XML-based data exchange file format. It allows storing CAD geometry data, extended shading effects and physical models within a single file, instead of requiring the user to maintain a set of different file formats. COLLADA is already widely supported in the animation and creative media field and becomes increasingly popular in engineering and mechanical simulation applications.