RobotIGS - Einblicke in die autonome Phase [Video]

von Jonas Hildebrandt

Die RobotIGS geben einen Einblick in die autonome Phase des aktuellen Roboters.

Leider wurden in Folge der Corona-Pandemie in diesem Jahr viele Wettbewerbe abgesagt. Wir vermissen dabei insbesondere den Austausch mit den anderen Teams. Durch das folgende Video und mithilfe der dazugehörigen Erläuterung könnt ihr exklusive Eindrücke bezüglich der Fähigkeiten unseres aktuellen Roboters gewinnen. Viel Spaß!

 

 

Unser Roboter erreicht aktuell voll autonom 36 der 46 möglichen Punkte. Die ersten 10 Punkte erreichen wir, indem wir zum Karussell fahren und die Scheibe so lange drehen, bis die Ente herunterfällt. Während der Roboter zum Karussell fährt, erkennt er eigenständig auf welchem der drei Punkte die Ente liegt und merkt sich die Position. Nachdem wir die Scheibe des Karussells gedreht haben, fahren wir zum „Shipping Hub“. Auf diesem legen wir einen gelben Würfel ab, wodurch weitere 6 Punkte erlangt werden. Dadurch, dass wir den Würfel auf der Etage ablegen, welche von der Ente auf dem Spielfeld angezeigt wurde, bekommen wir weitere 10 Bonuspunkte.

Sobald unser „Team Shipping Element“ fertig ist, werden wir dieses anstelle der Ente benutzen, um die richtige Etage zu erkennen. Dadurch können wir statt den 10 sogar 20 Bonuspunkte und damit die volle Punktzahl erreichen.

Die letzte Aufgabe in unserer autonomen Phase ist es, im „Warehouse“ zu parken, wodurch wir 10 weitere Punkte bekommen. Wenn der Roboter sein Programm beendet hat, hat er je nach Etage, auf welcher er den Würfel platzieren musste, noch 4 bis 5 der verfügbaren 30 Sekunden übrig. Da wir in der Lage sind die volle Punktzahl in der autonomen Phase zu machen, haben wir ein wichtiges Ziel für die Softwarentwicklung in dieser Saison erreicht.

Durch die Gewichtsverteilung des Roboters, welche unter anderem aufgrund des Arms asymmetrisch ist, dreht sich der Roboter beim Seitwärtsfahren (Insbesondere, wenn der Arm hochgefahren ist). Zum Lösen dieses Problems haben wir bereits letztes Jahr Code geschrieben, welcher basierend auf den Werten eines Gyrocompass versucht, dieses ungewollte Verhalten auszugleichen. Dies ist allerdings nicht kompatibel mit der Art wie wir die meisten Strecken fahren. Um sicherzugehen, dass der Roboter da steht, wo er stehen soll, fahren wir nach Strecke. Dazu rechnen wir aus wie viele Umdrehungen die Motoren machen müssen, damit der Roboter die entsprechende Strecke fährt. Beim Seitwärts fahren ist dies aber im Gegenteil zum Vorwärtsfahren sehr ungenau. Dadurch müssen wir versuchen den Roboter nicht seitwärts zu bewegen, wodurch wir uns einmal drehen müssen, um den Stein ablegen zu können.

Zum Drehen verwenden wir den im Roboter eingebauten Gyrocompass zusammen mit einem P-Regler, der ist zwar nicht so effizient wie andere Regler ist, aber bei einer eingestellten Genauigkeit von 4° schnell genug und deutlich einfacher zu implementieren ist als andere Regler. Da das Drehen recht lange dauert, fahren wir danach rückwärts an die Wand und fahren dann Seitwärts weiter, was aber nur funktioniert, da wir genau genommen schräg gegen die Wand fahren, wodurch sich der Roboter gerade hält.

Ein Problem, welches zunächst auftrat, war das Erkennen der Ente auf dem Spielfeld, da unsere Entfernungssensoren auf der Entfernung häufig den Boden mit einem Objekt verwechselt haben. Um das Problem zu lösen, prüfen wir wie häufig ein Objekt in einem bestimmten Bereich zu sehen ist. Wenn er mehr als Fünf mal ein Objekt sieht ist es nicht der Boden. Für die Zukunft ist der Plan eine Kamera zu benutzen, welche dann Objekte erkennen kann. Damit könnten wir uns zu jedem Zeitpunkt auf dem Spielfeld orientieren und würde nicht mehr nach festen Werten fahren.

Theodor Groh, Jahrgang 11

 

Zurück