![]() |
qb_hand repositoryqb_hand qb_hand_control qb_hand_description qb_hand_gazebo qb_hand_hardware_interface |
|
Repository Summary
Checkout URI | https://bitbucket.org/qbrobotics/qbhand-ros.git |
VCS Type | git |
VCS Version | production-kinetic |
Last Updated | 2021-08-27 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
qb_hand | 2.2.1 |
qb_hand_control | 2.2.1 |
qb_hand_description | 2.2.1 |
qb_hand_gazebo | 2.1.3 |
qb_hand_hardware_interface | 2.2.1 |
README
qb SoftHand is an adaptable yet robust robotic hand gripper for collaborative robotic arms and for humanoid robots. It is in scale 1:1 with the average human hand and it is similarily composed by 19 completely desensorized phalanges and a flat palm.
The specific system of tendons connected to just a single motor provides the mechanical adaptability of the grasp to the shape and softness of any object without damaging it, i.e. exploiting the intrinsic capability of soft robots to continuously deform in a huge variety of possible configurations through interaction with external items.
In addition, the single actuator fixed directly on the back of the hand barely affects the total encumbrance and weight (only 480 grams) of the device.
Table of Contents
- Installation
- Usage
- Demo Applications
- ROS Packages Overview
- Support, Bugs and Contribution
- Purchase
- Roadmap
This
README
is basically a mirror of the qb SoftHand ROS wiki and it is supplied only for offline documentation. Please, refer to the online wiki whenever you can; it is our main and most updated reference for qb SoftHand ROS related application.
Installation
Requirements
If you have never set it up, you probably need to add your linux user to the dialout
group to grant right access to the serial port resources. To do so, just open a terminal and execute the following command:
sudo gpasswd -a <user_name> dialout
where you need to replace the <user_name>
with your current linux username.
Note: don’t forget to logout or reboot.
Ubuntu Packages
If you prefer to leave your catkin workspace as it is, you can simply install all the ROS packages from the Ubuntu official repositories:
sudo apt update
sudo apt install ros-kinetic-qb-hand
Sources
Since you are interested in the ROS interfaces for our devices, it is assumed that you are familiar at least with the very basics of the ROS environment. If not, it might be useful to spend some of your time with ROS and catkin tutorials. After that, don’t forget to come back here and start having fun with our Nodes.
Install the qb SoftHand packages for a ROS user is straightforward. Nonetheless the following are the detailed steps which should be easy to understand even for ROS beginners:
- Clone both the
qb_device
andqb_hand
packages to your Catkin Workspace, e.g.~/catkin_ws
:
cd `~/catkin_ws/src`
git clone https://bitbucket.org/qbrobotics/qbdevice-ros.git
git clone https://bitbucket.org/qbrobotics/qbhand-ros.git
- Compile the packages using
catkin
:
cd `~/catkin_ws`
catkin_make
Note: depending on your ROS installation, you may need some extra packages to properly compile the code. Please, be sure that you have already installed at least ros-kinetic-ros-controllers
, ros-kinetic-transmission-interface
, ros-kinetic-joint-limits-interface
, ros-kinetic-combined-robot-hw
, and their dependencies (e.g. use sudo apt install <ros-pkg>
).
- If you were not familiar with ROS you should be happy now: everything is done! Nonetheless, if you encounter some troubles during the compilation, feel free to ask for support on our Bitbucket.
Device Setup
Connect a qb SoftHand to your system is basically a matter of plugging in a USB cable. Nonetheless, read carefully the manual to understand all the requirements and advices about either single-device or chained configurations.
Usage
As shown in the following picture there are two distinct configurations to control several qb SoftHand devices connected to the system:
- The first (and recommended) groups all the Hardware Interfaces together (thanks to the combined_robot_hw) and exploits them as a unique robot system. We have called it “synchronous” just to point out that every sequence of reads and writes is always done in the same predefined order.
- The second mode threats every device as an independent Hardware Interface with its dedicated ROS Node which executes the control loop independently w.r.t. the rest of the system, i.e. “asynchronously”.
Mixed configurations can be also achieved through a proper setup. In such a case we can think of synchronous sub-systems which execute asynchronously w.r.t. each other.
Note that in a single-device system the synchronous mode is a nonsense.
In both cases there is always one central Node which manages the shared resources for the serial communication (e.g. one or many USB ports) and which provides several ROS services to whom wants to interact with the connected devices. This Node is called Communication Handler and it is usually started in a separate terminal.
Please remember that in a multi-device configuration, each qbrobotics® device connected to your system must have a unique ID.
Details
To understand what is hiding under the hood, have a look at the C++ classes overview which sums up all the main concepts of our ROS packages:
Communication Handler
The Communication Handler Node has no parameters to be set, therefore it is always launched like this:
roslaunch qb_device_driver communication_handler.launch
On start, it scans the serial communication resources connected to your system and shows a list of the devices it has found. By default, it never scans again for new devices, apart from asking it explicitly during the initialization of a control Node.
File truncated at 100 lines see the full file
CONTRIBUTING
![]() |
qb_hand repositoryqb_hand qb_hand_control qb_hand_description qb_hand_gazebo qb_hand_hardware_interface |
|
Repository Summary
Checkout URI | https://bitbucket.org/qbrobotics/qbhand-ros.git |
VCS Type | git |
VCS Version | production-melodic |
Last Updated | 2023-04-26 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
qb_hand | 3.0.3 |
qb_hand_control | 3.0.3 |
qb_hand_description | 3.0.3 |
qb_hand_gazebo | 3.0.3 |
qb_hand_hardware_interface | 3.0.3 |
README
qb SoftHand is an adaptable yet robust robotic hand gripper for collaborative robotic arms and for humanoid robots. It is in scale 1:1 with the average human hand and it is similarily composed by 19 completely desensorized phalanges and a flat palm.
The specific system of tendons connected to just a single motor provides the mechanical adaptability of the grasp to the shape and softness of any object without damaging it, i.e. exploiting the intrinsic capability of soft robots to continuously deform in a huge variety of possible configurations through interaction with external items.
In addition, the single actuator fixed directly on the back of the hand barely affects the total encumbrance and weight (only 480 grams) of the device.
Table of Contents
- Installation
- Usage
- Demo Applications
- ROS Packages Overview
- Support, Bugs and Contribution
- Purchase
- Roadmap
This
README
is basically a mirror of the qb SoftHand ROS wiki and it is supplied only for offline documentation. Please, refer to the online wiki whenever you can; it is our main and most updated reference for qb SoftHand ROS related application.
Installation
Requirements
If you have never set it up, you probably need to add your linux user to the dialout
group to grant right access to the serial port resources. To do so, just open a terminal and execute the following command:
sudo gpasswd -a <user_name> dialout
where you need to replace the <user_name>
with your current linux username.
Note: don’t forget to logout or reboot.
Ubuntu Packages
If you prefer to leave your catkin workspace as it is, you can simply install all the ROS packages from the Ubuntu official repositories:
sudo apt update
sudo apt install ros-kinetic-qb-hand
Sources
Since you are interested in the ROS interfaces for our devices, it is assumed that you are familiar at least with the very basics of the ROS environment. If not, it might be useful to spend some of your time with ROS and catkin tutorials. After that, don’t forget to come back here and start having fun with our Nodes.
Install the qb SoftHand packages for a ROS user is straightforward. Nonetheless the following are the detailed steps which should be easy to understand even for ROS beginners:
- Clone both the
qb_device
andqb_hand
packages to your Catkin Workspace, e.g.~/catkin_ws
:
cd `~/catkin_ws/src`
git clone https://bitbucket.org/qbrobotics/qbdevice-ros.git
git clone https://bitbucket.org/qbrobotics/qbhand-ros.git
- Compile the packages using
catkin
:
cd `~/catkin_ws`
catkin_make
Note: depending on your ROS installation, you may need some extra packages to properly compile the code. Please, be sure that you have already installed at least ros-kinetic-ros-controllers
, ros-kinetic-transmission-interface
, ros-kinetic-joint-limits-interface
, ros-kinetic-combined-robot-hw
, and their dependencies (e.g. use sudo apt install <ros-pkg>
).
- If you were not familiar with ROS you should be happy now: everything is done! Nonetheless, if you encounter some troubles during the compilation, feel free to ask for support on our Bitbucket.
Device Setup
Connect a qb SoftHand to your system is basically a matter of plugging in a USB cable. Nonetheless, read carefully the manual to understand all the requirements and advices about either single-device or chained configurations.
Usage
As shown in the following picture there are two distinct configurations to control several qb SoftHand devices connected to the system:
- The first (and recommended) groups all the Hardware Interfaces together (thanks to the combined_robot_hw) and exploits them as a unique robot system. We have called it “synchronous” just to point out that every sequence of reads and writes is always done in the same predefined order.
- The second mode threats every device as an independent Hardware Interface with its dedicated ROS Node which executes the control loop independently w.r.t. the rest of the system, i.e. “asynchronously”.
Mixed configurations can be also achieved through a proper setup. In such a case we can think of synchronous sub-systems which execute asynchronously w.r.t. each other.
Note that in a single-device system the synchronous mode is a nonsense.
In both cases there is always one central Node which manages the shared resources for the serial communication (e.g. one or many USB ports) and which provides several ROS services to whom wants to interact with the connected devices. This Node is called Communication Handler and it is usually started in a separate terminal.
Please remember that in a multi-device configuration, each qbrobotics® device connected to your system must have a unique ID.
Details
To understand what is hiding under the hood, have a look at the C++ classes overview which sums up all the main concepts of our ROS packages:
Communication Handler
The Communication Handler Node has no parameters to be set, therefore it is always launched like this:
roslaunch qb_device_driver communication_handler.launch
On start, it scans the serial communication resources connected to your system and shows a list of the devices it has found. By default, it never scans again for new devices, apart from asking it explicitly during the initialization of a control Node.
File truncated at 100 lines see the full file
CONTRIBUTING
![]() |
qb_hand repositoryqb_hand qb_hand_control qb_hand_description qb_hand_gazebo qb_hand_hardware_interface |
|
Repository Summary
Checkout URI | https://bitbucket.org/qbrobotics/qbhand-ros.git |
VCS Type | git |
VCS Version | production-noetic |
Last Updated | 2024-07-23 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
qb_hand | 3.0.4 |
qb_hand_control | 3.0.4 |
qb_hand_description | 3.0.4 |
qb_hand_gazebo | 3.0.4 |
qb_hand_hardware_interface | 3.0.4 |
README
qb SoftHand is an adaptable yet robust robotic hand gripper for collaborative robotic arms and for humanoid robots. It is in scale 1:1 with the average human hand and it is similarily composed by 19 completely desensorized phalanges and a flat palm.
The specific system of tendons connected to just a single motor provides the mechanical adaptability of the grasp to the shape and softness of any object without damaging it, i.e. exploiting the intrinsic capability of soft robots to continuously deform in a huge variety of possible configurations through interaction with external items.
In addition, the single actuator fixed directly on the back of the hand barely affects the total encumbrance and weight (only 480 grams) of the device.
Table of Contents
- Installation
- Usage
- Demo Applications
- ROS Packages Overview
- Support, Bugs and Contribution
- Purchase
- Roadmap
This
README
is basically a mirror of the qb SoftHand ROS wiki and it is supplied only for offline documentation. Please, refer to the online wiki whenever you can; it is our main and most updated reference for qb SoftHand ROS related application.
Installation
Requirements
If you have never set it up, you probably need to add your linux user to the dialout
group to grant right access to the serial port resources. To do so, just open a terminal and execute the following command:
sudo gpasswd -a <user_name> dialout
where you need to replace the <user_name>
with your current linux username.
Note: don’t forget to logout or reboot.
Ubuntu Packages
If you prefer to leave your catkin workspace as it is, you can simply install all the ROS packages from the Ubuntu official repositories:
sudo apt update
sudo apt install ros-noetic-qb-hand
Sources
Since you are interested in the ROS interfaces for our devices, it is assumed that you are familiar at least with the very basics of the ROS environment. If not, it might be useful to spend some of your time with ROS and catkin tutorials. After that, don’t forget to come back here and start having fun with our Nodes.
Install the qb SoftHand packages for a ROS user is straightforward. Nonetheless the following are the detailed steps which should be easy to understand even for ROS beginners:
- Clone both the
qb_device
andqb_hand
packages to your Catkin Workspace, e.g.~/catkin_ws
:
cd `~/catkin_ws/src`
git clone --recurse-submodules https://bitbucket.org/qbrobotics/qbdevice-ros.git
cd qbdevice-ros
git checkout production-noetic
git submodule update --init --recursive
cd ..
git clone https://bitbucket.org/qbrobotics/qbhand-ros.git
cd qbhand-ros
git checkout production-noetic
- Compile the packages using
catkin
:
cd `~/catkin_ws`
catkin_make
Note: depending on your ROS installation, you may need some extra packages to properly compile the code. Please, be sure that you have already installed at least ros-noetic-ros-controllers
, ros-noetic-transmission-interface
, ros-noetic-joint-limits-interface
, ros-noetic-combined-robot-hw
, and their dependencies (e.g. use sudo apt install <ros-pkg>
).
- If you were not familiar with ROS you should be happy now: everything is done! Nonetheless, if you encounter some troubles during the compilation, feel free to ask for support on our Bitbucket.
Device Setup
Connect a qb SoftHand to your system is basically a matter of plugging in a USB cable. Nonetheless, read carefully the manual to understand all the requirements and advices about either single-device or chained configurations.
Usage
As shown in the following picture there are two distinct configurations to control several qb SoftHand devices connected to the system:
- The first (and recommended) groups all the Hardware Interfaces together (thanks to the combined_robot_hw) and exploits them as a unique robot system. We have called it “synchronous” just to point out that every sequence of reads and writes is always done in the same predefined order.
- The second mode threats every device as an independent Hardware Interface with its dedicated ROS Node which executes the control loop independently w.r.t. the rest of the system, i.e. “asynchronously”.
Mixed configurations can be also achieved through a proper setup. In such a case we can think of synchronous sub-systems which execute asynchronously w.r.t. each other.
Note that in a single-device system the synchronous mode is a nonsense.
In both cases there is always one central Node which manages the shared resources for the serial communication (e.g. one or many USB ports) and which provides several ROS services to whom wants to interact with the connected devices. This Node is called Communication Handler and it is usually started in a separate terminal.
Please remember that in a multi-device configuration, each qbrobotics® device connected to your system must have a unique ID.
Details
To understand what is hiding under the hood, have a look at the C++ classes overview which sums up all the main concepts of our ROS packages:
Communication Handler
File truncated at 100 lines see the full file