uoft-cs-robotics / robot_system_tools

Repository containing software infrastructure for running experiments on Franka Emika Panda Arms
9 stars 3 forks source link

Add robotiq hand to the infra code base #20

Closed kouroshD closed 1 year ago

kouroshD commented 1 year ago

We would like to add the possibility of using robotiq hand in infra project.

kouroshD commented 1 year ago

@n-yoshikawa and I tried to install the robotiq in our docker env.

To find the package, we had install it in catkin_ws, so we did:

cd /git
mkdir -p catkin_ws/src
cd catkin_ws/src
git clone https://github.com/TAMS-Group/robotiq.git
cd robotiq/

we did not use git clone https://github.com/ros-industrial/robotiq.git , because it does not support ros-noetic (one of the reasons is related to python version).

Then we had to remove the modules with 3 finger options because of some dependecies, that are not satisfied, to avoid throwing erros:

rm -r rm -r robotiq_3f_*
cd <catkin_ws>
catkin_make
source devel/setup.bash

then when running the following command to start the robotiq_2f device, we had depenency errors:

$ rosrun robotiq_2f_gripper_control Robotiq2FGripperRtuNode.py /dev/ttyUSB0
Traceback (most recent call last):
  File "/root/git/catkin_ws/src/robotiq/robotiq_2f_gripper_control/nodes/Robotiq2FGripperRtuNode.py", line 45, in <module>
    import robotiq_modbus_rtu.comModbusRtu
  File "/root/git/catkin_ws/src/robotiq/robotiq_modbus_rtu/src/robotiq_modbus_rtu/comModbusRtu.py", line 45, in <module>
    from .robotiqmodbus.client.sync import ModbusSerialClient
  File "/root/git/catkin_ws/src/robotiq/robotiq_modbus_rtu/src/robotiq_modbus_rtu/robotiqmodbus/client/sync.py", line 13, in <module>
    from pymodbus.client.common import ModbusClientMixin
ModuleNotFoundError: No module named 'pymodbus.client.common'

to fix the problem, we had to install the following depency:

pip install -U pymodbus==2.5.3

We cannot install the latest version of pymodbus, because the interface has been changed, so still it was throw the error. so, later we ran again

rosrun robotiq_2f_gripper_control Robotiq2FGripperRtuNode.py /dev/ttyUSB0

In a new terminal, we tried the following code to test the gripper:

source devel/setup.bash
rosrun robotiq_2f_gripper_control Robotiq2FGripperSimpleController.py

and press r and a and it was working fine to reset and activate.

N.B.

kouroshD commented 1 year ago

Now, to addres the problem of removing rm -r rm -r robotiq_3f_*, we made a fork in our oranization, and removed those modules from the default branch: https://github.com/pairlab/robotiq

kouroshD commented 1 year ago

we have to install the following packages as well:

pip install testresources
sudo apt install ros-noetic-soem

pip install testresources we installed it, becuase when using rosdep to install dependencies we had some issues. But without that, there was no problem.

kouroshD commented 1 year ago

the PR is merged closing: https://github.com/pairlab/franka_arm_infra/pull/21