gripper needs different update loop and sometimes has too much current and then the whole robot goes into error recovery mode
3.4 KiB
UR Robotiq
This project provides tools and integration to manage a Universal Robotics UR3e robot arm with the Robotiq 2F 140 gripper.
How to Download (with Submodules)
To download this repository and all of its included submodules, follow these steps:
-
Prerequisites
- Make sure you have Git installed on your system (https://git-scm.com/downloads).
-
Gitea SSH Connection
- This is only usable in the University Network (the VPN hasn't worked so far either)
- Follow this tutorial: https://www.techaddressed.com/tutorials/add-verify-ssh-keys-gitea/
-
Cloning the Repository
- Open your terminal or command prompt.
- Navigate to the directory where you want to download the project.
- Run the following Git command:
git clone git@git.cps.unileoben.ac.at:Niko/UR_Robotiq.git
-
Download necessary repos
vcs import src < UR_Robotiq.humble.repos
The packages cartesian_controller_simulation and cartesian_controller_tests are excluded from colcon build by default. If you want to build them to be build delete the COLCON_IGNORE file!
How to Start the Docker Compose
-
Prerequisites
- Ensure you have Docker and Docker Compose installed on your system (Instructions can be found on the official Docker website: https://www.docker.com/)
-
Starting the Containers
-
Navigate to the project directory in your terminal:
cd <path/to/UR-Robotiq>
-
Run the following command to start the Docker Compose:
docker compose up -d
-
Give X11 permission to accept the stream of the container window:
xhost +
-
Get the name of the container:
docker ps
-
Access the terminal of the docker container
docker exec -it <name of docker container> /bin/bash
-
Working with UR + Robotiq
In general you need to start up the UR Robotiq Controller, here the robot_ip has to be defined and if you want to start up the real robot or use fake hardware and if you want to launch rviz!
ros2 launch ur_robotiq_description ur_robotiq_control.launch.py robot_ip:=aaa.bbb.ccc.ddd use_fake_hardware:=<true/false(default)> launch_rviz:=<true/false(default)>
In addition you can start up the moveit interface:
ros2 launch ur_robotiq_moveit_config ur_robotiq_moveit.launch.py use_fake_hardware:=<true/false(default)>
use_fake_hardware:=true
Terminal 1:
ros2 launch ur_robotiq_description ur_robotiq_control.launch.py robot_ip:=aaa.bbb.ccc.ddd use_fake_hardware:=true launch_rviz:=false initial_joint_controller:=joint_trajectory_controller
Terminal 2:
ros2 launch ur_robotiq_moveit_config ur_robotiq_moveit.launch.py use_fake_hardware:=true
servoing
Terminal 3:
At the moment the servoing doesnt work with the collision checker (self collision still works).
ros2 launch ur_robotiq_servo ps5_servo.launch.py
After launching you need to change the controller to enable the servo mode.
Terminal 4:
ros2 control switch_controllers --deactivate joint_trajectory_controller
ros2 control switch_controllers --deactivate robotiq_gripper_controller
ros2 control switch_controllers --activate forward_position_controller
ros2 control switch_controllers --activate forward_gripper_position_controller