Import open source robot description as Python modules.
Project description
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
pip install robot_descriptions
Other languages
| robot_descriptions.cpp |
|---|
Usage
Import the robot description you are interested in 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 iiwa_description exports URDF_PATH_POLYTOPE_COLLISION with more detailed collision meshes.
Loaders
The library also provides a load_robot_description function for each of 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 |
The function loads a robot description from its name, and returns an instance directly usable in the target software. For example:
from robot_descriptions.loaders.pinocchio import load_robot_description
robot = load_robot_description("upkie_description")
Examples
Load a robot description:
Visualize a robot description:
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
- Mobile manipulators
- Humanoids
- Quadrupeds
- Wheeled
The DOF column denotes the number of actuated degrees of freedom.
Arms
| Name | Robot | Maker | DOF | Format |
|---|---|---|---|---|
edo_description |
e.DO | Comau | 6 | URDF |
gen2_description |
Gen2 | Kinova | 6 | URDF |
gen3_mj_description |
Gen3 | Kinova | 7 | MJCF |
iiwa_description |
iiwa | KUKA | 7 | URDF |
panda_description |
Panda | Franka Emika | 8 | URDF |
panda_mj_description |
Panda | Franka Emika | 8 | MJCF |
poppy_ergo_jr_description |
Poppy Ergo Jr | Poppy Project | 6 | URDF |
ur10_description |
UR10 | Universal Robots | 6 | URDF |
ur3_description |
UR3 | Universal Robots | 6 | URDF |
ur5_description |
UR5 | Universal Robots | 6 | URDF |
ur5e_mj_description |
UR5e | Universal Robots | 6 | 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 |
spryped_description |
Spryped | Benjamin Bokser | 8 | URDF |
upkie_description |
Upkie | Tast's Robots | 6 | URDF |
Dual arms
| Name | Robot | Maker | DOF | Format |
|---|---|---|---|---|
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 |
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 |
End effectors
| Name | Robot | Maker | DOF | Format |
|---|---|---|---|---|
allegro_hand_description |
Allegro Hand | Wonik Robotics | 16 | URDF |
barrett_hand_description |
BarrettHand | Barrett Technology | 8 | URDF |
robotiq_2f85_description |
Robotiq 2F-85 | Robotiq | 1 | URDF |
robotiq_2f85_mj_description |
Robotiq 2F-85 | Robotiq | 1 | 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 |
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 |
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 |
tiago_description |
TIAGo | PAL Robotics | 48 | URDF |
Quadrupeds
| Name | Robot | Maker | DOF | Format |
|---|---|---|---|---|
a1_mj_description |
A1 | UNITREE Robotics | 12 | MJCF |
a1_description |
A1 | UNITREE Robotics | 12 | URDF |
b1_description |
B1 | UNITREE Robotics | 12 | URDF |
aliengo_description |
Aliengo | UNITREE Robotics | 12 | MJCF, URDF |
anymal_b_mj_description |
ANYmal B | ANYbotics | 12 | MJCF |
anymal_b_description |
ANYmal B | ANYbotics | 12 | URDF |
anymal_c_mj_description |
ANYmal C | ANYbotics | 12 | MJCF |
anymal_c_description |
ANYmal C | ANYbotics | 12 | URDF |
go1_mj_description |
Go1 | UNITREE Robotics | 12 | MJCF |
go1_description |
Go1 | UNITREE Robotics | 12 | URDF |
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file robot_descriptions-1.3.1.tar.gz.
File metadata
- Download URL: robot_descriptions-1.3.1.tar.gz
- Upload date:
- Size: 31.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.22.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
773fcfb89b609143d0c8e9be792df777e59f50c537c1b8fe0816bdd4c444c41a
|
|
| MD5 |
ee31296cf4bc2aaa6321f3ace9f35934
|
|
| BLAKE2b-256 |
b0796488c3c81c32d3b546613cd03c981aaeed82fa728fa8c7922a26b31856bb
|
File details
Details for the file robot_descriptions-1.3.1-py3-none-any.whl.
File metadata
- Download URL: robot_descriptions-1.3.1-py3-none-any.whl
- Upload date:
- Size: 73.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.22.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be546e49edf266d730067152c3da9b0264c7c38a23caf2a97690305af79a1b75
|
|
| MD5 |
8fa8a2c325cb922616dacfce89db624a
|
|
| BLAKE2b-256 |
9ca4ccff5b29039df55a05922409e3243edeb287dfcfe9a403cde7d8153d8274
|