Direction of Arrival Estimation 2.1
Direction of Arrival Estimation 2.1
By:
Lindsay Langford
Direction of Arrival Estimation
By:
Lindsay Langford
Online:
< http://cnx.org/content/col11470/1.2/ >
CONNEXIONS
Introduction 1
1.1 Introduction
Beamforming is a type of signal processing which uses sensor arrays to either transmit or receive signals in
a certain direction. This directionality is accomplished by manipulating the phases at each sensor in the
array so that constructive interference occurs at favored angles and destructive interference occurs elsewhere.
Beamforming is most often used with sound or radio waves and it has numerous applications in areas such
as RADAR, SONAR, wireless communications, and acoustics.
1
2 CHAPTER 1. INTRODUCTION
Figure 1.1
The goal is to nd the angle [U+03D5]. It may be helpful to keep this image in mind as the techniques
behind beamforming and direction of arrival are explained.
Beamforming 1
2.1 Beamforming
The conventional frequency domain beamforming algorithm involves three components: a steering vectore ,
a weighting matrix W, and a vector Y which contains the frequency information about the signal received
at each sensor. The steering vector is given its own section, and I will go into brief detail about the other
two here.
Figure 2.1
This transform eectively represents the frequency components of the signal during various blocks of time,
and is useful if the signal itself is nite and/or not uniform over all time. When performing a short-time
Fourier Transform, it is best to pick a window that has a Fourier Transform which looks like a single narrow
spike so that its width is narrow compared to the signal's spectral variations this allows the short-time
Fourier Transform of a signal at one instant in time to best approximate the signal's spectrum. The vector
Y should actually be written as Y (t, ω ) because it is dependent both on time and the frequency content of
the signal, but often that notation is omitted for neatness. Each element Yn is the collection of short-time
Fourier Transforms at sensor n, thus giving Y the form
1 This content is available online at <http://cnx.org/content/m45411/1.1/>.
3
4 CHAPTER 2. BEAMFORMING
Figure 2.2
Figure 2.3
This is the inner product of e' and WY, which is nothing more than a column vector of weighted short-
time Fourier transforms. In order to get the beamformer output in the time domain, all that is necessary is
taking an inverse short-time Fourier Transform of e'WY (t, ω ).
Here is a visual representation of the entire beamforming process:
Figure 2.4
Steering Vector 1
The steering vector e represents the set of phase delays experienced by a plane wave as it reaches each
element in an array of sensors. The mathematical representation of it is
Figure 3.1
Where j is the imaginary unit, k n is the wave number at the nth sensor, and xn is the position vector
of the nth sensor in (x, y, z ) coordinates. If the sensor array is two-dimensional, all z coordinates can be
treated as 0 and omitted from the position vector in calculations. The wave number of a plane wave is its
spatial frequency, or how many waves exist over a specied distance. It is a function of the frequency of
the propagating wave, the material through which it is travelling, and its original location or direction of
propagation. For our specic application, we actually use the angular wave number, which is written as
(2π /λ) and indicates the number of wavelengths per 2π unit distance.
The role of the steering vector e in beamforming is to dene the assumed propagation direction of the
source's signal. In other words, it is the part of the beamforming process that chooses the direction in which
the sensor array creates an output beam. Because e is designed to cancel the phase shifts at each sensor in
the array and the wave number k must, by denition, assume a propagation direction, the steering vector
has the eect of moving the each sensor's output to a particular direction, thus focusing the beam.
7
8 CHAPTER 3. STEERING VECTOR
Matched Filter 1
Matched lters underlie many signal classication systems in the real world, allowing systems to determine
the likelihood of a signal being present in a noisy environment. They take the form a cross-correlation or
convolution between the received signal and a desired signal, the presence (or absence) of which is to be
ascertained. This cross-correlation may then be compared to a threshold, comprising a decision rule to test
for the presence of the known signal.
Figure 4.1
The output of this convolution will have a distinct peak when the reference and received signals are
most closely correlated, and will have smaller uctuations when they are uncorrelated or weakly correlated.
Therefore, the time domain output of this convolution may simply be compared to a threshold. For samples
where y[n] exceeds the threshold, we assume that x[n] contains our reference signal, and samples where y[n]
falls below the threshold, x[n] does not contain our reference.
9
10 CHAPTER 4. MATCHED FILTER
Figure 4.2
Figure 4.3
The output of the frequency-domain matched lter can then be either transformed back into the time
domain with the inverse STFT to be used with the existing per-sample decision rule, or can be used as the
input to a frequency domain interpretation of the decision rule. The latter is obviously more computationally
ecient, and is, at its simplest, the L2 norm of Y[k, t].
Figure 4.4
P[n] may then be compared to a threshold to determine the presence or absence of the reference signal
within the STFT slice n.
Given the basic foundation in beamforming the other modules in this section have established, we would like
to extend the usefulness of the technique into new domains. One application of interest outside of simply
creating a directional antenna is to identify the direction from which a known source is broadcasting, called
Direction of Arrival Estimation.
5.1.3 Pseudocode:
Function AngleEstimation{
Angle <- 0
1 This content is available online at <http://cnx.org/content/m45412/1.1/>.
Available for free at Connexions <http://cnx.org/content/col11470/1.2>
11
12 CHAPTER 5. DIRECTION OF ARRIVAL ESTIMATION
Conclusion 1
6.1 Conclusion
Beamforming is a sizeable and complex sub-study of digital signal processing. While this module has covered
the fundamentals of a basic frequency domain implementation, more sophisticated techniques certainly exist.
As such, this segment will serve less as a synopsis of the previous sections and more an overview of more
advanced techniques in the eld.
6.1.1 Synopsis
Beamforming is, at its core, the art of combining multiple omnidirectional sensors into a directional whole
with superior characteristics to purpose-built directional sensors. This feat is performed by delaying the
sensors' outputs such that they constructively interfere for signals arriving from a specic direction, and
may be done in either the time or frequency domain. While time domain implementations may be simpler
for some array topologies, frequency-domain implementations are, by and large, much more ecient due to
their ability to create fractional delays (a computationally intensive upsample-delay-downsample process in
time domain).
These systems underlie many technologies that we take for granted, from synthetic aperture RADAR used
for such disparate applications as weather radar and ICBM tracking, to next-generation cellular technologies
seeking to improve connectivity by steering cell signals towards active cell towers.
13
14 CHAPTER 6. CONCLUSION
Even more advanced techniques, such as Linear Prediction, can yield even better results for the beam-
former's mainlobe width. At a high level, Linear Predication involves expressing the output of one particular
sensor as a weighted linear combination of all the others. Again, the mathematical details of this method
are beyond the scope of this module.
Further adaptive methods allow for the aggregation of multiple arrays to cancel interference from side-
lobes. For instance, creating a secondary array to preferentially receive an oending signal from one of
the main array's sidelobes with the intent of subtracting this signal from the main array's output. Other
applications of multiple arrays include more advanced direction of arrival estimation, including triangulating
separate array's estimates to yield a direction and distance (which can be tracked over time to get a direction
of motion estimate).
For those who are curious, we've provided a link to our MATLAB code and poster. Both of them can be
found here2 .
15
16 INDEX
Keywords are listed by the section with that keyword (page numbers are in parentheses). Keywords
do not necessarily appear in the text of the page. They are merely associated with that section. Ex.
apples, 1.1 (1) Terms are referenced by the page they appear on. Ex. apples, 1
D Direction of Arrival Estimation, 5(11) S Signal processing, 1(1), 2(3), 3(7), 4(9),
Direction of Arrival Estimation., 11 5(11), 6(13), 7(15)
Steering vector, 3(7)
E ELEC 301, 1(1), 2(3), 3(7), 4(9),
5(11), 6(13), 7(15)
Attributions
About Connexions
Since 1999, Connexions has been pioneering a global system where anyone can create course materials and
make them fully accessible and easily reusable free of charge. We are a Web-based authoring, teaching and
learning environment open to anyone interested in education, including students, teachers, professors and
lifelong learners. We connect ideas and facilitate educational communities.
Connexions's modular, interactive courses are in use worldwide by universities, community colleges, K-12
schools, distance learners, and lifelong learners. Connexions materials are in many languages, including
English, Spanish, Chinese, Japanese, Italian, Vietnamese, French, Portuguese, and Thai. Connexions is part
of an exciting new information distribution system that allows for Print on Demand Books. Connexions
has partnered with innovative on-demand publisher QOOP to accelerate the delivery of printed course
materials and textbooks into classrooms worldwide at lower prices than traditional academic publishers.