simplified method for obtaining navigational …€¦ · simplified method for obtaining...

38
SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By ROLANDO PANEZ A THESIS PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE UNIVERSITY OF FLORIDA 2004

Upload: others

Post on 20-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATIONFROM HYDROPHONE ARRAYS

By

ROLANDO PANEZ

A THESIS PRESENTED TO THE GRADUATE SCHOOLOF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT

OF THE REQUIREMENTS FOR THE DEGREE OFMASTER OF SCIENCE

UNIVERSITY OF FLORIDA

2004

Page 2: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

Copyright 2004

by

Rolando Panez

Page 3: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

I dedicate this work to my family.

Page 4: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

ACKNOWLEDGMENTS

I would like to thank my family for their support throughout my college ca-

reer. I would also like thank all the members of the Machine Intelligence Lab at the

University of Florida. They have provided me with the motivation and knowledge

to make this all possible. I would especially like to show my appreciation to the

professors of the Machine Intelligence Lab, for giving me an opportunity to attain

this degree of education.

iv

Page 5: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

TABLE OF CONTENTSpage

ACKNOWLEDGMENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv

LIST OF TABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii

ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix

CHAPTER

1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1 Underwater Acoustic Pinger . . . . . . . . . . . . . . . . . . . . . 11.2 Subjugator 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Cornell University AUV . . . . . . . . . . . . . . . . . . . . . . . 21.4 Orca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.5 Hydrophones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 AMPLIFIER CIRCUIT . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1 Differential Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Circuit Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2.1 Instrumentation Amplifier . . . . . . . . . . . . . . . . . . 62.2.2 Schmitt-trigger Buffer . . . . . . . . . . . . . . . . . . . . . 8

2.3 Board Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3 SIGNAL PROCESSING BOARD . . . . . . . . . . . . . . . . . . . . . . 10

3.1 Atmel Mega 128 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.2 Altera Flex 10K70 . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4 SIGNAL PROCESSING . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.1 Frequency Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.2 Hydrophone Time of Arrival . . . . . . . . . . . . . . . . . . . . . 15

5 TRIANGULATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6 RESULTS AND CONCLUSION . . . . . . . . . . . . . . . . . . . . . . 19

6.1 Data Acquisition Results . . . . . . . . . . . . . . . . . . . . . . . 196.1.1 Data Set 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

v

Page 6: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

6.1.2 Data Set 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 216.2 Triangulation Results . . . . . . . . . . . . . . . . . . . . . . . . . 226.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

APPENDIX ADDITIONAL FIGURES . . . . . . . . . . . . . . . . . . . . 24

REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

BIOGRAPHICAL SKETCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

vi

Page 7: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

LIST OF TABLESTable page

1–1 ALP-365a Pinger Specifications . . . . . . . . . . . . . . . . . . . . . . 1

2–1 INA331 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2–2 Threshold Voltages . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3–1 Flex 10K70 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . 11

vii

Page 8: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

LIST OF FIGURESFigure page

1–1 Subjugator 2000 Hydrophone Array Layout . . . . . . . . . . . . . . . 2

1–2 Cornell AUV 2003’s Hydrophone Sensor Placement . . . . . . . . . . 3

1–3 Subjugator 2004 Hydrophone Placement . . . . . . . . . . . . . . . . 4

2–1 Amplifier Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2–2 PSPICE Circuit Layout . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2–3 PSPICE Transient Simulation . . . . . . . . . . . . . . . . . . . . . . 7

2–4 Amplifier Board Layout.(Not to Scale) . . . . . . . . . . . . . . . . . 9

3–1 Signal Processing Board Block Diagram . . . . . . . . . . . . . . . . . 11

4–1 Target Pinger Filter Simulation . . . . . . . . . . . . . . . . . . . . . 12

4–2 Filter Simulation High Frequency Noise . . . . . . . . . . . . . . . . . 13

4–3 Filter Simulation Low Frequency Noise . . . . . . . . . . . . . . . . . 13

4–4 Time of Arrival ASM Flow Chart: First Two Cases . . . . . . . . . . 14

4–5 Simulation of Time of Arrival Calculator . . . . . . . . . . . . . . . . 15

