Home - Field-Robotics-Lab/dave GitHub Wiki

This document is no longer maintained. Please visit https://field-robotics-lab.github.io/dave.doc/

Project dave

Dave is a simulation environment to support the rapid testing and evaluation of underwater robotic solutions, specifically underwater vehicles (AUVs/UUVs) operating autonomously and completing missions that involve autonomous manipulation. The environment is built upon existing ROS and Gazebo infrastructure, particularly the UUV Simulator and WHOI's ds_sim.

Quick Start

Project Objective

The objective of the project is to provide the following capabilities:

  • Visual, physical and (hydro)dynamic models of generalized vehicle, manipulator and sensor elements.
  • Simulation of sensing specific to underwater robotics including perception (e.g., sonar, underwater lidar and optical imaging) and navigation (e.g., DVL and USBL).
  • Parameterized representations of the ocean environment including seafloor bathymetry and ocean currents.

These capabilities will enable support the development of autonomous systems capable of multi-phase underwater missions over large time and space scales.

Contributing

We welcome contributions from the robotics community. We are particularly interested in contributions to extend and improve capabiliteis associated with the objectives described above. To contribute, please submit an issue or a pull request.

In addition to our officially supported, core features, Dave also includes a number of features that are supported exclusively by community members. Click here for the current list of community supported features.

Tutorials and Demonstrations

Step-by-step guides to illustrate working examples how to accomplish certain tasks and demonstrate features of the project.

Project Setup

Dave depends upon ROS Noetic and Gazebo 11 - with community support for previous versions of ROS and Gazebo. The project may be installed directly on your host or run using Docker.

Dave Models

Underwater Vehicle Models

Bathymetry Models

Object Models

  • Object Models: A collection of useful objects for composing underwater search and manipulation scenarios.

  • Object Degradation Tools: Tools for altering the geometric shape of a 3D mesh model and for adding customized SDF properties such as surface material to be interpreted by Gazebo plugins.

Perception and Sensing

Subsea Manipulator Models and Manipulation Feature Demonstrations

Ocean Environmental Models

  • Ocean Current Models: A plugin for constant/stratified ocean current with Gauss-Markov model definitions.
  • Bathymetry generation and auto spawning: A plugin that automatically spawns and removes bathymetry grids converted preliminarily from NOAA data.
  • Occlusion: An example of bottom occlusion due to silt or object occlusion due to marine growth.

Navigation system design

Integrated Scenarios

Notes and Sandboxes

Descriptions

Descriptions of how things work, how certain aspects of the project are implemented (descriptions of the methods and techniques used by developer) or results of reverse engineering existing implementations. May include recommendations for further work and improvements.

  • UUV Simulator Image Sonar: Description of foward looking sonar implementation.
  • UUV Simulator Doppler Velocity Loggers: Description of UUV Simulator and WHOI DSL environment DVL plugin implementations.

Historical notes