From dc56b89a65abb54f9b28e039c391eb7f8fd4c786 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Caron?= Date: Mon, 14 Apr 2025 13:26:43 +0200 Subject: [PATCH] Add Kinova Gen3 Lite description --- CHANGELOG.md | 4 ++++ README.md | 1 + robot_descriptions/_descriptions.py | 1 + robot_descriptions/_repositories.py | 5 +++++ robot_descriptions/gen3_lite_description.py | 21 +++++++++++++++++++++ 5 files changed, 32 insertions(+) create mode 100644 robot_descriptions/gen3_lite_description.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 26abf7a..903da69 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +### Added + +- Description: Kinova Gen3 Lite (URDF) + ### Changed - Update `baxter_common` repository with a commit ID rather than a tag diff --git a/README.md b/README.md index 2d45ef6..1389356 100644 --- a/README.md +++ b/README.md @@ -140,6 +140,7 @@ The DOF column denotes the number of actuated degrees of freedom. | `fr3_mj_description` | FR3 | Franka Robotics | MJCF | Apache-2.0 | | `gen2_description` | Gen2 | Kinova | URDF | BSD-3-Clause | | `gen3_description` | Gen3 | Kinova | URDF | MIT | +| `gen3_lite_description` | Gen3 Lite | Kinova | URDF | BSD-3-Clause | | `gen3_mj_description` | Gen3 | Kinova | MJCF | BSD-2-Clause | | `iiwa14_description` | iiwa 14 | KUKA | URDF | BSD-3-Clause | | `iiwa14_mj_description` | iiwa 14 | KUKA | MJCF | BSD-3-Clause | diff --git a/robot_descriptions/_descriptions.py b/robot_descriptions/_descriptions.py index 4edd6a0..579f4e7 100644 --- a/robot_descriptions/_descriptions.py +++ b/robot_descriptions/_descriptions.py @@ -109,6 +109,7 @@ def has_urdf(self) -> bool: "g1_mj_description": Description(Format.MJCF, tags={"humanoid"}), "gen2_description": Description(Format.URDF, tags={"arm"}), "gen3_description": Description(Format.URDF, tags={"arm"}), + "gen3_lite_description": Description(Format.URDF, tags={"arm"}), "gen3_mj_description": Description(Format.MJCF, tags={"arm"}), "ginger_description": Description( Format.URDF, tags={"mobile_manipulator"} diff --git a/robot_descriptions/_repositories.py b/robot_descriptions/_repositories.py index ec49be0..2bee1d2 100644 --- a/robot_descriptions/_repositories.py +++ b/robot_descriptions/_repositories.py @@ -245,6 +245,11 @@ class Repository: commit="0.1.5", cache_path="romeo_robot", ), + "ros2_kortex": Repository( + url="https://github.com/Kinovarobotics/ros2_kortex.git", + commit="fb633aacf9c1c85d61a96c1099b5afa3d533e5a3", + cache_path="ros2_kortex", + ), "rtmros_nextage": Repository( url="https://github.com/tork-a/rtmros_nextage.git", commit="ac270fb969fa54abeb6863f9b388a9e20c1f14e0", diff --git a/robot_descriptions/gen3_lite_description.py b/robot_descriptions/gen3_lite_description.py new file mode 100644 index 0000000..c30b0d0 --- /dev/null +++ b/robot_descriptions/gen3_lite_description.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# +# SPDX-License-Identifier: Apache-2.0 +# Copyright 2025 Inria + +"""Kinova Gen3 Lite 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( + "ros2_kortex", + commit=_getenv("ROBOT_DESCRIPTION_COMMIT", None), +) + +PACKAGE_PATH: str = _path.join(REPOSITORY_PATH, "kortex_description") + +URDF_PATH: str = _path.join(PACKAGE_PATH, "robots", "gen3_lite.urdf")