5–1 Hydrophone Array on 2-D Coordinate Plane . . . . . . . . . . . . . . 17

6–1 Dataset 1: Hydrophone 3 = 0 . . . . . . . . . . . . . . . . . . . . . . 19

6–2 Dataset 1: Hydrophone 1 = 0 . . . . . . . . . . . . . . . . . . . . . . 20

6–3 Dataset 1: Hydrophone 2 = 0 . . . . . . . . . . . . . . . . . . . . . . 20

6–4 Dataset 2: Hydrophone 3 = 0 . . . . . . . . . . . . . . . . . . . . . . 21

6–5 Dataset 2: Hydrophone 3 = 0 . . . . . . . . . . . . . . . . . . . . . . 22

6–6 Dataset 2: Hydrophone 3 = 0 . . . . . . . . . . . . . . . . . . . . . . 22

6–7 Triangulation Results of Dataset 1 . . . . . . . . . . . . . . . . . . . . 23

8 Time of Arrival ASM . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

9 Signal Processing Board . . . . . . . . . . . . . . . . . . . . . . . . . 26

viii

Page 9: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

Abstract of Thesis Presented to the Graduate Schoolof the University of Florida in Partial Fulfillment of the

Requirements for the Degree of Master of Science

SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATIONFROM HYDROPHONE ARRAYS

By

Rolando Panez

December 2004

Chair: A. Antonio ArroyoMajor Department: Electrical and Computer Engineering

This thesis describes a simplified method of acquiring acoustic information

from a hydrophone array. The hardware consists of an amplifier circuit and

a custom designed signal processing board. The hydrophone signal is directly

converted to digital form by saturating the signal in the amplifier circuit. The

result is a digital pulse waveform that can be analyzed by digital non-DSP devices.

The signal processing board consists of a Flex 10k FPGA and an Atmel Mega 128

8-bit microcontroller. Using state machines in the FPGA, the digital waveform

outputs of the amplifier circuit are filtered and cross-correlated. The time of arrival

values between the hydrophones is used in the triangulation calculations in the

microcontroller.

ix

Page 10: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

CHAPTER 1INTRODUCTION

Hydrophones are often used on autonomous submarines for navigational pur-

poses. This particular system is part of Subjugator, an autonomous submarine

designed by students of the Machine Intelligence Lab at the University of Florida.

The mission of this robot varies yearly. It is set by the rules of the annual AUVSI

underwater competition. In the past three years, the mission has required the robot

to navigate to an acoustic pinger. Future competitions will likely involve a similar

task. Therefore the goal of this system involves gathering accurate data from they

hydrophone sensor array and processing the data to obtain navigational infor-

mation. This chapter describes similar systems designed in previous Subjugator

projects as well as systems designed by other competing schools.

1.1 Underwater Acoustic Pinger

The underwater acoustic locator pinger is used to mark an underwater target

or site. They are typically used in offshore environments. In the case of the AUVSI

2004 Underwater Competition it was used to identiy the recovery zone, which was

the final task of the mission [1]. For testing purposes, prior to the competition,

an ALP-365a pinger was purchased and will be used in all testing of the system

described in this thesis. The pinger specifications, which are similar to those of the

competition pingers, are listed in table 1–1.

Table 1–1: ALP-365a Pinger Specifications

Description ValueFrequency 27 kHzAcoustic Output 162 dB (re 1 µPa)Pulse Length 5 ms.Pulse Repetition 1 pulse/sec.

1

Page 11: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

2

1.2 Subjugator 2000

Subjugator 2000 was the first of our submarines to use an acoustic positioning

system. The array used in this submarine consists of five hydrophones sensors in

an ultra short baseline configuration as shown in figure 1–1 [2]. The value of d

in figure 1–1 is equal to one wavelength of the pinger signal. Therefore the phase

difference between the hydrophone outputs is used in the bearing calculation. The

output of the hydrophones are sent to a preamplifier circuit. The output of the

preamplifer is filtered using an analog bandpass filter. The filtered signal is passed

through a zero-crossing detector and fed into a DSP. The DSP then cross-correlates

the signals and forwards the timing information to an embedded linux computer

