Onboard Vision and MPC Navigation for Underwater Robots: An Open BlueROV2 Platform for Multi-Robot Experiments & Docking

summary

Video file (mp4)

The gist

Autonomous underwater robots require robust perception, estimation and control to operate in confined environments.

In short

This work presents an open-source BlueROV2 platform combining onboard vision and Nonlinear Model Predictive Control (NMPC) for autonomous navigation and docking underwater. The system uses stereo cameras and relative vehicle detection to estimate positions, fused with an Extended Kalman Filter for state estimation. This enables robust navigation in confined environments without external communication.

Key concepts

Stereo-Ranging Evaluation
This technique uses a stereo camera (like the D435i) to capture two slightly different images simultaneously. By comparing these images, the system can calculate the precise depth of objects underwater. This is crucial for accurately measuring distances between robots and other vehicles in their environment.
YOLO Detection
A lightweight YOLO detector is used on the camera feed to identify other BlueROV2 vehicles in real-time. It labels these detected objects as 'vehicle j' at a specific time step. This allows the robot to know where nearby robots are located without needing external tracking systems.
Quaternion Error-State Extended Kalman Filter (EKF)
The EKF is used to combine noisy data from various sensors, including an Inertial Measurement Unit (IMU) and stereo camera measurements. It maintains a detailed estimate of the robot's state, such as position and orientation, by propagating the state between sensor updates using discrete-time dynamics.

Terminology used across episodes

This episode discusses

The paper

Onboard Vision and MPC Navigation for Underwater Robots: An Open BlueROV2 Platform for Multi-Robot Experiments & Docking · Read on arXiv

Victor Nan Fernandez-Ayala, Wiktor Kowalczyk, *Cezary Banaszek*, *Dimos V. Dimarogonas*

Department of Decision and Control Systems, School of Electrical Engineering and Computer Science, KTH Royal Institute of Technology

Autonomous underwater robots require robust perception, estimation and control to operate in confined environments. This paper presents an open-source BlueROV2 platform combining onboard vision with nonlinear Model Predictive Control (NMPC) for autonomous navigation and docking. The platform integrates an NVIDIA Jetson Orin NX and an Intel RealSense D435i stereo camera in a modular pressure housing. Underwater-calibrated stereo depth and realtime object detection provide relative position measurements of nearby BlueROV2 vehicles in the camera and body frames. A quaternion-based estimator fuses external pose and inertial measurements, while an NMPC controller based on a nonlinear six-degree-of-freedom model tracks planned navigation and docking trajectories. To support reproducible development, we also provide open-source physics-based PX4 SITL and Gazebo environments, multi-robot simulation tools and a lowcost physical docking station. Experiments evaluate underwater perception, onboard computational performance, state estimation, trajectory tracking and autonomous docking.

Transcript

Introduction to the show: ident: Robotics Radio. Generated commentary on the latest robotics and control papers.

Rosa: Today's paper: "Onboard Vision and MPC Navigation for Underwater Robots".

Dev: Autonomous underwater robots require robust perception, estimation and control to operate in confined environments.

Rosa: First, who's behind it and why it matters.

Title and authors: Rosa: So, we're looking at this paper titled "Onboard Vision and MPC Navigation for Underwater Robots: An Open BlueROV2 Platform for Multi-Robot Experiments and Docking," and I'm really interested in what that title tells us about the core focus. It immediately suggests a system that uses onboard vision combined with Model Predictive Control to handle both navigation and docking underwater.

Dev: That title definitely points toward a tightly integrated solution, Rosa; it sounds like they are tackling the whole problem of autonomous movement and precise final positioning in a challenging environment. I'm curious about the implications of making this platform open-source, because that really opens up possibilities for other researchers to build upon it.

Taro: From an autonomy standpoint, I see the emphasis on combining vision with MPC as a way to handle the complexities of confined spaces and nonlinear dynamics. It suggests a system designed not just for following pre-set paths but for actively managing its motion in real-time, which is crucial when things go wrong or you need to perform delicate maneuvers.

Rosa: Exactly, Taro; the combination of vision and MPC implies they're aiming for a robust system that can react dynamically to its surroundings rather than relying on purely pre-programmed commands. I wonder how effective this approach really is outside of a controlled lab setting, and if it can handle the unpredictable nature of an actual underwater environment for extended periods.

Dev: That’s my main concern, Rosa; the real world introduces noise and latency that can totally mess up a system relying on such fast feedback loops. We need to know about the loop rate and whether this entire stack—perception, estimation, planning, control—can maintain stability when things get messy.

Taro: And when we think about what happens when things misbehave, like unexpected currents or visual occlusion in a docking scenario, does this architecture give the robot enough intelligence to recover gracefully?

