Hintergrund | Seit ich zum ersten Mal einen Deltaroboter in Aktion gesehen habe (es war dieser hier), war klar, dass ich mich früher oder später auch mal an einem solchen Aufbau versuchen muss. Im Prinzip ist die zugrundeliegende mechanische Struktur nicht kompliziert, sodass ich den Aufbau vor einigen Monaten mal als Nebenprojekt begonnen habe. Ich bin natürlich im Vergleich zum oben verlinkten Video an verschiedenen Stellen Kompromisse eingegangen, dafür war das Projekt dann aber relativ "straight forward" umzusetzen. Vor einigen Tagen nun hat mein deltaR - so habe ich ihn getauft - auch endlich die ersten Bewegungen gemacht. Um einen ersten einfachen Anwendungsfall zu haben, der einen anschaulichen Eindruck von der Genauigkeit des Roboters vermittelt, habe ich ihn als Plotter verwendet. Was die Präzision angeht ist, kann der Roboter zwar nicht ganz mit seinen deutlich aufwendiger konstruierten Artgenossen mithalten, im Prinzip funktioniert das System aber sehr gut. Im Folgenden beschreibe ich das Projekt etwas ausführlicher, allerdings werde ich den Artikel aus Zeitmangel nur nach und nach weiter ausbauen können.
Parallelkinematik | Roboterarme- und beine sind klassische Beispiele für Strukturen mit seriellen Kinematiken. Dabei sind mehrere Freiheitsgerade hintereinander geschaltet, um den Endpunkt dieser offenen Kette an verschiedene Positionen im Raum bewegen zu können. Die Freiheitsgrade einer solchen Struktur sind dabei in dem Sinne abhängig voneinander, dass ein Freiheitsgrad die Lage des ihm nachgeschalteten Freiheitsgrades beinflusst. Bei Parallelkinematiken wirken im Gegensatz dazu mehrere Antriebe parallel in einer geschlossenen Kette auf den Endpunkt der Struktur ein, Bewegungen in einem Freiheitsgrad wirken sich zwar auf die Lage des Endpunktes aber nicht auf die Lage der anderen Freiheitsgrade aus. Der bis heute wohl bekannteste Roboter mit einer Parallelkinematik ist der von seinem Erfinder Reymond Clavel so genannte "Delta Prallel Roboter". Clavel entwickelte ihn Anfang der 80er Jahre und führte sein Konzept 1991 in seiner Doktorarbeit "Conception d'un robot parallèle rapide à 4 degrés de liberté" ausführlich aus. Dadurch, dass bei diesem Roboter die üblicherweise schweren Aktuatoren statisch an der Basis sitzen, bleiben die Arme verhältnismäßig leicht und können sich dementsprechend schnell bewegen. Bei seriellen Kinematiken werden die Aktuatoren typischerweise mit bewegt (wobei es natürlich Ausnahmen gibt).
Aufbau | Im Folgenden einige Bilder vom Aufbau meines Deltaroboters. Als Materialien dienten im Wesentlichen Aluminium-Vierkantrohre und PVC Platten. Die Basis des Roboters hängt an drei Stützen, die zu den beweglichen Armen um 60° versetzt angeordent sind. Der Aufbau ist relativ hochbeinig, weil ich mir nicht ganz klar war und bin, was als Werkzeug an der Plattform angebracht werden soll. Tatsächlich sind die Stützen etwas zu dünn für die gewählten Dimensionen ausgefallen, woraus eine gewisse Schwingneigung resultiert. Der Roboter ist aber sehr modular konstruiert ist, es ist ohne größere Umstände möglich, die Stützen bei Zeiten mal durch stabiliere zu ersetzen.
Eine entscheidende Komponente bei einem Delta Roboter sind die Lager, mit denen die "Parallelogramm-Arme" mit der Plattform bzw. dem Arm der am Motor sitzt verbunden sind. Ich habe mich an dieser Stelle für Kugelgelenklager entschieden. Die Firma igus hat diese als Kunstoffkomponenten in großer Auswahl im Angebot. igus war so freundlich, mir die für meinen Aufbau benötigten Lager kostenlos zur Verfügung zu stellen. Nochmal vielen Dank dafür!
Zur Motorisierung habe ich auf einfache Modellbauservos zurückgegriffen. Um allerdings etwas mehr Drehmoment zur Verfügung zu haben, benutze ich eine XL-Varainte. Somit ist es ohne viel Aufwand möglich, die Arme auf bestimmte Drehwinkel einzustellen. Der Servo erhält ein PWM-Signal dessen Pulsweite den Drehwinkel vorgibt. Die Reglungselektronik im Servo kümmert sich dann darum, dass dieser Winkel eingestellt und unter Last gehalten wird - naja, so einigermaßen... Man darf dabei nämlich nicht zu viel erwarten, die Lageregelung ist nicht sehr präzise.
Steuerung | Die Hardware der Steuerung ist noch imporivisiert. Die Grundidee dabei ist, dass die Steuerungselektronik per serieller Schnittstelle (bzw. in der Endversion per USB) die x-, y-, und z-Koordinate erhält, die die Plattform anfahren soll. Daraus werden dann über die inverse Kinematik die Stellwinkel für die drei Servos berechnet und die entprechenden PWM-Signale ausgegeben. Die Berechnung der inversen Kinematik ist nicht übermäßig aufwendig, insofern ließ sie sich problemlos auf einem Atmel AVR Mega8 unterbringen, auch wenn sie in Bascom implementiert ist. Für die ersten Funktionstests der Controller Firmware habe ich mein miniAVR Board verwendet. Da es über keinen Taktgeber für den µC verfügt, läuft der AVR mit internem Takt bei 8 MHz. Unter dieser Bedingung braucht ein Berechnungsdurchgang für die komplette inverse Kinematik etwas über 6 ms, sodass diese bei ca. 150 Hz läuft. Das ist nicht extrem schnell, aber ausreichend für meinen einfachen Aufbau. Mit einem schnellerem AVR ließe sich das Ganze ohne weitere Programmänderungen um einen Faktor von 2.5 schneller machen. Zur Stromversorgung der Servos habe ich mir ein einfaches Schaltnetzteil besorgt, das immerhin 8 A liefert.
Video: deltaR als Plotter | Hier ein kleines Video von meinen Delta-Roboter. Es zeigt die Konstruktion und - als kleinen Genauigkeitstest - den Versuch, damit zu malen. Um einen Stift an der Plattform des Roboters befestigen zu können, habe ich einen einfachen Stifthalter improvisiert. Es handelt sich um einen Kunstoffklotz mit einem Loch für den Stift. Der Stift selbst wird von einem zweiten Kunstoffteil beschwert, so dass er etwas Andruck auf dem Papier hat und außerdem nicht durchs Loch fallen kann. Das nebenstehende Bild zeigt die "Konstruktion". Der Stift ist etwas konisch, was die Konsequenz hat, dass er in dem Halter wackelt, wenn er auf dem Papier aufsetzt. Das verringert die Zeichengenauigkeit - die aufgrund der Servos ohnehin nicht so berühmt ist.
Video: deltaR mit Kinect gesteuert | Weil meine Kinect schon seit längerem in der Ecke steht, ohne dass ich damit sonderlich viel getan habe, und weil außerdem ja seit kurzem das offizielle Kinect SDK von Microsoft raus ist, habe ich mal versucht, meinen deltaR mithilfe des Kinect skeleton trackings zu steuern. Ich bin natürlich nicht der erste der das versucht, hier probierte man ähnliches (man bekommt allerdings keinen rechten Eindruck wie gut bzw. schelcht es da funktioniert). Bei mir zumindest funktioniert das nur so einigermaßen. Ich verwende in diesem Falle nur die Positionen der rechten und linken Hand. Sobald die rechte Hand 300 mm höher als die linke gehalten wird, wird die Position der linken Hand als Nullpunkt angenommen und alle weiteren Bewegungen darauf bezogen. Die deltaR-Plattform folgt dann den relativen Bewegungen der linken Hand, bis die rechte Hand weniger als 300 mm höher als die linke gehalten wird. Klingt etwas kompliziert - ist aber sehr simpel...
deltaR mit Kinect gesteuert, Greifen von Stahlkugeln | Hier noch eine kleine Erweiterung meines deltaRs. Ich habe einen Elektromagneten an die Plattform gebaut, mit dessen Hilfe er Stahlkugeln greifen kann.
Kommentare
adiesetyo04@gma il.com
pars730
mailid yesheshrampudi@ gmail.com
kishorekumardav id@kluniversity .in
Alle Kommentare dieses Beitrages als RSS-Feed.