The Quest to Build an Autonomous Underwater Vehicle

“We stand on the brink of a technological revolution. Soon, few of us will own our own automobiles and instead will get around in driverless electric vehicles that we summon with the touch of an app. We will be liberated from driving, prevent over 90% of car crashes, provide freedom of mobility to the elderly and disabled, and decrease our dependence on fossil fuels.” — The Quest to Build the Driverless Car

The same applies to oil and gas industry. Although robotic technologies have entered the oil and gas industry for around some time, the quest to build the autonomous underwater vehicle must go on!

In this post, I will briefly write about the kind of the things we do at our R&D team. (Please note that I cannot write all the details and so I have skipped some parts.)

A System

What do we need in order to build an autonomous underwater vehicle and its system?

All the teams (software, electrical, and mechanical) collaboratively design the robot. The physical aspect of the robot is mainly designed by a mechanical engineer team where they need to consider things such as the dynamic model, hydrodynamic model, robot mechanisms, and etc. The electrical engineer team is the ones who design and lay out electrical circuits connecting all components to a system. The software team mostly look at the high level aspect of the robot such as what sensors, what algorithms, how to communicate with the vessel, how many computing units, how to store logging data, and the list goes on.

Hardware

  • IMU dead reckoning
  • SLAM
  • Map building

Perception Algorithms

Perception algorithms are probably the key to intelligent autonomous vehicles. At ARV, we have developed several algorithms, including but not limited to 2D object detection, 3D object detection, point cloud-related algorithms, etc., in order to tackle the challenges we encountered in subsea robotics.

We have also developed several machine learning and deep learning models for automatic pipeline inspection as well. These are used both in online (real-time) and offline (data analytics software).

Planning Algorithms

  • Way point planning
  • Optimal path planning

Control Algorithms

Simulation Platform

This is probably the testbed of our robotics software development. We use Gazebo as a simulator for realistic simulation, with some custom-implemented sensor plugins that we developed for our own use.

Of course, these custom plugins should run very fast for the simulation to run smoothly, so the algorihtms must be hevily optimized. For example, the custom sonar plugin was implemented in CUDA to speed things up.

Data Analytics Software

The collected data when the robot operates at the seabed must be analyzed in some way. We build our web application where customers can log in to see the analyzed data (as well as raw data) and the generated report.

Related