Adaptive antenna arrays: how does it work? (Basics)

Good day.

I have devoted the last few years to researching and creating various algorithms for spatial signal processing in adaptive antenna arrays, and continue to do this as part of my work at the present time. Here I would like to share the knowledge and tricks that I discovered for myself. I hope that it will be useful for people who are just starting to study this area of ​​signal processing or just interested.

What is an adaptive antenna array?

antenna array is a set of antenna elements placed in space in some way. Simplified structure of the adaptive antenna array, which we will consider, can be represented as follows:
Adaptive antenna arrays: how does it work? (Basics)

Adaptive antenna arrays are often called "smart" antennas (smart antenna). A "smart" antenna array is made by the spatial signal processing unit and the algorithms implemented in it. These algorithms analyze the received signal and form a set of weight coefficients $inline$w_1…w_N$inline$ that determine the amplitude and initial phase of the signal for each of the elements. The specified amplitude-phase distribution determines radiation pattern the whole lattice. The ability to synthesize the radiation pattern of the required shape and change it during signal processing is one of the main features of adaptive antenna arrays, which makes it possible to solve a wide range of tasks. But first things first.

How is the radiation pattern formed?

radiation pattern characterizes the signal power radiated in a certain direction. For simplicity, we assume that the lattice elements are isotropic, i.e. for each of them, the power of the emitted signal does not depend on the direction. The amplification or attenuation of the power radiated by the grating in a certain direction is obtained due to interference EMW emitted by various elements of the antenna array. A stable interference pattern for EMW is possible only if they coherence, i.e. the phase difference of the signals should not change with time. Ideally, each of the elements of the antenna array should radiate harmonic signal on the same carrier frequency $inline$f_{0}$inline$. However, in practice one has to work with narrowband signals having a spectrum of finite width $inline$Delta f << f_{0}$inline$.
Let all elements of the array emit the same signal with complex amplitude $inline$x_n(t)=u(t)$inline$. Then on remote receiver, the signal received from the nth element can be represented in analytical form:

$$display$$a_n(t) = u(t-tau_n)e^{i2pi f_0(t-tau_n)}$$display$$

where $inline$tau_n$inline$ is the delay in signal propagation from the antenna element to the receiving point.
Such a signal is "quasi-harmonic", and to fulfill the coherence condition, it is necessary that the maximum delay in the EMW propagation between any two elements be much less than the characteristic time of the signal envelope change $inline$T$inline$, i.e. $inline$u(t-tau_n) ≈ u(t-tau_m)$inline$. Thus, the condition for the coherence of a narrowband signal can be written as follows:

$$display$$T≈frac{1}{Delta f}>>frac{D_{max}}{c}=max(tau_k-tau_m) $$display$$

where $inline$D_{max}$inline$ is the maximum distance between AR elements, and $inline$c$inline$ is the speed of light.

When a signal is received, coherent summation is performed digitally in the spatial processing unit. In this case, the complex value of the digital signal at the output of this block is determined by the expression:

$$display$$y=sum_{n=1}^Nw_n^*x_n$$display$$

It is more convenient to represent the last expression in the form dot product N-dimensional complex vectors in matrix form:

$$display$$y=(textbf{w},textbf{x})=textbf{w}^Htextbf{x}$$display$$

where w и x are column vectors, and $inline$(.)^H$inline$ is the operation Hermitian conjugation.

The vector representation of signals is one of the basic ones when working with antenna arrays, because often avoids cumbersome mathematical calculations. In addition, the identification of a signal received at some point in time with a vector often allows one to abstract from the real physical system and understand what exactly is happening from the point of view of geometry.

In order to calculate the radiation pattern of an antenna array, it is necessary to mentally and sequentially “launch” a set of plane waves from all possible directions. In this case, the values ​​of the elements of the vector x can be presented in the following form:

$$display$$x_n=s_n=exp{-i(textbf{k}(phi,theta),textbf{r}_n)}$$display$$

