-
Notifications
You must be signed in to change notification settings - Fork 540
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
Allow attached objects in move_group's /compute_ik pose frames #3144
base: main
Are you sure you want to change the base?
Conversation
Could this capability delegate purely to |
@TSNoble no, moveit2/moveit_core/robot_state/include/moveit/robot_state/robot_state.hpp Lines 924 to 1026 in e7872eb
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This overall looks good, but I am concerned that it breaks the behavior where the target pose does not specify a frame ID.
As seen in
pose_msg.header.frame_id = target_frame; |
performTransform()
function will fall back to using that default frame if the header has no frame id.
It might be beneficial to reinstate this behavior, and maybe also the previpus condition where frame ID being equal to the model frame resulting in a no-op transform.
Also, does This may also be another major difference between the existing and proposed implementations, which would also break for any non-robot model reference frames. |
Codecov ReportAttention: Patch coverage is
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## main #3144 +/- ##
==========================================
- Coverage 46.00% 43.94% -2.06%
==========================================
Files 483 697 +214
Lines 40632 61491 +20859
Branches 0 7458 +7458
==========================================
+ Hits 18689 27014 +8325
- Misses 21943 34309 +12366
- Partials 0 168 +168 ☔ View full report in Codecov by Sentry. |
Description
In the existing
move_group
implementation, the pose frame inPositionIKRequest
'spose_stamped
andpose_stamped_vector
were converted to robot's root frame using TF2, which meant that the calls to/compute_ik
service would fail withFRAME_TRANSFORM_FAILURE
when one tried to use an attached object frame (or subframe) there. This changes the code to useRobotState::getFrameTransform
to convert those poses to the robot's root frame instead, enabling the use of attached object frames/subframes.Checklist