Skip to content
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

check self-collision-check in all :inverse-kinematics methods #95

Closed
snozawa opened this issue Jun 9, 2014 · 2 comments

Comments

Projects
None yet
1 participant
@snozawa
Copy link
Contributor

commented Jun 9, 2014

euslispの:inverse-kinemaitcsメソッドで、
(send robot :self-collision-check)
をデフォルトで追加して、
(and ik-solved (not collision-p))
みたいなかんじで、IKの解けたかどうかチェックのところで
self-collision-checkでコリジョンをデフォルトでチェックすると
よさそうなのですが、どうでしょうか。

ただ、ロボットモデルの形状によっては、
(send robot :self-collision-check)
で実際にはカウントしたくない自己干渉もでてきてしまう気がします。
(send (pr2) :self-collision-check)
するといっぱい自己干渉リストがかえってきます。

なので、

--- irtmodel.l (リビジョン 967)
+++ irtmodel.l (作業コピー)
@@ -1792,6 +1792,7 @@
(t (make-list (length move-target) :initial-element (deg2rad 1)))))
(union-link-list)
(centroid-thre 1.0) (target-centroid-pos) (centroid-offset-func)

    (use-self-collision-check nil) (dump-command t) &allow-other-keys) ;; target-coords, move-target, rotation-axis, translation-axis, link-list @@ -1917,7 +1918,8 @@ ;; reset weight (send self :reset-joint-angle-limit-weight-old union-link-list) ;; check solved or not
    (if (or success (not revert-if-fail))
    (if (and (or success (not revert-if-fail))
    (if use-self-collision-check (send self :self-collision-check) t)) (send self :angle-vector) (progn (when warnp

のようにuse-self-collision-checkみたいに引数でチェックするかどうか選べるようにして、
今までのIKとの互換性のためにデフォルトでnil,
形状情報的に意図した自己干渉計算ができそうなロボットでは、
:inverse-kinematicsメソッドを上がいてデフォルトでuse-self-collision-chekをtにする、
というのはいかがでしょうか。
(IKが解けないメッセージで、普通にIkがとけないのか
自己干渉で返り血nilにしているのか、も表示する必要がありそうです)

@snozawa

This comment has been minimized.

Copy link
Contributor Author

commented Jun 9, 2014

This issue requires
#93

snozawa added a commit to snozawa/jskeus that referenced this issue Jul 16, 2015

snozawa added a commit to snozawa/jskeus that referenced this issue Jul 17, 2015

@snozawa

This comment has been minimized.

Copy link
Contributor Author

commented Sep 18, 2015

Solved via #232

@snozawa snozawa closed this Sep 18, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.