Datei:RoboSoccer Gruppe A1.png
Originaldatei (900 × 1.600 Pixel, Dateigröße: 484 KB, MIME-Typ: image/png)
Autoren: Mohamed Soliman und Richard Stanislawiski und Noah Greis
Einleitung
Im Informatik-Praktikum war es unsere Aufgabe einen funktionierenden Roboter mithilfe von LEGO Mindstorms zu konstruiren und mit Bricxcc zu programmieren. Dieser Roboter soll dann an einem Robo-Soccer Tunier (Spielregeln) an der Hochschule Hamm-Lippstadt in Lippstadt teilnehmen.
Bauteile
Unterkonstruktion
- Der Roboter besteht aus 2 Motoen. Die Motoren können die Rotationen auf einen Grad genau bestimmen. Dabei ist die maximale Umdrehungen 160 Umdrehungen/ Minuten und das maximale Drehmoment ca. 0,2 Nm.
- Das dritte Rad ist passend geeignet , wodurch sich Bobby sehr gut drehen kann.
NXT-Brick
- Der NXT- Brick ist das "Gehirn" von Dem Roboter . Bei ihm werden alle Sensoren und Motoren angeschlossen.
Infarot Sensor:
- Der Infrarotsensor (IRSEEKERV2 )besitzt 5 Detektoren, die in einem Radius von 240 Grad, Infrarotsignale erfassen können. Diese 5 Detektoren lassen sich in 9 Sektoren unterteilen um eine genaue Richtung des Infrarotsignales zu bestimmen. Basierend auf dem pyroelektrischen Prinzip, lässt sich sogar die Intensität der Infrarotstrahlen in den Detektoren bestimmen. Dadurch kann ein Abstand des Infrarotball`s ermittelt werden.
Kompass:
- Der Sensor führt 100 Messungen pro Sekunde durch und übermittelt eine Zahl zwischen 0 und 359, die den Winkel zum Nordpol ausdrückt. Der Sensor verfügt über zwei Modi:
- Im Lesemodus übermittelt der Sensor jedes Mal einen Wert, wenn er vom intelligenten Lego Mindstorms NXT-Stein einen Lesebefehl erhält.
- Im Kalibriermodus kann der Sensor so eingestellt werden, dass er störende Magnetfelderdes Roboter-Elektromotors, der Batterien usw. neutralisiert.
- Die Werte können als relative oder absolute Werte angezeigt werden. Das erleichtert die Programmierung, wenn der Roboter einer bestimmten Richtung folgen soll.
Hauptprogramm
Das Hauptprogramm ist im wesentlichen eine Endlosschleife, die aus "Ballsuche", "Packen", "Ausrichtung" und "Schuss" besteht. Davor lesen wir kurz die Infrarot stärke und die Richtung des Tores ein.
Ansteuerung der Aktoren
Als Aktuatoren haben wir nur die Motoren von NXT. Die nachfolgenden Befehle, beziehen sich auf die Möglichkeiten der Ansteuerung der Motoren
- OnFwd() oder OnRev()
- RotateMotor()
- OnFwdReg() oder OnRevReg()
- OnFwdSync() oder OnRevSync()
- Off() oder Float()
- Motor fährt geradeaus mit einer angegeben Geschwindigkeit
- OnFwd(Ausgang_Motor, Leistung);
- Motor fährt rückwärts mit einer angegeben Geschwindigkeit
- OnRev(Ausgang_Motor, Leistung);
- Motor rotiert mit einer angegeben Geschwindigkeit bis zu dem angegebenen Winkel
- RotateMotor(Ausgang_Motor, Leistung, Winkel);
- Regulierungsmodus, zum synchronen Motorenlauf in Fahrtrichtung Vorwärts
- OnFwdReg(Ausgang_Motor, Leistung, REGMODE);
- Regulierungsmodus, zum synchronen Motorenlauf in Fahrtrichtung Rückwärts
- OnRevReg(Ausgang_Motor, Leistung, REGMODE);
- Automatisches fahren einer Kurve durch Angaben eines Radius in Fahrtrichtung Vorwärts
- OnFwdSync(Ausgang_Motor, Leistung, Radius);
- Automatisches fahren einer Kurve durch Angaben eines Radius in Fahrtrichtung Rückwärts
- OnRevSync(Ausgang_Motor, Leistung, Radius);
- Motor bremst sofort ab
- Off(Ausgang_Motor);
- Motor läuft aus
- Float (Ausgang_Motor);
- Begriffe:
- On = An; Fwd = Vorwärts; Rev = Rückwärts; Rotate = rotieren; Reg = Regulation; Off = Aus; Flout = gleiten
Ansteuerung der Sensor
- Tastsensor:
- Der Eingang X wird der Funktion des Sensors zugewiesen.
- SetSensorTouch(IN_X)
- Mit dieser Funktion, wird der Zustand (1/0) des Tastsensors ausgelesen.
- Sensor(IN_X)
- Kompasssensor:
- Mit diesem Befehl wird der Kompass mit dem Eingang X verbunden
- #define COMPASS IN_X
- Mit der Funktion wird der Kompass ausgelesen und gibt einen Wert zwischen 0 und 359 raus
- SensorHTCompass(IN_2)
- Infarotsensor:
- Mit diesem Befehl wir der Inferotsensor mit dem Eingang X verbunden
- #define IRSEEKER IN_X
- Mit der Funktion wird der Inferotsensor ausgelesen
- ReadSensorHTIRSeeker2AC(IRSEEKER, dir, s1, s2, s3, s4, s5);
Link zum Video
Um unseren Booby in Action zu sehen und um uns kurz vorzustellen klicke auf den / Link
Dateiversionen
Klicke auf einen Zeitpunkt, um diese Version zu laden.
Version vom | Vorschaubild | Maße | Benutzer | Kommentar | |
---|---|---|---|---|---|
aktuell | 16:37, 3. Feb. 2019 | 900 × 1.600 (484 KB) | Mohamed Soliman (Diskussion | Beiträge) |
Du kannst diese Datei nicht überschreiben.
Dateiverwendung
Keine Seiten verwenden diese Datei.