@robin schon richtig, das hab ich versucht mit der Analogie zu einem Industrieroboter zu zeigen. Bei dem wäre es in der Tat einfach: ein Tool-Center-Point (TCP) wird in relation zum Basis Koordinaten System bewegt. Dabei wird die Bewegung als Verschiebung und Rotation des TCP dargestellt. Die Bahn auf der sich der TCP von A (Ausgangspunkt) zu B (Endpunkt) bewegt wird als Bahnkurve bezeichnet. Diese kann im einfachsten Fall eine Gerade sein oder eine komplexe Kurve. Die eigentliche Bewegung wird nun beliebig viele kleine Teilschritte zerlegt (interpoliert) und an die Inverse Kinematik des Roboters übergeben und mit hilfe der DH-Matrix die Gelenkwinkel berechnet. Dazu kommt noch deine erwähnte Vorgabe der Geschwindigkeit. Soweit ist das für Industrieroboter auch recht verständlich. Für eine Geradeausbewegung eines Hexapods könnte ich das gleiche Prinzip anwenden. Ich hatte eben keinen TCP sondern eine Fussspitze die auf einer Geraden entlang geführt wird und über die IK kann ich jeden einzelnen Servowinkel berechnen. Das ganze für 6 Beine mit unterschiedlichen Geraden wenn es keine Bewegung "gerade aus" ist. So hab ich es bisher bei meinem Phoenix² gemacht und es funktioniert auch gut. Vorgabe der Richtung + Anzahl der Schritte + konstante Geschwindigkeit oder Vorgabe der der x,y Koordinaten des Drehpunkts + Wieviel Grad um den Drehpunkt gedreht werden soll + Konstante Geschwindigkeit. Allerdings konnte ich immer nur eine Vorgabe verarbeiten und ein Schritt bestand aus einer definierten Länge die nicht unterschritten werden konnte.

Jetzt möchte ich das ganze etwas komplexer machen:
1) Die Länge eines Schritts soll sehr viel kleiner werden
2) Die Lage des Körpers soll wärend der Schritte ausgeglichen werden
3) Die Füsse sollen selbst entscheiden wann der Fuss gehoben wird und wieder an den Anfang gefahren wird.
4) Alle Beinbewegungen sollen unabhängig voneinander parallel laufen

Im Prinzip kann der Roboter eine Bewegung vollführen die ihn sagen wir 1m gerade aus laufen lässt und dabei eine vollständige Drehung des Körpers um 360° durchführt. D.h. die translatorische und rotatorische Bewegung überlagern sich. Dabei stosse ich auf zwei Probleme:
A) Wie erzeuge ich eine Bahnkurve die genau diese Bewegung dar stellt
B) Wie müssen die daraus resultierenden Bahnkurven für die Beine 1 bis 6 aussehen
C) Wie übergebe ich die resultierenden Bahnkurven an die Inverse Kinematik der Beine
D) Wie kann ich berücksichtigen, dass die resultierende Bahnkurve bei jedem Schritt durch die Lageregelung des Roboters verändert wird

Bisher habe ich auf Videos zu Hexas immer nur gesehen wie die Bewegungen nacheinander gemacht werden und nicht gleichzeitig. Es müsste aber auch möglich sein, dass alles gleichzeitig passiert und mein Anspruch für das Vinculum ist kein geringerer.


Anderes Thema:
Gewicht: Gerade habe ich mein Hexabot gewogen und er bringt jetzt mit Akkus und allem 2,8kg auf die Waage. D.h. bei 4 Beinen 0,7kg pro Bein bzw. 0,7kg*g =7N . Die Oberschenkellänge beträgt 14,5cm und damit ergib sich ein Drehmoment von 101,5Ncm was für meine Servos zuviel ist da die nur 73Ncm schaffen. Also heißt es nun entweder auf 5 Beine am Boden gehen und dann würden es immernoch 81,2Ncm sein oder stärkere Servos verwenden. Alternativ: Diät und >0,8kg abnehmen! Zumindest wenn ich weiter den vollen Arbeitsraum ausnutzen möchte.

Wird der volle Arbeitsraum nicht ausgenutzt und wie geplant die Beine nur im 45° Winkel eingesetzt verändert sich der Abstand von Schulter zu Fusspunkt auf 10,25cm womit der Schulterservo gerade so 71,75Ncm benötigt was ganz knapp unter den 73Ncm bleibt. Da ich aber noch etwas Gewicht zuladen muss (Sensoren, Platinen weitere Komponenten) bleibt mir wohl nur die Lösung mit besseren Servos und Gewicht abnehmen.