Acoustic Vector Sensing

Undergraduate Research by Ian Beil and Evan Nixon

times Capon_Spectrum .m divides the spectrum into when it is trying to find the highest energy area of the spectrum. When r = resolution, the spectrum (from -180° to 180°) is divided into r equal sections. triangulationGraph iterates from -180<i<180 in r steps for each sensor, and plots a red circle at each intersection of each set of angles. It then plots the point given by getPositionAVS.m as a

Introduction

In our LabView interface we call on MATLAB code to do almost all of our computation. Our parameters set in the LabView GUI are sent into MATLAB along with data or simulated data. We make use of three main scripts that handle these tasks:

 

getPositionAVS.m

This function takes in the two given sensor positions and the calculated angles to the sound source and outputs a calculated X and Y position for the sound source. It takes the distance between the two sensors and uses the angles to the sound from each sensor to triangulate where the sound source is coming from. This function works with two sensors in two dimensions.

 

triangulationGraph.m

This MATLAB file was created to plot the position of a sound source in 2D. This function takes in the calculated position of the sound source (as found with getPositionAVS.m) as well as the positions of each sensor and the real position of the sound. The function plots each possible combination of positions of the sound source by using a value called the resolution. This value determines how many

green star. A blue diamond is plotted at the point we give as the ‘true’ position of the source (note this value is not calculated but is given only to better see how close the calculated value is to the real value).

 

Capon_Spectrum.m

This function takes in the raw data given to it by LabView from our sensors, the position of each sensor, and the resolution to be used and outputs the maximum phi and theta calculated by this function. The function also outputs a figure as shown which shows the intensity of sound in all directions as well as an arrow in the direction of highest intensity.

This function works by using beamforming techniques (as detailed in the Beamforming section) to calculate the intensity from each direction (the number of directions that 360° is divided into is determined by the resolution). This plot is seen of the right of the figure show. The maximum intensity is then calculated and an arrow is plotted to reflect this direction in a 3D plot. The maximum angles are also displayed above the 3D plot.

MATLAB Code