Gripper remote control
I am working with a RobotIQ Gripper with 2 fingers of 140mm (2F- 140).
This gripper is mounted on our UR10e collaborative robot, having its 8 pin DIN cable connected to the end of the robot arm.
To control this gripper from an external computer (instead of using the robot Teach Pendant with the robotiq urcap installed), I established a RS485 communication with the tool.
This communication is driven by the 54321 port, since this is the UR tool communication port (tool_tcp_port): https://forum.universal-robots.com/t/overview-of-used-ports-on-local-host/8889
The gripper remote control is enabled when:
- UR10e is turned on
- UR10e controller is connected to the external PC through an Ethernet cable (TCP/IP connection) - see this post
- UR10e can either be on Remote Control or in Local Control mode (does not make any difference)
- It is not required to launch any robot driver. The TCP/IP connection is enough, since the RS485 communication will be directly established between the gripper and the external PC
- Any gripper UR Cap (specifically the ROBOTIQ URCap) should be uninstalled from the UR10e
If all these points are ensured, then we just need to use the RobotiqHand class.
For using it, you can run the example (python) code:
https://github.com/afonsocastro/larcc_interface/blob/master/gripper/src/test_robotiq.py
cd larcc_interface/gripper/src
python3 test_robotiq.py
Do not forget to change the IP address (HOST global variable) on this example.
For further instructions on how to use this example, see this.
Notes:
This approach is totally ROS independent. It works without having any roscore running.
It is necessary rs485 URcap. That is daemon for communicate between UR10e's rs485 network and external pc via tcp (port 54321). RobotiqHand module use this mechanism. So you must activate rs485 URCap on UR10e. And, If you activate Robotiq_Gripper URCap on UR10e, that URCap always use inner rs485 network without exclusive. This means external rs485 communication make conflict communication contents. So if you want to control 2f-140 via rs485 from external pc, you must deactivate Robotiq_Gripper URCap on UR10e
Comments
Post a Comment