ROS 2 packages for the unicampania force/tactile sensors.
You need all the pkgs listed in repos.yaml.
You can download all the repos using vcstool
# In the src of your ament workspace
vcs import < uclv_tactile_sensor/repos.yamlTo use the wired finger at full speed (500Hz) you need to install setserial:
sudo apt-get install setserialWhen the finger is connected to the PC, take note of the dev file that Linux assigns to the device. It is something like /dev/ttyUSB# with # a number. You can check it using the command:
ls /dev/ttyUSB*Typically the first finger that you connect takes the id /dev/ttyUSB0 and the second takes id /dev/ttyUSB1.
You need the access rights to the device. /dev/ttyUSB# is owned by root and the group is dialout.
You can simply add your user to the dialout group:
sudo usermod -a -G groupName userNameYou can run the driver to read the raw voltages using the launch file:
ros2 launch uclv_tactile_driver tactile_serial.launch.pyYou can run the driver to read the debiased voltages using the launch file:
ros2 launch uclv_tactile_driver tactile_serial_debiased.launch.pyIt has the following parameters:
| Parameter | Description | Default |
|---|---|---|
serial_port |
Device file associated with the finger | /dev/ttyUSB0 |
baud_rate |
Baud rate for serial communication. For the wired fingers it has to be 1000000. | 1000000 |
voltage_raw_topic |
Output topic for the raw voltages | tactile_voltage/raw |
voltage_rect_topic |
Output topic for the de-biased voltages | tactile_voltage/rect |
action_compute_bias |
Action name that computes the bias* | tactile_voltage/action_compute_bias |
*the bias is computed at startup, you can force a new computation calling this action.
This project is licensed under the Apache-2.0 License - see the LICENSE file in the packages for details