Bring on the audio.

The system uses time of arrival estimates from three hydrophones to determine the direction of pinger beacon. The received signal from the hydrophones are correlated with the expected signal in an FPGA (field programmable gate array) and thresholded. The times of the threshold crossings are sent from the FPGA to a single board computer running the angle estimation algorithm.

THEORY OF OPERATION

Figure 1 shows the hardware block diagram of the hydrophone system. The three hydrophones (H1, H2, H3) receive the signal from the pinger. The hydrophones are RESON TC4013 model transducers which develop an electric signal that is sent to the analog signal conditioning circuitry.

Figure 1- Click for full-sized figure.

Figure 2, shown below, is the schematic diagram of the analog circuitry. The circuitry consists of a low noise amplifier and a two pole butterworth filter. There is also an adjustable gain stage so that the gain can be calibrated. The analog to digital converter is a serial A/D with 12 bits of resolution (LTC1402). The serial digital data is sent to an FPGA (XILINX XC3S1200E, Nexys-2 Development board). The FPGA correlates the the incoming data from all three channels with a 962 tap FIR filter. The taps are -1 and +1 values that oscillate at the desired pinger frequency. The basic idea is to correlate the received signal with a square wave version of itself to improve the signal to interference ratio of the time measurements. The FPGA has a 16 bit timer that is used to measure the difference in time between the threshold crossings. These time difference measurements which are quantized to the A/D sampling frequency are sent to the netburner single board computer which disambiguates the clock rollover and executes the bearing estimation algorithm.

Figure 2- Click for full-sized figure.

Figures 3, 4, and 5 (below) show typical scenarios where the acoustic wave hits H2 first. In the figures the H1 is the top of the equilateral triangle, H2 is the left vertice, and H3 is the right vertice. If H2 was struck first it is unknown which of the 3 scenarios shown in Figures 3, 4, and 5 actually happened. What is known is that the bearing estimates derived by the equations shown in the figures should agree. The algorithm basically checks all three cases and then uses the case where the bearing estimates agree. Since it has two measurements the average is calculated and used for navigation. Similar equations can be developed for the cases where H1 and H3 are struck first.

Figure 3- Click for full-sized figure.

Figure 4- Click for full-sized figure.

Figure 5- Click for full-sized figure.

DESIGN ANALYSIS

The algorithm employed to determine the bearing to the pinger uses time of arrival. There are many parameters that need to be determined in order to design the system. A/D frequency and length of hydrophone baseline are some of the parameters that must be selected. The higher the A/D frequency the better the system's time resolution. Improved time resolution will increase the angle estimation precision. The longer the hydrophone baseline the larger the time differences between channels. These two parameters work together so that a good system will have the largest basline allowable by hull design constraints (and constest rules) and fastest A/D clock available. An important constraint on A/D frequency is the maximum length of the correlator in the FPGA. Our FPGA had a 1024 maximum length FIR filter. Since we are correlating with a 1.3 ms signal this means our maximum A/D frequency is 787,700 Hz (787,000 Hz * 1.3ms = 1024 taps). Our A/D frequency is divided down from a CPU clock so the nearest frequency was 740,000 Hz. This frequency means our correlator has 962 taps which is under the limit of 1024. A 962 tap filter means that our gain over the noise in our receiver is 10*log(962) = 29.8 dB. This gain gives us detection capability at long range and also provides discrimination against other signals.

Simulation studies in MATLAB(TM) were completed in order evaluate system performance and verify that the design would work before implementation in hardware and software. Of particular concern is how the SNR, hydrophone baseline, and A/D sampling frequency effect accuracy of the bearing estimate. The simulation generated a desired pinger frequency and a practice ping that would be used to confuse the bearing estimation system. The threshold was set so that the practice ping would not cause the system to estimate the bearing to the practice pinger. White gaussian noise was used as interference and the correlator was implemented with the MATLAB filter command. The simulation would run 500 trials and the statistics of the measurement was recorded.

Figure 6, below, shows the results of the simulation with a true bearings of 5 and 45 degrees. The SNR was 20dB, sampling frequency was 750 KHz, and hydrophone baseline was 18 inches. In order to simplify the hull design a 12 inch baseline was briefly considered. Simulation runs showed that at 20dB SNR the difference between 12 and 18 inch baseline was negligible. Unfortunately at 10dB SNR the difference began to widen dramatically.

Figure 6- Click for full-sized figure.

Figure 7 and Figure 8, below, show the results of the simulation runs at 10dB SNR when the pinger is at 0.0 degrees bearing. Figure 8 shows that the CDF had a short tail on the low end and a long tail on the high end which looks suspicous. Since the SNR at the test site is unknown the 18 inch baseline was selected in order to provide as much margin for the design as possible.

Figure 7- Click for full-sized figure.

Figure 8- Click for full-sized figure.

Blogging Out Find out more about the SMU Robotics Club, including coverage of last year's competition and last-minute building exploits, at our blog. We will continue to update as we approach the 2008 competition.