ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

Just for your information, this question is better suited on Gazebo Answers and it looks like your issue is common and have been answered multiple times.

Anyways, a robot generally shakes due to bad inertia matrices, bad physics settings, problems with joints, and etc. The more complex the robot, the harder it is to prevent it from shaking. In Gazebo, the shaking occurs when the arguments within the parameters are poorly configured. This could be caused by model parameters, physics parameters, controllers, or a combination of three. Within those three combinations, the shaking can be caused from having the wrong joint constraints to having the wrong torque or friction value. And if there are multiple parameters, it could be more than one of the parameters. This is why it's better to input parameters with arguments incrementally rather than inputting all the arguments into every parameter at once.

Just start doing process of elimination and start disabling each parameter one by one until the robot stops shaking. After that, if the shaking still occurs, check the intertia matrices, damping to the links &/ joints, add a small min_Depth value, 10^-4, or add a maxVel value as a threshold to prevent the robot from moving too fast. Oh, having the latest version for Gazebo is good too since you wouldn't want an outdated physics engine that defies the law of physics in reality!