四足歩行への良いアプローチは何ですか?


12

私が取り組んでいる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本の脚が一度に地面から離れる動的に不安定な歩行(歩行、速歩)との違いについてある程度の知識を持っています本質的に前進する脚に前方に落ちています。

ステートマシンについていくつかの考えがあり、体の中心が残りの足で作られた三角形内に収まるかどうかを計算して、どの足を持ち上げても安全かどうかを判断しようとしましたが、これらが探索する価値があるかどうかはわかりません。

これは一種の過度に一般的な質問であることは知っていますが、他の人がこの問題をどのように攻撃したかを知りたいと思っています。


あなたがロボットで行った仕事に感銘を受けました。貴重な解決策を模索するために、あなたの助けが切実に必要です。過去6か月間、正の結果なしでヘキサポッドの運動学を解決するための解決策を探していました。体は片側に傾いています。あなたは助けることができるかどう感謝:-)よろしくゲイリー

R.Se @ user2350へようこそ-回答として補足的な質問(どんなに関係なく)をしないでください
アンドリュー

回答:


5

足には十分なトラクションがありませんが、実際にあなたが持っている歩き方はそれほど悪くありません。

動的に安定した歩行の用語についてはわかりません。私がいつも理解してきたように、2つの三脚スタイルの歩行は静的に安定した歩行として知られていますが、ペットマンのような優れた歩行二足歩行は動的に安定した歩行を使用します。動的に不安定な歩行を聞いたことがない。それは酔っぱらいのように聞こえます。

このロボットの設計では、地面に2本の足を置くのがおそらく下限です。一般的に、倒れるのに長い時間がかかる背の高いヒューマノイドロボットでこの作業を行うのは簡単です。幅の広いフラットロボットは、床に多くのロボットを置いていない場合、足を素早く持ち上げて配置する必要があります。

しかし、あなたのロボットの腕を開発する方法。最初に、歩き方から何を達成したいかを決定する必要があります。平らな表面で最大速度を求めていますか、または凹凸のある表面で最大の安定性を求めていますか?

あなたの目標が安定性である場合、私は確かに、その足に関連してその重心をロボットに認識させることは価値があると思います。これを知るのを助けるために、足にいくつかの力センサーを追加して、これを簡単に計算する価値があるかもしれません。

あなたの目標が最高速度のみである場合、私は単に最適な歩行パターンへの資金提供に集中します。これは困難です。それにアプローチする2つの良い方法があります:

  1. モデリング。ロボットの質量、剛性、トルクなどを含む包括的なコンピューターモデルを作成します。このモデルを使用して、動的な動作を完全に理解します。

  2. 試行錯誤。これは、ランダムな歩行でプログラミングし、それらを調整してパフォーマンスを測定するという難しい方法で行うことができます。前方と斜めの両方に歩いてみてください。または、遺伝的アルゴリズムを使用して、より良い歩容を自動的に検索することができます。GAを使用する難しさは、歩行のパフォーマンスを自動的に測定する何らかの方法が必要なことです。

3つ目の方法は、コーネル大学のヒトデロボットのように、ロボットを自分自身で仮説を検証するために意識的な実験を実行し、歩き方を決める科学者にすることです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.