[3]. Finally, the linux computer computes the bearing to the pinger source [4].

Figure 1–1: Subjugator 2000 Hydrophone Array Layout

1.3 Cornell University AUV

The Cornell AUV 2003 entry used a different array configuration from that

used on Subjugator 2000. This configuration, known as short baseline [2], places

four hydrophones at the extremities of the sub as shown in 1–2. The timing

information obtained is the time of arrival between the hydrophones. This only

allows one sample per ping to be used to calculate the bearing to the source. The

data acquisition in this system involves a preamplifier circuit connected to an A/D

Page 12: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

3

converter. The A/D values are processed by a DSP. The signal information from

the four hydrophones are processed in an embedded linux computer to compute the

bearing to the pinger source [5].

Figure 1–2: Cornell AUV 2003’s Hydrophone Sensor Placement

1.4 Orca

The MIT 2004 AUVSI entry, ORCA VII, uses an ultra short baseline hy-

drophone array. The array consists of four sensors in a pyramidal formation. The

data acquisition method is similar to that used on the Cornell University entry.

The only exception being that a single DSP is used to filter and cross-correlate the

hydrophone signals. The DSP also calculates the bearing and elavation angle to the

pinger source and sends the information to eh embedded linux computer [6].

1.5 Hydrophones

The hydrophones used in this application are designed for navigational use.

The array hydrophones are custom-designed International Transducers part ITC-

4155. They are omnidirectional in their horizontal plane [4]. The sensitivity for

the frequency range of 20-40 kHz is -196 through -205 dBV referenced to 1µPa.

The output from the hydrophone is a differential sinusoidal signal corresponding to

the acoustic signal in the water. The hydrophones will be used in a short baseline

configuration as discussed in chapter 5 and as shown in figure 1–3.

Page 13: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

4

Figure 1–3: Subjugator 2004 Hydrophone Placement

Page 14: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

CHAPTER 2AMPLIFIER CIRCUIT

The amplifier circuit used in this application is designed to amplify a given

signal to saturation. The information of interest from the hydrophone signals are

the zero-crossings. By amplifying the signal to saturation the pertinent information

is maintained. This chapter explains how the differential signal of the hydrophones

are accessed and amplified.

5 Vp−p50 mVp−p

Amplifier

Figure 2–1: Amplifier Output

2.1 Differential Signal

The output of the ITC-4155 consists of two wires. One wire carries the signal

of the sensor output. The other carries a signal that is equal and opposite. Like a

single-ended signal, a differential signal requires a return path [7, 8]. In the case

of the ITC-4155 hydrophones, the two signal wires are surrounded by a shielding,

which is the return path. To properly connect the sensor, the signal wires are

attached to the differential amplifier inputs and the shielding should be connected

to ground. The instrumentation amplifier amplifies the difference of two signal

wires. In this manner, any common voltage on the signals, usually noise, is not

amplified.

2.2 Circuit Design

The amplifier circuit consists of two main components: an instrumentation

amplifier and a schmitt trigger buffer. The instrumentation amplifier is used to

5

Page 15: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

6

amplify the differential signal to saturation. The amplifier’s output is fed to the

schmitt trigger buffer to convert the signal into a digital waveform.

2.2.1 Instrumentation Amplifier

Since the output of the hydrophone is a differential signal, an instrumentation

amplifier is used. The Burr-Brown INA331 instrumentational amplifier was chosen

based on the specifications listed in table 2–1.

Table 2–1: INA331 Specifications

Description RatingHigh gain 5 to 1000 V\VBandwidth 2 MHzSlew Rate 5 V\µsLow bias current 0.5pA

The INA331 is then incorporated into the amplifier circuit with the following

design behaviors:

• Gain = 300 V \ V

• Input Common Mode Voltage = 2.5V

• Single Supply Configuration

• VREF = 0v

Figure 2–2: PSPICE Circuit Layout

Page 16: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

7

GAIN = 5 + 5(R2/R1) (2.1)

The behavior of the instrumentation amplifier portion of the amplifier circuit

is simulated in PSPICE using two small-signal sources with a phase difference of

180◦, see figure 2–2. This figure also shows the connections required for proper

