|
2 | 2 |
|
3 | 3 | MiRo & MiRo Developer Kit simulation and development environment in Docker. |
4 | 4 |
|
| 5 | +### ⚙️ [Installation](docs/INSTALL.md) |
5 | 6 |
|
6 | | -## ⚙️ Installation |
7 | | -Installation process depends on the OS of the host machine. |
| 7 | +### 📝 [Changelog](docs/CHANGELOG.md) |
8 | 8 |
|
9 | | -See [INSTALL](docs/INSTALL.md) for full setup instructions. |
10 | | - |
11 | | -## 📝 Changelog |
12 | | -See [CHANGELOG](docs/CHANGELOG.md) for version history and release notes. |
13 | | - |
14 | | -## 🧠 TODO |
15 | | -See [TODO](docs/TODO.md) for planned improvements. |
| 9 | +### 🧠 [To-Do](docs/TODO.md) |
16 | 10 |
|
17 | 11 | ## 🚀 Quick Start |
18 | 12 |
|
| 13 | +### Host OS |
19 | 14 | ```bash |
20 | | -# Clone the repository |
| 15 | +# Clone this repository, either into your host OS or into the WSL distro |
21 | 16 | git clone https://github.com/AlexandrLucas/miro-docker.git |
22 | 17 |
|
23 | | -# Pull/build image and start the container |
| 18 | +# Pull/build image and start a MiRo Docker container (select default values) |
24 | 19 | ./miro-docker.sh start |
25 | 20 |
|
26 | | -# Open a terminal within the running container |
| 21 | +# Attach a terminal to the running container |
27 | 22 | ./miro-docker.sh term |
28 | 23 | ``` |
| 24 | +Run `miro-docker.sh` without arguments for help on usage. |
| 25 | + |
| 26 | +>Note: You can add a `miro-hub` alias for the `miro-docker.sh` script onto your |
| 27 | +PATH by running `tools/miro-hub-installer.sh`. |
| 28 | +This allows to run the script from any folder. |
| 29 | + |
| 30 | +### MiRo Docker |
| 31 | +Check for the Starship Docker prompt to ensure you're in the right place: |
| 32 | + |
| 33 | + |
| 34 | + |
| 35 | +The MiRo docker image ships with an all-in-one `miro` script. |
| 36 | +Below are some examples of the functionality it provides. |
| 37 | + |
| 38 | +#### Example 1. Gazebo simulator + MiRo GUI app |
| 39 | +You'll need to open three terminal windows and run the following: |
| 40 | + |
| 41 | +```bash |
| 42 | +[Terminal 1] roscore |
| 43 | +[Terminal 2] miro sim |
| 44 | +[Terminal 3] miro gui |
| 45 | +``` |
| 46 | + |
| 47 | +#### Example 2. Gazebo simulator + MiRo autonomous mode + MiRo dashboard |
| 48 | +You'll need quite a few terminal windows for this one! |
| 49 | + |
| 50 | +>Note: The command in *Terminal 6* is used to make the blue ball move in a |
| 51 | +periodic motion, providing a stimuli for the MiRo. |
| 52 | + |
| 53 | +The final bit, MiRo dashboard, can be viewed by following the link in the output |
| 54 | +of *Terminal 7*. |
| 55 | + |
| 56 | +```bash |
| 57 | +[Terminal 1] roscore |
| 58 | +[Terminal 2] miro sim |
| 59 | +[Terminal 3] miro demo |
| 60 | +[Terminal 4] miro demo caml |
| 61 | +[Terminal 5] miro demo camr |
| 62 | +[Terminal 6] rosrun com3528_examples ball_mover.py |
| 63 | +[Terminal 7] miro dashboard |
| 64 | +``` |
| 65 | + |
| 66 | +#### Example 3. Three MiRos chasing the ball in the simulator |
| 67 | +This example shows the power of `roslaunch` files. |
| 68 | + |
| 69 | +>Note: `roscore` starts automatically when running a `roslaunch` file. |
| 70 | +
|
| 71 | +```bash |
| 72 | +[Terminal] roslaunch com3528_examples sim_football.launch |
| 73 | +``` |
| 74 | + |
| 75 | +#### Example 4. Running MiRo GUI for a real MiRo |
| 76 | +By default, the MiRo Docker image works in simulation, but by changing a few |
| 77 | +settings you can just as easily work a physical MiRo. |
| 78 | +You'll need to do the following: |
| 79 | +1. Ensure that the MiRo and your computer are on the same subnet and are visible to each other. |
| 80 | +2. Switch the mode by running `miro mode robot` (as opposed to `miro mode sim`). |
| 81 | +3. Input the IPv4 address of your MiRo by running `miro ip update`. |
| 82 | +4. Open a new terminal and run `miro status` to ensure that everything is set up correctly. |
| 83 | +5. Run `miro gui`. |
0 commit comments