-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PR2でOptmotiongenの障害物回避IKが上手くいかない #748
Comments
PR2は特殊なロボットで,
今回の原因と直接関係はありませんが,現在のoptmotiongenが使用しているPQPによる干渉チェックは,物体同士が既に干渉している時に離れる方向を正しく出力しないため,一度干渉すると干渉したままになってしまいやすいという問題があります.これは,euslisp/jskeus#555 がリリースされると改善できるのですが,今のところは初期姿勢で物体と干渉していないように注意する必要があります. |
ありがとうございます。 初期姿勢で物体と干渉していないかのチェックもするようにしようと思います。 |
メモ:jsk-ros-pkg/jsk_model_tools#171 ちなみにこれはURDFがassocの代わりにfixed jointで別リンクをつなげていく,というのが原因だともいます. |
@Kanazawanaoaki |
そうですね、開けておくことにします。 |
Optmotiongenのsample-arm-reach-ik-obstacleに使われている障害物回避IKをPR2で試してみようとした(Kanazawanaoaki/oneweek_kanazawa#1 )ところ以下のような問題が発生しました。
:collision-avoidance-link-pair を指定する必要がある
sample-arm-reach-ik-obstacleと同じように
:obstacles (list *obstacle*)
として障害物を指定してもPR2の場合は障害物回避をすることが出来ませんでした。(https://gist.github.com/Kanazawanaoaki/1810958f83c44c037b9cb286a047b385#file-obstacle-ik-test-01-l )
@pazeshunに
:obstacles (list *obstacle*)
の代わりに:collision-avoidance-link-pair (mapcar #'(lambda (l) (list l *obstacle*)) (send *robot* :links))
とする必要があることを教えていただきましたが、READMEから辿るにはPR2のregraspのサンプルのコードを注意深く読む以外にない気がします。障害物を回避しきれていない
(https://gist.github.com/Kanazawanaoaki/1810958f83c44c037b9cb286a047b385#file-obstacle-ik-test-02-l )のように
:collision-avoidance-link-pair
を指定して実行してみたのですが、障害物を回避しきれていなくて障害物と重なってしまっているように見えます。(normal-ik)
として:inverse-kinematics
を使った時と、(obstacle-ik)
として:inverse-kinematics-optmotiongen
を使った時の挙動を比べると障害物を指定できていて回避していようとしているように見えます。完全には回避しきれない状態で解き終わってしまうこともあるのでしょうか。The text was updated successfully, but these errors were encountered: