-
Notifications
You must be signed in to change notification settings - Fork 566
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
Reverts #2985, Ports moveit #3388 #3470 #3539 #3284
base: main
Are you sure you want to change the base?
Conversation
So far, setFromIK only accepted target (link) frames that were rigidly connected to a solver's tip frame. This, for example, excluded the fingertip of an actuated gripper, because that would be separated by an active joint from the arm's tooltip. However, as long as this joint is not part of the JMG, the corresponding transform can be considered as fixed as well. This PR generalizes the functions getRigidlyConnectedParentLinkModel() in RobotState and RobotModel to receive an optional JMG pointer. If present, only (active) joints from that group are considered non-fixed. This PR also enables subframe support for setFromIK - simply by using getRigidlyConnectedParentLinkModel(), which already supported that. There is one drawback of this approach: A repeated application of setFromIK with the same target frame and JMG (as in computeCartesianPath()), will repeat the search for the common fixed parent link. Additionally, the passed RobotState needs to be up-to-date. We could mitigate this by pulling the corresponding code into a separate function and calling it once in computeCartesianPath().
…inkModel() Fixes #3388
find links with slashes again
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.
Thanks!
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 #3284 +/- ##
==========================================
+ Coverage 45.60% 45.98% +0.38%
==========================================
Files 716 716
Lines 62380 62428 +48
Branches 7544 7550 +6
==========================================
+ Hits 28445 28700 +255
+ Misses 33769 33561 -208
- Partials 166 167 +1 ☔ View full report in Codecov by Sentry. |
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.
Thanks for porting this over! I hate to ask but do you mind adding a bit documentation here? Moveit core is already complicated enough and these changes don't simplify it 😅
moveit_core/robot_model/include/moveit/robot_model/robot_model.hpp
Outdated
Show resolved
Hide resolved
moveit_core/robot_model/include/moveit/robot_model/robot_model.hpp
Outdated
Show resolved
Hide resolved
Sure thing. None of this was originally my code, but I'll see what I can do later today. |
Yes, I am aware of this. Thanks a lot for doing it and let me know when you need help! |
It looks like the dubious |
Actually, scratch that. Any alternate code to calculate the transform would only be used in the tests. I think I'm just going to delete these arguments. |
Description
RobotState::getRigidlyConnectedParentLinkModel
and subframes: PRs not ported from moveit1. #3279cartesian_path_service_capability
, as that has changed significantly since the Moveit1 PRs were made.Checklist