Prepare Robot Model
Using Provided Robot Models
Isaac Sim provides various robot models from popular manufacturers like Universal Robots, Unitree, Franka Robotics etc. by default.
You can access these models by clicking Window -> Browsers -> Isaac Sim Assets.
There should be a new tab appeared next to the Content tab. You may have to wait for a while for Isaac Sim to load all the assets. There are plenty of robot models here. But if you need your own robot to be implemented, please follow below general setup guide.
Building Robot model
Prerequisites
You can make any robot with all the shapes and sizes you'd like, but there are some rules that need to be addressed.
- The name of your robot prim must match the name from StellarX.
- Robot must contain only one articulation root.
- All the links in the robot must be rigid-bodies. Collision or weight settings is not mandatory, but is recommanded for accurate physics simulation.
- Closed-loop articulation is not supported. You can exclude some joints from articulation, but this may result in inaccurate simulation result.
- ( Add more if needed )
Most of the time, you'll be using urdf format. If you wish to use urdf, please refer to this guide. In this tutorial, we'll be rigging the robot ourselves. Before starting, please download the result robot model from 3D Model Creation guide.
Making Robot Model
- Open up new file. From main screen, Click
File->Import.
- Go to downloaded file's directory. Select the file and enable
Use Meter as World Unit. Click box next toUp-axisand selectZ-upand import. The result should look like bottom picture.
- If you take a look at the file's directory, you'll see a new
.usdformat file with the same name. ClickFile->Openand open the.usdfile. You'll be then able to see the full robot model.
- Open up all the joint prims and you'll see the full stage tree. Right-click on the empty part of the stage and click
Create->Scope. This will create scope for organizing the stage. Create two scopes and name themlinksandjoints.
- Drag all the links to
linksscope and delete joint prims.
- Select all the links and right-click. Click
Add->Physics->Rigid Bodyto make them rigid-bodies. You can verify it by scrolling down on the property tab.
- Next, open the link prim and select mesh prim. Right-click and click
Add->Physics->Collider. This will add collider to mesh and you can also verify it by scrolling down. Default collider type istrimesh, but since the parent prim is rigid-body, it is automatically set toConvex Hull. Repeat this for all the other link meshes.
- Now, we need to add joints. First, select
link0and right-click. ClickCreate->Physics->Joint->Fixed Joint. This will createFixedJointunderlink0. This joint is like an anchor that fixes base link of the robot to the world. You can see this by looking at the Body settings ofFixedJoint. Empty Body 0 means it is fixed to world. You can explicitly set this To/Worldprim.
- Next, we will add revolute joint. Select
link0and then ctrl-clicklink1. Order matters in this part. Selectinglink1thenlink0will result inlink0trying to revolute relative tolink1and not vice versa. Right-click onlink1and clickCreate->Physics->Joint->Revolute Joint. This will create revolute joint underlink1.
- Rename joint to
J1for consistency. Right-click onJ1and selectAdd->Physics->Angular Drive. We can only control joints with drive property, and joints without them can only move passively.
- Repeat the same process for the other joints. And move them to
jointsscope.
- Select all the active joints and scroll down to
Driveproperty. SetStiffnessandDampingto100000.0and10000.0, resplectively. This is only to set the joints fixed when not using Stellar X. You can choose arbitrary values, only ifStiffnessis higher thanDamping.
- Select
J1and scroll down toRevolute Jointsection. ClickAxisand selelct Z. Repeat same process forJ4andJ6.
- Finally, select FixedJoint and right-click. Select
Add->Physics->Articulation Root.Articulation Rootis what defines robot in Isaac Sim. For more information, check out this documentation.
And that's it! You just made your own robot model. Save and open up new file. Click Create -> Environments -> Flat Grid. Drag the robot model file to Stage on the right, and you'll see the robot in the world!
(Insert example gif here)
Change the robot's name to your StellarX's robot name and click Play button on the left side. Jog the robot via StellarX and you'll see the robot is moving accordingly. You can also write your own python script to move the robot at your need.
You can download final robot model below.
Conclusion
In this tutorial, we set up robot eligible for Isaac Sim environment. Isaac Sim is a powerful tool for robot simulation with numerous features. Check out official Isaac Sim Documentation for more information. If you have questions regarding Isaac Sim, please check out Isaac Sim Forum.

