Zielsetzung
Die Softwarebibliothek SiLVIA (Simulation Library for Virtual
Reality and Interactive Applications)
dient der Simulation des dynamischen Verhaltens von Systemen aus starren
Körpern und der interaktiven Manipulation dieser Körper in virtuellen
Umgebungen.
Zur Modellierung der Körperoberflächen sollen nicht nur Polygone
benutzt werden, sondern auch gekrümmte Flächenstücke von
Kugeln, Zylindern, Kegeln und Tori, weil diese beim Design mechanischer
Teile eine besondere Bedeutung haben. Alle geometrischen Algorithmen müssen
dementsprechend konzipiert sein. Bei der Verwendung der Algorithmen sollen
eigene und aus der Literatur bekannte Resultate aus den Bereichen Computational
Geometry und Computational Mechanics eingehen. Dabei spielt der Trade-Off
zwischen der Robustheit und der Effizienz der verwendeten Methoden eine
zentrale Rolle.
Das Hauptaugenmerk bei der Simulation soll auf dem Verhalten eines Systems
von starren Körpern liegen, die in Kontakt zueinander treten oder
sich bereits in Kontakt befinden. In diesem Zusammenhang erweist sich die
Erkennung von Kollisionen als laufzeitkritischer Faktor, und zur wirklichkeitsgetreuen
Simulation von physikalischen Effekten wie Stößen, Gleiten,
Haften und Rollen sollte die Reibung berücksichtigt werden.
Die im Rahmen von Diplomarbeiten erstellte Software und die zugehörige
Dokumentation der verwendeten Datenstrukturen und Algorithmen sollen frei
verfügbar sein. Beim Entwurf der Software wird auf größtmögliche
Portabilität Wert gelegt, indem nur Plattform unabhängige Standardpakete
Verwendung finden.
Die Einsatzmöglichkeiten von SiLVIA liegen im Bereich (Distributed)
Virtual Reality zur Erhöhung der Realitätstreue simulierter Abläufe,
z.B. bei virtuellen Einbau- und Ergonomieuntersuchungen sowie im Bereich
der Robotik, z.B. zur Telemanipulation von weit entfernten Robotern.
Datenstrukturen
-
Datenstruktur zur topologischen und geometrischen Repräsentation von
Objekten mit Begrenzungsflächen, die Abschnitte von Quadriken oder
dem Torus darstellen, und mit Kegelschnittkurven als Begrenzungskanten.
-
Datenstruktur zur hierarchischen Approximation von Objekten mittels
Hüllkörpern und zur hierarchischen Raumpartitionierung
Geometrische Algorithmen
-
Typische CAD-Operationen zur Modellierung von Objekten, z.B. das Generieren
von Projektions-, Rotations- und Schlauchkörpern, das Verrunden von
Ecken und Kanten, Boolesche Operationen (Schnitt, Vereinigung, Differenz)
- Die Berechnung von Momenten (Masse, Schwerpunkt, Trägheitsmatrix)
aus der geometrischen Beschreibung
- Abstands- und Schnittberechnungen sowie Kollisionserkennung
- Effizienzsteigerung durch Hüllkörper- und Raumpartitionierungsheuristiken
- Parallelisierung der Kollisionserkennung
Simulation
-
Kinematik und Dynamik starrer (gelenkig verbundener) Körper
- uni- und bilaterale Kontakte zwischen starren Körpern
- Integration verschiedener Ansätze zur Modellierung von plastischen/elastischen
Stößen
- Behandlung von Reibung
Software
- Objektorientierte Programmiersprache C++
- Visualisierung mittels OpenGL
- Benutzeroberflächen realisiert mit
Tcl/Tk als auch dem
Fox Toolkit
-
Verwendung von standardisierten Dateiformaten zur Objektbeschreibung
(ACIS) und zur Szenenbeschreibung und Animationssequenzen (VRML)
Anwendungen
|