# Design and Development of a Littoral AUV for Underwater Target Localization and Homing Using Vision and SONAR Module

Authors: R. K. Sinha; Aayush Jha; Faheem Ahmad; Vivek Mishra; Prateek Murgai; Vatsal Rustagi; Raj Kumar Saini; Akshay Jain
Journal: ISRN Robotics
 (2013)

---

## Abstract

This paper presents the design and development of a modular littoral autonomous underwater vehicle called “ZYRA” having six degrees of freedom for performing the following tasks underwater: target (sound sources emitting frequencies between 1 Hz and 180 KHz) localization and homing, buoy detection. The development of the AUV has been divided into, namely, five sections: mechanical design and fabrication, embedded and power systems, control and software, image processing, and underwater acoustics. A fully functional AUV has been tested in a self-created arena with different tasks spread out in a shallow water environment. Two different kinds of experimental results have been presented: first the experimental results of the SONAR module and second based on the number of successful outcomes per total number of trials for each task.


---

## Body

## 1. Introduction

Autonomous Underwater Vehicle is powerful and complex system which is capable of performing underwater (shallow and deep sea) tasks. The range encompasses bathymetry calculation, detection of faults in oil pipelines, collection of deep sea water samples, fish population estimation, collection of marine data, strategic and commercial applications like underwater surveillance and reconnaissance, recovery and monitoring of submerged installations, and even complex tasks like collecting data which aids in understanding global warming. The aim is to design and develop an Autonomous Underwater Vehicle which will serve as a technology demonstrator which is highly compact, multirole, and can be used for various missions with the independence of choosing payload. ZYRA (see Figures1 and 3) is the product of completely refined mechanical assembly, control systems, embedded systems, vision system, and acoustics module. The mechanical model of ZYRA is designed to be in hydrodynamically stable equilibrium both below and above water surface. The mechanical system consists of main pressure hull, front and back lids, frame, and electronics rack, and the mechanical dimension aspects are mentioned in Table 1. The focus of embedded and the power systems department is mainly on the implementation of acoustic positioning module, actuator board, and the designing of a power distribution board for diverting power to various modules on the AUV [1]. The various COTS equipment integrated in the vehicle are tabulated in Table 2. Dynamic control is achieved by retrieval of coordinates using various PID control algorithms [2, 3]. The software is designed to run in decentralized multithreaded agent architecture, with the threads handling pressure sensor, acoustics, cameras, control system, and IMU, each performing input and output operations in continuous loops. The mission plan model is also taken care of by the control department as it is responsible for the artificial intelligence of the vehicle [4, 5]. The vision system is designed to perform tasks like buoy detection, bin detection, path detection, and entry gate detection. The image processing software consists of various color filters, edge and line detection algorithms. For the target (sound source or pinger) localization, the AUV employs a three-dimensional array of hydrophones forming a passive SONAR system. The data acquired through hydrophones is passed through a amplifier, filter, and detector circuit before it is converted into its digital form for further processing. There are many techniques to estimate the position of a sound source based on energy densities, intensities of signals being received, but the most common and feasible approach for passive source localization is to use time delays (TDOA) between each pair of hydrophones [6–8]. The localization task is a sequential task in which first we calculate a set of values of time difference of arrival (TDOA) using the hydrophone signals and using these values we estimate the bearing and the position vector of the sound source with respect to the AUV. We employ the Generalized Cross-Correlation using Phase Transform [9] for TDOA estimation and an algorithm based on the intersection of spherical surfaces [10] for position estimation. For the experimental testing of the AUV, an arena is created in a shallow water area and the tasks of entry gate detection, buoy detection, path detection and sound source are spread throughout the arena. Each run is performed in a specific order and the success rate of completion of each task for various runs are noted. The percentage error in the range calculated by the SONAR module and the actual range at different distances from the sound source are also displayed.Table 1
Characteristics of ZYRA.
Property
Value
Dimensions
60 cm × 40 cm × 51 cm
Diameter of hull
30 cm
Dry weight
32 kg
Propulsion
4 horizontal + 2 vertical thrusters
Velocity
0–1.5 m/sTable 2
Commercial off the shelf (COTS) products used in ZYRA.
Devices
Model
Kontron motherboard
986LCD-M/mITX
Battery
Li-Po 18.5 V, 18000 mAh
Actuator controller
dsPIC30F2010 (dsPICDEM 2)
Motor controller
Syren 10
Camera
Microsoft LifeCam-3000 and Logitech HD Pro C920
Propulsion
SeaBotix BTD-150
Pressure sensor
Applied Measurements Pi9933
IMU
XSENS MTi-28A
Data acquisition
NI PCI-4462 and NI USB-6210
Servo HiTec
HS5646WP
Hydrophones
Reson TC-4013Figure 1
SolidWorks assembly of ZYRA.


