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

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 1Hz and 180KHz) 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 SONARmodule and second based on the number of successful outcomes per total number of trials for each task.


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 Figures 1 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][7][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.

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.

Electronics Hull.
The main hull of ZYRA (see Figures 4  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.

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 about -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 twoblade 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.

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. Figure 6 shows degrees of freedom of the vehicle.

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.Figure 7 display the stability parameters.

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.

Actuator Control.
The actuator board used for ZYRA is custom designed, the schematics and the actual board are    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.

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 Figure 11.
The level of various racks can be varied according to payload.

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 Figure 12).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.

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 Figure 14).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.

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 Figure 13), pressure sensor, and the acoustic and vision modules.User interfaces have been specifically developed to tune the PID parameters easily.

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.Figure 15 gives the generalized flow chart for target detection using vision module.

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 Figure 16).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.

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 Figure 18).This information is then used to determine the heading of the blob relative to the vehicle.

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 Figure 19).The vehicle tries to approach the flare, keeping the center at 0 degrees.

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).Figure 20 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.
The localization task has been broken down into two parts as follows: GCC-PHAT is defined as where * is the complex conjugate of a function TDOA = arg max (Δ −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 Figure 21 that GCC-PHAT enhances the peak and whitens the region around it.

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 sensor  and source to sensor  as   , in terms of absolute distances   from source to each of the sensors as follows: is the speed of sound in water, where   =   −   .Take into consideration the distance of the source to the sensors, which give us four basic equations: where (  ,   ,   ) are the positions of the four hydrophones and (  ,   ,   ) is the position of the sound source.  is the distance of the sound source to each sensor.Further expanding gives the following: Solving for the distance of source from the origin modifies the above equation as follows: 2  = − (   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 Table 3, along with the percentage error in the distance estimation.

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 Figure 22.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.
The autonomous run in Table 4 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.

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.

Figure 2 :
Figure 2: SolidWorks simulation of the main hull-Von Mises stress distribution.

Figure 4 :
Figure 4: Solidworks model of main frame.

Figure 2 displays
Von Mises' stress distribution and Figure8showcases the robustness of the mechanical design.

Figure 5 :
Figure 5: Solidworks model of electronics frame.

Figure 7 :
Figure 7: Centre of buoyancy and gravity in the same vertical line.

Figure 8 :
Figure 8: Depicts the fixture and face of pressure application.

Figure 12 :
Figure 12: Operator status screen during AUV mission run.

Figure 13 :
Figure 13: Orientation data received from IMU used as an input in Control system module.

•Figure 14 :Figure 15 :
Figure 14: Various software modules working in tandem to achieve mission control.

Figure 16 :
Figure 16: Original image and image after edge detection.
(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: let  1 () and  2 () be two signals at two different hydrophones and Δ the Fast Fourier transform of the signals; then,  1 () = Δ ( 1 ()) ,  2 () = Δ ( 2 ()) .

Table 2 :
: Characteristics of ZYRA.Commercial off the shelf (COTS) products used in ZYRA.

Table 3 :
Sonar module results for a pinger.