robot-descriptions / robot_descriptions.py

Access 90+ robot descriptions from the main Python robotics frameworks
Apache License 2.0
268 stars 17 forks source link

Add variant keyword to `load_robot_description` #62

Closed stephane-caron closed 2 months ago

stephane-caron commented 6 months ago

Some descriptions have variants (like the "left" and "right" versions of the Allegro hand) that are currently only available when importing submodules. We could add a variant keyword argument to load_robot_description so that users can access it from there as well.

kevinzakka commented 6 months ago

Also useful for loading end-effector-less versions of a robot (e.g. Panda, xArm7) which ship with an end-effector.

lvjonok commented 2 months ago

I'd like to propose another feature request. Since Pinocchio v3.0.0, it's possible to use MJCF to create models. However, the Pinocchio loader in robot_descriptions currently utilizes the buildFromURDF method.

Do you think this could be better addressed using a variant keyword, or should we handle it with an if-statement to check whether module.MJCF_PATH or module.URDF_PATH is available?

stephane-caron commented 2 months ago

Thanks for proposing this. I'd say we separate variants (e.g. left-handed, right-handed, with/without end-effector, etc., of a given robot) from formats (URDF/MJCF) for now. We can then go for your second proposal https://github.com/robot-descriptions/robot_descriptions.py/pull/101.