**1. Introduction**

The problems of perimeter detection, boundary searching, and encircling have been widely researched topics with a variety of practical applications, ranging from the monitoring of wildfire spread in forests [1], to the control and encircling of oil spills [2] and harmful invasive algae blooms [3] at the surface of the ocean. In this paper, we will focus on the problem of chemical spill encircling.

The two main phenomena that contribute to the transportation and spread of hazardous chemicals over water, such as oil, are advection and diffusion. In the first, the chemical is transported due to the flow of water, while the second refers to the motion of the fluid caused by the existence of concentration gradients. One way of modelling the flow field of the incompressible fluid is by solving iteratively the convection–diffusion equations [4]. In the literature, many works address the problem of dynamic boundary tracking at the surface of the ocean by proposing control schemes which require (at least one) surface vessel to measure the concentration gradient of a hazardous contaminant. These measurements of the chemical plume are used by potential field controllers with the end goal of steering the robots to the boundary of the plume [5,6]. A completely different approach, adopted by Saldaña et al. [7], is to consider that a general environmental boundary can be approximated by a closed curve that is slowly varying over time and that

**Citation:** Jacinto, M.; Cunha, R.; Pascoal, A. Chemical Spill Encircling Using a Quadrotor and Autonomous Surface Vehicles: A Distributed Cooperative Approach. *Sensors* **2022**, *22*, 2178. https://doi.org/10.3390/ s22062178

Academic Editor: Maria Gabriella Xibilia

Received: 4 February 2022 Accepted: 7 March 2022 Published: 10 March 2022

**Publisher's Note:** MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

**Copyright:** © 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/).

can be described by a general parametric equation. In his research, the author proposes a model for the curve described spatially by a truncated Fourier series that changes its shape smoothly over time. To achieve this, it is assumed that a team of Autonomous Surface Vehicles (ASVs) are distributed equally around the chemical spill, and every vehicle is capable of taking local measurements of the boundary as it moves around it. These local measurements are then used to update the shape of the closed curve using recursive least squares. Although this is a very general solution to the problem, it can be argued that the use of a truncated Fourier series to represent a path for underactuated vehicles to follow is a rather poor choice of function, as the resulting curve can self-intersect and exhibit substantial oscillations. Moreover, it does not take into consideration the physical constraints imposed by the vehicles. In order to lift the limitations imposed by this method, more stable parametric curves could be considered, such as Bernstein polynomials or B-splines [8].

In recent years, there has been a massive development of and demand for Autonomous Underwater Vehicles (AUVs), due not only to their agility when it comes to the execution of scientific and comercial missions, but also to their low cost when compared to traditional ships, which require an on-board crew to be operated. Additionally, there has also been an exponential growth in demand for Unmanned Aerial Vehicles (UAVs), with a special emphasis on multirotor systems, which usually offer high-quality camera sensors at low market prices. Aerial vehicles can have a top-down view of the environment, making them the tool par excellence for surveillance and maintenance missions. On the other hand, AUVs and ASVs can be used to carry and release chemical dispersants used in cleanup missions to break oil molecules [9]. Together, these unmanned vehicles have huge potential to automate and reduce the cost of ocean cleanup operations.

In this paper, we address the problem of chemical spill encircling and focus on the development of a set of control and path planning tools that allow a team of robots constituted of a quadrotor (equipped with an onboard camera) and ASVs to detect and encircle the dynamical boundary of a chemical spill closely, as depicted in Figure 1. In our proposal, the quadrotor is responsible for detecting in real time the boundary of a chemical spill in the image stream produced by its onboard camera, and producing a path that itself and one or more ASVs are required to follow cooperatively. To achieve this, we start by proposing a set of single-vehicle motion control laws based on non-linear Lyapunov techniques that allow individual ASVs to follow a pre-defined parametric curve, based on previous works by Aguiar et al. [10–12]. These control techniques are then extended to the case of quadrotor vehicles. Borrowing from the work of N. Hung and F. Rego [13], a distributed controller using event-triggered communications is presented, allowing the vehicles to perform Cooperative Path Following (CPF) missions, according to a pre-defined geometric formation. Finally, a new real-time path planning framework that uses growing unclamped (and uniform) cubic B-splines is proposed, which fits a 2-D point cloud generated from the drone's image stream.

**Figure 1.** Cooperative path following along an environmental boundary.

A set of real experiments are performed with the Medusa class of marine vehicles [14] (property of ISR-DSOR) to access the real-life performance of the proposed path following and CPF algorithms. Additionally, the complete path planning solution is evaluated by resorting to the Gazebo 3-D simulator, PX4-SITL [15], and UUVSimulator [16], using a dynamic model of a Medusa vehicle and an Iris quadrotor equipped with a virtual RGB camera.

#### **2. Preliminaries**

#### *2.1. Notation*

The unit vector **e**<sup>3</sup> is defined as **e**<sup>3</sup> = [0, 0, 1] *<sup>T</sup>*. For a vector **<sup>x</sup>** <sup>∈</sup> <sup>R</sup>*n*, the symbol *xi* denotes the ith element of the vector. We shall use **<sup>x</sup>** <sup>=</sup> <sup>√</sup> **x***T***x** to denote the Euclidean norm of a vector. The notation *<sup>K</sup>* 0 is used to denote a matrix *<sup>K</sup>* <sup>∈</sup> <sup>R</sup>*n*×*<sup>n</sup>* that is positive semi-definite. The symbol *I* is used to denote the identity matrix and **1** is a vector with all elements equal to one. The symbols *<sup>x</sup>*, *<sup>x</sup>* <sup>∈</sup> <sup>R</sup> denote the *<sup>x</sup>* nearest integer, *<sup>x</sup>* denotes the floor of *x*, and *x* denotes the ceiling of *x*. The symbol *R*(.) is used to denote a rotation matrix with properties *<sup>R</sup><sup>T</sup>* <sup>=</sup> *<sup>R</sup>*−<sup>1</sup> and *det*(*R*) = 1. The map *<sup>S</sup>*(·) : <sup>R</sup>*<sup>n</sup>* <sup>→</sup> <sup>R</sup>*n*×*n*, *<sup>n</sup>* <sup>=</sup> 2, 3 yields a skew-symmetric matrix *<sup>S</sup>*(**x**)**<sup>y</sup>** <sup>=</sup> **<sup>x</sup>** <sup>×</sup> **<sup>y</sup>**, <sup>∀</sup>**x**, **<sup>y</sup>** <sup>∈</sup> <sup>R</sup>*n*. When considering an estimator for an unknown variable *x*, we use the hat nomenclature *x*ˆ to denote its estimate and *x*˜ when referring to the estimation error.
