diff --git a/CHANGELOG.md b/CHANGELOG.md index b5fae3c..7768b70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ All notable changes to this project will be documented in this file. - Description: SO ARM 101 (MJCF) (thanks to @haixuantao) - Description: SO ARM 101 (URDF) (thanks to @haixuantao) - Description: WL P311D (URDF) +- Description: WL P311E (URDF) ### Changed diff --git a/README.md b/README.md index 4368565..714869d 100644 --- a/README.md +++ b/README.md @@ -306,6 +306,7 @@ The DOF column denotes the number of actuated degrees of freedom. | `rsk_mj_description` | RSK Omnidirectional | Robot Soccer Kit | MJCF | MIT | | `upkie_description` | Upkie | Stéphane Caron | URDF | Apache-2.0 | | `wl_p311d_description` | WL P311D | LimX Dynamics | URDF | [Apache-2.0](https://github.com/limxdynamics/robot-description/blob/a097533372a08298d45af391cbdfc2fd2dc3da6f/LICENSE) | +| `wl_p311e_description` | WL P311E | LimX Dynamics | URDF | [Apache-2.0](https://github.com/limxdynamics/robot-description/blob/a097533372a08298d45af391cbdfc2fd2dc3da6f/LICENSE) | ## Contributing diff --git a/robot_descriptions/_descriptions.py b/robot_descriptions/_descriptions.py index ed047f0..875b6ec 100644 --- a/robot_descriptions/_descriptions.py +++ b/robot_descriptions/_descriptions.py @@ -229,6 +229,7 @@ def has_urdf(self) -> bool: "viper_mj_description": Description(Format.MJCF, tags={"arm"}), "widow_mj_description": Description(Format.MJCF, tags={"arm"}), "wl_p311d_description": Description(Format.URDF, tags={"quadruped"}), + "wl_p311e_description": Description(Format.URDF, tags={"quadruped"}), "xarm7_mj_description": Description(Format.MJCF, tags={"arm"}), "yam_mj_description": Description(Format.MJCF, tags={"arm"}), "yumi_description": Description(Format.URDF, tags={"dual_arm"}), diff --git a/robot_descriptions/wl_p311d_description.py b/robot_descriptions/wl_p311d_description.py index f65fd46..e80d0b0 100644 --- a/robot_descriptions/wl_p311d_description.py +++ b/robot_descriptions/wl_p311d_description.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # SPDX-License-Identifier: Apache-2.0 -# Copyright 2022 Stéphane Caron +# Copyright 2025 Inria """WL P311D description.""" diff --git a/robot_descriptions/wl_p311e_description.py b/robot_descriptions/wl_p311e_description.py new file mode 100644 index 0000000..65b0faa --- /dev/null +++ b/robot_descriptions/wl_p311e_description.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2025 Inria + +"""WL P311E description.""" + +from os import getenv as _getenv +from os import path as _path + +from ._cache import clone_to_cache as _clone_to_cache + +REPOSITORY_PATH: str = _clone_to_cache( + "limxdynamics_robot-description", + commit=_getenv("ROBOT_DESCRIPTION_COMMIT", None), +) + +PACKAGE_PATH: str = _path.join(REPOSITORY_PATH, "wheellegged", "WL_P311E") + +URDF_PATH: str = _path.join(PACKAGE_PATH, "urdf", "robot.urdf")