Multimedia

Verwendung der Wii Remote am PC

Die Wii Remote

Nintendos Konsole "Wii" hat gerade durch das innovative Steuerungskonzept Eindruck gemacht und da wird es einige alteingesessene PC-Benutzer freuen, dass eben dieses auch am heimischen Rechner funktioniert.

Aufsehen erregt hat v.a. der Student Johnny Chung Lee mit seinen WiiMote Projects letztes Jahr.
So lassen sich mit diesem vergleichsweise günstigen Eingabegerät Anwendungen nachbilden, für die manch Einer mehrere hundert  Euro zahlt.

Die WiiMote kann nicht nur über eine Bluetooth-Verbindung mit einem anderen Gerät kommunizieren, sie enthält außerdem gyroskopische Sensoren, die eine Lageänderung der Fernbedienung feststellen können, sowie eine Infrarot-Kamera mit einer Auflösung von 128x96, die mit 100Hz (intern sogar 200hz) ausgelesen wird und bis zu vier Infrarotquellen gleichzeitig verfolgen kann. Diese geringe Aufösung wird in ein 1024x768 Pixel messendes x/y-Koordinatensystem interpoliert. 
Die Öffnungswinkel der Kamera betragen horizontal 41° und vertikal 31°.
 

Als Einstieg in die vielfältigen Möglichkeiten die Wii Remote zu missbrauchen, kann man die Fernbedienung zunächst einmal als Mauszeiger am PC benutzen. Hierfür sind noch keine Löt- oder Programmierkenntnisse nötig und die ganze Prozedur ist in wenigen Minuten erledigt.
Um allerdings eine zuverlässige Positionsbestimmung per Infrarot zu gewähren, ist man auf eine oder mehrere feste Infrarotquellen in der Nähe des Bildschirms angewiesen. Bei der Wii Konsole geschieht dies mit der Wii SensorBar, die lediglich einige Infrarot-Dioden, eingebaut in einen Leiste für unter den Fernseher, enthält.
Da deren Stecker und Stromversorgung allerdings für die Spielekonsole ausgelegt ist, muss man entweder auf eine im Internet erhältliche "Wireless"-Variante zurückgreifen, oder sich eine eigene SensorBar mit USB-Anschluss oder Stromversorgung über Batterien bauen. Der Selbstbau erfordert zwangsweise geringe Schaltungs- und Lötkenntnisse, Anleitungen dazu gibt es online aber zahlreiche, u.a. meine oben und rehcts im Menü verlinkte.

Neben Johnnys Seite sind weitere gute Anlaufpunkte für WiiMote-Projekte natürlich diverse Videos auf YouTube sowie z.B. folgende Seiten:
http://www.wiimoteproject.com/  (Ein Forum rund um Johnny Lees Projekte)
http://www.wiili.org/  (Wiki und diverse Software und Portierungen für Linux)

Eigene USB-SensorBar für die Wii Remote

Die fertige USB-SensorBar

Sich seine eigene Sensorleiste für die WiiMote zu bauen ist eigentlich recht einfach.
Ich habe mich für die Stromversorgung per USB entschieden (5V, max. 100mA) um nicht auf Batterien angewiesen zu sein und die Leiste überall wo ein Computer ist verwenden zu können.

Die verwendeten BauteileBenötigt werden folgende Teile:
- Eine Platine zum Auflöten der Bauelemente
- Infrarot-Dioden (hier acht Stück vom Typ L-934F3BT)
- Widerstände, Berechnung siehe unten
- einen USB-Stecker und die Haube dazu
- evtl. Schrumpfschläuche
- beliebige isolierte Kabel
- Ein Gehäuse, also die eigentliche "Leiste"
Außerdem natürlich die Ausrüstung zum Löten der Bauteile und evtl. ein Multimeter zur Überprüfung der berechneten Spannungen und Ströme.

Der SchaltungsplanZunächst muss man sich an Hand der ausgesuchten Dioden den Schaltkreis überlegen. Wählt man IR-Dioden mit 100mA Betriebsstrom, sollte man alle in Reihe schalten, da man nicht ohne weiteres mehr als 100mA vom USB-port ziehen darf. Da ich mich für 50mA Dioden entschieden habe, schalte ich sie wie auf dem Bild zu sehen in zwei paralelle Zweige.
Da Jede Diode mit 1.2V versorgt werden will und ich auf jedem Zweig 5V anliegen habe, verwende ich vier Dioden pro Zweig und somit 4.8V. Um sie nicht höher zu belasten und auch als Überspannungsschutz, schalte ich jeweils eingangsseitig 4Ohm Widerstand vor die Dioden, der nach dem Ohmschen Gesetz die verbleibenden 0.2V=50mA*4Ohm übernimmt. Alternativ kann man auch einfach 2Ohm in die gesamte Zuleitung löten (vor der Verzweigung), da: 2Ohm=0.2V/100mA
Anordnung der BauelementeMangels 4Ohm-Widerständen, habe ich acht einohmige verwendet und sie jeweils abwechselnd mit einer Diode angeordnet, wie auf dem Bild zu sehen. Als Diodenabstand is ca. Fingerbreite vielleicht ganz sinnvoll. Man kann auch die äußeren Dioden etwas nach außen biegen, damit man mit der WiiMote auch bei größeren Winkeln seitlich zum Bildschirm arbeiten kann.

