Acoustic Vector Sensing |
Undergraduate Research by Ian Beil and Evan Nixon |
LabView Virtual Instrument |
LabView Virtual Instrument
LabView is a visual computer program which creates Graphical User Interfaces (GUI’s) which can run a variety of operations. A LabView file is called a Virtual Instrument (VI), and feature two distinct windows. The Front Panel is the part of the GUI with which the user interacts – clicking buttons, setting values, observing outputs on charts and graphs. The Block Diagram is the portion of the GUI which governs the behavior of the front panel; in essence, the Front Panel is the shiny exterior, while the Block Diagram is what’s under the hood.
Our Virtual Instrument has two forms of operation: Simulated, and Real. In the Simulated case, the GUI asks the user for the location of an imaginary sound source. It then generates data for the pressure and particle velocity sensors, which are processed using previously developed Capon Spectrum beamforming code written in MATLAB. After the data is filtered, the estimated angle of arrival is used in conjunction with the location of each sensor in the array to triangulate the two-dimensional location of a source.
In the Real case, the GUI receives real-time data from the AVS sensors using a 16-channel National Instruments USB 6212 (which, at 4 channels per sensors, allows for a maximum of four sensors). It then processed this data in the same manner as the simulated case. The buffers are set up to read a new set of sample data every 2 seconds.
The Front Panel for our VI is shown below: |
The Front Panel features a number of input parameters (any box with a set of arrows on its left), most of which are self explanatory. The Number of Sources, Amplitude, Noise Variance, Sample Rate, Frequency, and Source Position inputs only apply to the simulated case. The error in and error out boxes indicate when a problem has occurred. The switch on the far right labeled “Real” is the Real/Simulated switch. It dictates which mode the VI is operating in. The CalcX and CalcY boxes, in the bottom left, display the triangulated position of the sound source.
The following two graphs, shown below, are also located on the front panel, and display the real-time data collected by the AVS. The top graph is the raw data, while the bottom graph displays the data after it is passed through a bandpass filter. |
The Block Diagram for our VI is shown below: |
The orange boxes are the inputs discussed in the Front Panel section. The beige box on the left labeled “Temp2” is the Data Acquisition Box. It communicates with the NI 6212 ADC to receive the data from the AVS. This data is passed through the passband filter and into the MATLAB Script Node. This allows the VI to run an instance of MATLAB which implements the Capon Spectrum beamforming techniques. Then, the angle of arrival data is passed into our personally written “triangulationGraph” MATLAB code, which estimates the two-dimensional position of the sound source.
|