@@ -27,9 +27,37 @@ Check the [robot documentation](https://drive.google.com/file/d/1fEy62MY-lKcy9jb
...
@@ -27,9 +27,37 @@ Check the [robot documentation](https://drive.google.com/file/d/1fEy62MY-lKcy9jb
# Installation
# Installation
*[Create a new workspace](http://wiki.ros.org/catkin/Tutorials/create_a_workspace) or use an existing one.
* Merge your workspace with the following rosinstall files following the steps in this [tutorial](http://wiki.ros.org/wstool#Merge_in_Additional_rosinstall_Files).
This tutorial will guide you in the process of setting up the Reinforcement Learning (RL) navigation stack with the IVO robot, either in simulation or with the real robot.
## Preliminary setup
**SIMULATION**: follow the [setup simulator instructions](https://gitlab.iri.upc.edu/labrobotica/ros/robots/ivo/ivo_how_to#simulation).
**REAL ROBOT**: follow the [setup robot instructions](https://gitlab.iri.upc.edu/labrobotica/ros/robots/ivo/ivo_how_to#real-robot).
Setup the RL navigation stack following the [RL navigation instructions](https://gitlab.iri.upc.edu/mobile_robotics/rocotransp_project/rl_navigation/iri_rl_navigation_how_to).
For the rest of this tutorial we will assume:
* ~/ivo_ws: is the ROS workspace where the RL navigation packages have been added.
* ~/ivo_ws/src/navigation/rl_navigation/iri_rl_navigation/model: is the path where the Neurel Network pre-trained model has been saved.
* ~/ivo_ws/src/navigation/rl_navigation/iri_rl_navigation/rl_nav_venv: is the path where the Python virtual environment has been created.
Please,
## Launch
**SIMULATION**: in the docker container terminal, execute the following command:
```
roslaunch ivo_2dnav_gazebo ivo_navigation.launch
```
**REAL ROBOT**: connect the computer to the IVO robot network, using either the wired or wireless interfaces.
* Activate the ROS workspace:
```
cd ~/ivo_ws
source devel/setup.bash
```
* Launch the RL navigation nodes:
```
roslaunch iri_ivo_launch ivo_rl_navigation_launch
```
* Launch the RVIZ application (you may close the default RVIZ launched from the docker container)
In the new RVIZ window, you can send navigation goals using the *2D nav goal* button or the g key. When a new goal is sent, the robot will start moving towards it using the actions provided by the RL navigation stack. Once started, it is possible to send new goals, but the current goal can not be canceled until it is reached.