Behaviour of Gazebo using SetVelocity on a robot arm

asked 2015-04-16 04:45:14 -0500

LyMich gravatar image

updated 2015-04-16 07:34:37 -0500

Hi, I'm stuck in the same situation described in the open post here. I've tried to interact with my simulated robot arm in a lot of ways, but I still can't find a solution to control it through velocity and not only by position. I also tried the solution suggested in the last answer of Felix (implementation of a fake inertia in my urdf model) but it didn't work either.

What commands do I have to use to set the velocity of a joint? I tried some combinations of SetPosition(), SetVelocity(), SetVelocityLimit() and SetForce() (I've just update gazebo2 to gazebo5 to try to solve this situation) but none of them was the right one. If I don't limit the velocity with SetVelocityLimit() and use only SetVelocity() and SetForce(), the velocity of my arm joint grows till the limit and the model begins to dismantle itself. But, if I limit it, the robot in gazebo move at a velocity related to the final position.

Any clues to solve this situation? On client side what's the right way to send the velocity (i.e. send first a packet with non-zero velocity and in a second instant the final position with zero velocity)?

Thanks in advance to anyone that can help.

Edit: I saw the answer related to SetMaxForce here, so I try to put that instruction again, like in gazebo2, I hope that will solve part of my problems.

edit retag flag offensive close merge delete