## 2. Mechanical Design

ZYRA is the product of indgeniously designed mechanical assembly to embedded and control systems. It has a custom-made LiPo battery pack, a novel power distribution, redesigned actuator control board, battery monitor, leak sensor, an acoustic signal processing module, and improved software. The fabrication material chosen for pressure hull is Virgin Cast Acrylic (Clear) because of its excellent workability, strength, shock resistance, and comparatively low density. Simulation is done on hull at underwater depth of 10 m and factor of safety is found out to be more than 5.1.The body shall be propelled by six thrusters and has a net positive buoyancy. The frame is so designed to ensure easy mounting of thrusters, sensors, grabbers, and so forth. The profile of the vehicle makes it highly manoeuvrable. The front lid is made of virgin cast acrylic. Its transparency ensures clear and unobstructed view for the forward camera that is mounted inside the hull. Back-lid will be made of aluminium. Its smooth surface will ensure easy and efficient installation of connectors and aluminium being a good thermal conductor will also help as a heat sink.


### 2.1. Electronics Hull

The main hull of ZYRA (see Figures4 and 5) is of cylindrical shape. The shape of the vehicle has been decided after calculations, keeping various hydrodynamic parameters in mind to improve the overall performance of the robot. Main frame is designed to ensure easy installation of thrusters, grabber, hydrophone array, and so forth. The main consideration while designing it was that unwanted stresses on hull are uniformly and efficiently transmitted to the whole frame and prevent cracks. Some of its components are made up of stainless steel GR316 and others are of aluminium. The reason for this approach is to have a suitable combination of weight, buoyancy, resistance to corrosion along with low maintenance, high strength, and ease of fabrication.


### 2.2. Vehicle Dynamics

Thrusters: Six strap-on BTD-150 thrusters from SeaBotix Inc. are used to manoeuvre the vehicle. Two thrusters facilitate motion in the horizontal direction, while other two facilitate the vertical motion. Two additional thrusters are being used to control strafe and rotations aboutz-axis, that is, yaw. They are chosen because of their high thrust-to-weight ratio and safeguards for power surges and ground shifts. These thrusters provide a two-blade bollard thrust of 2.9 kgf and require power in the range of 80–110 watts depending on the conditions outside. All electronic components are housed inside the electronics hull. Components are placed in racks inside the main hull so as to facilitate easy removal of component in case of a technical fault. The rack is so designed to ensure easy addition of new shelves later as per requirements and least length of wires. Battery is placed at lower most shelf to ensure lower centre of gravity and improve stability and resist roll.


### 2.3. Degrees of Freedom

The six thrusters are installed in such a way that the vehicle has six degrees of freedom including rotational motions like roll, pitch, and yaw. Figure6 shows degrees of freedom of the vehicle.


### 2.4. Stability

The AUV is designed in such a way so that the centre of gravity and centre of buoyancy lie in the same vertical line. Figure7 display the stability parameters.


### 2.5. Robustness

Figure2 displays Von Mises’ stress distribution and Figure 8 showcases the robustness of the mechanical design.Figure 2
SolidWorks simulation of the main hull-Von Mises stress distribution.Figure 3
Exploded view of assembly.Figure 4
Solidworks model of main frame.Figure 5
Solidworks model of electronics frame.Figure 6
ZYRA’s degrees of freedeom.Centre of buoyancy and gravity in the same vertical line.
(a)
(b)Figure 8
Depicts the fixture and face of pressure application.


## 2.1. Electronics Hull

