Mam mały poczwórny z trzema stopniami swobody, nad którym pracowałem: 3DOF Mini Quadruped .
Mój oryginalny kod to prosty kontroler serwomechanizmu na arduino i kod Scala, który wysyłałby serwomechanizmy za pośrednictwem drutu. Zrobiłem całą odwrotną kinematykę i logikę chodu w Scali i zmusiłem go do chodzenia: 3dof poczwórnie pierwszy chód .
Moja logika chodu w Scali była nieco naiwna; zależało to od tego, czy nogi były na początku we właściwej pozycji (jedna strona była wyciągnięta do przodu i do tyłu, druga strona do siebie). Logika została po prostu przesunięta o wszystkie cztery stopy do tyłu o 1 mm wzdłuż y, i ilekroć kąt Coxa stał się nadmiernie do tyłu, zatrzymaj się i wykonaj małą rutynę, w której stopa jest podnoszona o 10 mm w z, a następnie przesunięta o 60 mm do przodu wzdłuż y, i opuść się z powrotem. Naiwny, ale skuteczny.
Teraz przepisałem mój kod IK w Arduino C i próbuję zdecydować, jak przejść do przodu z dynamiką Gait. Trudno mi było znaleźć dobre, łatwe do zrozumienia zasoby na temat chodu. Mam pewną wiedzę na temat różnicy między dynamicznie stabilnymi chodami (jak chody pełzające), w których ciało jest przez cały czas stabilnym statywem, a dynamicznie niestabilnymi chodami (chodzenie, kłusowanie), w których dwie nogi są jednocześnie na ziemi, a ciałem zasadniczo spada do przodu w kierunku nogi.
Zastanawiałem się nad automatami stanowymi i próbowałem obliczyć, czy środek ciała mieści się w trójkącie utworzonym przez pozostałe stopy, aby zdecydować, którą stopę można bezpiecznie podnieść, ale nie jestem pewien, czy są to pomysły warte zbadania.
Wiem, że jest to pytanie zbyt ogólne, ale interesuje mnie, jak inni zaatakowali ten problem, i wszystko, co udało mi się znaleźć, to artykuły z badań.