Toll, du hast mich verstanden
Für den kompletten Arm bräuchte man dann 6 Koordinaten und je Gelenk 6 unterschiedliche Winkel.
Toll, du hast mich verstanden
Für den kompletten Arm bräuchte man dann 6 Koordinaten und je Gelenk 6 unterschiedliche Winkel.
Hallo
Das ist mir schon klar. Ich wollte nur verdeutlichen, dass eine mathematische Berechnung der Impulslängen nicht möglich ist. Für einen Roboterarm mit Servoantrieb ist das Teachen der einzelnen Positionen die einzige erfolgversprechende Methode. Das behaupte ich allerdings als ein eher unterdurchschnittlich begabter Mathematiker:...der Hinweis, dass Servos nicht ganz linear sind und andere Teile besser sind, löst immer noch nicht mein Problem(Zitat aus https://www.roboternetz.de/community...l=1#post389783)Den mathematischen Ansatz verdränge ich weiterhin energisch und bleibe vorerst bei der Teachlösung. Selbst wenn es mir gelingen würde die erforderlichen Servowinkel auszurechen, ich wüsste nicht, wie ich diese dann in Servoimpulslängen umrechnen sollte. Zudem sind meine Billigservo alles andere als liniar.
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Nagut, ich glaub, ich werd mal meine Servos auf Linearität testen. Auf jeden Fall ist mir schonmal aufgefallen, dass sich der Servo erst bewegt, wenn man ein paar ms weiter ist, und dann gleich ein ganzes kleines Stück. Auch während des Verfahrens ist die Bewegung recht unsauber, das wird den ganzen Roboter wohl ordentlich zum Wackeln bringen. Da wäre so eine selbstgebaute Regelung wie im Video weiter oben wesentlich mehr bringen.
@mistermou:
es würde auch eine einzelne Koordinate reichen. Der Roboter hat 6 Freiheitsgrade (Gelenkwinkel), während der Endeffektor im Raum auch 6 Freiheitsgrade hat (3 Positionen, 3 Orientierungen). Wenn man dann eine Konstellation des Roboters eingrenzt, lassen sich die Gelenkwinkel eindeutig berechnen.
Ok, dazu fehlt mir das Hintergrundwissen
Dazu müsstest du doch auch die Winkel der Zeigerspitze messen, oder?
Ich bin ehr für Dreiecke, aber das klappt bei so vielen Achsen nicht so gut, wäre aber mal einen Versuch wert![]()
http://www.google.de/search?q=servo+totzeitAuf jeden Fall ist mir schonmal aufgefallen, dass sich der Servo erst bewegt, wenn man ein paar ms weiter ist, und dann gleich ein ganzes kleines Stück.
Viel Spass beim Einlesen.
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Hab gerade mal eine kleine Messung durchgeführt, wenn auch nur unter "mal eben schnell"-Bedingungen. Zumindest hat sie herausgestellt, dass mitunter Abweichungen von etwa 1° auftreten können und dass das Servo unter einer gewissen Hysterese leidet. Das Problem würde ich auch nicht unbedingt als Totzeit bezeichnen, das fällt wohl eher unter Messspiel.
@mistermou: naja, man könnte an den Endeffektor ja ein rechteckiges Stück anbauen dieses sanft in eine Art Anschlag, der flach auf dem Tisch liegt, hineinmaneuvrieren. Dieser müsste dann allerdings genauso genau sein, wie man die Gelenkwinkel genau haben will. Um die Handachsen ordentlich auszurichten, braucht man sowas aber, da diese ja maßgeblich an der Einhaltung der Orientierung beteiligt sind. Zwar könnte es wohl bei diesen ungenauen Servos genauso reichen, die Gelenke "pi mal Daumen" auszurichten, allerdings will ich ja nicht bei diesen bleiben![]()
So, gestern war ich bei MisterMou und wir haben in der Werkstatt einiges geschafft. Der Roboter ist jetzt im Grunde fertig, nur ein paar Feinheiten können noch angepasst werden. Hier auch mal ein Video:
Wie man auch sieht, hat der Servo von Achse 2 ganz schöne Probleme, wenn sich das Teil weit nach vorne beugt und fängt ganz eklig zu Zittern an. Entweder ich bastel noch einen Massenausgleich hinzu oder ich hol mir noch einen Servo und setz ihn zusätzlich auf die andere Seite. Die Servos sind aber wirklich nicht unbedingt toll, da bekommt man schon Bock, eine eigene Steuer- und Regelelektronik für zu entwerfen.
Hier noch ein Bild, wo man mehr erkennen kann:
An dieser Stelle sei nochmal MisterMou gedankt, der mir in seiner Werkstatt sehr gut geholfen hat.![]()
Geändert von Geistesblitz (10.02.2012 um 20:40 Uhr)
So, ich hatte jetzt eine Idee zur Gewichtskompensation an Achse 2 und hab dazu mal eine Skizze gemacht:
Ob da jetzt ein Gummiband oder eine Feder reinkommt, muss ich sehen. Erstmal tendiere ich eher zum Gummiband, weil ich davon einige in unterschiedlichen Stärken da hab (im Gegensatz zu Zugfedern). Die Aufhängung an der Basis müsste natürlich genau über der Achse liegen, hab ich beim Skizzieren nicht drauf geachtet. Mit der Schraube im Langloch kann man dann die Vorspannung einstellen. Sollte zumindest den Servo entlasten, den Rest erledigt ja die Regelung.
So, hab jetzt die Gummibänder wie skizziert eingebaut und muss sagen, dass sie drchaus ihren Zweck erfüllen. Das Zittern ist weg, die Dynamik ist zwar immernoch nicht allzu toll, aber zumindest bleibt der Arm auch stehen, wenn sich nichts bewegen soll.
Lesezeichen