The main hull of ZYRA (see Figures4 and 5) is of cylindrical shape. The shape of the vehicle has been decided after calculations, keeping various hydrodynamic parameters in mind to improve the overall performance of the robot. Main frame is designed to ensure easy installation of thrusters, grabber, hydrophone array, and so forth. The main consideration while designing it was that unwanted stresses on hull are uniformly and efficiently transmitted to the whole frame and prevent cracks. Some of its components are made up of stainless steel GR316 and others are of aluminium. The reason for this approach is to have a suitable combination of weight, buoyancy, resistance to corrosion along with low maintenance, high strength, and ease of fabrication.


## 2.2. Vehicle Dynamics

Thrusters: Six strap-on BTD-150 thrusters from SeaBotix Inc. are used to manoeuvre the vehicle. Two thrusters facilitate motion in the horizontal direction, while other two facilitate the vertical motion. Two additional thrusters are being used to control strafe and rotations aboutz-axis, that is, yaw. They are chosen because of their high thrust-to-weight ratio and safeguards for power surges and ground shifts. These thrusters provide a two-blade bollard thrust of 2.9 kgf and require power in the range of 80–110 watts depending on the conditions outside. All electronic components are housed inside the electronics hull. Components are placed in racks inside the main hull so as to facilitate easy removal of component in case of a technical fault. The rack is so designed to ensure easy addition of new shelves later as per requirements and least length of wires. Battery is placed at lower most shelf to ensure lower centre of gravity and improve stability and resist roll.


## 2.3. Degrees of Freedom

The six thrusters are installed in such a way that the vehicle has six degrees of freedom including rotational motions like roll, pitch, and yaw. Figure6 shows degrees of freedom of the vehicle.


## 2.4. Stability

The AUV is designed in such a way so that the centre of gravity and centre of buoyancy lie in the same vertical line. Figure7 display the stability parameters.


## 2.5. Robustness

Figure2 displays Von Mises’ stress distribution and Figure 8 showcases the robustness of the mechanical design.Figure 2
SolidWorks simulation of the main hull-Von Mises stress distribution.Figure 3
Exploded view of assembly.Figure 4
Solidworks model of main frame.Figure 5
Solidworks model of electronics frame.Figure 6
ZYRA’s degrees of freedeom.Centre of buoyancy and gravity in the same vertical line.
(a)
(b)Figure 8
Depicts the fixture and face of pressure application.


## 3. Embedded and Power Systems

As discussed before for the AUV ZYRA, the focus of electronics department is primarily on implementation of SONAR and signal processing module, actuator board for control of six SeaBotix thrusters. A new power distribution board is designed to regulate voltage and to provide power directly to all the systems through one particular board which would eliminate the need of further bucking of voltage and hence concentrates the heat dissipating unit in one particular section of hull which can be placed near the metal ends to allow heat exchange with the water.


### 3.1. Power Systems

The electrical power system is comprised of lithium polymer (LiPo) battery, encased within the main electronics hull. The battery is rated at 18000 mAh at 18.5 V. The battery protection board monitors voltage of each cell and shuts off the power if the voltage drops to 16 V, also the overcharge and current drawn are monitored similarly. It is connected to a power distribution board (PDB) which is responsible for diverting power to various modules on the bot. The PDB is equipped with fuses in case of battery/circuit failure, multiple capacitors to smooth out ripples, and eliminates high-frequency noise. The PDB divides the power and provides regulated power supply to sensitive electronics. It provides ZYRA with clean, isolated, and regulated power at 5 V, 12 V, and 18.5 V.


### 3.2. Actuator Control

The actuator board used for ZYRA is custom designed, the schematics and the actual board are depicted in Figures9 and 10, respectively. It takes to account the electromagnetic interference from the thrusters which distorts the motor control signal coming from the microcontroller unit dsPIC30F2010. This microcontroller is responsible for taking in signals from the central processing board through packetized serial interface. The microcontroller is capable of processing at 30 MIPS.Figure 9
Schematic for actuator board.Figure 10
Actuator board.The motor controllers from Dimension Engineering are capable of functioning at ultrahigh frequency of 32 KHz, thus making it inaudible for human ears and eliminate the irritating humming noise. The controllers can be configured to use either in tank style differential drive or analog voltage control. The microcontroller unit receives signals specifying direction and speed of the ZYRA which in turn actuate the required thrusters. A hermetically sealed switch is responsible for killing the power to the propulsion system. Along with hard kill, a soft kill is also incorporated in the code. Analog voltage is used to control the speed of thrusters with another signal to specify the direction of motion. PWM motor controller of dsPIC30F2010 is used to generate variable duty cycle PWM signal which is filtered and smoothed into an analog signal (0 V–5 V) via a high capacitance, RC filter. The added advantage of mounting Syren 10 on the actuator board is that any particular controller can be replaced in case it gets damaged, and thus prevailing reusability of the board. The communication of Master Computer and Microcontroller have been changed from RS-232 protocol to TTL. Instead of the fact that RS-232 is noise tolerant, the communication to UART is done using USB-TTL chips.