use of the instrumentation amplifier. Resistors R1 and R2 determine the gain of

the amplifier as defined by equation 2.1. The simulated input is equivalent to a

differential signal with an amplitude of 50 mVp−p. The output of the simulation is

a rectified, saturated 5 Vp−p signal as shown in figure 2–3. The simulation results,

figure 2–3, show an input signal of 50 mVp−p and an output signal saturated to 5 V

that still contains the zero-crossing information of the input signal.

Figure 2–3: PSPICE Transient Simulation

Page 17: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

8

2.2.2 Schmitt-trigger Buffer

The Schmitt-trigger buffer is used to condition the amplified hydrophone

signal. When input voltage exceeds the positive goin threshold, VT+ , the output

voltage equals 5 V. The output voltage remains at 5 V until the input voltage is

below the negative goin threshold, VT− . With the following threshold specifications,

the buffer device converts a sinusoidal signal to a digital waveform.

Table 2–2: Threshold Voltages

VT+ 2.65 VVT− 1.88 V

2.3 Board Design

The design of the amplifier board is constrained by the space available in

the given application, Subjugator 2004. In this submarine, the amplifier board is

installed inline between the hydrophones and the wet pluggable hull connections.

The board is made water-proof by using a mold to seal it with epoxy. The shape of

the mold requires the board to be less than 4 inch long and less than 1 inch wide.

The amplifier board needs to be placed as close as possible to the hydrophone

to retain most of the signal integrity. The instrumentation amplifier and the

schmitt trigger are available in small surface mount packages. The additional

passive components used in the amplifier circuit are also available as suface mount

components. The board layout is shown in figure 2–4.

Since a suitable connector for the hydrophone wire is not readily available,

the board was designed to connect directly to it. The three pads on the left hand

side of the board are arranged specifically for the hydrophone sensor wire. When

assembling the board, the two signal wires are soldered to the smaller pads. By

pulling the back over the insulation, it can be soldered to the larger pad.

Page 18: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

9

Figure 2–4: Amplifier Board Layout.(Not to Scale)

Page 19: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

CHAPTER 3SIGNAL PROCESSING BOARD

The signal processing board consists of an Atmel Mega 128 and an Altera

Flex 10K70 FPGA. The Mega 128 is the main control unit of the autonomous

submarine. All sensors are interfaced to the microcontroller as shown in figure

3–1. The microcontroller makes control decisions for its current task based on its

partially processed sensor data. The FPGA is currently used solely for processing

the hydrophone signals. In the future, the FPGA can be used to interface more

sensors and/or provide a fast parallel processing environment. The processing

board includes additional hardware to interface a digital compass, communicate to

a an embedded linux PC, and allow in-system programming of the Mega 128 and

Flex 10k70. This chapter describes the functionality of the Mega 128 and the Flex

10k70.

3.1 Atmel Mega 128

The Atmel Mega 128 is an eight-bit microcontroller unit with flexible and

powerful on-chip peripheral capabilities. The functionality of this microcontroller

include an eight-channel analog-to-digital converter (ADC) with ten bits of

resolution, two universal asynchronous serial transever (UART), and eight high-

precision timing output lines. The architecture of the code onboard the Atmel

is designed as an interrupt-driven sensor data acquision (ISDA) and interrupt-

driven accutuator control (IAC). The incorporation of the ISDA/IAC philosophy

eliminates wasteful polling routines freeing processor time to make high level

decisions and perform complex calculations [9].

10

Page 20: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

11

Mega 128

Com

pass

Flex 10K70

General I/O

HydrophonesAnalog Sensors

Address/DataUART

PC/Console

UA

RT

A/D

Figure 3–1: Signal Processing Board Block Diagram

3.2 Altera Flex 10K70

An Altera Flex 10K70 serves as a flexible hardware expansion device. Cur-

rently, logic cells are utilized for debug registers, additional I/O pins, and hy-

drophone logic [9]. The hydrophone logic only occupies 15% of the logic elements

of the Flex 10k70. This leaves ≈ 3200 logic elements for future expandability. The

Flex 10K70 features are shown in table 3–1.

