The Quadruped is used to simulate 12 DOF quadrupeds such as the Unitree A1, the Unitree Go1 and the ANYmal C in Omniverse Isaac Sim, it also includes a basic 12 DOF quadruped controller for basic movements. Use this extension to create A1 or Go1 robot in the Stage and use the controller provided or subscribe to a external controller through ROS.
This extension is enabled by default. If it is ever disabled, it can be re-enabled from the Extension Manager
by searching for
Tutorials & Examples¶
The following tutorials and examples showcase how to best use this extension:
Keyboard Mappings (for all examples):
To run the Example:
Go to the top menu bar and click Isaac Examples > Quadruped
Open Source Codebutton to view the source code. The source code illustrates how to create, add, and control the sensor using the Python API.
PLAYbutton to begin simulating
RESETbutton to reset the simulation to the initial state
ROS noetic is required, and
roscore must be running for ROS related standalones
This standalone demonstrates an Unitree A1 robot trotting in a warehouse environment with the option to insert a list of waypoints and headings for the robot to follow using this command:
./python.sh standalone_examples/api/omni.isaac.quadruped/a1_standalone.py --waypoint standalone_examples/api/omni.isaac.quadruped/waypoints.json
The waypoint is specified in a json file format that contains “x”, “y” for global coordinates, and “rad” for the heading direction.
This standalone demonstrates an Unitree A1 robot in a warehousing setting which subscribing to an external torque controller for joint torque control while publishing imu, foot force, joint position, velocity, and body odometry information using this command:
This standalone demonstrates an Unitree A1 robot in a custom scene publishing stereo ROS camera and IMU data for visual image odometry in ROS 1. Users can connect the isaac sim topics to an external ROS vision inertial odometry package for doing odometry using this command:
For the ros package set up information, please see: Visual Inertial Odometry with Quadruped
This standalone demonstrates an Unitree A1 robot in a custom scene publishing stereo ROS2 camera data for visual image odometry in ROS 2 using this command:
This standalone demonstrates an Unitree Go1 robot on the ground plane publishing foot position and foot forces, which can be plotted using external ros packages.
This standalone demonstrates an ANYmal C robot that is controlled by a neural network policy. The rough terrain policy was trained in IsaacGym and takes as input the state of the robot, the commanded base velocity, and the surrounding terrain and outputs joint position targets.