### 3.3. Electronics Rack

Modularity of the vehicle has been the priority while developing the vehicle. Electronics Rack is designed such that it holds all the electronics and can be removed from ZYRA without disturbing the rest of the system. The height of the levels can be modified depending on the electronics to be boarded as can be seen from Figure11.Figure 11
Electronics rack for ZYRA.The level of various racks can be varied according to payload.


## 3.1. Power Systems

The electrical power system is comprised of lithium polymer (LiPo) battery, encased within the main electronics hull. The battery is rated at 18000 mAh at 18.5 V. The battery protection board monitors voltage of each cell and shuts off the power if the voltage drops to 16 V, also the overcharge and current drawn are monitored similarly. It is connected to a power distribution board (PDB) which is responsible for diverting power to various modules on the bot. The PDB is equipped with fuses in case of battery/circuit failure, multiple capacitors to smooth out ripples, and eliminates high-frequency noise. The PDB divides the power and provides regulated power supply to sensitive electronics. It provides ZYRA with clean, isolated, and regulated power at 5 V, 12 V, and 18.5 V.


## 3.2. Actuator Control

The actuator board used for ZYRA is custom designed, the schematics and the actual board are depicted in Figures9 and 10, respectively. It takes to account the electromagnetic interference from the thrusters which distorts the motor control signal coming from the microcontroller unit dsPIC30F2010. This microcontroller is responsible for taking in signals from the central processing board through packetized serial interface. The microcontroller is capable of processing at 30 MIPS.Figure 9
Schematic for actuator board.Figure 10
Actuator board.The motor controllers from Dimension Engineering are capable of functioning at ultrahigh frequency of 32 KHz, thus making it inaudible for human ears and eliminate the irritating humming noise. The controllers can be configured to use either in tank style differential drive or analog voltage control. The microcontroller unit receives signals specifying direction and speed of the ZYRA which in turn actuate the required thrusters. A hermetically sealed switch is responsible for killing the power to the propulsion system. Along with hard kill, a soft kill is also incorporated in the code. Analog voltage is used to control the speed of thrusters with another signal to specify the direction of motion. PWM motor controller of dsPIC30F2010 is used to generate variable duty cycle PWM signal which is filtered and smoothed into an analog signal (0 V–5 V) via a high capacitance, RC filter. The added advantage of mounting Syren 10 on the actuator board is that any particular controller can be replaced in case it gets damaged, and thus prevailing reusability of the board. The communication of Master Computer and Microcontroller have been changed from RS-232 protocol to TTL. Instead of the fact that RS-232 is noise tolerant, the communication to UART is done using USB-TTL chips.


## 3.3. Electronics Rack

Modularity of the vehicle has been the priority while developing the vehicle. Electronics Rack is designed such that it holds all the electronics and can be removed from ZYRA without disturbing the rest of the system. The height of the levels can be modified depending on the electronics to be boarded as can be seen from Figure11.Figure 11
Electronics rack for ZYRA.The level of various racks can be varied according to payload.


## 4. Control Platform

The use of LabView, developed by National Instruments, has been selected for developing our software framework. The software is designed to run in decentralized multi-threaded agent architecture, with the threads handling pressure sensor, acoustics, cameras, control system, and IMU, each performing input and output operations in continuous loops. Its GUI-based coding, ease of onsite debugging, and quickly changeable mission strategy are the main reason for it to be preferred over conventional C-based coding. Even though vision submodules have been tested on OpenCV and acoustics modules on MATLAB, everything has been finally integrated into LabView to keep a uniform software platform. ZYRA has interactive Graphical User Interfaces (GUIs) developed for acquiring data from all sensors, adjusting control parameters, implementing individual codes, as well as for the mission control using LabView (sample shown in Figure12). This helps quick onsite editing of codes/mission parameters, payload and target selection even by a person with very minimal knowledge of the coding languages. This complies with the basic idea of a highly modular, flexible, and multiple-application AUV platform.Figure 12
Operator status screen during AUV mission run.