The paper's summary: Rosa: The paper outlines a platform built around the BlueROV2 Heavy vehicle, integrating an NVIDIA Jetson Orin NX and an Intel RealSense D435i stereo camera into a pressure housing. Essentially, they’ve created an open-source system that uses onboard vision for relative positioning of other robots and then feeds that information into a quaternion-based estimator alongside NMPC for navigation and docking.

Dev: So, the core idea is using the stereo camera to get depth and detect other BlueROVs, which then informs the state estimation via an Extended Kalman Filter, all while an NMPC controller tracks a planned trajectory derived from RRT*. That’s a fairly comprehensive loop that sounds very demanding on computational resources.

Taro: I see them focusing heavily on how they handle relative positioning between robots using that vision data, which is a key element for multi-robot experiments. The way they use the measurements to calculate relative positions without needing external communication is something I find really important for decentralized operation.

Rosa: Right, that's what caught my eye; achieving relative position measurement just from onboard stereo vision and not needing external signals simplifies things immensely for deployment in remote areas where communication might be intermittent. It sounds like the paper lays out a very practical setup for underwater autonomy.

Dev: The computational load must be significant, especially running YOLO for detection, the EKF fusion, and then solving the NMPC within a fixed sampling time of zero point zero four seconds; I'm worried about latency if any single component lags or fails to meet that timing constraint.

Taro: If the perception system misses a frame or provides bad depth estimates due to scattering underwater, how does the state estimation system compensate? That’s where the robustness really gets tested when the world doesn't look exactly like what it expects.

The paper's improvements: Rosa: The authors highlight several key enhancements they made, particularly focusing on making the platform modular so it can be installed on an existing BlueROV2 without needing major modifications to the base vehicle structure. They also detail how they use a quaternion-based EKF to fuse noisy inputs like IMU data with those external pose measurements and relative position estimates derived from the vision system.

Dev: The improvement in state estimation is interesting; fusing IMU noise with stereo visual data and external pose information should theoretically lead to a much cleaner state estimate, but I need to see how stable that fusion remains when sensors are temporarily unreliable, like during a close docking approach.

Taro: And the planning part, they use RRT* to generate the geometric path and then interpolate it into a time-parametrized sequence Xr k for the NMPC controller. This structured approach to trajectory generation is something I think makes it much more reliable than just letting the controller figure everything out from scratch.

Rosa: Precisely; that structured planning step gives the NMPC a clear reference to track, which is essential for achieving that precise docking maneuver they're aiming for using the nonlinear six-degree-of-freedom model. It shows they're not just reacting blindly but actively steering toward a goal.

Dev: Speaking of control, I’m looking at the NMPC cost function, specifically those terms tracking errors in position, orientation, velocity, and angular velocity; the tuning of those weights Qp, Qq, Pv and Pw will be critical to ensuring that the controller prioritizes stability over aggressive trajectory following during high-speed maneuvers.

Taro: I’m also interested in their method for docking itself; they use RRT* to define a goal position and then interpolate the attitude reference from the initial attitude to a desired one, which suggests a systematic way to approach that final alignment phase even when visual tracking becomes tricky.

Conclusion: Rosa: So, wrapping up on "Onboard Vision and MPC Navigation for Underwater Robots: An Open BlueROV2 Platform for Multi-Robot Experiments and Docking," the main implication is providing an accessible, open-source framework that couples vision perception with nonlinear control for complex underwater tasks like navigation and docking.

Dev: I think it really shows how a well-integrated stack, even on mobile hardware like the Jetson Orin NX, can handle demanding real-time requirements when you carefully manage the computational pipeline and sensor fusion effectively.

Taro: For autonomy research, this platform validates that integrating visual relative localization with MPC for trajectory tracking is a viable path forward for complex underwater missions where external sensing is limited.

Rosa: Indeed; it gives researchers a tangible, reproducible environment to test these ideas, and the modular design means this setup can be adapted for various other underwater robots or scenarios without starting from scratch every time.

Dev: My concern remains the practical deployment longevity; while the simulation and lab results look solid, I need to see data on how long this system actually runs reliably when subjected to the physical stresses of a real operational environment.

Taro: That’s a fair point about robustness in harsh conditions; we need more data showing how this system handles unexpected sensor degradation or environmental shifts over long mission times.

Rosa: Well, that covers the highlights of this paper on "Onboard Vision and MPC Navigation for Underwater Robots: An Open BlueROV2 Platform for Multi-Robot Experiments and Docking." It’s a really solid piece of work that gives us a clear blueprint for building more capable underwater robots.

Dev: I'm ready to look at the next paper and see if we can push those latency numbers even further.

Taro: I'm looking forward to whatever comes next, because this kind of platform is exactly what we need to start pushing autonomy into genuinely complex underwater environments where failure modes are more nuanced.

More episodes

← Home