Disclaimer: This model and the simulation are still in development and subject to change. If you want to contribute to the project, contact us with your plans Discord.
This repository contains a URDF representation of ExoMy, that can be used in the visualization tool rviz2 and the simulation environment Gazebo.
The software is supposed to run on a more powerful machine than the Raspberry Pi. It was tested on a laptop with Ubuntu 20.04.
-
Clone this repository
git clone https://github.com/esa-prl/ExoMy_Modelnext to theExoMy_Softwarefolder -
Be sure to be on the branch
ros2/foxyon both repositories -
To allow programs being opened from within the docker container run
xhost +local:docker -
Change to the folder
ExoMy_Model/docker -
Start the Docker container with
docker-compose run --name exomy_sim exomy_sim -
Inside the docker run
colcon build -
Followed by
source install/setup.zsh -
Launch the simulation with
ros2 launch exomy_sim_launch simulation.launch.py -
Rviz2 and gazebo should open and you can drive around with the gamepad
-
If you wanna use the web GUI you have to start another terminal in the container
-
You can do that from the host with
docker exec -it exomy_sim zsh -
Change to the directory
exomy_ws/src/exomy/gui -
The commands to start the http-server and ros webbridge were put in a script
-
Start the script with
sh run_gui.sh -
It should show you an ip address that you can click on or copy into your browser
-
The Web GUI should show up and you can use it to drive around
When running on a slower system, e.g a Virtual Machine, the spawn_entity.py script could fail, due to a slow startup time of Gazebo.
For this case the launch file spawn_exomy.launch.py is provided.
To use it the line spawn_rover in the return LaunchConfiguration() needs to be commented out.
Then the simulation.launch.py can be run.
When Gazebo is launched properly the spawn_exomy.launch.py can be run.

