In diesem Praktikum sollte ein Roboterakrobat entworfen und gebaut werden.
Der Roboter sollte mit Hilfe einer Wippe in die Luft geworfen werden. In der Luft sollte er einen Salto durchführen und anschließend in einem Auffangnetz landen.
Dieses Praktikum baute auf ein bereits vollendetes Praktikum auf. Bereits vorhanden waren eine relativ schwere Holzwippe und ein unbeweglicher Roboter.
Dieser sollte eine bewegliche Hüfte bekommen, um bei angezogenen Beinen mit einem dadurch geringeren Trägheitsmoment eine schnellere Rotation zu erreichen.
Teilnehmer:
Bearbeitunsgzeitraum:
- Alette Aasvold, 6. Fachsemester Physik (Bachelor)
- Matthias Knapp, 10. Fachsemester Physik (Diplom)
Anfang Juni bis Ende Juli 2007
Das Programm wurde in C geschrieben. Es ist in verschiedene Sequenzen eingeteilt, die simultan zueinander ablaufen.
Das eigentliche Hauptprogramm besteht aus einer Endlosschleife um den Roboter jederzeit einsatzbereit zu haben ohne ihn an den Computer anschließen zu müssen.
Die Endlosschleife gliedert sich in folgenden Ablauf:
- Warten auf Schaltersignal
- Wartezeit bis Roboter Wippe verlassen hat
- Ansteuerung des Servomotors (Endposition)
- Wartezeit bis zum Ende der Flugphase
- Ansteuerung des Servomotors (Anfangsposition)
- Warten auf neues Schaltersignal
Das Schaltersignal ist auf die abfallende Flanke gesteuert, so dass das Programm beginnt, wenn der gedrückte Schalter losgelassen wird.
Für die Wartezeit läuft von der Hardware gesteuert im Hintergrund ein Zähler sägezahnförmig, d.h. der Zähler zählt so lange bis ein vorgegebener Wert erreicht ist und fängt dann erneut an.
Die Steigung des Sägezahns wurde mittels Prescaler festgelegt und der Maximalwert durch ein Vergleichsregister.
Durch geschickte Festlegung dieser Werte konnte eine Frequenz der Zählung erreicht werden mit Hilfe der der Wartezeitpunkt festgelegt wurde.
Das Programm wartet so lange bis ein bestimmter Wert einer definierten Zählvariablen erreicht wurde.
Die Ansteuerung des Servomotors erfolgt mittels Puls-Weiten-Modulation.
Hier zählt die Hardware in einer Dreiecksform. Mit Hilfe eines Vergleichsregisters kann die Dauer der Ansteuerung festgelegt werden.
Der Servomotor ist so lange aktiv, wie der Wert des Vergleichsregisters durch den Zähler unterschritten ist. Der Servomotor wandelt diese Ansteuerung intern in zu durchlaufende Gradzahlen um.
Der Aufbau der Wippe und des Auffangnetzes waren problemlos.
Der Aufbau des Roboters verlief in der Hinsicht schwierig, da eine geeignete Verbindung zwischen Beinen und Motor gefunden werden musste.
Wir verwendeten hierfür einen Gummi, der sowohl an der Stange als auch am Motor über eine Nut geführt wurde um ihm Stabilität zu verleihen.
Das Programm steuerte den Motor korrekt an, allerdings konnten wir nicht die von uns gewünschten Wartezeiten verwenden. Diese waren zu kurz. Der Motor hätte nicht die komplette Endposition angefahren. Hier gingen wir einen Kompromiss ein zwischen Wartezeit und Endposition.
Bei dem Flug mit unbeweglicher Hüfte konnte man sehr schön den parabelförmigen Flug erkennen. Anhand dieses Fluges haben wir unsere nötigen Parameter für die Simulation erhalten. Das Video dieses Fluges ist unter Downloads zu finden.
Der Flug mit beweglicher Hüfte gestaltete sich etwas schwieriger. Der Roboter vollzog den Salto in die falsche Richtung. Den Grund hierfür konnte man auf dem Video erkennen. Der Gummi war nicht stark genug um den Roboter beim Start in einer festen Position zu halten. Der Oberkörper knickte nach hinten ab. Somit bekam er einen Drehimpuls entgegen der eigentlichen Rotationsrichtung, welches dann zu einem Salto führte.
Auch dieses Video ist unter Downloads zu finden.
Verbesserungsmöglichkeiten dieses Versuchs sind:
- Besserer Energieübertrag (siehe Simulation)
- Starre Hüfte beim Absprung von der Wippe
Für die Simulation des Fluges werden zunächst Annahmen gemacht.
Die gesamte potentielle Energie geht über in Bewegungsenergie.
Die übertragene Energie beträgt: E = 50 J
Die hierbei verwendeten Variablen sind:
Durch das Stehen des Roboters auf der Wippe erhält er zu Beginn einen Geschwindigkeitsvektor, wie man aus nebenstehender Zeichnung erkennen kann.
- M: Masse des Buches
- m: Masse des Roboters
- h: Abwurfhöhe des Buches
Dieser Geschwindigkeitsvektor kann in seine Anteile zerlegt werden.
Mit der Anfangsgeschwindigkeit des Roboters kann seine Bewegungsgleichung in horizontaler und vertikaler Richtung aufgestellt werden.
Damit lässt sich die Translationsenergie berechnen:
Berechnung des Trägheitsmomentes: Zur korrekten Berechnung des Trägheitsmomentes I des Roboters haben wir alle einzelnen Trägheitsmomente der beinhalteten Teile addiert.
Das Gesamtträgheitsmoment ergab sich zu
Damit konnte die Rotationsenergie berechnet werden.
Vergleicht man dies mit der Gesamtenergie ergibt sich:
Aus der Rechnung folgt also, dass 9 % der Energie in Rotation übergehen. 18 % werden in Translationsenergie umgewandelt.
Wegen unserer leichten Wippe gehen nur weniger als 2 % der Energie in die Rotationsenergie der Wippe ein.
Die restliche Energie geht beim Aufprall des Buches auf die Wippe und dem Stoss der Wippe auf den Boden verloren.
Dies konnten wir aufgrund eines durchgeführten Experimentes erkennen. Hierbei wurde ein nicht rotierender Körper von der Wippe hochgeworfen.
Aus dem Verhältniss Masse zu Höhe des Fluges konnten wir schließen, dass nur ca. 1/5 der Energie übertragen wird.
Downloads
Videos vom Wurf
ACHTUNG: Die Videos wurden auf kleine Dateigröße optimiert und benötigen einen XviD MPEG-4 Video Decoder.
- Video des Wurfes mit unbeweglicher Hüfte [AVI, 641 kB]
- Video des Wurfes mit beweglicher Hüfte [AVI, 768 kB]
© 2007 by Alette Aasvold und Matthias Knapp