Description ValueTypical Gates 70,000Logic Elements 3,744Logic Array Blocks 468Embedded Array Blocks 9Total RAM Bits 18,432

Table 3–1: Flex 10K70 Specifications

.

Page 21: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

CHAPTER 4SIGNAL PROCESSING

The amplified signal is processed in the FPGA as a digital waveform. The

three hydrophone signals are processed simultaneously to determine the time of

arrival of the pinger signal to each hydrophone. First, each signal is filtered for

a pinger frequency of 27 kHz. The output of each filter block is then processed

to determine the time each hydrophone sensed the ping relative to the first

hydrophone that senses the ping. The state machines developed for filtering the

signals and timing the arrival of the pings are described in this chapter [10, 11].

4.1 Frequency Filter

Two registers containing the time values of the desired frequency band are

accessed by the Mega 128 microcontroller at reset. A state machine uses a counter

to calculate the elapsed time between rising edges. When the time between rising

edges falls between the desired frequency band values, the frequency filter module

outputs a high signal. The state machine operates and samples the hydrophone

signal with a 4 MHz clock. A 27 kHz hydrophone signal is ≈ 148 samples of a

4 MHz clock. To use a 1 kHz frequency band centered at 27 kHz in the state

machine, the microcontroller writes frequency band values of 145 and 151 to

their corresponding registers. The sampling frequency can be increased for more

Figure 4–1: Target Pinger Filter Simulation

12

Page 22: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

13

Figure 4–2: Filter Simulation High Frequency Noise

accuracy, but it is not necessary since the competition pinger frequencies will be at

least 1 kHz apart.

Module Testing.This module is tested using the test vector for a 27 kHz signal

as shown in figure 4–1. The input,labeled hydro includes simulated noise identified

by the circled regions. The resulting output, labeled freq, is high when the time

between rising edges of the input is ≈37 us. The simulated noise creates edges that

falsely trigger the state machine and causes the output to go low.

The high frequency noise is displayed in more detail in figure 4–2. The period

of the 27 kHz is ≈ 37µs. The the first time bar, at 203.455 µs, is the first rising

edge. The next time bar is at the next rising edge and is equal to +37.13 µs. This

causes the output signal freq to go high. The noise edge occurs at +44.215 µs,

resulting in a period of 44.215 − 37.13 ≈ 7µs, which causes the state machine to

trigger freq to low.

The low frequency noise causes the same result on the ’freq’ output as shown

in figure 4–3. The time from the first time bar, at 55.59µs, to the second time bar

is ≈37µs. During this time, the output value of ’freq’ is high. The time from the

second time bar to the third time bar is ≈40µs, which is ≡25 kHz. The frequency

range lies outside the desired range, causing the output of ’freq’ to go low.

Figure 4–3: Filter Simulation Low Frequency Noise

Page 23: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

14

Fig

ure

4–4:

Tim

eof

Arr

ival

ASM

Flo

wC

har

t:Fir

stT

wo

Cas

es

Page 24: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

15

4.2 Hydrophone Time of Arrival

The flow chart on page 25 describes the state machine used to calculate the

time of arrival of the pinger signal to the hydrophones. The flow chart includes all

the different combinations in which the hydrophones can recieve the pinger signal.

Figure 4–4 refers to the initial states, S0 and S1, in which all the output values are

reset and the input signals H1, H2 and H3 are all low. Figure 4–4 further describes

the first set of combinations where the hydrophone H1 recieves the pinger signal

first. State S2 delay starts a counter used to measure the time of arrival of the

pinger signal to the hydrophones. Also in state S2 delay, the output WE1 is set

high for one clock cycle. All the states labeled SX delay pulse a write enable signal

that trigger a register to latch the current count value. When an edge has been

detected in each of the hydrophone inputs, an interrupt signal is generated in state

Interrupt , which is interfaced to the Mega 128. The Mega 128 will read the three

values from the hydrophone registers in the interrupt service routine.

Figure 4–5: Simulation of Time of Arrival Calculator

Module Testing. The test vector for this module simulated the output from the

filter modules. An edge is generated on each of the three input lines. Figure 4–5

shows an instance of the simulation, where the write enable signals are generated

