Update readme (#14)

* Add table of contents

* Add more table content

* Update readme

* Fix table of contents
main
Carlos Andrés Álvarez Restrepo 2022-05-28 18:25:51 -05:00 committed by GitHub
parent f8ba7caeff
commit 8b3c507c9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 18 additions and 7 deletions

View File

@ -1,14 +1,25 @@
# m-explore ROS2 port
ROS2 package port for multi robot exploration of [m-explore](https://github.com/hrnr/m-explore). Currently tested on Eloquent, Dashing, Foxy, and Galactic distros.
ROS2 package port for multi robot autonomous exploration of [m-explore](https://github.com/hrnr/m-explore). Currently tested on Eloquent, Dashing, Foxy, and Galactic distros.
## Autonomous exploration
### Contents
1. [Autonomous exploration](#Autonomous-exploration)
* [Demo in simulation with a TB3 robot](#TB3)
* [Demo with a JetBot](#jetbot-demo)
* [Instructions for the simulation demo](#running-explore-demo-sim)
2. [Multirobot map merge](#Multirobot-map-merge)
* [Simulation demo with known initial poses](#Known-initial-poses)
* [Simulation demo with unknown initial poses](#Unknown-initial-poses)
* [ROS2 requeriments](#ROS2-requirements)
* [Instructions for simulation demos](#running-merge-demo-sim)
## Autonomous exploration<a name="Autonomous-exploration"/>
### TB3
https://user-images.githubusercontent.com/8033598/128805356-be90a880-16c6-4fc9-8f54-e3302873dc8c.mp4
### On a JetBot with realsense cameras
### On a JetBot with realsense cameras<a name="jetbot-demo"/>
https://user-images.githubusercontent.com/18732666/128493567-6841dde0-2250-4d81-9bcb-8b216e0fb34d.mp4
@ -30,7 +41,7 @@ To run with a params file just run it with
ros2 run explore_lite explore --ros-args --params-file <path_to_ros_ws>/m-explore/explore/config/params.yaml
```
### Running the demo with TB3
### Running the demo with TB3<a name="running-explore-demo-sim"/>
Install nav2 and tb3 simulation. You can follow the [tutorial](https://navigation.ros.org/getting_started/index.html#installation).
Then just run the nav2 stack with slam:
@ -61,11 +72,11 @@ export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/opt/ros/${ROS_DISTRO}/share/turtleb
Then you'll be able to run it.
## Multirobot map merge
## Multirobot map merge
This package works with known and unknown initial poses of the robots. It merges the maps of the robots and publishes the merged map. Some results in simulation:
### Known initial poses (best results)
### Known initial poses (best results)<a name="Known-initial-poses"/>
https://user-images.githubusercontent.com/8033598/144522712-c31fb4bb-bb5a-4859-b3e1-8ad665f80696.mp4
### Unknown initial poses
@ -91,7 +102,7 @@ To spawn multiple robots, you need the `nav2_gazebo_spawner` which does not come
#### Nav2 config files
This repo has some config examples and launch files for running this package with 2 TB3 robots and a world with nav2. Nonetheless, they are only compatible with the galactic branch and since some breaking changes were introduced in this branch, if you want to try it with another ros2 distro you'll need to tweak those param files for that nav2's distro version (which shouldn't be hard).
### Running the demo with TB3
### Running the demo with TB3<a name="running-merge-demo-sim"/>
First, you'll need to launch the whole simulation stack, nav2 stacks and slam stacks per robot. For that just launch::
```
export TURTLEBOT3_MODEL=waffle