## 5. Mission Module

Mission plan module of ZYRA is responsible for the artificial intelligence of the vehicle. It is at the highest level in the software hierarchy, coordinating the global state of the AUV and the state of each subsystem (flowchart shown in Figure14). It makes calls to sensor modules like vision, sound, and so forth, determines the position and orientation of the AUV, and identifies targets in the arena (sample flowchart shown in Figure 15). The mission plan module coordinates the state of the AUV as it goes through the entire mission arena. It has a scheduler/timing module which times each operation and is capable of making smart decisions of leaving a task and moving to the next one based on mission time elapsed and prewritten contingency plans. Once the AUV determines what type of action is to be performed, it calls the control module which commands the actuators to function precisely.


## 6. Control Module

Control Module is a subroutine which can be called by Mission Module whenever required. It is called to minimise the error between the present and the desired heading of the AUV. Control module maintains the orientation of AUV using continuous PID loops running simultaneously. It relies on the mechanical stabilization for both roll and pitch movements, and thus, only the yaw, depth, and horizontal movement of AUV are controlled by this module. The PID control algorithm has been coded in LabView. This method has proved to be more efficient, less processor intensive, and easily implementable. The system attempts to maintain its state using dynamic feedback from the IMU (see Figure13), pressure sensor, and the acoustic and vision modules. User interfaces have been specifically developed to tune the PID parameters easily.Figure 13
Orientation data received from IMU used as an input in Control system module.Figure 14
Various software modules working in tandem to achieve mission control.Figure 15
Sample flow chart to explain the algorithm used in target detection by the AUV (an example of image processing used).


## 7. Image Processing

The Computer Vision module was developed using the NI Vision library in NI LabView. The high parallelism during execution of programs on multicore CPUs in LabView gives the vision module the required real-time computational power. The module incorporates concepts involving image processing, particle analysis, image segmentation, binary morphology, and machine vision. The vehicles had a highly accurate navigation system partly based on heuristics. The AUV is capable of doing the tasks described below. Figure15 gives the generalized flow chart for target detection using vision module.


### 7.1. Gate Validation

Starting with the gate detection, our vision algorithm receives video feed from the front facing camera and gives the heading relative to the AUV as the output. To accomplish this, the captured image is converted to HSV and segmented for specific color. Edge detection is used to separate desired edges. An edge filter is then applied to the binary image thus formed (see Figure16). The center of symmetry of vertical edges thus gives the correct heading (in degrees) relative to the vehicle. Figure 17 gives the generalized flow chart for gate detection.Figure 16
Original image and image after edge detection.Figure 17
Sample flow chart to explain the algorithms implemented in vision systems (an example of the AUV passing through a gate used).


### 7.2. Path Detection

For path detection, our vision algorithm receives video feed from the downward facing camera and gives the heading relative to the AUV as the output. To accomplish, this we employed color-based segmentation along with blob analysis. After converting the video feed to hue, saturation, and value, color segmentation is used to separate out the specific color (orange) and convert to binary. We use a filtering technique to isolate only the pixels we want to see, that is, to remove any type of noise. After this process is applied, we are left with a single black and white image. Blob analysis is then used to identify the centroid of the white colored blob left in the image (see Figure18). This information is then used to determine the heading of the blob relative to the vehicle.Figure 18
Original image and processed image for path detection.


### 7.3. Buoy Detection

The next task we have to do is buoy detection. Algorithm for buoy detection is similar to that of path detection. This algorithm receives video feed from the forward facing camera. Similar to the path detection, the goal of this algorithm is to output a target pixel, or a target point. Color-based segmentation is used for this purpose. The HSV color space is used for all segmentation-based operations. Original image is converted to HSV. The algorithm segments out the red color, giving a binary image. The binary image is then eroded and dilated suitably to remove any errors present. Then, the binary image is passed through filter to remove noise. The particles in the binary image are then analyzed and the center of the largest connected particle gives the current heading (see Figure19). The vehicle tries to approach the flare, keeping the center at 0 degrees.Figure 19
Original image and processed image for buoy detection.


