This document defines the scope and governance of the Working Group (WG).
Mission: To unite, create and upgrade generic marine robotics solutions that can be easily deployed in marine robots.
Scope: ROS packages related to marine robotics specificities of any robotics field: controls, simulation, drivers... All marine robot types are included, whether they are USV (Uncrewed Surface Vehicle), UUV (Uncrewed Underwater Vehicles), underwater manipulators...
Everyone is welcome to attend the Working Group meetings. Just show up.
- Regular WG Meeting: Usually once a month on a Tuesday, at 8AM PST. Subjected to change.
- Meetings Announcement: Usually at least one week before the meeting in the Maritime Robotics category on ROS Discourse
- Meeting agendas and minutes: Google Doc
- Outputs of the meetings: Recording as reply to the meeting announcement post
- ROS Discourse Maritime Robotics category
- Discourse tag: wg-maritime-robotics
- Github organization: ros-maritime
- Google Group (only used to send meeting calendar invites): Meeting invite group
- Instant messaging: Matrix chat (Matrix is an open network for secure, decentralized communication).
Working Group participants may act in one or more of the following roles:
- Participants / Contributors
- Attend meetings when convenient
- All attendees are welcome to contribute and review pull requests, and respond to issues, including but not limited to tickets in the project board
- Maintainers
- Prerequisite: Proven track record of high-quality contributions and reviews to repositories related to WG
- Responsible for approving and merging pull requests
- Organizers
- Responsible for organizing and moderating working group meetings
- Responsible for posting meeting materials (minutes, recordings, etc.)
- Responsible for breaking ties
Changes to this document will be made via Pull Request. The PR will be merged on 1 maintainer approval.
The following projects may be generally useful for those working in marine robotics with ROS.
Some projects are affiliated with the Working Group, and their progress may be discussed in WG meetings. The Project board keeps track of a subset of those projects.
The list is not meant to be exhaustive.
-
Communication
- Description: Packages for underwater network wireless communication.
- Motive: Since underwater communications relies on acoustic waves, there are some specificities regarding these types of waves that should be taken into account during data transmission.
- References
-
Common Messages
- Description: Specific ROS messages for maritime robotics.
- Motive: There are maritime robotics sensors that give specific types of messages.
- References
-
Drivers
- Description: Documentation and index for underwater and surface vehicles sensors and actuators drivers.
- Motive: There are specific components used only for maritime robotics, which requires drivers to interact with them. Although, there already is an ROS organization to develop ROS drivers, so instead of developing inside this organization, we would use it just to have an index describing maritimate focused ROS drivers.
- Proposal
- [Proposal] ROS Maritime Robotics Drivers Index
- [Proposal] Sonar and radar drivers
- References
-
Documentation
- Description: Documentation and index for maritime robotics packages and organizations.
- Motive: There are already many organizations and repos for maritime robotics. It is important to map what it is already developed in the area as well as make tutorials for newcomers or people that want to contribute with maritime robotics development.
- Proposal
- [Proposal] ROS Maritime Robotics Documentation Index
- [Proposal] ROS Maritime Robotics Tutorials
- References
- Marine-specific software architecture
- COLA2: ROS and Gazebo
- Marine-specific software architecture
-
Dynamic Model
- Description: Packages related to estimation and iteration of maritime robots models.
- Motive: Maritime robots dynamical models have to take into account buoyancy, hydrodynamics... Therefore some packages regarding math models are needed.
- Proposal
- [Proposal] Maritime vehicle model estimation based experiments
- Use control, pose and velocity bags and URDF to estimate the Fossen equation of motion parameters
- [Proposal] Maritime vehicle model iterator
- Use vehicle equations of motion to predict the robot's next position and velocity. This can be used with localization and control algorithms.
- [Proposal] Maritime vehicle model estimation based experiments
-
Guidance, Navigation and Control (GNC)
- Description: Packages for GNC of maritime robots.
- Motive: There are some controls and tasks specifics to maritime robots, such as thruster control allocation, surveillance, vessels' handling of tides...
- Proposal
- [Proposal] Thruster manager
- References
-
Localization
- Description: Packages to localize maritime vehicles.
- Motive: Underwater and surface vehicles have a lot of differences regarding the sensors they can use for localizing themselves. GPS does not work underwater, as well as lidars or electromagnetic waves for long distances... But acoustic waves work pretty well, so underwater localization rely more on sensors like DVL and Sonar, that uses acoustic waves to measure distance and velocity.
- Proposal
- [Proposal]: Multilateration of acoustic beacons
- References
-
Perception
- Description: Packages for perception algorithms for maritime robotics.
- Motive: Since there are different sensors such as sonars, there is a need to process this data to obtain information. Moreover, it can be created some common structures detection.
- Proposal
- [Proposal]: Common Maritime Environments Detections (buoys, valves, pipes...)
- [Proposal]: Fusion of sonar and camera data
-
Robots
- Description: Packages with maritime robots and structures.
- Motive: All the software being developed shall have not only unit tests but integration tests, so robots and structures shall be developed for this purpose. These shall include vcstool for specifying packages to be used with the robot as well as ros_ign_bridge to test it in simulation.
- Proposal
- [Proposal] Hover type UW vehicle
- [Proposal] Torpedo shaped UW vehicle
- [Proposal] USV
- [Proposal] Intervention UW vehicle
- References
- Intervention UW sample RexROV2
- Torpedo Shaped UW vehicle MBARI LRAUV
-
Simulation
- Description: Documentation and index for maritime robotics Gazebo plugins.
- Motive: There is no need to mix ROS code with simulation, also there is already some maritime robotics development in new Gazebo, so it is a good thing to contribute to ign-gazebo repo instead of creating other in this organization.
- Proposal
- [Proposal] Maritime Robotics Gazebo Plugins Index
- [Proposal] Wave Simulation
- [Proposal] Acoustics Simulation (include salinity and temperature effects)
- [Proposal] Radar Simulation
- [Proposal] Sonar Simulation
- References
- General
- Surface
- ASV Wave Simulator
- Virtual RobotX (VRX) competition: ROS and Gazebo-classic / new Gazebo
- MBZIRC Maritime Grand Challenge Simulator: ROS 2 and Gazebo
- MBARI Wave Energy Converter Simulator: ROS 2 and Gazebo
- Sailboat and wind simulation of Racing Sparrow 750
- Underwater
- UUV Simulator: ROS and Gazebo-classic
- NPS Project DAVE: ROS and Gazebo-classic
- Plankton: ROS 2 and Gazebo-classic
- Gazebo native underwater vehicles: Gazebo
- MBARI LRAUV simulation: Gazebo
- WHOI Deep Submergence Lab ds_sim: ROS and Gazebo-classic
-
Tools
- Description: Extra category for packages that do something specific that don't fit in any other category
- Motive: There might be some tools that can be developed for maritime robotics that doesn't fit another category, such as geographic information convertion.
- Proposal
- [Proposal] Geographic convertions
-
Data sets
- Description: Marine-specific data sets
- Motive: Underwater sensors differ a great deal from land sensors, and data sets obtained using underwater sensors are necessary for realistic underwater algorithmic development.
- References