21.12.2012 Aufrufe

artecLab - Universität Bremen

artecLab - Universität Bremen

artecLab - Universität Bremen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3. Sensorik und Aktorik 56<br />

Die zweifarbigen LEDs werden über das Relais<br />

geschaltet, im deaktivierten Zustand fließt der<br />

Strom durch die rote LED. Wird nun das Relais<br />

mittels der zweiten Kontaktfläche und somit<br />

des Transistors (und Widerstand) durch Kontakt<br />

mit einer der beiden für die Relaisaktivierung verantwortlichen<br />

Federn aktiviert, fließt der Strom<br />

durch die grüne LED. Der Nutzer bekommt ein<br />

Feedback, ob und welches Feld geschaltet ist.<br />

Außerdem hört man das Umschalten des Relais<br />

durch einen kurzen Klick.<br />

Der Einsatz des Tastaturkontrollers war die einfachste<br />

Schnittstellenlösung, die 18 Informationsangaben<br />

der neun Felder (neun Mal geschaltet<br />

oder nicht geschaltet) direkt nutzbar machte. Die<br />

Aufteilung der Matte wurde vom PC analog zum<br />

Nummernfeld der Tastatur interpretiert, sodass<br />

als Eingabealphabet die Zahlen 1 bis 9 zur Verfügung<br />

standen. Tastatureingaben sind für Unreal<br />

eine Selbstverständlichkeit, und über die User.ini<br />

wurden die Bewegungen den entsprechenden Tasten<br />

zugeteilt.<br />

NumPad1=MoveForward | MoveSouthWest<br />

NumPad2=MoveForward | MoveSouth<br />

NumPad3=MoveForward | MoveSouthEast<br />

NumPad4=MoveForward | MoveWest<br />

NumPad5=Walking<br />

NumPad6=MoveForward | MoveEast<br />

NumPad7=MoveForward | MoveNorthWest<br />

NumPad8=MoveForward | MoveNorth<br />

NumPad9=MoveForward | MoveNorthEast<br />

MoveNorth,-West,-South,-East sind Funktionen<br />

aus dem CamController.uc Script, welches wiederum<br />

folgendes definiert:<br />

exec function MoveNorth() {<br />

MoveVector = north;<br />

}<br />

exec function MoveNorthEast() {<br />

MoveVector = northeast;<br />

}<br />

exec function MoveEast() {<br />

MoveVector = east;<br />

}<br />

[...]<br />

Diese Vektoren (die zuvor ebenfalls in diesem<br />

Script als Konstante definiert wurden, so zum<br />

Beispiel (1,0,0) für ’north’) legen die Bewegungsrichtung<br />

fest. MoveForward bewegt den Spieler<br />

dann in diese in MoveVector festgelegte Richtung.<br />

3.1.4 Entwicklung und Verbesserung des<br />

Eingabegeräts<br />

In einer ersten Bauversion wurden, anstelle der<br />

Federn, mit Alufolie umwickelte Styroporplättchen<br />

verwendet. Bei Belastungstests ergab sich,<br />

dass die Elastizität der Plättchen unzureichend<br />

war. So wurde der Kontakt bei Belastung der

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!