## 7.1. Gate Validation

Starting with the gate detection, our vision algorithm receives video feed from the front facing camera and gives the heading relative to the AUV as the output. To accomplish this, the captured image is converted to HSV and segmented for specific color. Edge detection is used to separate desired edges. An edge filter is then applied to the binary image thus formed (see Figure16). The center of symmetry of vertical edges thus gives the correct heading (in degrees) relative to the vehicle. Figure 17 gives the generalized flow chart for gate detection.Figure 16
Original image and image after edge detection.Figure 17
Sample flow chart to explain the algorithms implemented in vision systems (an example of the AUV passing through a gate used).


## 7.2. Path Detection

For path detection, our vision algorithm receives video feed from the downward facing camera and gives the heading relative to the AUV as the output. To accomplish, this we employed color-based segmentation along with blob analysis. After converting the video feed to hue, saturation, and value, color segmentation is used to separate out the specific color (orange) and convert to binary. We use a filtering technique to isolate only the pixels we want to see, that is, to remove any type of noise. After this process is applied, we are left with a single black and white image. Blob analysis is then used to identify the centroid of the white colored blob left in the image (see Figure18). This information is then used to determine the heading of the blob relative to the vehicle.Figure 18
Original image and processed image for path detection.


## 7.3. Buoy Detection

The next task we have to do is buoy detection. Algorithm for buoy detection is similar to that of path detection. This algorithm receives video feed from the forward facing camera. Similar to the path detection, the goal of this algorithm is to output a target pixel, or a target point. Color-based segmentation is used for this purpose. The HSV color space is used for all segmentation-based operations. Original image is converted to HSV. The algorithm segments out the red color, giving a binary image. The binary image is then eroded and dilated suitably to remove any errors present. Then, the binary image is passed through filter to remove noise. The particles in the binary image are then analyzed and the center of the largest connected particle gives the current heading (see Figure19). The vehicle tries to approach the flare, keeping the center at 0 degrees.Figure 19
Original image and processed image for buoy detection.


## 8. Underwater Acoustics

ZYRA has an acoustic navigation system which employs a three-dimensional array of hydrophones for data acquisition to calculate azimuthal and compass bearing and estimate hyperbolic location of the sound source in far-field approximation using time difference of arrivals (TDOAs). Figure20 shows a tetrahedral array of hydrophones which has been used for the localization of the sound source. Such a symmetric array eases calculation while making time difference of arrival (TDOA) calculations and helps in reducing symmetric noise at different hydrophones.Figure 20
3D hydrophone array.The localization task has been broken down into two parts as follows:(a)
time difference of arrival estimation (TDOA);(b)
position estimation.


### 8.1. TDOA Estimation

The generalized cross-correlation technique using phase transform (GCC-PHAT) is employed to calculate the time difference of arrival corresponding to the correlation peak. Estimated TDOAs give bearing estimation for far-field approximation. The mathematics of the method is discussed as follows: letS1(t) and S2(t) be two signals at two different hydrophones and Δ the Fast Fourier transform of the signals; then,
(1)X1(f)=Δ(S1(t)),X2(f)=Δ(S2(t)).GCC-PHAT is defined as(2)GPHAT=X1(f)[X2(f)]*|X1(f)[X2(f)]*|,
where * is the complex conjugate of a function
(3)TDOA=argmax(Δ-1(GPHAT)).In environments of high levels of reverberation, GCC-PHAT helps to improve robustness and accuracy in calculating the time difference of arrival as we can see from Figure21 that GCC-PHAT enhances the peak and whitens the region around it.Figure 21
Typical GCC-PHAT function.


### 8.2. Position Estimation

