Robot Shaking

20 views
Skip to first unread message

Abed Al Rahman Al Mrad

unread,
May 25, 2022, 7:18:26 PM5/25/22
to ROS/Orocos Robot Control Special Interest Group
Hello guys,

I have created a model for the Allegro hand and I am trying to control it in Gazebo simulator using ros-control. The problem is that the hand is randomly shaking before applying the control and this shaking is increasing after applying the control.
Here's a brief description of what I have done: I have designed the allgero hand's CAD in onshape then created a urdf for it using onshape-to-robot tool which was converted into an sdf using a tool provided by gazebo.
Now I have the robot-description parameter set to the urdf file (where I specified the transmissions for the joints to be controlled which in this case are all of the 16 joints of the hand, using the effort interface), while the sdf is used to spawn the robot in the gazebo environment. Finally I specified to initial pid gains for the jointPosition controllers in a yaml file. 
I am launching the gazebo world along with the model to be spawned in a single launch file and I am loading the controllers manager and the controllers yaml file in a separate launch file.
I tried to add damping and friction to the joints and i tried to tune the pid gains, but while I am able to reach the desired joints positions using the rqt_gui, the shaking is always there and I am not able to get rid of it. Any help would be appreciated and please let me know if you need more info. Thanks!

Sincerely,
Abed

Leopold Palomo-Avellaneda

unread,
May 26, 2022, 5:40:21 PM5/26/22
to Abed Al Rahman Al Mrad, ROS/Orocos Robot Control Special Interest Group
Hi,


El 26/5/22 a les 1:18, Abed Al Rahman Al Mrad ha escrit:
> Hello guys,
>
> I have created a model for the Allegro hand and I am trying to control
> it in Gazebo simulator using ros-control. The problem is that the hand
> is randomly shaking before applying the control and this shaking is
> increasing after applying the control.

good. Is it public? Can we see how did you configure it?

[...]

> I tried to add damping and friction to the joints and i tried to tune
> the pid gains, but while I am able to reach the desired joints positions
> using the rqt_gui, the shaking is always there and I am not able to get
> rid of it. Any help would be appreciated and please let me know if you
> need more info. Thanks!

The problem that you have IMHO is because of the dynamic engine of
gazebo. AFAIK, gazebo is using by default ode and this one, and probably
others, has some numerical issues if the body to simulate is small.

The Allegro hand has and small weight and size, so, the inertial matrix
has small values. When you multiply the matrices a lot of times, you can
have numerical issues.

I think that you could try to “enlarge” your model (a hand of one meter
and 20 kg) and try to check what happens.

Best regards,

Leopold
--
--
Linux User 152692 GPG: 05F4A7A949A2D9AA
Catalonia
-------------------------------------
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
Reply all
Reply to author
Forward
0 new messages