Gästebuch / Guestbook
  • Tay-Tec
  • Rhythmus
  • Rhythmus
  • Theorie
  • Persönlich
  • Android App
  • Cube
  • Geschichte
  • Lösungen
  • Muster
  • Links
  • Legende
  • Reisen
  • Schweden 1999
  • Tom
  • Lebenslauf
  • Diplomarbeit
  • Antje
  • Sina
  • 3D-Eingabegeräte

    Allgemeines

    In der Praxis werden für die Eingabe von Bewegungs- und Positionsdaten die verschiedensten Eingabegeräte eingesetzt. Ihr Haupteinsatzgebiet liegt im Bereich des computergestützten Entwurfs (CAD), der virtuellen Realität, der Visualisierung von mehrdimensionalen Daten und der Simulation.

    Klassifikation

    Die verschiedenen Eingabegeräte unterscheiden sich zum Teil sehr stark von einander. In der folgenden Liste sind die wesentlichsten Unterschiede zusammengefaßt. Die verschiedenen Eingabegeräte unterscheiden sich in:

    Umfang
    der gelieferten Daten, der durch Anzahl der Freiheitsgrade, Tasten oder andere Sonderfunktionen bestimmt wird.
    Art
    der gelieferten Daten. Positions- oder Bewegungsdaten können als relative oder absolute Daten geliefert werden. Der Unterschied zwischen absoluten und relativen Daten besteht darin, daß bei absoluten Daten immer die Daten relativ zu einem Bezugspunkt im Raum geliefert werden, während bei relativen Daten eine Auslenkung gegenüber einer Null-Lage geliefert wird. Diese Auslenkung läßt sich als Geschwindigkeitsvektor interpretieren. Das heißt, eine konstante Auslenkung über einen größeren Zeitraum ergibt einen größeren Verschiebungsvektor. Eine Anwendung die eine realistische Steuerung mit einem solchen Gerät erreichen will und nur in unregelmäßigen Abständen Daten vom Gerät bekommt, sollte diesen Zusammenhang beachten.
    Koordinatensysteme
    in denen die gelieferten Daten vorliegen. Für die Lage im Raum bietet sich die Lieferung im Roll-Pitch-Yow System (Kippung um die einzelnen Raum-Achsen) oder im Euler-System an.
    Meßprinzip
    der Geräte. Gemessen werden kann:
    Elektro-Mechanisch:
    Messen mit Hilfe von Dehnungsmeßstreifen, Potentiometern
    Opto-Elektronisch:
    mittels Optokopplern und Positionsdetektoren (PSD)
    Elektro-Magnetisch:
    mittels Spulen-Systemen
    Ultraschall:
    mittels Lautsprecher-Mikrofon-Systemen
    Schnittstelle
    zum Computer. Die Daten können mit Hilfe der genormten, praktisch an allen Computern verfügbaren seriellen Schnittstelle, über eine LAN-Schnittstelle oder eine spezielle gerätespezifischen Schnittstelle zwischen Eingabegerät und Computer ausgetauscht werden. Am häufigsten wird die Übertragung über die serielle Schnittstelle benutzt, wobei es große Unterschiede in den Übertragungsprotokollen (Datenrate, Parität, Datenformat, Aufbau eines Datenpaketes) gibt.
    Anderem.
    Das betrifft die Auflösung oder Meßgenauigkeit, die Update-Rate (wie oft der Meßvorgang stattfindet), die Eignung für die jeweilige Aufgabe und die Zuverlässigkeit der Geräte.

    Geräte

    Die einfachsten Geräte für die 3D-Eingabe sind die Computer-Maus und -Tastatur. Die Maus und die normale Tastatur sind allerdings nicht im eigentlichen Sinn 3D-Eingabegeräte. Die Maus ermöglicht standardmäßig nur die Bewegung in der Ebene, während für die Bewegung im Raum sechs Freiheitsgrade (3 für Position und 3 für die Orientierung im Raum) notwendig sind. Trotzdem werden Tastatur und Maus sehr häufig auch für 3D-Steuerungen genutzt, da sie standardmäßig vorhanden sind. Die Eignung für die meisten 3D-Eingabeaufgaben ist allerdings gering, da die Beeinflussung aller für die Bewegung im Raum notwendigen Freiheitsgrade nur durch Umschaltung zwischen, oder Zusammenfassung von mehreren Teilaufgaben der 3D-Steuerung erreicht werden kann. Es gibt mehrere sehr unterschiedliche Möglichkeiten eine 3D-Steuerung mit diesen beiden Geräten zu simulieren, die mehr oder weniger schwer durch den Anwender zu erlernen sind und die nicht der natürlichen Bewegung im Raum entsprechen.

    Ein weiterer sehr einfacher Vertreter der 3D-Eingabegeräte ist die sogenannte Knob-Box, die für jeden der sechs Freiheitsgrade im Raum einen separaten Drehknopf hat. Damit ist zwar die ruckfreie Bewegung im Raum möglich, allerdings ist die Bedienung nicht intuitiv, da auch bei der Knob-Box nur jeweils ein oder zwei Freiheitsgrade gleichzeitig beeinflußbar sind. Für Aufgaben in der Konstruktion und Architektur hat dieser Gerätetyp seine Berechtigung, da es hier oft auf die genaue Steuerung einzelner Freiheitsgrade ankommt.

    Echte 3D-Eingaben erlauben beispielsweise Geräte, die nach einem Sender, Empfänger Prinzip arbeiten. Diese Geräte haben in den meisten Fällen sechs Freiheitsgrade und arbeiten mit magnetischen Feldern oder mit Ultraschall. Mechanisch sind solche Geräte mehrteilig aufgebaut. Es gibt meistens einen unbeweglichen festen Teil, der ein Feld abstrahlt, das ein frei beweglicher Teil zum Messen von Position und Lage relativ zum festen Teil nutzt. Daher werden die Raum-Daten als absolute Daten geliefert (Lage des Empfängers relativ zum Sender). Nachteilig an diesen Geräten ist die Tatsache, daß die Felder sich oft sehr leicht stören lassen und daß die ermüdungsfreie Arbeit mit diesen Geräten oft nicht möglich ist, da der frei bewegliche Teil im Raum gehalten werden muß. Produkte dieser Klasse sind der 3Space Isotrack, der 3Space Tracker, der Flock of Birds und die Logitech 3D Mouse.

    Eine weitere Gruppe von 3D-Eingabegeräten sind stationäre Geräte mit einer beweglichen Kappe oder Kugel. Diese läßt sich gegenüber einer Null-Lage, die das Gerät bei Nichtbenutzung automatisch einnimmt, um einen kleinen Betrag auslenken oder verkippen. Die Daten der sechs Freiheitsgrade werden aus der Stärke und Richtung der Auslenkung berechnet und relativ, also als Bewegungs- beziehungsweise Rotationsgeschwindigkeit, geliefert. Mehrere Tasten machen das Auslösen von bestimmten Aktionen möglich. Durch den stationären Aufbau ist eine ermüdungsfreie Arbeit mit diesen Geräten möglich. Produkte dieser Gruppe sind, der SPACEBALL 2003, der Geoball und die von der DLR entwickelte Space Mouse , für die im Rahmen dieser Arbeit Gerätetreiber implementiert wurden.

    Bei Anwendungen der Virtuellen Realität besonders weit verbreitet ist die Gruppe der Daten-Handschuhe (Dataglove). Geliefert werden Krümmungen der einzelnen Handgelenke, so daß das Greifen von Objekten im Raum möglich ist. Lage und Position der Hand wird oft mit einem System aus der ersten Gruppe der Geräte (Sender/Empfänger Prinzip) ermittelt. Produkte sind der VPL DataGlove, der Dexterous Hand Master, der CyberGlove und der PowerGlove.[FK94]

    DLR Space Mouse 

       
    Figure 1: DLR Space Mouse

    Die Space Mouse (siehe Abb. 1) ist ein von der DLR entwickeltes, preiswertes 3D-Eingabegerät. Es handelt sich um ein stationäres Tischgerät mit einer beweglichen flachen Kappe für die 3D-Eingaben und 9 Tasten zum Auslösen von beliebigen Aktionen oder Umschalten der verschiedenen Betriebsmodi.

    Die ersten Vorläufer der Space Mouse waren die Anfang der 80-iger Jahre entwickelten Steuerkugelsysteme auf Basis eines 6-Komponenten-Kraft-Momenten-Sensors. Diese Systeme waren allerdings sehr teuer und fanden daher nur eine geringe Verbreitung. 1986 wurde von der DLR-Entwickler-Gruppe ein neuer, wesentlich billiger herzustellender, optischer Sensor entwickelt, der die Basis für den Geometry Ball war. 1992 entstand dann, nach nochmaliger starker Senkung der Produktionskosten und Verbesserung der Ergonomie, die Space Mouse.[HGW95]

     

      
    Figure: Patentiertes optoelektronisches Meßsystem

    Das Herzstück der Space Mouse ist ein hochauflösendes, berührungslos arbeitendes, opto-elektronisches Meßsystem (Abbildung 2). Die gesammte Elektronik ist auf einer SMD-Platine untergebracht, deren geringer Stromverbrauch über die serielle Schnittstelle gedeckt wird.

    Die Space Mouse ist in der Lage, sich als 2D- oder 3D-Gerät zu verhalten. Im 2D-Modus verhält sich das Gerät wie eine Logitech Mouse und kommuniziert mit 1200 Baud im Logitech M+ Protokoll mit dem Computer. Dabei werden die 9 Tasten der Space Mouse zu 3 Gruppen von je 3 Tasten zusammengefaßt, wobei jede Gruppe dann eine herkömmliche Maustaste darstellt. Um die Daten für die X- und Y-Richtung zu liefern, werden mehrere Achsen miteinander kombiniert. So kann man die Y-Koordinate durch eine Vor-/Rückbewegung (Z-Achse im 3D-Modus) oder durch eine Auf-/Ab-Bewegung (Y-Achse im 3D-Modus) der beweglichen Kappe steuern.

    Im 3D-Modus kommuniziert sie mit 9600 Baud, 8-Bit ohne Parität mit 2 Stopp-Bits auf der seriellen Schnittstelle. Dabei werden Kommandos und Daten, mit sogenannten Nibbles kodiert, zeilenweise übertragen.

    Ein Nibble ist ein 4-Bit Wert, der in einem Byte so kodiert ist, daß eine gerade Parität entsteht und das entstehende Byte ein lesbares ASCII-Zeichen darstellt. Tabelle 1 zeigt die Kodierung.
     

    4-Bit NibbleZeichenHexadezimal
    0 0 0x30
    1 A 0x41
    2 B 0x42
    3 3 0x33
    4 D 0x44
    5 5 0x35
    6 6 0x36
    7 G 0x47
    8 H 0x48
    9 9 0x49
    A : 0x3A
    B K 0x4B
    C < 0x3C
    D M 0x4D
    E N 0x4E
    F ? 0x3F

    Table 1: Nibble / Byte Kodierung

    Der bidirektionale Informationsaustausch mit dem Computer erfolgt zeilenorientiert. Jedes Daten-Paket (Zeile) beginnt mit einem Kennbyte, welches den Typ und die Länge des jeweiligen Daten-Paketes bestimmt. Jedes Daten-Paket wird mit mit einem Carriage Return '\r' abgeschlossen. Ein Daten-Paket, welches die Auslenkungen der einzelnen Achsen enthält, hat die Form:

    1. kleines 'd' als Kennbyte am Zeilen- (Paket-) Anfang.
    2. 6 4-Byte-Gruppen mit den Auslenkungs-Daten, als Nibbles kodiert (4-Bit je Nibble *4 = 16-Bit je Achse)
    3. das abschließende '\r'
    [Spa]

    In der genaueren Spezifikation der Aufgabenstellung für diese Arbeit, im Rahmen des VISA-Projektes der GMD, ist eine der zentralen Forderungen an den Gerätetreiber für die Space Mouse, daß mit Hilfe des Treibers zwischen einem 3D-Modus und einem 2D-Modus, in dem das Gerät als normale Maus arbeitet, umgeschaltet werden kann. Aus Gründen, die in Abschnitt 5.3.2 erklärt werden, wird für den 2D-Modus des Gerätetreibers auch der 3D-Modus der Space Mouse benutzt.