I would like to verify the torque requirements of an actively held pitch joint using Isaac Sim. I have rigged the robot including the end effector before which we have the pitch joint.
The end effector includes a sliding mechanism with a parallel mechanism to hold the end level and move it down as it reaches the end.
From the masses and COM in CAD drawings that I have also added to the Isaac Sim model, I have been able to roughly calculate the expected load torque for the pitch joint to hold the end effector level (i.e. compensate for gravity). This is between 80-118 Nm.
When I start the simulation with the sliding mechanism retracted the Effort reported by the “Isaac Read Effort Node” correctly reports 80 Nm and I get the same value withget_measured_joint_forces()
However, when the sliding mechanism reaches the end and moves down, resulting in an intended collision between the sliding mechanism and the bottom plate, the pitch joint Effort jumps from 110 all the way up to 150 Nm which is incorrect. The jump just happens at the very end, exactly when some collision forces starts to come into play.
Please see a video of the mechanism here including the torque measurement in the top left corner: https://drive.google.com/file/d/1MRG4Shz7w4a_VHc3uz9qnOnA3fY4z0kV/view?usp=sharing
Why do I see this jump? I have no other joints with drivers other than the pitch joint.
I am running Isaac Sim 5.1.0 on Ubuntu 24.04 with an RTX 5090, driver Version: 580.105.08 CUDA Version: 13.0.