Clone repo:
This repo uses git LFS. First, ensure this is installed.
sudo apt-get install git-lfs
git lfs installcd $VTRROOT
git clone https://github.com/utiasasrl/hunter_sim.git
cd hunter_sim
git lfs pullBuild Dockerfile This is based on the latest GPU vtr3 Dockerfile on Dockerhub
docker build -t utiasasrl/vtr3-gazebo:latest .Run Docker Container
docker run -it --name hunter_sim --privileged --network=host --ipc=host --gpus=all -e USER_ID=$(id -u) -e GROUP_ID=$(id -g) -e USER_NAME=$(id -un) -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:rw -v ${VTRROOT}:${VTRROOT}:rw -v /dev:/dev -e NVIDIA_DRIVER_CAPABILITIES=all utiasasrl/vtr3-gazebo:latestBuild package:
In the docker run:
source /opt/ros/humble/setup.bash
cd $VTRROOT/hunter_sim
colcon buildRun Hunter Sim For One Robot:
In the gazebo docker run:
cd $VTRROOT/hunter_sim
source /opt/ros/humble/setup.bash
source install/setup.bash
ros2 launch hunter2_gazebo hunter_gazebo_md_sim.launch.py num_robots:=1After the simulation has begun, and stabilized, in a second terminal launch vtr.
tmuxp load $VTRROOT/hunter_sim/src/hunter_sim/vtr_hunter/launch/simulated_lidar_hunter.launch.yamlYou can navigate to http://localhost:5200 and interact with the GUI same as if it were a real robot. To manually drive the robot to teach use the default ros teleop nodes.
For a keyboard only
ros2 run teleop_twist_keyboard teleop_twist_keyboard --ros-args -r __ns:=/robot0If you have access to a gamepad
ros2 run teleop_twist_joy teleop_node --ros-args -r __ns:=/robot0Run Hunter Sim For a Convoy:
In the Gazebo Docker run:
cd $VTRROOT/hunter_sim
source /opt/ros/humble/setup.bash
source install/setup.bash
ros2 launch hunter2_gazebo hunter_gazebo_md_sim.launch.py num_robots:=3 robot_spacing:=2.0After the simulation has begun, and stabilized, in a second terminal launch vtr.
tmuxp load $VTRROOT/hunter_sim/src/hunter_sim/vtr_hunter/launch/simulated_lidar_convoy_three.launch.yamlThe tmux file is very small now, you can run the convoy easily with any reasonable number of robots.