after each edge is detected in any of the inputs. The simulation also shows the

Page 25: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

16

interrupt occurring after an edge is detected on each of the inputs. The state

machine returns to its initial state after a delay ≈ .5s.

Page 26: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

CHAPTER 5TRIANGULATION

The angle to the pinger source is determined by using simple geometry. A

system of linear equations is derived from the dimensions of the sensor array and

the angles of the hydrophones to the pinger. Figure 5–1 shows how the array is

represented on a coordinate system with respect to the pinger source.

x

y

(0,0)

(-L sin 30,-L cos 30°)

D

θ

(Dsinθ,Dcosθ)L L

(L sin 30°,-L cos 30°)

30°

Figure 5–1: Hydrophone Array on 2-D Coordinate Plane

The origin is set at the hydrophone that recieves the pinger signal first. The

coordinates of the other hydrophones are derived from the shape of the array, in

17

Page 27: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

18

relation to the origin. The arcs represent the pinger signals as they arrive at each

hydrophone. The value of T1 is equal to the distance between the arcs divided

by the speed of sound in water. Similarly the value of T2 is equal to the distance

between the arc crossing the origin the an arc crossing the left hydrophone,

which is not shown. The value of L is the maximum time difference between two

hydrophones, assuming the array is in an equilateral triangle configuration. The

time of arrival values are converted to distance values by the relationship of the

speed of sound in water ≈ 1500m/s. 5.1 is the distance equation between two

cartesian coordinate points (x1, y1) and (x2, y2). Equations 5.2 and 5.3 are distance

equations for the right hydrophone to the pinger and the left hydrophone to the

pinger, respectively.

d =√

(x2 − x1)2 + (y2 − y1)2) (5.1)

TD + T1 =√

(−L sin 30◦ −D sin θ)2 + (−L cos 30◦ −D cos θ)2 (5.2)

TD + T2 =√

(L sin 30◦ − TD sin θ)2 + (−L cos 30◦ − TD cos θ)2 (5.3)

Equations 5.2 and 5.3 are combined to generate two equations, 5.4 and 5.5.

This system of equations are solved for the angle θ given the values T1, T2, and L.

T2(2TD + T2) + TDL sin θ = L(L +√

3TD cos θ) (5.4)

T1(2TD + T1) = L(L +√

3TD cos θ + TD sin θ) (5.5)

Page 28: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

CHAPTER 6RESULTS AND CONCLUSION

The system described in the previous chapters was integrated and tested in

a 2’ x 5’ x 1.5’ container of water. The following figures are the results of ≈730

recorded data values for the first set and ≈1030 data values for the second set.

Since phase difference is not being used, only one result can be recorded per ping.

In this test setup the pinger was placed ≈ 5◦ from the center line of the third

hydrophone. The array was placed at one end of the container, while the pinger

was at the other end. This chapter will described the results of the data acquisition

and the triangulation. The final section describes methods to improve this system.

6.1 Data Acquisition Results

Since the pinger and the array are both stationary, the time values of these

results are not expected to fluctuate more than 10 samples from a mean value.

The following three figures are histograms of the first set of results. The x axis

corresponds to time values, while the y axis corresponds to number of occurrences.

Figure 6–1: Dataset 1: Hydrophone 3 = 0

19

Page 29: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

20

Figure 6–2: Dataset 1: Hydrophone 1 = 0

6.1.1 Data Set 1

Figure 6–1 extracts all set of values whose time for hydrophone 3 is equal to

zero. This figure shows two very distinguishable peaks at ≈425 for hydrophone 1

and ≈680 for hydrophone 2. This analysis concludes that hydrophone 3 is most

likely equal to zero.

Figure 6–2 is a histogram of all set of values whose time for hydrophone 1 is

equal to zero. The result is a more even distribution than that of figure 6–1.

Figure 6–3: Dataset 1: Hydrophone 2 = 0

Page 30: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

21

Figure 6–3 is a histogram of all set of values whose time for hydrophone 2 is

equal to zero. The result is similar to that of figure 6–2.

6.1.2 Data Set 2

Figure 6–4: Dataset 2: Hydrophone 3 = 0