Die Bauelemente sind aufgelötetNun verlötet man die Bauelemente wie auf dem Schaltplan, bzw. wie berechnet, möglichst platzsparend auf zwei Platinenstreifen. Das Ergebnis ist im Bild links zu sehen.
Für die elektrische Verbindung der beiden Diodenreihen und die Stromleitung zum USB-Stecker habe ich einen Rest Lautsprecherkabel verwendet und möglichst flach an die Rückseiten der Platinen angelötet. Eine der fertigen PlatinenMan muss eingangsseitig an beide Platinen mit dem 5Volt-Kabel (1. Pin des USB-Steckers) heran und nach den Diodenreihen mit einem Stück Kabel auf Masse zurück (4. Pin beim USB-Stecker). Mann kann auch etwas Schrupfschlauch zum Zusammenfassen der Kabel und Abdeckung der Kontakte nehmen. Bevor man sich Gedanken um ein Gehäuse dafür macht, sollte man die Dioden nun testen. Am USB-Port angeschlossen kann man z.B. mit einem Multimeter die Spannungen messen. Wie gut sie leuchten kann man mit dem Sucher einer beliebigen Digitalkamera überprüfen, da diese im Gegensatz zu unseren Augen, das abgestrahlte Licht erkennen kann. Die Dioden sollten hell leuchten, ohne sich mit der Zeit nennenswert zu erwärmen! (Sollten sie heiß werden, bekommen sie wohl zu viel Spannung ab und man sollte die Schaltung nochmal überprüfen)

Die Dioden in den Löchern platzierenAls Gehäuse für die Leiste habe ich ein ca. 50cm langes, quadratisches Aluprofil verwendet mit 1cm Kantenlänge. Mit einem 4mm-Bohrer habe ich dann an beiden Enden Löcher für die Dioden gebohrt. Bevor man die Platinen ins Gehäuse schiebt, sollte man noch die Lötstellen auf ihrer Rückseite etwas isolieren um mit dem Aluminium keinen Kurzschluss zu verursachen.
Jetzt einfach die Platinen etwas schräg ins Gehäuse schieben und an der richtigen Stelle dann kippen und die Dioden in den Löchern platzieren. Eventuell noch etwas (z.B. ein dünnes Holzstück) zur besseren Befestigung hinter die Platinen schieben und das Ganze mit (Heiß-)Kleber fixieren.

Die fertige USB-SensorBarFertig ist die selbstgebaute USB-Sensorbar!
Am besten unter dem Monitor (oder wie hier: Fernseher) platziert und ohne Gegenstände zwischen den Dioden und der WiiMote, steht einem ersten Test nichts mehr im Wege.
Noch ein Hinweis zur Größe der Leiste:
Der Abstand der beiden Diodengruppen sollte nach der Aktionsentfernung zur WiiMote gewählt werden. Ein zu kleiner Abstand führt zu Problemen bei größeren Entfernungen, ein zu großer dagegen zu Erkennungsproblemen im Nachbereich, da der Öffnungswinkel der WiiMote-Infrarotkamera ca. 40° horizontal bzw. 30° vertikal beträgt. Deshalb von mir die Empfehlung, die Breite des verwendeten Bildschirms als maximale Länge der Leiste zu verwenden.

Viel Spaß beim Basteln und Verwenden der Leiste!
Alle hier beschriebenen Schritte sind natürlich ohne Gewähr und auf eigene Gefahr hin durchzuführen. Ein wenig Bastel- und Löterfahrung sind auch druchaus von Nöten und v.a. Vorsicht im Umgang mit den, wenn auch geringen, Spannungen und Strömen!

 

WiiMote als Computer-Maus

Die Wii Remote

Nintendos Wii Remote, das als Fernbedienung und Controller funktionierende Eingabegerät der Wii Spielekonsole, lässt sich auch ganz ohne eine Wii am PC als Eingabegerät verwenden. Hierzu ist lediglich eine Bluetooth-Verbindung (z.B. über einen BT-USB-Adapter) und eine entsprechende Software nötig.

Inhalt abgleichen