where k - wave vector, $inline$phi$inline$ and $inline$theta$inline$ – azimuth angle и elevation angle, characterizing the plane wave arrival direction, $inline$textbf{r}_n$inline$ is the coordinate of the antenna element, $inline$s_n$inline$ is the element of the phasing vector s plane wave with wave vector k (in the English literature, the phasing vector is called the steerage vector). The dependence of the squared magnitude amplitude y from $inline$phi$inline$ and $inline$theta$inline$ determines the receiving pattern of the antenna array for a given weight vector w.

Features of the radiation pattern of the antenna array

It is convenient to study the general properties of the radiation pattern of antenna arrays on a linear equidistant antenna array in a horizontal plane (i.e., the RP depends only on the azimuthal angle $inline$phi$inline$). Convenient from two points of view: analytical calculations and visual presentation.

Calculate the RP for the unit weight vector ($inline$w_n=1, n = 1 … N$inline$) as described above approach.
Math is hereAdaptive antenna arrays: how does it work? (Basics)
Wave vector projection onto the vertical axis: $inline$k_v=-frac{2pi}{lambda}sinphi$inline$
Vertical coordinate of the antenna element with index n: $inline$r_{nv}=(n-1)d$inline$
Here d – period of the antenna array (distance between adjacent elements), λ is the wavelength. All other vector elements r equal to zero.
The signal received by the antenna array is written in the following form:

$$display$$y=sum_{n=1}^{N}1 ⋅exp{i2pi nfrac{d}{lambda}sinphi}$$display$$

Apply the formula for geometric progression sums и representation of trigonometric functions in terms of complex exponents :

$$display$$y=frac{1-exp{i2pi Nfrac{d}{lambda}sinphi}}{1-exp{i2pi frac{d}{lambda}sinphi}}=frac{sin(pi frac{Nd} {lambda}sinphi)}{sin(pi frac{d}{lambda}sinphi)}exp{ipi frac{d(N-1)}{lambda}sinphi}$$display$$


As a result, we get:

$$display$$F(phi)=|y|^2=frac{sin^2(pi frac{Nd}{lambda}sinphi)}{sin^2(pi frac{d}{lambda}sinphi)} $ $display$$

Radiation Pattern Periodicity

The resulting radiation pattern of the antenna array is a periodic function of the sine of the angle. This means that for certain values ​​of the ratio d/λ it has diffraction (additional) maxima.
Adaptive antenna arrays: how does it work? (Basics)Non-normalized antenna array radiation pattern for N = 5
Adaptive antenna arrays: how does it work? (Basics)Normalized antenna array radiation pattern for N = 5 in the polar coordinate system

The position of the "diffractors" can be viewed directly from formulas for DN. However, we will try to understand where they come from physically and geometrically (in N-dimensional space).

Elements phasing vector s are complex exponents $inline$e^{iPsi n}$inline$ whose values ​​are determined by the value of the generalized angle $inline$Psi = 2pi frac{d}{lambda}sinphi$inline$. If there are two generalized angles corresponding to different directions of arrival of a plane wave, for which $inline$Psi_1 = Psi_2 + 2pi m$inline$ is true, then this means two things:

  • Physically: plane wave fronts coming from these directions induce identical amplitude-phase distributions of electromagnetic oscillations on the elements of the antenna array.
  • Geometrically: phasing vectors for these two directions are the same.

The directions of wave arrival connected in this way are equivalent from the point of view of the antenna array and are indistinguishable from each other.

How to determine the region of angles, in which only one main maximum of the pattern always lies? We will do this in the vicinity of the zero azimuth from the following considerations: the value of the phase shift between two neighboring elements must lie in the range from $inline$-pi$inline$ to $inline$pi$inline$.

$$display$$-pi<2pifrac{d}{lambda}sinphi

Resolving this inequality, we obtain a condition on the region of uniqueness in the vicinity of zero:

$$display$$|sinphi|

It can be seen that the size of the uniqueness region in terms of angle depends on the relation d/λ. If d = 0.5λ, then each direction of signal arrival is “individual”, and the region of uniqueness covers the full range of angles. If d = 2.0λ, then the directions 0, ±30, ±90 are equivalent. Diffraction lobes appear in the radiation pattern.

Typically, diffractive lobes are sought to be suppressed by directional antenna elements. In this case, the full radiation pattern of the antenna array is the product of the pattern of one element and the array of isotropic elements. The RP parameters of one element are usually chosen based on the condition for the unambiguity region of the antenna array.

