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.
