Table of Contents
Fetching ...

OtterROS: Picking and Programming an Uncrewed Surface Vessel for Experimental Field Robotics Research with ROS 2

Thomas M. C. Sears, M. Riley Cooper, Sabrina R. Button, Joshua A. Marshall

TL;DR

The paper addresses the lack of robust, research-ready USVs with ROS 2 interfaces by converting the Otter USV into a ROS 2-capable research platform. It introduces OtterROS, a publisher-subscriber bridge that translates the Otter’s OBC backseat-driver interface into ROS 2 topics, and demonstrates a nonlinear model predictive controller (NMPC) running on an NVIDIA Jetson AGX Orin using CasADi. The authors elaborate hardware integration, data interfaces, and a development example that validates improved performance over the built-in controller, while sharing field-testing experiences across diverse aquatic environments. The work lowers barriers to USV-based aquatic robotics research and provides a template for replication and extension by the community, with source code and documentation available online.

Abstract

There exist a wide range of options for field robotics research using ground and aerial mobile robots, but there are comparatively few robust and research-ready uncrewed surface vessels (USVs). This workshop paper starts with a snapshot of USVs currently available to the research community and then describes "OtterROS", an open source ROS 2 solution for the Otter USV. Field experiments using OtterROS are described, which highlight the utility of the Otter USV and the benefits of using ROS 2 in aquatic robotics research. For those interested in USV research, the paper details recommended hardware to run OtterROS and includes an example ROS 2 package using OtterROS, removing unnecessary non-recurring engineering from field robotics research activities.

OtterROS: Picking and Programming an Uncrewed Surface Vessel for Experimental Field Robotics Research with ROS 2

TL;DR

The paper addresses the lack of robust, research-ready USVs with ROS 2 interfaces by converting the Otter USV into a ROS 2-capable research platform. It introduces OtterROS, a publisher-subscriber bridge that translates the Otter’s OBC backseat-driver interface into ROS 2 topics, and demonstrates a nonlinear model predictive controller (NMPC) running on an NVIDIA Jetson AGX Orin using CasADi. The authors elaborate hardware integration, data interfaces, and a development example that validates improved performance over the built-in controller, while sharing field-testing experiences across diverse aquatic environments. The work lowers barriers to USV-based aquatic robotics research and provides a template for replication and extension by the community, with source code and documentation available online.

Abstract

There exist a wide range of options for field robotics research using ground and aerial mobile robots, but there are comparatively few robust and research-ready uncrewed surface vessels (USVs). This workshop paper starts with a snapshot of USVs currently available to the research community and then describes "OtterROS", an open source ROS 2 solution for the Otter USV. Field experiments using OtterROS are described, which highlight the utility of the Otter USV and the benefits of using ROS 2 in aquatic robotics research. For those interested in USV research, the paper details recommended hardware to run OtterROS and includes an example ROS 2 package using OtterROS, removing unnecessary non-recurring engineering from field robotics research activities.
Paper Structure (28 sections, 6 figures, 7 tables)

This paper contains 28 sections, 6 figures, 7 tables.

Figures (6)

  • Figure 1: The Otter USV (left) during experiments in Lake Ontario. Encounters with pleasure craft are common, but occasionally we cross paths with history.
  • Figure 2: Images of the USVs identified in the survey. Note: Images are not at a constant scale; see Table \ref{['tab:usv_survey']} for dimensions.
  • Figure 3: Adapting the Otter's external interface for ROS 2 with OtterROS. The Payload computer running ROS 2 communicates with the Otter over a local network connection. OtterROS manages the interface between the USV and new programs in the Package Layer.
  • Figure 4: The Otter uses a compartmental design to house electrical systems. Connections between compartments must be made with waterproof connectors and cables. Locations of each compartment indicated in grey.
  • Figure 5: Hardware inside the aft (payload) container. Bulkhead connectors are visible on port (left) and starboard (right) walls for connections to other boxes and systems. Main components are the power board (red), network switch (blue), and NVIDIA Jetson inside the mounting cradle (green). An optional RTK radio (yellow) is also shown.
  • ...and 1 more figures