diff --git a/CHANGELOG.md b/CHANGELOG.md index aac9065..9b1e3b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,9 +6,10 @@ All notable changes to this project will be documented in this file. ### Added -- Description: Unitree B2 - Description: Left and right LEAP hand (MJCF) (thanks to @kevinzakka) - Description: PAL Talos (MJCF) (thanks to @kevinzakka) +- Description: SO-ARM100 +- Description: Unitree B2 ### Changed diff --git a/README.md b/README.md index a5c8259..f8b027c 100644 --- a/README.md +++ b/README.md @@ -145,6 +145,7 @@ The DOF column denotes the number of actuated degrees of freedom. | `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 | +| `so_arm100` | SO-ARM100 | The Robot Studio | 6 | URDF | | `ur10_description` | UR10 | Universal Robots | 6 | URDF | | `ur10e_mj_description` | UR10e | Universal Robots | 6 | MJCF | | `ur3_description` | UR3 | Universal Robots | 6 | URDF | diff --git a/robot_descriptions/_descriptions.py b/robot_descriptions/_descriptions.py index 32ff1ba..12d6b03 100644 --- a/robot_descriptions/_descriptions.py +++ b/robot_descriptions/_descriptions.py @@ -120,6 +120,7 @@ def has_urdf(self) -> bool: "simple_humanoid_description": Description(Format.URDF), "skydio_x2_description": Description(Format.URDF), "skydio_x2_mj_description": Description(Format.MJCF), + "so_arm100": Description(Format.URDF), "solo_description": Description(Format.URDF), "spryped_description": Description(Format.URDF), "stretch_description": Description(Format.URDF), diff --git a/robot_descriptions/_repositories.py b/robot_descriptions/_repositories.py index 2392911..b4f8a24 100644 --- a/robot_descriptions/_repositories.py +++ b/robot_descriptions/_repositories.py @@ -230,6 +230,11 @@ class Repository: commit="0e488ee4708155a71b2a92d05305a9186b543593", cache_path="simple_humanoid_description", ), + "SO-ARM100": Repository( + url="https://github.com/TheRobotStudio/SO-ARM100/tree/main", + commit="8967344301571dfa22660c73a901ad00acd6ee91", + cache_path="SO-ARM100", + ), "spryped": Repository( url="https://github.com/bbokser/spryped.git", commit="f360a6b78667a4d97c86cad465ef8f4c9512462b", diff --git a/robot_descriptions/so_arm100.py b/robot_descriptions/so_arm100.py new file mode 100644 index 0000000..9bb57ff --- /dev/null +++ b/robot_descriptions/so_arm100.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2022 Stéphane Caron + +"""SO-ARM100 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( + "SO-ARM100", + commit=_getenv("ROBOT_DESCRIPTION_COMMIT", None), +) + +PACKAGE_PATH: str = _path.join( + REPOSITORY_PATH, "URDF", "SO_5DOF_ARM100_8j_URDF.SLDASM" +) + +URDF_PATH: str = _path.join( + PACKAGE_PATH, "urdf", "SO_5DOF_ARM100_8j_URDF.SLDASM.urdf" +)