Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .github/issue_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---

name: "Issue template"
about: "Minimal information about an issue"
title: ""
ref: "devel"

---

## Description


<!--- ## Screenshots (if appropriate): -->

## References
<!--- Create a list of references, (in a bullet style) -->
27 changes: 27 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!--- Provide a general summary of your changes in the Title above -->
## Description


## Motivation and context
<!--- Why is this change required? What problem does it solve? -->
<!--- If it fixes an open issue, please link to the issue here. -->


<!--- ## Screenshots (if appropriate): -->

## How has this been tested?
<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran to -->
<!--- see how your change affects other areas of the code, etc. -->


## Checklist
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [ ] All TODOs in the code have been resolved or linked to a proper issue.
- [ ] Code has been (auto)formatted.
- [ ] Documentation (e.g., README, CHANGELOG, Wiki) has been updated.
- [ ] All automated checks have passed.

---
Clickup task: [hash](link)
11 changes: 11 additions & 0 deletions .github/workflows/pre-commit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: Pre-Commit

on:
push:

jobs:
pre-commit:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-pre-commit.yml@master
with:
ros_distro: humble
33 changes: 33 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-added-large-files
- id: check-case-conflict
- id: check-json
- id: check-merge-conflict
- id: check-symlinks
- id: check-toml
- id: check-xml
- id: debug-statements
- id: destroyed-symlinks
- id: detect-private-key
- id: end-of-file-fixer
- id: mixed-line-ending
- id: pretty-format-json
- id: trailing-whitespace
- id: check-yaml

- repo: https://github.com/codespell-project/codespell
rev: v2.2.6
hooks:
- id: codespell
args: [-L, hande, -w]

- repo: https://github.com/tier4/pre-commit-hooks-ros
rev: v0.10.0
hooks:
- id: prettier-xacro
- id: prettier-package-xml
- id: ros-include-guard
- id: sort-package-xml
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ install(
DESTINATION share/${PROJECT_NAME}
)

ament_package()
ament_package()
12 changes: 7 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
# robotiq_hande_description

[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit)

