interview
visualization

Spotlight: Duke Robotics Club’s journey to underwater autonomy

The preparation for competitions and plans to further enhance their AUV, Oogway.

interview
visualization

The Duke Robotics Club, part of Duke University’s Pratt School of Engineering, is a student-run organization dedicated to large-scale robotics projects, with a focus on Autonomous Underwater Vehicles (AUVs). The club competes annually in the international RoboSub competition, where teams design and build AUVs capable of performing tasks like underwater exploration, seafloor mapping, and sonar localization.

The 2024 Duke Robotics Club team.

In 2024, Duke Robotics achieved its best finish in 15 years, placing 8th at the RoboSub competition in Irvine, California. Motivated by this success, the team is now preparing for future competitions with plans to further enhance their AUV, Oogway.

Meet Oogway

Oogway, the club’s AUV entry for RoboSub 2024, represents a significant advancement from previous years, incorporating new technologies and refining existing systems for improved performance. At its core, Oogway’s design emphasizes tight integration across all subsystems to ensure reliable execution of various underwater tasks. Its modular and accessible electrical stack supports a wide array of sensors, while its software features advanced computer vision, task planning, and control systems. The robot also includes a new marker-dropper and hydrophones for detecting acoustic pings.

| Technical design report

Control System

Oogway’s control system combines feedforward and feedback mechanisms to ensure both stability and precision. Feedforward control counters external forces like buoyancy, while feedback control, managed through Proportional-Integral-Derivative (PID) loops, guides the robot smoothly toward its target.

The thrust allocator uses advanced numerical optimization to solve a quadratic programming problem, determining the exact force needed for each thruster. This system helps minimize energy consumption while keeping Oogway on course, even in challenging underwater conditions.

Computer Vision

Oogway’s Computer Vision (CV) subsystem utilizes both stereo and monovision inputs from DepthAI and USB cameras to detect underwater objects. For simpler tasks, such as recognizing competition obstacles like buoys or path markers, the team employs HSV filtering and contour matching. More complex tasks, like navigating through gates or identifying torpedo targets, are managed using YOLO object detection models.

Oogway's under waterview of a buoy and path marker.

The team’s CV models are trained on a synthetic dataset generated using a Unity Perception model of the competition environment. This approach eliminates the need for manually labeling thousands of images, enabling the team to quickly scale their training set while maintaining precise control over class balance.

Task Planning

Oogway’s task-planning system orchestrates the robot’s actions during competitions, using sensor data and computer vision detections to make real-time decisions for task completion. Built with Python’s async-await coroutine framework, the system is highly adaptable, allowing it to quickly respond to environmental changes and select the most efficient course of action. Its modular architecture enables developers to build complex tasks from smaller, reusable components. Additionally, the system provides real-time updates, offering valuable insights into the robot’s performance and the rationale behind its decision-making process.

Visualization and Control with Foxglove

During pool tests, the Duke Robotics team relies on real-time data to monitor Oogway’s performance. This includes tracking the robot’s position, sensor readings, and thruster status, as well as visualizing detections from the CV subsystem. To facilitate this, the team uses Foxglove, a robust data visualization tool, to monitor the robot’s systems and performance.

Duke Robotics Club's Foxglove layout incl. their custom panels.

To support their unique workflows, Duke Robotics developed a variety of custom extensions for Foxglove. These custom panels allow the team to monitor Oogway’s onboard computer, sensors, and thrusters. One panel even enables the team to adjust PID constants on the fly. By organizing these panels into layouts, they can easily switch between the tools needed for specific tasks. The team also leverages the Foxglove CLI to publish custom extensions, ensuring that the latest version of the GUI is available to all members.

Additionally, Duke Robotics uses the Foxglove Agent to automatically upload recordings of their pool tests to the cloud. By streaming previously recorded data, the team can troubleshoot and make improvements after each test session.

The Foxglove devices UI showing data automatically ready for import via the Foxglove Agent.

Looking Forward

Duke Robotics is excited for the challenges of the upcoming year, with ambitious plans to build a new minibot and integrate sensors, such as a gyroscope for enhanced state estimation. Fueled by their success and insights from RoboSub 2024, the team is more motivated than ever to push the boundaries of AUV innovation. They’re ready to take their robotics development to new heights in the year ahead.

For more information about Duke Robotics, visit their website at duke-robotics.com, follow them on Instagram @duke_robotics, or explore their projects on GitHub.

Read more

Start building with Foxglove.

Get started for free