rendering and control of Nova5 arms with robotiq 2F85 gripper within Isaac Sim 4.2

Source: Isaac Sim RMPflow controller

Presteps

Implement URDF description and add controllers

NVIDIA provides a tutorial for Turlebot URDF import. You could implement the Robotiq 2F85 gripper by this URDF, or just use the usd file from NVIDIA, PATH: omniverse://localhost/NVIDIA/Assets/Isaac/4.2/Isaac/Robots/Robotiq/2F-85/, if you are installing the server on local machine. Here is a guideline of assembling the gripper to a 6-joint arm. You might be aware that the gripper is hard to control, you could follow this tutorial for a closed-loop setting up.

Or you could use my urdf for dobot nova5 with robotiq 2f85 gripper.

Controllers

Before adding controllers, ensure the articulation is correctly set. For my case, I have to correctly set the articulation root to be the fixed manipulator, you could check the articulation root by filtering the properties in stage. Articulation root filter

You should keep the root should be either to:

  1. the fixed joint that connects the articulation base to the world, or

  2. an ancestor of the fixed joint in the USD hierarchy. The second option allows creating multiple articulations from a single root component added to the scene: Each descendant fixed joint will be defining an articulation base link.

Articulation root filter

Then we add the articulation robot controllers to the robot. Before running the simulation, it is wise to determine the damping, stiffness, max force etc, here is a helpful extension for tuning them.

$\tau = \text{stiffness} * (q - q_{\text{target}}) + \text{damping} * (\dot{q} - \dot{q}_{\text{target}})$

where $q$ and $\dot{q}$ are the joint position and velocity, respectively. Note that when $\dot{q}_{\text{target}} = 0$, the system reduces to a conventional PD controller on the joint position.

This formula applies for both revolute and prismatic joints.

The joint max force will act as a clamp for $\tau$, and finally, the drive type will dictate if the effort will be applied directly as a torque/force or if it will be converted into an acceleration applied to the bodies connected to the joint.

TO DO