The ROS workspace for commanding and controlling OARS' autonomous research vessel.
Olin Aquatic Robotic Systems @ Olin College.
We use Docker Containers to maintain a sane and consistent environment. Please install Docker following the steps on https://hub.docker.com/search/?type=edition&offering=community for your operating system. If you are on a Linux system, you might want to consider going through the Linux Post-Install Instructions, also on the Docker website, so that you don't have to run sudo
before every Docker command.
If your operating system is not listed, try Googling a solution. Also, though we'd like to, we're not quite ready to handle Docker on Windows quite yet - if you can contribute some knowledge towards this, that'd be amazing, and highly appreciated.
You also need to install a tool called jq
, which is required by our setup scrpit. It is a lightweight and flexible command-line JSON processor that allows you to slice, filter, map, and transform structured data. It is avaliable on most platforms, and can be installed on Ubuntu via sudo apt-get install jq
.
You're now ready to use Docker! Docker's a pretty poweful tool used by many corporations, with numerous capabilities and features. It's both amazing and pretty overwhelming when getting started, so to help you get used to it, we've provided you some convenience commands. To get those loaded in, as well as the repo downloaded, do the following steps:
- Clone the repo:
git clone https://github.com/olin-robotic-sailing/autonomous-research-sailboat.git
cd
into the folder to load the convenience start-up commands onto your machine:cd autonomous-research-sailboat/docker
- Run the setup script!
bash d_setup_linux.sh
- Remove the repo (you don't need it anymore, since you'll be working on it from within the Docker container):
cd ../.. && rm -rf autonomous-research-sailboat
- Download the Docker image custom built for OARS:
docker pull olinoars/ros:2019-2020
And you're done! To learn more about Docker, why we're suggesting it, and what commands we've given you/what they do, go here.
The Docker image used by OARS - olinoars/ros:2019-2020
- is built using the Dockerfile
and ros_entrypoint.sh
files in the docker/
folder.
- Clone the repo:
git clone https://github.com/olin-robotic-sailing/autonomous-research-sailboat.git
cd
into theoars_ws
folder. This is a ROS workspace! Runcatkin_make
to build the project, and get started!
After you have done this, you should try the ROS demo in oars_pkg/ROSdemo
to make sure your environment and package are configured correctly and to learn how to run a ROS node.
If this is your first time here, here are the main attractions in our repo. This is all very new and very much a work in progress, so there might not be much to see in some folders.
oars_ws
ROS workspace solely for OARS. You cancd
inside this and immediately runcatkin_make
.build
This is where all the compiled ROS node executables will be stored by default. Don't do work here. This folder will only appear after runningcatkin_make
.devel
This is the source code for the ROS building stuff. Don't do work here. This folder will only appear after runningcatkin_make
.src
The source code folder of the workspace. Do your ROS projects in here.oars_pkg/
ROS nodes and code to run the boat. Your work probably goes here. *ROSdemo/
information and code for playing with and learning about ROSlaunch/
ROS launch scripts for starting multiple nodesmsg/
custom message types for ROSnav_and_controls/
nodes relating to navigation and boat controlssensing/
nodes relating to sensorsboat_class.py
the boat object which relies on sensing, navigation and controls
run_boat.py
template for a main program to start and run a boat. Use if useful. *-
- will be updated in the future with more information.
This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.