Main lobe width

Widely known engineering formula for estimating the width of the main lobe of an antenna system: $inline$Delta phi ≈ frac{lambda}{D}$inline$, where D is the characteristic size of the antenna. The formula is used for various types of antennas, including mirror ones. Let us show that it is also valid for antenna arrays.

Let us determine the width of the main lobe by the first zeros of the pattern in the vicinity of the main maximum. Numerator expressions for $inline$F(phi)$inline$ vanishes at $inline$sinphi=mfrac{lambda}{dN}$inline$. The first zeros correspond to m = ±1. Assuming $inline$frac{lambda}{dN}<<1$inline$ we get $inline$Delta phi = 2frac{lambda}{dN}$inline$.

Typically, the width of the directional pattern AP is determined by the level of half power (-3 dB). In this case, use the expression:

$$display$$Delta phi≈0.88frac{lambda}{dN}$$display$$

ExampleAdaptive antenna arrays: how does it work? (Basics)

The width of the main lobe can be controlled by setting different amplitude values ​​for the antenna array weights. Consider three distributions:

  • Uniform amplitude distribution (weights 1): $inline$w_n=1$inline$.
  • Amplitude values ​​falling towards the edges of the grating (weights 2): $inline$w_n=0.5+0.3cos(2pifrac{n-1}{N}-pifrac{N-1}{N})$inline$
  • Amplitude values ​​increasing towards the edges of the grating (weights 3): $inline$w_n=0.5-0.3cos(2pifrac{n-1}{N}-pifrac{N-1}{N})$inline$

The figure shows the resulting normalized radiation patterns on a logarithmic scale:Adaptive antenna arrays: how does it work? (Basics)
The following tendencies can be traced from the figure: the distribution of the amplitudes of the weight coefficients decreasing towards the edges of the array leads to a broadening of the main lobe of the RP, but a decrease in the level of the side lobes. Amplitude values ​​increasing towards the edges of the antenna array, on the contrary, lead to a narrowing of the main lobe and an increase in the level of sidewalls. Here it is convenient to consider the limiting cases:

  1. The amplitudes of the weight coefficients of all elements, except for the extreme ones, are equal to zero. The weights for the extreme elements are equal to one. In this case, the lattice becomes equivalent to a two-element AR with a period D = (N-1)d. It is not difficult to estimate the width of the main lobe using the above formula. In this case, the sidewalls will turn into diffraction maxima and align in level with the main maximum.
  2. The weight of the central element is equal to one, and all the rest - to zero. In this case, we got essentially one antenna with an isotropic radiation pattern.

Direction of the main maximum

So, we looked at how you can adjust the width of the main lobe DN AR. Now let's see how to steer the direction. Let's remember vector expression for the received signal. Let we want the maximum of the radiation pattern to look in some direction $inline$phi_0$inline$. This means that maximum power should be received from this direction. This direction corresponds to the phasing vector $inline$textbf{s}(phi_0)$inline$ in N-dimensional vector space, and the received power is defined as the square of the dot product of this phasing vector and the weight vector w. The scalar product of two vectors is maximum when they collinear, i.e. $inline$textbf{w}=beta textbf{s}(phi_0)$inline$ where β is some normalizing factor. Thus, if we choose the weight vector equal to the phasing one for the required direction, then we will rotate the maximum of the radiation pattern.
Adaptive antenna arrays: how does it work? (Basics)
Consider the following weights as an example: $inline$textbf{w}=textbf{s}(10°)$inline$

$$display$$w_n=exp{i2pifrac{d}{lambda}(n-1)sin(10pi/180)}$$display$$

As a result, we obtain a radiation pattern with the main maximum in the direction of 10°.

Now we apply the same weighting coefficients, but not for signal reception, but for transmission. Here it is worth considering that when a signal is transmitted, the direction of the wave vector is reversed. This means that the elements phasing vector for receiving and transmitting differ in sign in the exponent, i.e. are interconnected by complex conjugation. As a result, we get the maximum radiation pattern for transmission in the direction of -10°, which does not coincide with the maximum RP for reception with the same weight coefficients. To correct the situation, it is necessary to apply complex conjugation to the weight coefficients as well.
Adaptive antenna arrays: how does it work? (Basics)
The described feature of the formation of RP for reception and transmission should always be kept in mind when working with antenna arrays.

