受動関節の実験

目的

不整地歩行のために、着地時の路面に倣って関節角度を決定させる。



ポイント

動作が遅いので、関節の設定角度と実際角度の差から、先読みで設定角度を設定する。
先読みが大き過ぎると、逆にブレーキになる。

メモ

2008.9.20
スロープの与え方は受動関節と能動関節では逆になる。
トルクをゼロにしても若干のトルクが残り、反応速度はあまりあがらない。

punchを0まで下げてみたが顕著な違いは無かった。(default値は0x00ff)
angleとtargetの差分(diff)を2倍以上にするとうまく動かない
diffを1倍にした時、torque:0と100での操作感はあまり変わらない。
diffを1.5倍にした場合はtorque:100だとガクつく感じ。

diffにより発生したtorqueでの反応時間を考慮しなければならないようだ。

2008.10.12
angleとtargetの差分の与え方で動作が異なるのはtargetが変化することで差分の符号が交互に反転するからであった。(要は考慮不足)
angleの変化方向と、angleとtargetの差分方向を監視することでいい感じになってきた。
compliance slope設定に方向をつけることはほとんど意味が無さそう。
受動する関節の回転方向と、プリテンションの方向が同じであればいい反応をするが、逆の場合はもちろん、プリテンションがかかっていない状態から受動した場合も、初動が良くない。
歩行時の速度には追いつかない感じ。
これから起こる受動の回転方向を考慮して、あらかじめプリテンションをかけておく必要がある。
compliance slopeを200にして、torqueを0にしても、プリテンション状態で放置すると関節が動いてしまう。
punchを小さくすれば動かさないようにできるか?
プリテンションのサイズを考慮することでコントロールできるか?

punchを0に設定することでプリテンション状態で関節が動くのを抑制することができた。
angleとtargetの差分の与え方はできるだけ大きな値を与えた方がスムーズな動作を行えるようだ。




















最終更新:2008年10月13日 17:55