Home » Posts tagged 'MST Radars'

# Tag Archives: MST Radars

## Phased Array Antenna, Radiation Pattern and Array Configuration

Phased array consisting of N lined up individual isotropic antennas with the composite main antenna beam into vertical direction. This code based on the governing equation (J. Röttger, The Instrumental Principles of MST Radars, Ch.2.1) and shows how the radiation pattern changes as the parameters are modified.

clc; clear all;
close all;

Ratio between wavelength and distance between individual elements Linear Array of N isotropic radiators

N    = 64;
alfa = -90:0.1:90;       % Zenith angle
d_l  = [0.1,0.5,1,2,5] ; % Ratio
for i = 1:5
Ed = abs(sin(N*pi*d_l(i)*sind(alfa))./sin(pi*d_l(i)*sind(alfa)))/N;
fig = figure(i);
set(fig,'Position', [100, 100, 1049, 400]);
subplot(2,2,[1 3]);
plot(alfa,Ed);
grid on;
axis([-90 90 0 1]);
xlabel('Zenith angle [deg]');
ylabel('Normalized radiation pattern');
title(['Ratio between distance and wavelength d/\lambda = ',num2str(d_l(i))]);

subplot(2,2,[2 4]);
polar(alfa*pi/180,Ed);
hold on;
polar((alfa+180)*pi/180,Ed);
xlabel(['Polar plot for the radiation pattern d/\lambda = ',num2str(d_l(i))]);
hold off;
end

Distance between individual elements

f_EISCAT =  233E6;   % Centre frequency 233 Hz
c = 3*10^8;          % Light Speed m/s
l = c/f_EISCAT;
d = [0.1,0.5,1,2,3];  % m
for i = 1:5
% Normalizied gain
Ed = abs(sin(N*pi*d(i)/l*sind(alfa))./sin(pi*d(i)/l*sind(alfa)))/N;
% Ed - Array Factor, Radiation patern for isotropic radiators
fig = figure(i+5);
set(fig,'Position', [100, 100, 1049, 400]);
subplot(2,2,[1 3]);
plot(alfa,Ed);
grid on;
axis([-90 90 0 1]);
xlabel('Zenith angle [deg]');
ylabel('Normalized radiation pattern');
title([' Distance between individual elements (space weighting) = ',...
num2str(d (i)),' m,  F = 233Mhz']);
subplot(2,2,[2 4]);
polar(alfa*pi/180,Ed);
hold on;
polar((alfa+180)*pi/180,Ed);
xlabel('Polar plot for the radiation pattern');
hold off;
end

Number of antenna elements The distance between individual elements equals to the half wavelength of the signal

d_l = 0.5;
N   = [4 16 64 100 169]; % Number of elements was varied from 4 to 256.
for i = 1:5
Ed = abs(sin(pi*d_l*N(i)*sind(alfa))./sin(pi*d_l*sind(alfa)))/N(i);
fig = figure(i+10);
set(fig,'Position', [100, 100, 1049, 400]);
subplot(2,2,[1 3]);
plot(alfa,Ed);
grid on;
axis([-90 90 0 1]);
xlabel('Zenith angle [deg]');
ylabel('Normalized array factor,Radiation pattern');
title(['Number of elements = ',num2str(N(i)),', d/\lambda = 0.5']);
subplot(2,2,[2 4]);
polar(alfa*pi/180,Ed);
hold on;
polar((alfa+180)*pi/180,Ed);
xlabel('Polar plot for the radiation pattern');
hold off;
end

Radiation pattern change when the beam is not pointed vertically

clc;clear all;
N = 8;
d_l = 0.5;
alfa0 = 30;
alfa = -180:0.1:180;       % Zenith angle
Ed = abs(sin(pi*d_l*N*(sind(alfa) - sind(alfa0) ))./...
sin(pi*d_l*(sind(alfa) - sind(alfa0))))/N;
Ed0 = abs(sin(pi*d_l*N*(sind(alfa)))./...
sin(pi*d_l*sind(alfa)))/N;
Edl = 20*log10(Ed);
Edl0= 20*log10(Ed0);
fig = figure(16);
set(fig,'Position', [100, 100, 1049, 400]);
subplot(2,2,[1 3]);
plot(alfa,Ed);
hold on;
plot(alfa,Ed0,'r');
grid on;
axis([-90 90 0 1]);
xlabel('Zenith angle [deg]');
ylabel('Normalized array factor,Radiation pattern');
title(['Number of elements = ',num2str(N),', d/\lambda = 0.5']);
legend('\beta = 30 deg','\beta = 0 deg','Location','NorthWest')
subplot(2,2,[2 4]);
polar(alfa*pi/180,Ed);
hold on;
polar(alfa*pi/180,Ed0,'r');
hold on;
xlabel('Polar plot for the radiation pattern');
hold off;
figure(17);
plot(alfa,Edl);
hold on;
plot(alfa,Edl0,'r');
grid on;
legend('\beta = 30 deg','\beta = 0 deg','Location','NorthWest')
axis([-90 90 -100 0]);
xlabel('Zenith angle [deg]');
ylabel('Radiation pattern dB');
title(['Number of elements = ',num2str(N),', d/\lambda = 0.5']);


Electrical weighting techniques

N     = 64;
d_l   = 0.1;
Ed = abs(sin(pi*d_l*N*(sind(alfa) ))./...
sin(pi*d_l*sind(alfa)))/N;
Edl = 20*log10(Ed);
% Try to lower the first side lobe relative to main lobe
% To be able to reduce the side lobe levels, we design the array so its radiate
% more power towards the center, and less at the edges.
w  = zeros(1,N);
ws = zeros(1,N);
n = 1:N;
E = 0;Es = 0;
for n = 1:N;
if n <= N/2
w(n) = (n-1)/30.5;
else
w(n) = w(65 - n);
end
ws(n) = sin((n-1)*pi/(N-1));
E  = E + (w(n)*exp(complex(0,((2*pi*(n-1)*d_l)*sind(alfa)))));
Es  = Es + (ws(n)*exp(complex(0,((2*pi*(n-1)*d_l)*sind(alfa)))));
end
figure(19);
hold on; grid on;
plot(w,'g');
plot(ws,'r');
axis([1 64 0 1]);
ylabel('Normalized tapering weight');
xlabel('Array elements index');
legend('polynomial','sin');
hold off;
E = abs(E);
E = 20*log10(E/max(E));
Es = abs(Es);
Es = 20*log10(Es/max(Es));
fig = figure(18);
set(fig,'Position', [100, 100, 600, 700]);
hold on;
subplot(3,1,1);
plot(alfa,Edl);
grid on;
axis([-90 90 -100 0]);
legend('Isotropic');
ylabel('Radiation pattern dB');
title(['Number of elements = ',num2str(N),', d/\lambda = ',num2str(d_l)]);
subplot(3,1,2);
plot(alfa,Es,'r');
axis([-90 90 -100 0]);
ylabel('Radiation pattern dB');
grid on;
legend('Weighted Sin');
subplot(3,1,3);
plot(alfa,E,'g');
axis([-90 90 -100 0]);
grid on;
xlabel('Zenith angle [deg]');
ylabel('Radiation pattern dB');
legend('Weighted Poly');
hold off;