私が取り組んでいる3自由度の足を持つ小さな四足動物があります:3DOF Mini Quadruped。
私の元のコードは、arduinoのシンプルなサーボコントローラーと、ワイヤーを介してサーボコマンドを送信するScalaコードでした。私はScalaですべての逆運動学と歩行ロジックを実行し、3dofの4足歩行の最初の歩行を実行しました。
Scalaでの私のGaitロジックはやや素朴でした。それは、足が最初に正しい位置にあることに依存していました(一方の側が前後に伸び、他方の側が互いに向かって伸びていました)。ロジックは、yに沿って4フィートすべてを後方に1 mmだけ単純に変換し、coxa角度が過度に後方になったときはいつでも、足をzで10 mm持ち上げてからyに沿って60 mm前方に変換し、下に戻す小さなルーチンを実行します。素朴だが効果的。
今、私はarduino CでIKコードを書き直しました。そして、私はGaitダイナミクスを前進させる方法を決定しようとしています。歩容に関する優れた、わかりやすいリソースを見つけるのに苦労しました。私は、身体が常に安定した三脚である動的安定歩行(クリープ歩行など)と、2本の脚が一度に地面から離れる動的に不安定な歩行(歩行、速歩)との違いについてある程度の知識を持っています本質的に前進する脚に前方に落ちています。
ステートマシンについていくつかの考えがあり、体の中心が残りの足で作られた三角形内に収まるかどうかを計算して、どの足を持ち上げても安全かどうかを判断しようとしましたが、これらが探索する価値があるかどうかはわかりません。
これは一種の過度に一般的な質問であることは知っていますが、他の人がこの問題をどのように攻撃したかを知りたいと思っています。