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
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 iiwa_description
exports URDF_PATH_POLYTOPE_COLLISION
with more detailed collision meshes.
Examples
Loading a robot description:
Visualizing 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 |
draco3_description |
Draco3 | Apptronik | 25 | URDF |
ergocub_description |
ergoCub | IIT | 57 | 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.
See also
Robot descriptions in other languages:
robot_descriptions.cpp |
---|
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
File details
Details for the file robot_descriptions-1.4.1.tar.gz
.
File metadata
- Download URL: robot_descriptions-1.4.1.tar.gz
- Upload date:
- Size: 33.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.26.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eca6200a6f8a315d4d36064fb06032f88bfa6b64f056ea0fb7d68e2be229ebf5 |
|
MD5 | 8823f03b2bcfea43f4b384458d61ecc0 |
|
BLAKE2b-256 | e3cef536e3d01d16cd62499945b89927920ada36209f4e61b42f87b602a1594e |
File details
Details for the file robot_descriptions-1.4.1-py3-none-any.whl
.
File metadata
- Download URL: robot_descriptions-1.4.1-py3-none-any.whl
- Upload date:
- Size: 79.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.26.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d98d9b5f43abbb25f7e2282906e3a4469b5f86b4b393bdf29b0c7aa5871f3cdc |
|
MD5 | 2b46151eb659cf8b09f4e584e4aace65 |
|
BLAKE2b-256 | de216172d840ed148b6cc6a6eb807f36786654407b09eb0eb570b7a26e04042d |