From this data set, figure 6–4 represents the distribution of the time values of

hydrophones 1 and 2, while the time value of hydrophone 3 is equal to zero. This

figure has a well defined peak for hydrophone 1 at ≈50 which occurs nearly 700

times. The highest peak for hydrophone 2 occurs nearly 300 times at a time value

of≈360.

Figure 6–5, refers to the distribution of time values of hydrophones 2 and 3

with respect to hydrophone 1 being equal to zero. This figure shows a similar dis-

tribution as that of figure 6–4, where hydrophone 2 now contiains ≈650 occurrences

of the approximate time value of 60. However, the peak for hydrophone 3 is lower

than that of hydrophone 2 in figure 6–4.

The distribution in figure 6–6 corresponds to the scenario where hydrophone

2 is equal to zero. The results in this figure have a low number of occurences.

Therefore this scenario cannot be considered as the conclusive result. The results of

figure 6–4 are the best values to use in triangulating this data set.

Page 31: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

22

Figure 6–5: Dataset 2: Hydrophone 3 = 0

Figure 6–6: Dataset 2: Hydrophone 3 = 0

6.2 Triangulation Results

Using the results from the previous section, the angles were calculated per

the method described in chapter 5. The angles, as shown in figure 6–7, show the

distrubition of values from the previous section as being mainly the reflections of

the pinger signal in the test environment. The correct angle, ≈5◦, is within the

Page 32: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

23

cluster of bearings close to the zero degree mark. The echoes of the test container

are visible in area centered at ≈220◦.

Figure 6–7: Triangulation Results of Dataset 1

Similar tests were performed in a pool, that resulted in inconclusive data. The

acoustic noise of the pool pumps did not allow the signal filters to work properly.

6.3 Conclusion

Based on these results, the system described in this thesis is affected by noise.

Creating a reliable acoustic based positioning system, requires accurate signal

filtering. The passive hydrophone sensors used in this system are sensitive to most

frequencies of noise. With proper analog or digital filtering, the sensors can be

used with better results. The system described in this thesis can be made more

reliable may building more complex filtering entities in the FPGA. The FPGA can

parallel process all the filtering of the signals and cross-correlate at high speeds.

However, the development time for using the FPGA will take longer than using

a Digital Signal Processor. The best approach would likely invole developing a

tunable analog filter that feeds into an FPGA or DSP to cross-correlate the signals.

Page 33: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

APPENDIXADDITIONAL FIGURES

24

Page 34: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

25

S2c

S2c_delay

Hydrophone2 = 1

Hydrophone1 = 1

Hydrophone1 = 1

Hydrophone2 = 1

S3ca_delay

WE1 = 1

S3ca

WE1 = 0

S3cb

WE2 = 0

S3cb_delay

WE2 = 1

S4cb_delay

WE1 = 1

S4ca_delay

WE2 = 1

S4cb

WE1 = 0

S4ca

WE2 = 0WE3 = 1

WE3 = 0

Hydrophone3 = 1

Hydrophone1 = 1

S2b

WE2 = 0

S2b_delay

WE2 = 1

Hydrophone2 = 1 Hydrophone3 = 1

Hydrophone2 = 1

WE2 = 1

S3aa_delay

WE2 = 0

S3aa

S3ab

WE3 = 0

S3ab_delay

WE3 = 1

S4ab_delay

WE2 = 1

S4aa_delay

WE3 = 1 WE3 = 0

S4aa

S3ba_delay

WE1 = 1

Hydrophone3 = 1

S3bb_delay

WE3 = 1

WE2 = 0

S4ab

S3bb

WE3 = 0

S3ba

WE1 = 0

Hydrophone3 = 1

Hydrophone1 = 1

S4bb_delay

WE1 = 1

S4ba_delay

WE3 = 1

WE1 = 0

S4bb

WE3 = 0

S4ba

Interrupt

IRQ = 1

Hydrophone1 = 1

Hydrophone2 = 1

Hydrophone3 = 1

Start counter

S2a_delay

WE1 = 1

WE1 = 0

S2aS1

H1=H2=H3=0

S0

Delay

Start counter

Start counter

T

F

T

T

