Introduction to Array Processing
Total Page:16
File Type:pdf, Size:1020Kb
Introduction to Array Processing Olivier Besson 1/122 Contents 1 Introduction Multichannel processing Array processing 2 Array processing model 3 Beamforming 4 Direction of arrival estimation Introduction 2/122 Context of multichannel processing Multichannel processing involves measurement vectors y(k): N samples collected (possibly at the same time) on N different • sensors, e.g., an EM wave received on N antennas: z ~k ⋆ θ y (k) y 1 φ y (k) x 2 2 3 . y(k) = . N samples taken on a single sensor over a time frame of NTr. 6 7 • 6 . 7 In radar N is the number of pulses sent by a radar each Tr 6 . 7 6 7 seconds during a coherent processing interval: y (k) 6 N 7 y1(1) b 6 7 b b 4 5 0 Tr 2Tr 3Tr b b b y2(1) y4(1) b y3b(1) Introduction Multichannel processing 3/122 Analysis/processing of multichannel measurements Analysis of such vectors should be understood as figuring out the • relation between yn(:) and ym(:): how correlated are the signals y (:) and y (:)? • n m can y(:) be explained by a small number of variables (principal • component analysis)? Processing these vectors includes for instance linear filtering, i.e., • N yF (k) = wn∗ yn(k) n=1 X which can be used to improve reception of a signal of interest. Introduction Multichannel processing 4/122 A multichannel detection/estimation problem A classical multichannel problem is to detect/estimate a known signal • a that would be present in y in addition to some noise n, i.e., decide between the two hypotheses: : y = n H0 ( 1 : y = αa + n H and, if is declared in force, estimate α. H1 A simple way is to design a suitable linear filter w aimed at retrieving • a, and to test the energy wH y 2 at the output: j H j N y w y = n=1 wn∗ yn H1 w . 2 ≷ η P | | H0 Introduction Multichannel processing 5/122 Context of array processing In this course, we focus on signals received on an array of N antennas • placed at different locations with a view to enhance reception of z signals coming from preferred directions. ~k ⋆ θ y φ x y (k) represents the signal received at antenna number n at time • n index number k. n [1;N] is a spatial index as it is related to a particular position of • 2 an antenna in space and one is interested in spatial processing of N yn(:), e.g. n=1 wn∗ yn(k). P Introduction Array processing 6/122 Array processing with two antennas Consider two antennas receiving a signal s(t) emitted by a source in • the far-field s(t) y (t) As(t t ) 1 ≃ − 0 y (t) As(t t ∆t) 2 ≃ − 0 − The time delay ∆t depends on the direction of arrival θ of s(t) and • on the relative (known) positions of the antennas: if θ is known, one can obtain s(t): spatial filtering (beamforming) • if one can estimate ∆t from y (t) and y (t), then θ follows: source • 1 2 localization. Introduction Array processing 7/122 Beamforming with two antennas For narrowband signals, a delay amounts to a phase shift. Hence • y (k) 1 n (k) y(k) = 1 = As(k) + 1 y (k) eiφ n (k) 2 2 Let us use a linear filter to estimate As(k). The output is • iφ w1∗y1(k) + w2∗y2(k) = As(k)[w1∗ + w2∗e ] + [w1∗n1(k) + w2∗n2(k)] A good filter maximizes the output signal to noise ratio (SNR) which, • if n1(k) and n2(k) are uncorrelated and have same power, is given by w + w eiφ 2 A 2P SNR = j 1∗ 2∗ j j j s w 2 + w 2 P j 1j j 2j n maximum for w = w eiφ, so that wH y(k) y (k) + y (k)e-iφ. ! 2 1 / 1 2 Introduction Array processing 8/122 Array of sensors Potentialities Array of sensors offer an additional dimension (space) which enables one, possibly in conjunction with temporal or frequency filtering, to perform spatial filtering of signals: 1 source separation 2 direction finding Fields of application 1 radar, sonar (detection, target localization, anti-jamming) 2 communications (system capacity improvement, enhanced signals reception, spatial focusing of transmissions, interference mitigation) Introduction Array processing 9/122 Contents 1 Introduction 2 Array processing model Principle Multichannel receiver Signals received on the array Covariance matrix Model limitations 3 Beamforming 4 Direction of arrival estimation Array processing model 10/122 Arrays and waveforms z ~k ⋆ θ y φ x The array performs spatial sampling of a wavefront impinging from • direction(θ; φ). Assumptions: homogeneous propagation medium, source in the • far-field of the array plane wavefront. ! Array processing model Principle 11/122 Multichannel receiver Lowpass filter thermal noise Re[˜yn(t)] Re[yn(t)] ADC ω HF cos(Nωct) snapshot filter y(kTs) Im [˜yn(t)] Im [yn(t)] ADC sin(ωct) ω − N Lowpass filter Array processing model Multichannel receiver 12/122 Source signal (frequency domain) X˘(ω) H˘ (ω) S(ω) H˘ (ω) ω ω ωc − c Array processing model Signals received on the array 13/122 Signals and receiver Source signal (narrowband) x˘(t) = 2Re s(t)ei!ct iφ(t) i! t , Re α(t)e e c n o = α(t) cos [!ct + φ(t)] α(t) and φ(t) stand for amplitude and phase of s(t), and have slow time-variations relative to fc. Channel response Receive channel number n has impulse response h˘n(t). Array processing model Signals received on the array 14/122 Model of received signals Signal received on n-th antenna • y˘ (t) = αh˘ (t) x˘(t τ ) +n ˘ (t) n n ∗ − n n where τn is the propagation delay to n-th sensor. In frequency domain : • i!τn Y˘n(!) = αH˘n(!)X˘(!)e− + N˘n(!) After demodulation (! ! + ! ) and lowpass filtering: • ! c i(!+!c)τn Yn(!) = αH˘n(! + !c)S(!)e− + N˘n(! + !c) i!cτn αH˘ (! )S(!)e− + N˘ (! + ! ) ' n c n c Array processing model Signals received on the array 15/122 Model of received signals Taking the inverse Fourier transform 1 (Y (!)) yields • F − n i!cτn y (t) αH˘ (! )s(t)e− + n (t) n ' n c n The snapshot writes • ˘ i!cτ1 y1(t) H1(!c)e− n1(t i!cτ2 y2(t) H˘2(!c)e− n2(t) y(t) = 2 . 3 = α 2 . 3 s(t) + 2 . 3 . 6 7 6 i! τ 7 6 7 6yN (t)7 6H˘ (! )e c N 7 6nN (t)7 6 7 6 N c − 7 6 7 4 5 4 5 4 5 Assuming all H˘ (! ) are identical and absorbing α and H˘ (! ) in • n c n c s(t), we simply write y(t) = a(θ)s(t) + n(t) Array processing model Signals received on the array 16/122 Model of received signals The snapshot is then sampled (temporally) at rate T to obtain the • s N K data matrix Y = y(1) y(2) ::: y(K) : j Ts 2Ts KTs Time 1 y1(Ts) y1(2Ts) y1(KTs) 2 y2(Ts) y2(2Ts) y2(KTs) . Y . N yN (Ts) yN (2Ts) yN (KTs) Space y(1) y(2) y(K) The k-th snapshot is given by • y(k) = a(θ)s(k) + n(k) where a(θ) is the vector of phase shifts, referred to as the steering vector since τn depends only on the directions(s) of arrival of the source. Array processing model Signals received on the array 17/122 Model of received signals Snapshot at time index k The snapshot received in the presence of P sources is given by P y(k) = a(θp)sp(k) + n(k) p=1 X s1(k) . = a(θ1) ::: a(θP ) 2 . 3 + n(k) s (k) 6 P 7 N P 4 5 = A(jθ)s(k) + n(k) P 1 j Array processing model Signals received on the array 18/122 Steering vector z ~k ⋆ θ y φ x 1 τ = [x cos θ cos φ + y cos θ sin φ + z sin θ] n c n n n 2π i [xn cos θ cos φ+yn cos θ sin φ+zn sin θ] an(θ; φ) = e λ Array processing model Signals received on the array 19/122 Uniform linear array (ULA) Steering vector ⋆ θ d sin θ 1 2 3 N d i2πf i2π(N 1)f T d sin θ d a(θ) = 1 e s e s ; fs = fc = sin θ ··· − c λ Spatial sampling requirement For the phase shift ∆φ = 2π d sin θ to be within [ π; π] for every λ − θ [ π=2; π=2] one needs to have 2 − λ d ≤ 2 Array processing model Signals received on the array 20/122 Covariance matrix Definition The covariance matrix is defined as H R = E y(k)y (k) y1(k) y (k) 82 2 3 9 = E . y1∗(k) y2∗(k) : : : yN∗ (k) > . > <>6 7 => 6y (k)7 6 N 7 >4 5 > :> ;> Interpretation The (n;` ) entry R(n;` ) = E yn(k)y∗(k) measures the correlation f ` g between signals received at sensors n and `, at the same time index k. Array processing model Covariance matrix 21/122 Structure of the covariance matrix Signals covariance matrix The covariance matrix of the signal component is H H H H E A(θ)s(k)s (k)A (θ) = A(θ)RsA (θ)(Rs = E s(k)s (k) ) P H = Ppa(θp)a (θp)(uncorrelated signals) p=1 X Provided that Rs is full-rank (non coherent signals), the signal covariance matrix has rank P and its range space is spanned by the steering vectors a(θ ), p = 1; ;P .