Let's play with the radiation pattern

Multiple highs

Let's set the task to form two main maxima of the radiation pattern in the direction: -5° and 10°. To do this, we choose as a weight vector the weighted sum of phasing vectors for the corresponding directions.

$$display$$textbf{w} = betatextbf{s}(10°)+(1-beta)textbf{s}(-5°)$$display$$

Adaptive antenna arrays: how does it work? (Basics)Adjusting ratio β You can adjust the ratio between the main petals. Here again it is convenient to look at what is happening in the vector space. If β greater than 0.5, then the vector of weight coefficients lies closer to s(10°), otherwise s(-5°). The closer the weight vector is to one of the phasors, the greater the corresponding scalar product, and hence the value of the corresponding RP maximum.
Adaptive antenna arrays: how does it work? (Basics)
However, it is worth considering that both main petals have a finite width, and if we want to tune in to two close directions, then these petals will merge into one, oriented to some middle direction.

One high and zero

Now let's try to adjust the maximum radiation pattern to the direction $inline$phi_1=10°$inline$ and at the same time suppress the signal coming from the direction $inline$phi_2=-5°$inline$. To do this, you must set zero DN for the corresponding angle. You can do this in the following way:

$$display$$textbf{w}=textbf{s}_1-frac{textbf{s}_2^Htextbf{s}_1}{N}textbf{s}_2$$display$$

where $inline$textbf{s}_1 = textbf{s}(10°)$inline$ and $inline$textbf{s}_2 = textbf{s}(-5°)$inline$.
Adaptive antenna arrays: how does it work? (Basics)
The geometric meaning of the choice of the weight vector is as follows. We want this vector w had a maximum projection onto $inline$textbf{s}_1$inline$ and was orthogonal to the vector $inline$textbf{s}_2$inline$. The vector $inline$textbf{s}_1$inline$ can be represented as two terms: the collinear vector $inline$textbf{s}_2$inline$ and the orthogonal vector $inline$textbf{s}_2$inline$. To satisfy the problem statement, it is necessary to choose the second component as the vector of weight coefficients w. You can calculate the collinear component by projecting the vector $inline$textbf{s}_1$inline$ onto the normalized vector $inline$frac{textbf{s}_2}{sqrt{N}}$inline$ using the dot product.

$$display$$textbf{s}_{1||}=frac{textbf{s}_2}{sqrt{N}}frac{textbf{s}_2^Htextbf{s}_1}{sqrt{N}} $$display$$

Accordingly, subtracting its collinear component from the original phasing vector $inline$textbf{s}_1$inline$, we obtain the desired weight vector.
Adaptive antenna arrays: how does it work? (Basics)