This package contains meshes and URDF description of [Robotiq Hand-E gripper](https://robotiq.com/products/hand-e-adaptive-robot-gripper) dedicated for Universal Robots e-series.

- The gripper comes with coupler model (but without flange).
- This repository comes with CAD models imported from STEP files to FreeCAD format (FCStd).
- Package has been developed and tested in ROS 2 Humble.


> [!IMPORTANT]
> The fingers' joints can be set from **0 to 25 mm** (which correspondes to the maximal grasp with from **0 to 50 mm**).
> [!IMPORTANT]
> The fingers' joints can be set from **0 to 25 mm** (which corresponds to the maximal grasp with from **0 to 50 mm**).

![hande_model](docs/hande_rviz.gif)

Expand All @@ -27,7 +29,7 @@ In your URDF (Xacro) file include the Hand-E definition. Provide a parent link (
An example usage can be find in the [urdf/hande_preview.urdf.xacro](./urdf/robotiq_hande_gripper.urdf.xacro) file.

> [!NOTE]
> The TF frame of the end tip of the gripper is called `${prefix}hande_end`, where `${prefix}` evaluates as the second macro paramater.
> The TF frame of the end tip of the gripper is called `${prefix}hande_end`, where `${prefix}` evaluates as the second macro parameter.


## Preview
Expand All @@ -43,6 +45,6 @@ ros2 launch robotiq_hande_description display.launch.py
```

## Credits
- The orignal files of the gripper model were taken from the [Robotiq website](https://robotiq.com/products/hand-e-adaptive-robot-gripper).
- The original files of the gripper model were taken from the [Robotiq website](https://robotiq.com/products/hand-e-adaptive-robot-gripper).
- The URDF files are based on work of @cambel [repository](https://github.com/cambel/robotiq.git).
- Preview in Rviz is based on [ROS 2 URDF Tutorial](https://github.com/ros/urdf_tutorial/tree/ros2/).
- Preview in Rviz is based on [ROS 2 URDF Tutorial](https://github.com/ros/urdf_tutorial/tree/ros2/).
2 changes: 1 addition & 1 deletion launch/display.launch.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ def generate_launch_description():
'jsp_gui': run_joint_state_publisher_gui}.items()
))

return ld
return ld
6 changes: 2 additions & 4 deletions urdf/materials.xacro
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
<?xml version="1.0" ?>
<?xml version="1.0"?>
<robot name="xacro_properties" xmlns:xacro="http://ros.org/wiki/xacro">

<material name="Grey">
<color rgba="0.5 0.5 0.5 1.0"/>
</material>

<material name="DarkGrey">
<color rgba="0.04 0.04 0.04 1.0"/>
</material>

</robot>
</robot>
11 changes: 4 additions & 7 deletions urdf/robotiq_hande_gripper.urdf.xacro
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
<?xml version="1.0"?>
<robot xmlns:xacro="http://ros.org/wiki/xacro"
name="robotiq_hande_gripper" >
<robot xmlns:xacro="http://ros.org/wiki/xacro" name="robotiq_hande_gripper">
<xacro:include filename="$(find robotiq_hande_description)/urdf/robotiq_hande_gripper.xacro"/>

<xacro:include filename="$(find robotiq_hande_description)/urdf/robotiq_hande_gripper.xacro" />

<link name="tool0" />
<xacro:robotiq_hande_gripper parent="tool0" prefix="" />

<link name="tool0"/>
<xacro:robotiq_hande_gripper parent="tool0" prefix=""/>
</robot>
47 changes: 12 additions & 35 deletions urdf/robotiq_hande_gripper.xacro
Original file line number Diff line number Diff line change
@@ -1,32 +1,26 @@
<?xml version="1.0"?>
<robot xmlns:xacro="http://ros.org/wiki/xacro">

<!--
Based on the URDF file by Cristian C Beltran-Hernandez
-->
-->

<xacro:include filename="$(find robotiq_hande_description)/urdf/materials.xacro" />
<xacro:include filename="$(find robotiq_hande_description)/urdf/materials.xacro"/>

<xacro:macro name="robotiq_hande_gripper" params="prefix parent">

<!-- Robotiq Coupler -->
<!-- + Height added by the coupler: 13.9mm -->
<!-- + Reference frame: at the middle (6.95mm) -->

<joint name="robotiq_coupler_joint" type="fixed">
<origin xyz="0 0 0.00695" rpy="0 0 ${-pi/2.0}" />
<origin xyz="0 0 0.00695" rpy="0 0 ${-pi/2.0}"/>
<parent link="${parent}"/>
<child link="${prefix}robotiq_coupler"/>
</joint>

<link name="${prefix}robotiq_coupler">
<inertial>
<mass value="0.168" />
<inertia
ixx="6.17674E-05" ixy="0.0" ixz="0.0"
iyy="6.17674E-05" iyz="0.0"
izz="1.18125E-04"
/>
<mass value="0.168"/>
<inertia ixx="6.17674E-05" ixy="0.0" ixz="0.0" iyy="6.17674E-05" iyz="0.0" izz="1.18125E-04"/>
</inertial>

<collision>
Expand All @@ -37,13 +31,12 @@

<visual>
<geometry>
<mesh filename="package://robotiq_hande_description/meshes/coupler.dae" />
<mesh filename="package://robotiq_hande_description/meshes/coupler.dae"/>
</geometry>
<material name="DarkGrey" />
<material name="DarkGrey"/>
</visual>
</link>


<joint name="${prefix}robotiq_hande_base_joint" type="fixed">
<origin rpy="0 0 0" xyz="0 0 0.055"/>
<parent link="${prefix}robotiq_coupler"/>
Expand All @@ -53,11 +46,7 @@
<link name="${prefix}hande_link">
<inertial>
<mass value="0.86387"/>
<inertia
ixx="0.001" ixy="0.0" ixz="0.0"
iyy="0.001" iyz="0.0"
izz="0.0006"
/>
<inertia ixx="0.001" ixy="0.0" ixz="0.0" iyy="0.001" iyz="0.0" izz="0.0006"/>
</inertial>

<collision>
Expand All @@ -75,7 +64,6 @@
</visual>
</link>


<joint name="${prefix}hande_left_finger_joint" type="prismatic">
<origin rpy="0 0 0" xyz="0 -0.025 0.0345"/>
<parent link="${prefix}hande_link"/>
Expand All @@ -88,11 +76,7 @@
<inertial>
<origin rpy="0 0 0" xyz="0 0 0"/>
<mass value="0.03804"/>
<inertia
ixx="1E-9" ixy="0.0" ixz="0.0"
iyy="1E-9" iyz="0.0"
izz="1E-9"
/>
<inertia ixx="1E-9" ixy="0.0" ixz="0.0" iyy="1E-9" iyz="0.0" izz="1E-9"/>
</inertial>

<collision>
Expand All @@ -111,7 +95,6 @@
</visual>
</link>


<joint name="${prefix}hande_right_finger_joint" type="prismatic">
<origin rpy="0 0 0" xyz="0 0.025 0.0345"/>
<parent link="${prefix}hande_link"/>
Expand All @@ -125,11 +108,7 @@
<inertial>
<origin rpy="0 0 0" xyz="0 0 0"/>
<mass value="0.03804"/>
<inertia
ixx="1E-9" ixy="0.0" ixz="0.0"
iyy="1E-9" iyz="0.0"
izz="1E-9"
/>
<inertia ixx="1E-9" ixy="0.0" ixz="0.0" iyy="1E-9" iyz="0.0" izz="1E-9"/>
</inertial>

<collision>
Expand All @@ -144,18 +123,16 @@
<geometry>
<mesh filename="package://robotiq_hande_description/meshes/finger.dae" scale="1.0 1.0 1.0"/>
</geometry>
<material name="Grey" />
<material name="Grey"/>
</visual>
</link>


<joint name="${prefix}robotiq_hande_end_joint" type="fixed">
<origin rpy="0 0 0" xyz="0 0 0.095"/>
<parent link="${prefix}hande_link"/>
<child link="${prefix}hande_end"/>
</joint>

<link name="${prefix}hande_end" />

<link name="${prefix}hande_end"/>
</xacro:macro>
</robot>