-
Notifications
You must be signed in to change notification settings - Fork 97
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
[Fetch1075] Moveit! path orientation constraints を追加すると自己干渉するようになる (Fetch collides with himself when using Moveit! path orientation constraints) #1665
Comments
SRDFが少しおかしいので修正. これでFetchが若干肘をベースとこすっていたのが治る? cc. @708yamaguchi |
特異点周りで関節角度が大きく変更していて,MoveIt的には2つの姿勢を遷移したことになっているが,Euslispの補間で当たっている気がする. 以下の例では,肩関節が大きく突然変化している.特異点周りで大きく変わっている. Screencast.2022-10-13.20.38.42.mp4 |
にたようなはなし computeCartesianにはjump_thresholdというのがあるが,これがあったらやばい挙動は止められる? |
これも関係しそう? |
これはすごくそれっぽい |
検証の仕方Depends: #1666 roslaunch jsk_fetch_startup fetch_gazebo_bringup.launch #!/usr/bin/env roseus
(require "package://fetcheus/fetch-interface.l")
(ros::roseus "hoge")
(setq *pre-grasp-pose* (make-coords :pos #f(-64.85 360.9 823.818) :rpy #f(-1.926 0.181 0.85)))
(setq *grasp-pose* (make-coords :pos #f(-50.682 263.943 778.426) :rpy #f(-1.632 0.097 0.772)))
(setq *pro-grasp-pose* (make-coords :pos #f(-46.346 261.287 950) :rpy #f(-1.571 0 0)))
(setq *ready-pose* (make-coords :pos #f(363.334 -139.026 508.384) :rpy #f(0 0 0)))
(fetch-init)
(defun pre-grasp ()
(send *fetch* :angle-vector (send *ri* :state :potentio-vector))
(send *fetch* :inverse-kinematics *pre-grasp-pose* :use-torso nil)
(send *ri* :angle-vector (send *fetch* :angle-vector) 5000)
(send *ri* :wait-interpolation)
)
(defun grasp ()
(send *fetch* :inverse-kinematics *grasp-pose* :use-torso nil)
(send *ri* :angle-vector (send *fetch* :angle-vector) 1000)
(send *ri* :wait-interpolation)
(send *fetch* :inverse-kinematics *pro-grasp-pose* :use-torso nil)
(send *ri* :angle-vector (send *fetch* :angle-vector) 2000)
(send *ri* :wait-interpolation)
)
(defun ready ()
(setq path-constraints
(instance moveit_msgs::constraints :init
:name ""
:orientation_constraints
(list (instance moveit_msgs::OrientationConstraint :init
:header
(instance std_msgs::Header :init :frame_id "base_link")
:link_name "gripper_link"
:orientation
(instance geometry_msgs::Quaternion :init
:x 0 :y 0 :z 0 :w 1.0)
:absolute_x_axis_tolerance 3.14
:absolute_y_axis_tolerance 3.14
:absolute_z_axis_tolerance 3.14
))
))
(send *fetch* :inverse-kinematics *ready-pose* :use-torso nil)
(send *ri* :angle-vector (send *fetch* :angle-vector) 5000 :default-controller 0
:use-torso t
:path-constraints path-constraints
)
(send *ri* :wait-interpolation)
)
(defun main ()
(pre-grasp)
(grasp)
(ready)
) Good caseScreencast.2022-10-13.23.06.20.mp4Bad caseScreencast.2022-10-13.23.09.34.mp4 |
@sktometometo |
このIssueの解決のために必要なPRは以下の4つである. |
in order to solve the issue jsk-ros-pkg#1665
詳細は後ほど記載
The text was updated successfully, but these errors were encountered: