Skip to content

About

Code base for UTD's RoboBoat team, GalaxSea

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to GalaxSea's code base!

This repo is the entire ROS 2 workspace (galaxsea_ws). Packages live in src/:

Path What it is
src/galaxsea Our boat code (controllers, lidar preprocessing, custom Gazebo worlds/models)
src/ROS-TCP-Endpoint Unity ROS-TCP-Endpoint (main-ros2), as a git submodule, for talking to the Unity simulator

Installation

The roboboat-docker development image already ships a clone of this workspace at /root/galaxsea_ws. To clone it yourself, include the submodules:

cd /root
git clone --recurse-submodules https://github.com/RoboSub-UTD/galaxsea_ws

If you already cloned without --recurse-submodules, fetch the submodules with

git submodule update --init --recursive

Setup

important: run these from the workspace root (galaxsea_ws), not from src

  1. Build the workspace
colcon build --merge-install
  1. Source the installation
. install/setup.bash

Simulator + Controller

  1. Launch the gazebo simulation using
ros2 launch vrx_gz competition.launch.py

After it launches, you should see a Gazebo GUI with a boat on the water. If you don't, try running

xhost +

in a new terminal in your host computer. If it still fails, check your run script for allowing displays.

  1. Run the keyboard boat controller using
ros2 run galaxsea boat_controller

Using waxd you can move the boat around the lake

Unity Simulator (ROS-TCP-Endpoint)

Start the endpoint the Unity simulator connects to:

ros2 run ros_tcp_endpoint default_server_endpoint --ros-args -p ROS_IP:=0.0.0.0

Setting up Custom Worlds

  1. Add the path to the custom models and worlds to $GZ_SIM_RESOURCE_PATH
export GZ_SIM_RESOURCE_PATH="/root/galaxsea_ws/src/galaxsea/custom_simulations/worlds:/root/galaxsea_ws/src/galaxsea/custom_simulations/models:$GZ_SIM_RESOURCE_PATH"

Make sure to put your path in case it is different

  1. Launch the new world using
ros2 launch vrx_gz competition.launch.py world:=task_one

change task_one to whatever the world is called

About

Code base for UTD's RoboBoat team, GalaxSea

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages