Roboterarm


Ich hatte da vor längerem so eine blöde Idee, die davon handelt, im Winter, per Roboterarm und Wasser, eine Eisform zu erzeugen.
In der Art: Eis-Prototyping. Aber dazu vielleicht später mal mehr....

Aber man kann ja mit so einem Roboterarm ja auch noch sonstige viele schöne Sachen machen ;-)
Darum mache ich mich mal an die Konstruktion von so einem Roboterarm.

Vor einiger Zeit, hatte ich mal bei Ebay, so schöne Harmonicdrive
®-Getriebe mit Servomotor erstanden.
Neu kann man sich so was fast nicht leisten. Hier ein Link wo es so was neu gibt.

Der große Vorteil von solchen Getrieben ist, dass sie ein sehr sehr kleines Spiel im Getriebe haben. Darum sind sie sehr gut einsetzbar in Mechaniken, die sehr genau sein müssen! (z.B. in Robotern, Fräsen, Positionsmechaniken u.s.w.)
Meine Getriebe haben eine Untersetzung von 50:1 und der Servomotor hat einen Encoder mit 1000 (b.z.w.2000) Pulsen/Umdrehung.
Ansteuern werde ich die Servomotoren mit Geckodrive
® Endstufen. Das sind einfache und kleine Servoendstufen für Bürstenbehaftete Gleichstrommotoren mit Encoder. Als Steuereingang hat man dann einen Rictungs- und einen Takt-Eingang.
Selbige habe ich schon bei meiner Fräse eingesetzt.

Doch welche Mechanik ist dafür den die beste?!
Nach einiger Recherche , dachte ich an eine Konstruktion mit Hebeln. Das hätte den Vorteil, dass man die schweren Massen wie Motor u.s.w. auf die Grundplatte legen könnte und der Schwerpunkt nach unten wandert. Man braucht dann nicht zu den Arm auch noch die Motorenmassen mit bewegen.
Zum Einsatz kommen solche Roboter z.B. bei ABB
® ABB®, KUKA® KUKA®, Motoman®, u.s.w.

 

Hier mal ein Konstruktionsveruch mit einem 3D-CAD Programm.


Dazu noch ein plastischer Versuch mit kleinen Balsahebeln auf einem Blatt Papier und dann abgezeichnet, damit man sieht wie weit der Verfahrensweg reicht.


 

Dazu ein praktischer Versuch mit Holz. :-)

 

Nach langem hin und her, habe ich mich aber dann doch zu einer Konstruktion entschieden, wo der Motor auf dem Hebel angebracht wird!
Ein paar Gründe die mich zu diesem Entschluss veranlasst haben:

* Einfachere Berechnung der Wege gegenüber einer Parallel-Kinematik.
* Größerer Verfahrensweg  (Achse 3 kann ich damit auch nach hinten schwenken)

Die zusätzliche Masse am Hebel durch den Motor, werde ich voraussichtlich mit Federn ausgleichen.


 

 

Hier habe ich mal die Tragfähigkeit von so einer Motoreinheit getestet :-)
Hebel ist ein Aluprofil.
Hebelweg = 70cm
Gewicht = 2kg
Mit 2Kg lässt sich so der Arm noch recht flott nach oben bewegen :-)
Bei 2,5kg war es dann aber schon aus.
Bringt also so ca. 20Nm.

Das Aluprofil biegt sich hier nicht wirklich durch. Das ist nur am Foto so.

 

   



Hier nun meine neue Konstruktion.
Hatte dazu mehrere Aluprofile in der Durchbiegung getestet.
* 45er Aluprofil von Bosch®
* 40er Vierkant Profil Alu mit 2,5mm Wandstärke
* 25er Vierkant Profil Alu mit 1,5mm Wandstärke
* Vierkant Alu mit 35*20mm und 1,5mm Wandstärke

Habe mich dann für das letztere Profil  entschieden. (stehend)
Die 45er und 40er Profile waren mir da doch ein bisschen zu wuchtig und das jetzige stellt einen guten Kompromiss zwischen Steifigkeit, und Gewicht dar.
Falls man doch dann mal mehr Steifigkeit brauchen würde, könnte man die Profile ja noch tauschen.

 

Hier alle Drei Achsen mal aufgebaut!


Das Drehgelenk habe ich  erstmal aus Holz aufgebaut.
Einstweilen reicht es so zum probieren. Später werde ich es aus zwei großen Kugellagern machen, die ich gegeneinander verspanne ....

Jetzt geht es erstmal  an die Programmierung von dem Ding .

Derzeit steuere ich den Arm mit einem Mega8 mit 10 Mhz.
Für jede Achse einen Timer.
Steuerung mit zwei Steuerknüppel mit jeweils 2 Potis.
Dadurch kann ich per Hebel, gleichzeitig auch die Geschwindigkeit der Achsen regeln.
Ganz langsam bis schnell, je nach Küppelstellung.

Ziel soll erstmal eine Teach-In Funktion sein, wo ich manuell auf bestimmte Koordinaten fahre, die dann in einem EEprom gespeichert werden.
Diese Koordinaten soll dann der Arm selber abfahren.

Dazu kommen dann noch Endschalter, Sensoren und vorne am Arm noch ein paar Achsen....

Mal sehen ....  und hoffentlich noch vor dem Winter ;-)


 

  Hier der Versuchsaufbau der Elektronik.
Unten die zwei Steuerhebel mit Potis.
Links hinten, derzeit der Mega8.

Es wird aber wohl doch ein Mega32 werden, weil langsam gehen mir schon die Leitungen aus und der 8k Speicher, wird auch schon langsam voll ...
Für die Steuerung habe ich nun meinen Kontroller mit Grafik-LCD verwendet.
Da sitzt ein Mega32 drinnen und das LCD hat 240*180 Pixel.

Links habe ich eine 25polige Sub-D Buchse wo ich alle wichtigen Signale nach außen geführt habe (8 * A/D Wandler Eingänge und ein paar Port's)

Gedacht war das Ding  mal als Datenlogger oder einfach nur als Kontroller.
Seitlich kann man dann verschiedene Module anhängen, die die Daten umwandeln oder weitergeben.

 

Inzwischen ist alles in Alu geworden. Auf ein Drehgelenk habe ich erstmal verzichtet.
Es wird jetzt direkt die Achse des Harmonic-drive Getriebe verwendet.
Ist zwar keine optimale Lösung (da kommt man immer erst später drauf) aber für meine Anforderungen wird es wohl reichen.

Links das schwarze Kästchen ist das Modul für den Kontroller.
Dort sind die Analogsteuerknüppel und der Roboterarm angeschlossen.
Im inneren werkeln noch zwei I2C Expander (PCF5874) weil ich schon zu wenige Leitungen habe.

Ergänzt habe ich den Arm noch mit drei Induktiven Näherungsschalter, damit ich auch eine Referenzfahrt fahren kann. Nach der Referenzfahrt weis der Kontroller dann immer, wo der Arm seinen Nullpunkt hat.
 

 

Und hier ein kleines Video :-)
Das Programm läuft inzwischen so, dass es schon ein bisschen Teach-In kann.
Ich kann damit manuell per Steuerknüppel, den Arm an eine bestimmte Position fahren, diese Position speichern und dann zur nächsten Position fahren und wieder speichern u.s.w.
Diese angefahrenen Punkte werden zum Schluss dann als Datensatz gespeichert.
Ich kann dann die einzelnen Datensätze auswählen und abspielen lassen.


 

          
   
   










letzte Änderung: 24.12.2006

  Zähler: