-
Notifications
You must be signed in to change notification settings - Fork 118
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
Feature/reconfigure cart compliance controller #129
base: ros2
Are you sure you want to change the base?
Feature/reconfigure cart compliance controller #129
Conversation
Just to keep moving with this. @stefanscherzinger do you have any feedback? Is this feature even desired or does it go against the way the cartesian controllers are designed? |
Yes, I think that adds additional flexibility to the way people might use the compliance controller. If you need this, it's worth implementing! Unfortunately, I did not find the time so far to give detailed feedback. I'll be busy for the next two weeks and see that I can address this by then. In the meantime, you could follow your points to a proper solution. |
e210648
to
94d6279
Compare
@stefanscherzinger Still missing:
EDIT: After some further testing I would even say inhering controllers is a bad idea. Point 1 actually originates from: |
@stefanscherzinger just a quick reminder :) |
@stefanscherzinger sorry for pushing again. But I would like to progress in this PR :) |
@stefanscherzinger sorry to annoy you again ;) |
@stefanscherzinger I think I found a way better solution: I followed up on this issue today: ros-controls/ros2_control#1033 (comment) cartesian_controllers/cartesian_controller_base/src/cartesian_controller_base.cpp Line 141 in 4b5daab
|
@firesurfer |
@stefanscherzinger I think this PR is still very relevant. But I need to see when I find some time to update it |
Should not be merged like this!
PR for #127
This is currently a proof of concept which seems to work on my setup. It still generates quite a lot of errors which do not seem to matter to much apparently as the test itself works.
Test setup
For testing purpose I have
cartesian_complianct_controller_bottom
in mycontroller.yaml
.The default
end_effector_link
andcompliance_ref_link
isur_bot/magnet_gripper/attach
For testing I changed both to
gripper_bot/center
The way I implemented this is a bit nasty:
Issues
I would guess this is somehow related to the multi inheritence used in the cart. compliance. controller. Nevertheless they should be fixed as they sound link a memory leak.
In order to do this properly I suggest:
ref_link
and reinit the kinematic chain. -> Just do the bare minimum as on_activate will always run in the RT loop of ros2controlBut I won't starting on these points without any feedback from @stefanscherzinger