Some additional notes

  1. Everywhere above, I omitted the issue of normalizing the weight vector, i.e. its length. So, the normalization of the weight vector does not affect the characteristics of the antenna array radiation pattern: the direction of the main maxim, the width of the main lobe, etc. It can also be shown that this normalization does not affect the SNR at the output of the spatial processing block. In this regard, when considering spatial signal processing algorithms, I usually accept unit normalization of the weight vector, i.e. $inline$textbf{w}^Htextbf{w}=1$inline$
  2. Opportunities for the formation of the RP of the antenna array are determined by the number of elements N. The more elements, the wider the possibilities. The more degrees of freedom in the implementation of spatial weight processing, the more options how to “twist” the weight vector in N-dimensional space.
  3. When receiving RP, the antenna array does not physically exist, and all this exists only in the "imagination" of the computing unit that processes the signal. This means that several patterns can be synthesized at the same time and independently process signals coming from different directions. In the case of transmission, things are somewhat more complicated, but it is also possible to synthesize several DNs to transmit different data streams. This technology in communication systems is called MIMO.
  4. With the help of the presented matlab code, you can play around with DN yourself
    Code

    % antenna array settings
    N = 10;             % number of elements
    d = 0.5;            % period of antenna array
    wLength = 1;        % wavelength
    mode = 'receiver';  % receiver or transmitter
    
    % weights of antenna array
    w = ones(N,1);    
    % w = 0.5 + 0.3*cos(2*pi*((0:N-1)-0.5*(N-1))/N).';
    % w = 0.5 - 0.3*cos(2*pi*((0:N-1)-0.5*(N-1))/N).';
    % w = exp(2i*pi*d/wLength*sin(10/180*pi)*(0:N-1)).';
    % b = 0.5; w = b*exp(2i*pi*d/wLength*sin(+10/180*pi)*(0:N-1)).' + (1-b)*exp(2i*pi*d/wLength*sin(-5/180*pi)*(0:N-1)).';
    % b = 0.5; w = b*exp(2i*pi*d/wLength*sin(+3/180*pi)*(0:N-1)).' + (1-b)*exp(2i*pi*d/wLength*sin(-3/180*pi)*(0:N-1)).';
    
    % s1 = exp(2i*pi*d/wLength*sin(10/180*pi)*(0:N-1)).';
    % s2 = exp(2i*pi*d/wLength*sin(-5/180*pi)*(0:N-1)).';
    % w = s1 - (1/N)*s2*s2'*s1;
    % w = s1;
    
    % normalize weights
    w = w./sqrt(sum(abs(w).^2));
    
    % set of angle values to calculate pattern
    angGrid_deg = (-90:0.5:90);
    
    % convert degree to radian
    angGrid = angGrid_deg * pi / 180;
    % calculate set of steerage vectors for angle grid
    switch (mode)
        case 'receiver'
            s = exp(2i*pi*d/wLength*bsxfun(@times,(0:N-1)',sin(angGrid)));
        case 'transmitter'
            s = exp(-2i*pi*d/wLength*bsxfun(@times,(0:N-1)',sin(angGrid)));
    end
    
    % calculate pattern
    y = (abs(w'*s)).^2;
    
    %linear scale
    plot(angGrid_deg,y/max(y));
    grid on;
    xlim([-90 90]);
    
    % log scale
    % plot(angGrid_deg,10*log10(y/max(y)));
    % grid on;
    % xlim([-90 90]);

What tasks can be solved using an adaptive antenna array?

Optimal reception of an unknown signalIf the signal arrival direction is unknown (and if the communication channel is multipath, there are several directions at all), then by analyzing the signal received by the antenna array, it is possible to form the optimal weight vector w so that the SNR at the output of the spatial processing unit will be maximum.

Optimal signal reception in the presence of interferenceHere the problem is posed as follows: the spatial parameters of the expected useful signal are known, but there are sources of interference in the external environment. It is necessary to maximize the SINR at the AA output, minimizing the effect of interference on signal reception.

Optimal signal transmission to the userThis problem is solved in mobile communication systems (4G, 5G), as well as in Wi-Fi. The meaning is simple: with the help of special pilot signals in the user feedback channel, the spatial characteristics of the communication channel are estimated, and on its basis the optimal vector of weight coefficients for transmission is selected.

Spatial Multiplexing of Data StreamsAdaptive antenna arrays allow you to transmit data to several users at the same time on the same frequency, forming an individual pattern for each of them. This technology is called MU-MIMO and is currently being actively implemented (and somewhere already) in communication systems. The spatial multiplexing capability is provided, for example, in the 4G LTE mobile communication standard, IEEE802.11ay Wi-Fi standard, 5G mobile communication standards.

Virtual antenna arrays for radarsDigital antenna arrays allow, with the help of several transmitting antenna elements, to form a virtual antenna array of significantly larger sizes for signal processing. A virtual grid has all the characteristics of a real one, but requires less hardware for its implementation.

Estimation of parameters of radiation sourcesAdaptive antenna arrays allow solving the problem of estimating the number, power, angular coordinates sources of radio emission, to establish a statistical relationship between the signals of various sources. The main advantage of adaptive antenna arrays in this matter is the ability to super-resolution closely spaced radiation sources. Sources, the angular distance between which is less than the width of the main lobe of the antenna array (Rayleigh resolution limit). This is mainly possible due to the vector representation of the signal, the known signal model, as well as the apparatus of linear mathematics.

Thank you for your attention

Source: habr.com

Add a comment