One of the basic problems with numerically solving hyperboloid equations is that it is difficult to form a closed-form solution, but this is not true for intersecting spheres. This is because hyperboloids are defined as surfaces of constant difference of distances between pair of sensors, while spheres define surfaces of constant distances from single sensor. Thus, keeping in mind the difficulties in solving hyperboloids, we employ the method involving intersection of spheres.For four sensors, we can define the path difference from source to sensori and source to sensor j as dij, in terms of absolute distances Di from source to each of the sensors as follows:
(4)dij=Di-Dj,dij=V*Tij,V is the speed of sound in water, where Tij=Ti-Tj. Take into consideration the distance of the source to the sensors, which give us four basic equations:
(5)(xi-xs)2+(yi-ys)2+(zi-zs)2=Di2i=1,4,
where (xi,yi,zi) are the positions of the four hydrophones and (xs,ys,zs) is the position of the sound source. Di is the distance of the sound source to each sensor. Further expanding gives the following:
(6)xi2-2xixs+xs2+yi2-2yiys+ys2+zi2-2zizs+zs2=(di4+D4)2,(7)x42-2x4xs+xs2+y42-2y4ys+ys2+z42-2z4zs+zs2=(D4)2.Solving for the distance of source from the origin modifies the above equation as follows:(8)Rs2=xs2+ys2+zs2,(9)Rs2=-(x42+y42+z42)+D42+2x4xs+2y4ys+2z4zs,(10)Rs2=-(R42)+D42+2x4xs+2y4ys+2z4zs.
Substituting Rs in (6) into (9)
(11)Ri2-(di4+D4)2+D42-R42=2xixs+2yiys+2zizs-2x4xs-2y4ys-2z4zs.Without any loss of generality, we may take sensor 4 at origin; that is,(x4,y4,z4)=(0,0,0), which reduces (11) to
(12)Ri2-(di4+D4)2+D42=2xixs+2yiys+2zizs.Solving the above equations using matrix form gives us two values ofRs or two source positions let the two values be Rs1 and Rs2. As only one value is the true value (say RT), thus we select the correct value (in the far field) according to the following.IfRs1>0 and Rs2<0;  RT=Rs1.IfRs1<0 and Rs2>0;  RT=Rs2.IfRs1>0, Rs2>0, and Rs1>Rs2;  RT=Rs1.IfRs1>0, Rs2>0, and Rs2>Rs1;  RT=Rs2.Thus, we get a unique coordinate and thus a unique position vector of the sound source (in far field) with the AUV as reference in a 3D space. The acoustics module is tested in swimming pool for various distances of pinger in the water. The actual distance of the pinger and the calculated distance by the acoustic module employing the above mentioned algorithm are tabulated in Table3, along with the percentage error in the distance estimation.Table 3
Sonar module results for a pinger.
Initial range (meters)
Estimated range (meters)
∣Percentage error∣
29.274
29.136
0.47
42.025
42.036
0.026
17.979
17.907
0.4
11.585
11.671
0.74
36.003
35.894
0.3


## 8.1. TDOA Estimation

The generalized cross-correlation technique using phase transform (GCC-PHAT) is employed to calculate the time difference of arrival corresponding to the correlation peak. Estimated TDOAs give bearing estimation for far-field approximation. The mathematics of the method is discussed as follows: letS1(t) and S2(t) be two signals at two different hydrophones and Δ the Fast Fourier transform of the signals; then,
(1)X1(f)=Δ(S1(t)),X2(f)=Δ(S2(t)).GCC-PHAT is defined as(2)GPHAT=X1(f)[X2(f)]*|X1(f)[X2(f)]*|,
where * is the complex conjugate of a function
(3)TDOA=argmax(Δ-1(GPHAT)).In environments of high levels of reverberation, GCC-PHAT helps to improve robustness and accuracy in calculating the time difference of arrival as we can see from Figure21 that GCC-PHAT enhances the peak and whitens the region around it.Figure 21
Typical GCC-PHAT function.


## 8.2. Position Estimation

