Closed JohannesPankert closed 2 years ago
Hi @JohannesPankert,
thanks for the report. The whole issue might be related to Gazebo Joints Move by Themselves. The potentially bugged implementation of Gazebo's GetForceTorque()
function will also mess up the calculation of F_ext
.
It seems that the cartesian_impedance_example_controller
is "strong" enough to cope with this error.
We keep investigating the issue, however, because of the intricacy of the bug, there is no estimate how long that will take. Sorry
Hi @gollth, I investigated the problem a bit more and I found the issue. There is a problem in the calculation of the external torques in the gazebo plugin. The joint commands coming from the controller are gravity compensated but the measured torques in gazebo are not. I propose the following fix that solves the issue for me: #198
Fixed in #198
When starting the simulation with the command provided in the tutorial, a large external wrench is reported when the robot is not in contact.
Launch command:
Measured wrench:
The measured wrench changes when the robot is in contact with the environment. The
cartesian_impedance_example_controller
works fine and has no visible tracking error. After calling theset_load
service and attaching a fake mass to the robot, the controller has a tracking error, andF_ext
changes as well