-
-
Moderator
Robotik Einstein
@hopix, also vorweg gleich mal, das mit der Inversen Kinematik hört sich schrecklich kompliziert an, ist es aber für Hexas nicht.
Man braucht auch nicht die Längen gleich auslegen, Länge der Schenkel oder des Fusses sind einfach zwei Konstanten fertig aus. Wie gesagt mit cosinus, arccosinus, sinus und arcsinus und vielleicht noch etwas Tangens lässt sich alles berechnen.
Bei meinem Roboter sieht das in etwa so aus.
Es gibt eine Berechnung um den Abstand der Fussspitze zum Hüftgelenk als Funktion der Winkel von Schulter und Fuss zu berechnen (abhängig von der Konstanten Höhe des Systems).
Dann gibt es einen Algo der eine virtuelle Linie erzeugt auf der sich die Fussspitze bewegen muss. Diese Linie koreliert mit der Bewegungsrichtung des Roboters. Z.B. soll der Roboter gerade laufen, dann ist die virtuelle Line parallel zum Roboter. Soll er schräg laufen dann wird sie um den entsprechenden Winkel gedreht.
Damit hat man auch schon die ganze translatorische Bewegung erschlagen.
Um den Roboter um einen beliebigen Punkt im Raum zu drehen (der kann auf dem Roboter liegen dann rotiert der Roboter um die eigene Achse oder ausserhalb dann läuft er z.B. um eine Flasche herum) wirds etwas komplizierter. Die Länge der virtuellen Linie und der Winkel ändert sich für jedes Bein (wieder in Abhängigkeit von der Position des Drehpunkts). Alternativ kann man die Linie auch gleich lassen und die Geschwindigkeit der Bewegung des entsprechenden Fusses verändern.
Wie die einzelnen Längen und virtuellen Linien mit den Servowinkeln zusammenhängen ist reine Geometrie.
Fertig sieht es bei mir dann so aus:
move_trans(90.0, 3)
Sprich eine Bewegung mit Winkel 90° (gerade nach vorn) für 3 Schritte
oder:
move_rotation(0, 400, 270.0)
x-Position und y-Position des Drehpunkts im mm vom Robotermittelpunkt aus und dann um 270,0° um diesen Punkt drehen.
Mit nur noch diesen beiden Funktionen steuer ich den ganzen Roboter in der Bewegung.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen