pdf (5294 kb) - artecLab - Universität Bremen
pdf (5294 kb) - artecLab - Universität Bremen
pdf (5294 kb) - artecLab - Universität Bremen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Implementierung 45<br />
Um mehr als nur einen Pin zu aktivieren, ist eine Kombination der Dezimalwerte<br />
erforderlich. Sollen beispielsweise Pin 3, 5 und 7 aktiviert werden, müssen die<br />
Dezimalwerte 2, 8 und 32 addiert werden. Das Ergebnis 42 wird dann an den<br />
Port mittels "out32(888,42)" gesendet, und die Ports aktiviert.<br />
Für die Rückwandlung des Wertes, den man über "Inp32(888)" erhält, bedarf<br />
es eines Algorithmus. Vom höchsten Dezimalwert (128) abwärts wird geprüft,<br />
ob der Portwert kleiner oder größer ist. Sollte der Portwert kleiner sein, ist der<br />
entsprechende Port nicht aktiviert. Im Programm wird dieses über eine Boolsche<br />
Variable (m1-m8) gespeichert, indem sie auf "false" gesetzt wird. Ist der<br />
Portwert größer, so wird die entsprechende Variable auf "true" gesetzt und der<br />
Portwert um den Dezimalwert gekürzt. Das geschieht, bis alle acht Dezimalwerte<br />
verglichen worden sind und der Status aller Pins anhand der Variablen gespeichert<br />
ist (vgl. AeronDlg.cpp, Funktion motorSpeed).<br />
In Abbildung 3.18 werden die erforderlichen Werte für die Ansteuerung der Stufen<br />
der einzelnen Motoren (Abbildung 3.19) mit den entsprechenden Dezimalwerten<br />
aufgeführt. Die Werte für die Motorsteuerung erhält das Programm über die<br />
Nummernblöcke des GUIs für Motor 1 und 2 oder per UDP - Verbindung nach<br />
Druck auf ” Verbinde“, was zu einer Kommunikation mit der VR-Anwendung<br />
führt. Dazu muss noch die Adresse des Hosts, sowie der Port für die UDP - Kommunikation<br />
angegeben werden. Ist die Verbindung erfolgreich hergestellt worden,<br />
wird ein UDP-Paket mit dem Präfix AERON und dem aus dem Namen der Seite<br />
bestehenden Suffix gesendet 23<br />
Abbildung 3.18: Zustände<br />
Neun Geschwindigkeitsstufen<br />
23 AERONSeitenname, beispielsweise AERONNorth<br />
Abbildung 3.19: Motor<br />
mit Propeller