Robot cranky and wobbly

Hello,

I have setup a simulation using a moveit2 and Isaac executes the plan coming from the joint executor by consuming the /joint_command topic as shown in this tutorial How To Command Simulated Isaac Robot — MoveIt Documentation: Rolling documentation.

However, the robot does not really follow the trajectory that is planned by moveit2. There are two main issues, first of all the robot does a lot of cranky movement and halts.

Furthermore, specifically joint_4 seems to just do random revolutions even though in the movement plan it’s always set to 0 (which is also in the planner constraints). I have played around with damping and stiffness which are both very high now but it seems to just behave the same. I also set the max joint limits in the UI without success.

Can someone help with making the robot behave more predictibly? It looks like the physics engine is trying to simulate the effect of the movement on the robot body, I don’t really need that as I expect the robot to have the right limits to prevent that.

Attached a small video.

Screencast from 24.02.2024 19_30_56

For anyone struggling with this, what finally worked for me were two things:

Set damping and stiffness for each joint to the following values:

Damping: 100000000376832.0
Stiffness: 999999986991104.0

Other parameters unchanged.

Then I added a mass to each Link. This was initially 0 and I filled the values with some information. I did not have the right mass values so I added some approximate estimate and it just works.

You should be able to find the link mass in the robot manufacturer guide.

Now the motion is smooth.

2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.