One of the basic problems with numerically solving hyperboloid equations is that it is difficult to form a closed-form solution, but this is not true for intersecting spheres. This is because hyperboloids are defined as surfaces of constant difference of distances between pair of sensors, while spheres define surfaces of constant distances from single sensor. Thus, keeping in mind the difficulties in solving hyperboloids, we employ the method involving intersection of spheres.For four sensors, we can define the path difference from source to sensori and source to sensor j as dij, in terms of absolute distances Di from source to each of the sensors as follows:
(4)dij=Di-Dj,dij=V*Tij,V is the speed of sound in water, where Tij=Ti-Tj. Take into consideration the distance of the source to the sensors, which give us four basic equations:
(5)(xi-xs)2+(yi-ys)2+(zi-zs)2=Di2i=1,4,
where (xi,yi,zi) are the positions of the four hydrophones and (xs,ys,zs) is the position of the sound source. Di is the distance of the sound source to each sensor. Further expanding gives the following:
(6)xi2-2xixs+xs2+yi2-2yiys+ys2+zi2-2zizs+zs2=(di4+D4)2,(7)x42-2x4xs+xs2+y42-2y4ys+ys2+z42-2z4zs+zs2=(D4)2.Solving for the distance of source from the origin modifies the above equation as follows:(8)Rs2=xs2+ys2+zs2,(9)Rs2=-(x42+y42+z42)+D42+2x4xs+2y4ys+2z4zs,(10)Rs2=-(R42)+D42+2x4xs+2y4ys+2z4zs.
Substituting Rs in (6) into (9)
(11)Ri2-(di4+D4)2+D42-R42=2xixs+2yiys+2zizs-2x4xs-2y4ys-2z4zs.Without any loss of generality, we may take sensor 4 at origin; that is,(x4,y4,z4)=(0,0,0), which reduces (11) to
(12)Ri2-(di4+D4)2+D42=2xixs+2yiys+2zizs.Solving the above equations using matrix form gives us two values ofRs or two source positions let the two values be Rs1 and Rs2. As only one value is the true value (say RT), thus we select the correct value (in the far field) according to the following.IfRs1>0 and Rs2<0;  RT=Rs1.IfRs1<0 and Rs2>0;  RT=Rs2.IfRs1>0, Rs2>0, and Rs1>Rs2;  RT=Rs1.IfRs1>0, Rs2>0, and Rs2>Rs1;  RT=Rs2.Thus, we get a unique coordinate and thus a unique position vector of the sound source (in far field) with the AUV as reference in a 3D space. The acoustics module is tested in swimming pool for various distances of pinger in the water. The actual distance of the pinger and the calculated distance by the acoustic module employing the above mentioned algorithm are tabulated in Table3, along with the percentage error in the distance estimation.Table 3
Sonar module results for a pinger.
Initial range (meters)
Estimated range (meters)
∣Percentage error∣
29.274
29.136
0.47
42.025
42.036
0.026
17.979
17.907
0.4
11.585
11.671
0.74
36.003
35.894
0.3


## 9. Results

To perform the experiments on ZYRA, we created an arena in a shallow water environment with the tasks of gate validation, path following, buoy detection, and localization of pinger spread out in the above given order and as depicted in Figure22. The AUV is released from the launch pad and its aim is to perform each task on the way and finally locate the pinger and home directly above it. The arena is shown above and the results have been projected below.Figure 22
Arena for testing of ZYRA.The autonomous run in Table4 defines the complete run of the AUV encompassing all the tasks which are given in the same table. Figure 23 shows ZYRA during in pool testing.Table 4
ZYRA experimental run results.
Mission
No. of attempts
Percentage success rate
Gate
25
84
Path
25
68
Buoy
25
76
Acoustics
25
80
Autonomous run
25
64Figure 23
The autonomous underwater vehicle “ZYRA” during in pool testing.


## 10. Conclusion

In this paper, the development of the AUV ZYRA is presented to perform various shallow water tasks which employs both a passive SONAR module as well as the vision module. SONAR module was required to localize a pinger (underwater sound source) in the far field and calculate the pinger’s position vector with respect to the AUV. The vision module is required to complete various tasks like gate validation, buoy detection, and path detection so that the AUV can travel from the launch location to the pinger and surface successfully. The idea and logic behind the mechanical design, embedded and power systems design, control algorithms and software platforms, image processing techniques, and the geometric mathematics involved in the localization process of the pinger have been explained in detail. In the experiments, performed we observe that the error in the range calulated by the SONAR module is quite low with the maximum error being 0.74%. The autonomous run of the AUV in the self-made arena shows that the AUV is fairly accurate in performing each task and in completing the whole run. In view of the above experimental results, the AUV ZYRA can be used to perform basic target localization and image processing tasks and can further be modified and improved upon to perform more sophisticated tasks.



---

*Source: 959808-2013-12-18.xml*