-
Notifications
You must be signed in to change notification settings - Fork 69
roadmap
The intention of this document is to describe the current development priorities of the Dave project for the purpose of community feedback and discussion-as well as to coordinate community contributions. If you have a comment, question or suggestion, please start a thread by creating a new Issue.
The goal of the project is to provide simulation features that are specific to the tasks of underwater manipulation by ocean robotic platforms. The project builds upon existing general-purpose robotics simulation capabilities in Gazebo and domain-specific capacity from projects such as the UUV Simulator and WHOI’s ds_sim.
The objective of the project is to provide the following capabilities:
- Visual, physical and (hydro)dynamic models for simulating common 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.
We expect that these capabilities will enable the simulations to support the development of autonomous systems capable of multi-phase underwater missions over large time and space scales.
The Dave simulation is intended to provide functionality to support development, prototyping and performance testing of algorithms and their software implementation associated with local area search and mobile manipulation in a subsea environment. The simulation runs in real-time on the specified computer hardware and provides authentic interfaces to support software-in-the-loop testing - and processor-in-the-loop or hardware-in-the-loop testing to a limited extent.
This is one of many functions within the development process that can be supported by simulation. Some of these other functions that can be supported by complementary approaches include:
- Domain-specific simulations, such as computational fluid dynamics and naval architecture simulations to assess the physical design of vehicle and propulsion systems or to estimate locomotion energy usage.
- Detailed environmental models such as 3D ocean current models, acoustic propagation models (e.g., Bellhop or NSPE) or models of granular media for seafloor interaction.
- Photorealistic computer graphics simulation for underwater environments.
- Simulations/emulations of proprietary electrical or network communication interfaces such as specific sensor emulators to generate representative serial or Ethernet communication protocols. (Dave instead simulates this communication at a higher level of abstraction, at the message passing layer.)
- Higher level of abstraction methods such as discrete event simulation to rapidly assess scenarios or carry out large Monte Carlo-based evaluation.
The prioritized list of new features below reflects the current development priorities. If there are features omitted from this plan, or priorities that should be revisited, please submit an issue to the appropriate project issue tracker with an explanation of the request. The issue tracker will be used for discussion on the possibility of revising the roadmap.
In the discussion below we use the term model inclusively, in reference to the visual/collision/physical Gazebo descriptions, measurement and noise models for sensor plugins, parameterized descriptions of environmental effects, etc.
Ocean sensing for navigation, perception and manipulation is distinctively different from sensing in other robotic domains where Gazebo has been successfully adopted. The ability to generate real-time measurement data with “authentic sensor pathologies”[^1] provides general support for the community and lowers the barrier for ocean robotic developers to apply the mature Gazebo infrastructure. The lists below are sensing modalities in approximate order of priority.
- Doppler velocity log. Current implementation is an extension of WHOI ds_sim. Implements core functionality, including water-tracking.
- Next step is to improve model authenticity based on experimental analysis.
- Forward looking and high-frequency multibeam sonar. Generate beam-level sonar data in a common, open format for use in a variety of post-processing and viewer applications.
- Release 1.0: Develop model and implementation plan for protoype of single-beam sonar.
- Release 2.0: Implemented prototype of single-beam sonar in Pythong using existing Gazebo gpu_ray elements.
- Release 3.0: Extend to multiple beams, e.g., forward-looking and multibeam sonar. Port to C++ plugin and develop custom Gazebo sensor type to implement functionality. Evaluate performance and improve efficiency to run in real time.
- Underwater lidar
- Release 1.0: Modify existing plugins through exposed parameters to simulate properties of u/w lidar.
- Release 2.0: Integrate plugin into Dave environment so device can be mounted to available vehicles.
- Release 3.0: Integrate with environmental conditions so Lidar output responds to changes in turbidity.
- Ultrashort Baseline
- Release 2.0: USBL sensor plugin with ROS interface with simple noise and failure models.
- COTS u/w manipulators:
- Release 1.0: Use of existing UUV Simulator vehicles
- Release 2.0: Addition of new model based on Kraft Predator. Tutorial explaining how to implement a Gazebo model of an existing manipulator using common examples such as the Kraft Predator, ECA Electrical Manipulators or HDT Adroit.
- Release 3.0: Addition of new model based on HDT Adroit.
- Force feedback
- Release 1.0: Prototype of joint-based force feedback ROS interface to aid in perception during manipulation.
- Release 3.0: Verification of force feedback interface.
To illustrate the capabilities of the project we will develop a small number of demonstration scenarios.
- Flying lead connection is a common mobile manipulation task for oil and gas as well as for ocean observing science. We plan to build models of COTS electrical/optical connectors and plugins to support the execution and performance evaluation of these tasks.
- Release 1.0: Resurrecting BOP panel scenario from UUV Simulator.
- Release 2.0: Provide visual and physical models of constituent elements (e.g., connectors, manifolds, etc.) and model plugins to facilitate execution and task evaluation. See Dave project issue for videos and specifications.
- Bathymetry integration
- Release 1.0: Bathymetry generated by-hand to be representative.
- Release 2.0: Capability to generate DEM models directly from mapping data (e.g., xyz survey products). Inclusion of partially buried objects for manipulation.
- Release 3.0: Create Gazebo visual plugin to implement parameterized visual occlusion without manual modification of the world or model files.
- Ocean current
- Release 2.0: Example usage and tutorials based on existing UUV Simulator ocean current implementation for influence on vehicle control.
- Release 3.0: Extension of ocean current models to include authentic stochastic models of current profiles.
- Seafloor / vehicle interaction. Robots operating very near the seafloor may result in decreased visibility due to interaction between vehicle propulsion and seafloor sediment.
- Release 3.0: Creation of empirical model where vertical water velocity results in increased turbidity. Model plugin implementation.
The existing UUV Simulator includes generic methods for modeling the hydrodynamics of vehicle and propulsion, as well as a small number of specific ROV and AUV physical/visual models. Custom vehicles can be implemented by changing the rigid body and hydrodynamic coefficients and including a visual mesh.
- Release 1.0: Use of existing UUV Simulator vehicles
- Release 2.0: Generation of typical COTS ROV and AUV platforms to extend the library of general surrogate vehicles and to illustrate the process of integrating custom vehicle designs. Six new vehicles added, including three glider models.
[^1]: Dr. Carl Kaiser, WHOI.