UR_Robotiq/README.md
2024-04-04 18:33:56 +02:00

93 lines
3.3 KiB
Markdown

## 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:
1. **Prerequisites**
* Make sure you have Git installed on your system ([https://git-scm.com/downloads](https://git-scm.com/downloads)).
2. **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/
3. **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:
```bash
git clone git@git.cps.unileoben.ac.at:Niko/UR_Robotiq.git
```
4. **Download necessary repos**
```bash
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
1. **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/](https://www.docker.com/))
2. **Starting the Containers**
* Navigate to the project directory in your terminal:
```bash
cd <path/to/UR-Robotiq>
```
* Run the following command to start the Docker Compose:
```bash
docker compose up -d
```
* Give X11 permission to accept the stream of the container window:
```bash
xhost +
```
* Get the name of the container:
```bash
docker ps
```
* Access the terminal of the docker container
```bash
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!
```bash
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:
```bash
ros2 launch ur_robotiq_moveit_config ur_robotiq_moveit.launch.py use_fake_hardware:=<true/false(default)>
```
### use_fake_hardware:=true
Terminal 1:
```bash
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:
```bash
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).**
```bash
ros2 launch ur_robotiq_servo ps5_servo.launch.py
```
After launching you need to change the controller to enable the servo mode.\
Terminal 4:
```bash
ros2 control switch_controllers --deactivate joint_trajectory_controller
ros2 control switch_controllers --deactivate robotiq_gripper_joint_trajectory_controller
ros2 control switch_controllers --activate forward_position_controller
```