0 purchases
robot descriptions 1.12.0
Robot descriptions in Python
Import open source robot descriptions as Python modules.
Importing a description for the first time automatically downloads and caches files for future imports. Most Awesome Robot Descriptions are available. All of them load successfully in respectively MuJoCo (MJCF) or Pinocchio, iDynTree, PyBullet and yourdfpy (URDF).
Installation
From conda-forge
conda install -c conda-forge robot_descriptions
From PyPI
pip install robot_descriptions
Usage
The library provides load_robot_description functions that return an instance of a robot description directly usable in the corresponding software. For example:
from robot_descriptions.loaders.pinocchio import load_robot_description
robot = load_robot_description("upkie_description")
Loaders are implemented for the following robotics software:
Software
Loader
iDynTree
robot_descriptions.loaders.idyntree
MuJoCo
robot_descriptions.loaders.mujoco
Pinocchio
robot_descriptions.loaders.pinocchio
PyBullet
robot_descriptions.loaders.pybullet
RoboMeshCat
robot_descriptions.loaders.robomeshcat
yourdfpy
robot_descriptions.loaders.yourdfpy
Loading will automatically download the robot description if needed, and cache it to a local directory.
Import as submodule
You can also import a robot description directly as a submodule of robot_descriptions:
from robot_descriptions import my_robot_description
The import will automatically download the robot description if you don't have it already, and cache it to a local directory. The submodule then provides the following paths:
URDF_PATH / MJCF_PATH
Path to the main URDF/MJCF file of the robot description.
PACKAGE_PATH
Path to the root of the robot description package.
REPOSITORY_PATH
Path to the working directory of the git repository hosting the robot description.
Some robot descriptions include additional fields. For instance, the iiwa14_description exports URDF_PATH_POLYTOPE_COLLISION with more detailed collision meshes.
Examples
Loading a robot description:
iDynTree
MuJoCo
Pinocchio
PyBullet
RoboMeshCat
yourdfpy
Visualizing a robot description:
MeshCat
MuJoCo
PyBullet
RoboMeshCat
yourdfpy
Command line tool
The command line tool can be used to visualize any of the robot descriptions below. For example:
robot_descriptions show solo_description
Descriptions
Available robot descriptions (gallery) are listed in the following categories:
Arms
Bipeds
Dual arms
Drones
Educational
End effectors
Humanoids
Mobile manipulators
Quadrupeds
The DOF column denotes the number of actuated degrees of freedom.
Arms
Name
Robot
Maker
DOF
Format
edo_description
e.DO
Comau
6
URDF
fanuc_m710ic_description
M-710iC
Fanuc
6
URDF
fr3_mj_description
FR3
Franka Robotics
7
MJCF
gen2_description
Gen2
Kinova
6
URDF
gen3_description
Gen3
Kinova
6
URDF
gen3_mj_description
Gen3
Kinova
7
MJCF
iiwa14_description
iiwa 14
KUKA
7
URDF
iiwa14_mj_description
iiwa 14
KUKA
7
MJCF
iiwa7_description
iiwa 7
KUKA
7
URDF
panda_description
Panda
Franka Robotics
8
URDF
panda_mj_description
Panda
Franka Robotics
8
MJCF
poppy_ergo_jr_description
Poppy Ergo Jr
Poppy Project
6
URDF
sawyer_mj_description
Sawyer
Rethink Robotics
7
MJCF
ur10_description
UR10
Universal Robots
6
URDF
ur10e_mj_description
UR10e
Universal Robots
6
MJCF
ur3_description
UR3
Universal Robots
6
URDF
ur5_description
UR5
Universal Robots
6
URDF
ur5e_mj_description
UR5e
Universal Robots
6
MJCF
viper_mj_description
ViperX
Trossen Robotics
8
MJCF
widow_mj_description
WidowX
Trossen Robotics
8
MJCF
xarm7_mj_description
xArm7
UFACTORY
7
MJCF
z1_description
Z1
UNITREE Robotics
6
URDF
Bipeds
Name
Robot
Maker
DOF
Format
bolt_description
Bolt
ODRI
6
URDF
cassie_description
Cassie
Agility Robotics
16
URDF
cassie_mj_description
Cassie
Agility Robotics
16
MJCF
rhea_description
Rhea
Gabrael Levine
7
URDF
spryped_description
Spryped
Benjamin Bokser
8
URDF
upkie_description
Upkie
Tast's Robots
6
URDF
Dual arms
Name
Robot
Maker
DOF
Format
aloha_mj_description
Aloha 2
Trossen Robotics
14
MJCF
baxter_description
Baxter
Rethink Robotics
15
URDF
nextage_description
NEXTAGE
Kawada Robotics
15
URDF
poppy_torso_description
Poppy Torso
Poppy Project
13
URDF
yumi_description
YuMi
ABB
16
URDF
Drones
Name
Robot
Maker
DOF
Format
cf2_description
Crazyflie 2.0
Bitcraze
0
URDF
cf2_mj_description
Crazyflie 2.0
Bitcraze
6
MJCF
skydio_x2_description
Skydio X2
Skydio
6
URDF
skydio_x2_mj_description
Skydio X2
Skydio
6
MJCF
Educational
Name
Robot
DOF
Format
double_pendulum_description
Double Pendulum
2
URDF
finger_edu_description
FingerEdu
3
URDF
simple_humanoid_description
Simple Humanoid
29
URDF
trifinger_edu_description
TriFingerEdu
9
URDF
End effectors
Name
Robot
Maker
DOF
Format
allegro_hand_description
Allegro Hand
Wonik Robotics
16
URDF
allegro_hand_mj_description
Allegro Hand
Wonik Robotics
16
MJCF
barrett_hand_description
BarrettHand
Barrett Technology
8
URDF
leap_hand_v1
LEAP Hand v1
Carnegie Mellon University
16
URDF
robotiq_2f85_description
Robotiq 2F-85
Robotiq
1
URDF
robotiq_2f85_mj_description
Robotiq 2F-85
Robotiq
1
MJCF
shadow_dexee_mj_description
Shadow DEX-EE
The Shadow Robot Company
12
MJCF
shadow_hand_mj_description
Shadow Hand
The Shadow Robot Company
24
MJCF
Humanoids
Name
Robot
Maker
DOF
Format
atlas_drc_description
Atlas DRC (v3)
Boston Dynamics
30
URDF
atlas_v4_description
Atlas v4
Boston Dynamics
30
URDF
draco3_description
Draco3
Apptronik
25
URDF
ergocub_description
ergoCub
IIT
57
URDF
g1_description
G1
UNITREE Robotics
37
URDF
g1_mj_description
G1
UNITREE Robotics
37
MJCF
h1_description
H1
UNITREE Robotics
25
URDF
h1_mj_description
H1
UNITREE Robotics
25
MJCF
icub_description
iCub
IIT
32
URDF
jaxon_description
JAXON
JSK
38
URDF
jvrc_description
JVRC-1
AIST
34
URDF
jvrc_mj_description
JVRC-1
AIST
34
MJCF
op3_mj_description
OP3
ROBOTIS
20
MJCF
r2_description
Robonaut 2
NASA JSC Robotics
56
URDF
romeo_description
Romeo
Aldebaran Robotics
37
URDF
sigmaban_description
SigmaBan
Rhoban
20
URDF
talos_description
TALOS
PAL Robotics
32
URDF
valkyrie_description
Valkyrie
NASA JSC Robotics
59
URDF
Mobile manipulators
Name
Robot
Maker
DOF
Format
eve_r3_description
Eve R3
Halodi
23
URDF
fetch_description
Fetch
Fetch Robotics
14
URDF
ginger_description
Ginger
Paaila Technology
49
URDF
pepper_description
Pepper
SoftBank Robotics
17
URDF
pr2_description
PR2
Willow Garage
32
URDF
reachy_description
Reachy
Pollen Robotics
21
URDF
stretch_description
Stretch RE1
Hello Robot
14
URDF
sretch_mj_description
Stretch 2
Hello Robot
14
MJCF
sretch_3_mj_description
Stretch 3
Hello Robot
14
MJCF
tiago_description
TIAGo
PAL Robotics
48
URDF
Quadrupeds
Name
Robot
Maker
DOF
Format
a1_description
A1
UNITREE Robotics
12
URDF
a1_mj_description
A1
UNITREE Robotics
12
MJCF
aliengo_description
Aliengo
UNITREE Robotics
12
URDF
aliengo_mj_description
Aliengo
UNITREE Robotics
12
MJCF
anymal_b_description
ANYmal B
ANYbotics
12
URDF
anymal_b_mj_description
ANYmal B
ANYbotics
12
MJCF
anymal_c_description
ANYmal C
ANYbotics
12
URDF
anymal_c_mj_description
ANYmal C
ANYbotics
12
MJCF
b1_description
B1
UNITREE Robotics
12
URDF
spot_mj_description
Spot
Boston Dynamics
12
MJCF
go1_description
Go1
UNITREE Robotics
12
URDF
go1_mj_description
Go1
UNITREE Robotics
12
MJCF
go2_description
Go2
UNITREE Robotics
12
URDF
go2_mj_description
Go2
UNITREE Robotics
12
MJCF
hyq_description
HyQ
IIT
12
URDF
laikago_description
Laikago
UNITREE Robotics
12
MJCF, URDF
mini_cheetah_description
Mini Cheetah
MIT
12
URDF
minitaur_description
Minitaur
Ghost Robotics
16
URDF
solo_description
Solo
ODRI
12
URDF
Contributing
New robot descriptions are welcome! Check out the guidelines then open a PR.
Thanks
Thanks to the maintainers of all the git repositories that made these robot descriptions available.
Citation
If you use this project in your works, please cite as follows:
@software{robot_descriptions_py,
title = {{robot_descriptions.py: Robot descriptions in Python}},
author = {Caron, Stéphane and Romualdi, Giulio and Kozlov, Lev and Ordoñez Apraez, Daniel Felipe and Tadashi Kussaba, Hugo and Bang, Seung Hyeon and Zakka, Kevin and Schramm, Fabian},
license = {Apache-2.0},
url = {https://github.com/robot-descriptions/robot_descriptions.py},
version = {1.12.0},
year = {2024}
}
See also
Awesome Robot Descriptions: curated list of robot descriptions in URDF, Xacro or MJCF formats.
drake_models: collection of URDF and SDF descriptions curated for the Drake framework.
MuJoCo Menagerie: collection of MJCF robot descriptions curated for the MuJoCo physics engine.
robot_descriptions.cpp: package to use robot_descriptions.py in C++.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.