T

T

T

T

TT

T

T

T

T

T

T

F

F

F

T

T F

F

F

F

Delay = .75 sec

Increment Delay

Reset counterReset delay

Figure 8: Time of Arrival ASM

Page 35: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

26

Figure 9: Signal Processing Board

Page 36: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

REFERENCES

[1] AUVSI, “Official rules and mission 7th annual international autonomous un-derwater vehicle competition,” http://www.auvsi.org/competitions/water.cfm,March 2004, 10/22/2004.

[2] Sonardyne, “Acoustic theory,” http://www.sonardyne.co.uk/theory.htm,October 2004, 10/22/2004.

[3] Joseph C. Hassab, Underwater Signal and Data Processing, Boca Raton: CRCPress, 1989.

[4] Jennifer L. Laine, Scott A. Nichols, David K. Novick, Patrick D. O’Malley,Ivan Zapata, Michael C. Nechyba, and Antonio Arroyo, “Subjugator: Sink orswim?,” AUVSI, vol. 3, 2000.

[5] CUAUV Team, “Design and implementation of an autonomous underwatervehicle for the 2003 auvsi underwater competition,” AUVSI, vol. 6, 2003.

[6] Robert C. Altshuler, Joshua F. Apgar, Jonathan S. Edelson, David L.Greenspan, Debra E. Horng, Alex Khripin, Ara N. Knaian, Steven D. Lovell,Seth O. Newburg, Jordan J. McRae, and Marvin B. Shieh, “Orca-vii: Anautonomous underwater vehicle,” AUVSI, vol. 7, 2004.

[7] Douglas Brooks, “Differential signals: The differential difference!,” PrintedCircuit Design, vol. 18, pp. 36–37, May 2001.

[8] Paul Horowitz and Winfield Hill, The Art Of Electronics, Cambridge:Cambridge University Press, 1989.

[9] Rolando Panez, Karl Dockendorf, William Dubel, Enrique Irigoyen, BrianPietrodangelo, Alex Silverman, John Godowski, Eric M. Schwartz, Michael C.Nechyba, and Antonio Arroyo, “Subjugator 2004,” AUVSI, vol. 6, 2004.

[10] Stephen Brown and Zvonko Vranesic, Fundamentals of Digital Logic withVHDL Design, New York: McGraw-Hill, second edition, 2005.

[11] J. Bhasker, A VHDL Primer, Englewood Cliffs: Prentice-Hall, 1995.

[12] Colin P. Clare, “Acoustic direction finding systems,” U.S. Patent, , no.4,622,657, 1986.

[13] Atmel Corp., “Atmel mega 128 datasheet,” http://www.atmel.com, August2004, 10/22/2004.

27

Page 37: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

28

[14] L. M. Brekhovskikh and Yu. P. Lysanov, Fundamentals of Ocean Acoustics:AIP Series in Modern Acoustics and Signal Processing, New York: Springer-Verlag New York, 2003.

Page 38: SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL …€¦ · SIMPLIFIED METHOD FOR OBTAINING NAVIGATIONAL INFORMATION FROM HYDROPHONE ARRAYS By Rolando Panez December 2004 Chair: A. Antonio

BIOGRAPHICAL SKETCH

My educational background includes a bachelor’s degree in computer engineer-

ing from the University of Florida. After being involved in a successful robotics

competition team my last semester as an undergraduate. I designed a first place

autonomous PONG playing robot for the 2002 IEEE Southeastern Conference

Hardware Competition. I was given the opportunity to continue my education,

in the focus of intelligent information systems, by the professors of the Machine

Intelligence Lab. Throughout my education as a graduate student, I participated in

many robotics projects. I was a member of the 2003 Subjugator Team that com-

peted at the AUVSI underwater competition and placed eighth out of 12 teams.

For the 2004 Subjugator Team, I was promoted to team leader. I went on to lead

a team of eight outstanding engineers to design a functional and competitive au-

tonomous submarine in three months time. We placed seventh out of 18 teams at

that year’s AUVSI Underwater Competition. I went on to graduate with an excep-

tional engineering background, due to the participation in the Machine Intelligence

Lab at the University of Florida.

29