Haptische Spacemouse

Haptische Spacemouse

Haptik – taktiler Sinn / Kinästhetik

     

     

  • Die Dinge zu begreifen bedeutet auch anfassen, berühren bzw. haptische Interaktion.
  • Dies geschieht durch Manipulation und „Force Feedback“.
  • Der Informationsfluß ist dabei nur 20-30 bit/s, dafür benötigt man aber eine Bandbreite von bis zu 10 kHz (starre Körper).
  • Dabei findet eine Kraftübertragung lokal über Körperkontakt statt.

Haptisches Interface

     

     

  • Dieses ist Ein- und Ausgabegerät zugleich.
  • Deshalb besteht es aus Sensoren, Aktoren und einer Steuerung.

Sensoren

Spacemouse

     

     

  • Die Spacemouse ist ein Kraftmessgerät mit 6 Freiheitsgraden.
  •  

  • Sie besitzt eine geringe Auslenkung von ca. 1.6 mm.
  •  

  • Dabei ist diese proportional zur aufgebrachten Kraft.
  •  

  • Das Koordinatensystem der Space-Mouse ist absolut.

 

 

Idee

     

     

  • Gegenkraft zur Auslenkungskraft der Spacemouse aufbringen d.h. die Auslenkung verhindern bzw. einschränken
  •  

  • Dadurch soll auch die Simulation von starren Wänden ermöglicht werden.
  •  

  • Zur Steuerung closed-loop-Steuerung durch auslesen der Spacemouse-Daten direkt auf Atmel.

Aktoren

Hubmagneten

     

     

  • Eine Spule erzeugt ein Magnetfeld welches auf den in ihr befindlichen Anker eine Kraft ausübt.
  •  

  • Diese fällt exponentiell mit der Auslenkung.
  •  

  • In unserem benötigten Hubbereich von 1,5 mm beträgt sie ungefähr 3N.
  •  

     

Voice-Coil-Motoren / Tauchspulenaktuatoren

     

     

  • Voice-Coil-Motoren haben ein nahezu lineares Verhalten im gesamten Hubbereich.
  •  

  • Dieser kann bis zu 20 mm betragen.
  •  

  • Ein weiterer Vorteil sind die weichen Endanschläge.
  •  

  • Großer Nachteil ist jedoch der hohe Preis von ca 400 €.

Aufbau/Kommunikationswege

     

     

  • Die Haptische Spacemouse besitzt eine Closed-Loop Steuerung d.h. die Dekodierung der Spacemouse-Daten findet direkt auf dem Atmel statt.
  •  

  • Die Spacemouse liefert Daten mit 50Hz und schränkt damit die Force-Feedback Bandbreite ein.
  •  

     

 

 

serielle Schnittstellen

UART – Universal Asynchronous Receiver Transmitter

     

     

  • Es ermöglicht eine Datenübertragung über 2 Kabel in beide Richtungen mit fester Taktrate. (z.B. die serielle Schnittstelle am PC)

MAX3110E – UART mit SPI Schnittstelle

     

     

  • Das SPI besteht aus 4 Kabeln und ermöglicht eine synchrone Master / Slave Datenübertragung.
  •  

  • SS: SlaveSelect - signalisiert Übertragungsbeginn und -ende
  •  

  • SCK: SourceClock – Taktrate zur Synchronisation der Übertragung
  •  

  • MOSI: MasterOutSlaveIn - zur Datenübertragung
  •  

  • MISO: MasterInSlaveOut - zur Datenübertragung

Anwendung

     

     

  • Eine erste Möglichkeit wäre das spürbarmachen von Objektkollisionen in 3D-Umgebungen.
  •  

  • Ein weiteres Anwendungsgebiet ist der Haptische Desktop. Beim Bewegen der Maus über eine Fenstergrenze ist z.B. ein Widerstand spürbar.
  •  

  • Unsere Demo-Anwendung:
  •  

  • In einem umzäunten Bereich kann eine kleine Box umher geschoben werden.
  •  

  • Wenn die Box die Wand berührt, wird über die serielle Schnittstelle eine Nachricht an die Haptische Spacemouse geschickt.
  •  

  • Daraufhin bringen die Hubmagneten eine Gegenkraft auf und die Closed-Loop tritt in Kraft um nachzuregeln.
  •  

  • Für die Physiksimulation verwenden wir ODE eine Physik Engine für Dynamic/Collision Detection.
  •  

  • Zur Darstellung benutzen wir die drawstuff Bibliothek die bei ODE mitgeliefert ist. (ein openGL wrapper)
  •  

     

Ergebnisse / Ausblick

     

     

  • Die Hubmagneten zeigten im genutzten Bereich kein spürbares exponentielles Verhalten.
  •  

  • Kollisionen mit virtuellen Objekten erzeugen ein haptisches Feedback.
  •  

  • Um die Closed-Loop Bandbreite zu erhöhen könnte man eine Spacemouse mit höherer Datenrate verwenden.
  •  

  • Weiterhin könnte man das Gerät um eine dritte Translationsachse erweitern, müsste dafür aber den mechanischen Aufbau überdenken.
  •  

  • Um die Größe zu reduzieren könnte man ausserdem Voice-Coil-Motoren benutzen.