Анализ Бога массивов

Этот пример демонстрирует использование бесконечного анализа массивов, чтобы смоделировать поведение одного элемента - элементарной ячейки, встроенной в массив [1] - [3]. Массив принят, чтобы быть бесконечной степени в двух измерениях и расположен в плоскости XY.

Задайте элементарную ячейку

Элементарная ячейка обращается к одному элементу в бесконечном массиве. Элементу элементарной ячейки нужна наземная плоскость. Антенны, которые не имеют groundplane, должны быть поддержаны отражателем. Представительным примером для каждого случая был бы диполь, поддержанный отражателем и микрополосковой антенной закрашенной фигуры. Этот пример будет использовать диполь, поддержанный отражателем, и анализировать поведение импеданса элементарной ячейки на уровне 10 ГГц. Элементарная ячейка будет иметь a λ/2 x λ/2 поперечное сечение.

freq = 10e9;
vp = physconst('lightspeed');
lambda = vp/freq;
ucdx = 0.5*lambda;
ucdy = 0.5*lambda;

Задайте Отдельный элемент, Создают тонкий диполь длины немного меньше, чем λ/2 и присвойте его как возбудитель к отражателю размерностей λ/2 на каждой стороне.

d = dipole;
d.Length = 0.495*lambda;
d.Width = lambda/160;
d.Tilt = 90;
d.TiltAxis = [0 1 0];

r = reflector;
r.Exciter = d;
r.Spacing = lambda/4;
r.GroundPlaneLength = ucdx;
r.GroundPlaneWidth = ucdy;
figure
show(r)

Figure contains an axes. The axes with title reflector antenna element contains 5 objects of type patch, surface. These objects represent PEC, feed.

Создайте массив Бога

Создайте бесконечный массив и присвойте поддержанный диполь отражателя как элемент и просмотрите его.

infArray = infiniteArray;
infArray.Element = r;
infArrayFigure = figure;
show(infArray)

Figure contains an axes. The axes with title Unit cell of dipole over a reflector in an infinite Array contains 6 objects of type patch, surface. These objects represent PEC, feed, unit cell.

Вычислите импеданс скана

Анализируйте поведение импеданса бесконечного массива путем вычисления импеданса скана. Импеданс скана является изменением импеданса элемента элементарной ячейки на одной частоте в зависимости от угла сканирования. Используйте свойства угла сканирования на бесконечном массиве, ScanAzimuth и ScanElevation, чтобы задать поведение скана. Здесь мы вычисляем импеданс скана в одной плоскости, заданной азимутом = 0 градусов и вертикальным изменением, варьирующимся от 0 до 90 градусов на шагах на 1 градус.

% Scan plane definition
az = 0;            % E-plane
el = 0:1:90;       % elevation

% Calculate and plot
scanZ = nan(1,numel(el));
infArray.ScanAzimuth = az;
for i = 1:numel(el)
    infArray.ScanElevation = el(i);
    scanZ(i) = impedance(infArray,freq);
end

figure
plot(el,real(scanZ),el,imag(scanZ),'LineWidth',2);
grid on
legend('Resistance','Reactance')
xlabel('Scan Elevation(deg)')
ylabel('Impedance (\Omega)')
title(['Scan Impedance in az = ' num2str(az) ' deg plane'])

Figure contains an axes. The axes with title Scan Impedance in az = 0 deg plane contains 2 objects of type line. These objects represent Resistance, Reactance.

Улучшение поведения сходимости

Бесконечный анализ массивов зависит от периодической функции Грина, которая включает бесконечное двойное суммирование. Для получения дополнительной информации об этом обратитесь к странице документации (infiniteArray). Количество условий в этом двойном суммировании оказывает влияние на сходимость результатов. Увеличьте число условий суммирования, чтобы улучшить сходимость. Выполнение показанной команды увеличит общее число условий к 101 (50 условий каждый для отрицательных и положительных индексов, 1 термин для термина 0th) от значения по умолчанию 21.

numSummationTerms(infArray,50);

Результат с более высоким количеством условий показывают в импедансе скана в 3 плоскостях, азимут = 0, 45 и 90 градусов соответственно. Требуется приблизительно 100 секунд на плоскость скана на машине на 2,4 ГГц с памятью на 32 Гбайт.

az = [0 45 90];            % E,D,H-plane
load scanZData

Электронная плоскость

figure
plot(el,real(scanZ50terms(1,:)),el,imag(scanZ50terms(1,:)),'LineWidth',2);
grid on
legend('Resistance','Reactance')
xlabel('Scan Elevation(deg)')
ylabel('Impedance (\Omega)')
title(['Scan Impedance in az = ' num2str(az(1)) ' deg plane'])

Figure contains an axes. The axes with title Scan Impedance in az = 0 deg plane contains 2 objects of type line. These objects represent Resistance, Reactance.

D-плоскость

figure
plot(el,real(scanZ50terms(2,:)),el,imag(scanZ50terms(2,:)),'LineWidth',2);
grid on
legend('Resistance','Reactance')
xlabel('Scan Elevation(deg)')
ylabel('Impedance (\Omega)')
title(['Scan Impedance in az = ' num2str(az(2)) ' deg plane'])

Figure contains an axes. The axes with title Scan Impedance in az = 45 deg plane contains 2 objects of type line. These objects represent Resistance, Reactance.

H-плоскость

figure
plot(el,real(scanZ50terms(3,:)),el,imag(scanZ50terms(3,:)),'LineWidth',2);
grid on
legend('Resistance','Reactance')
xlabel('Scan Elevation(deg)')
ylabel('Impedance (\Omega)')
title(['Scan Impedance in az = ' num2str(az(3)) ' deg plane'])

Figure contains an axes. The axes with title Scan Impedance in az = 90 deg plane contains 2 objects of type line. These objects represent Resistance, Reactance.

Изменение импеданса Бога массивов с частотой

Зафиксируйте угол сканирования к определенному значению и разверните частоту, чтобы наблюдать поведение импеданса этого элемента элементарной ячейки.

az_scan = 0;
el_scan = 45;
percent_bw = .15;
bw = percent_bw*freq;
fmin = freq - bw/2;
fmax = freq + bw/2;
infArray.ScanAzimuth = az_scan;
infArray.ScanElevation = el_scan;
figure
impedance(infArray,linspace(fmin,fmax,51));

Figure contains an axes. The axes with title Impedance contains 2 objects of type line. These objects represent Resistance, Reactance.

Вычислите изолированный шаблон элемента и импеданс

Используйте данные об импедансе скана из бесконечного анализа массивов, чтобы вывести шаблон элемента скана (также известный как встроенный шаблон / шаблон элемента массива в случае конечных массивов). Как обозначено в [1] - [4] используют изолированный шаблон элемента и импеданс, чтобы вычислить его. Сделайте это путем анализа диполя, поддержанного бесконечным отражателем и вычисления его диаграммы направленности мощности и импеданса на уровне 10 ГГц.

r.GroundPlaneLength = inf;
r.GroundPlaneWidth = inf;
giso = nan(numel(az),numel(el));
gisodB = nan(numel(az),numel(el));
for i = 1:numel(az)
    giso(i,:) = pattern(r,freq,az(i),el,'Type','power');
    gisodB(i,:) = 10*log10(giso(i,:));
    gisodB(i,:) = gisodB(i,:) - max(gisodB(i,:));
end
Ziso = impedance(r,freq);

Вычислите и постройте шаблон элемента скана

Вычисление шаблона элемента скана требует, чтобы мы задали импеданс генератора. Здесь мы выбираем, это, чтобы быть разворотом сканирует сопротивление.

Rg = 185;             
Xg = 0;
Zg = Rg + 1i*Xg;
gs = nan(numel(az),numel(el));
gsdB = nan(numel(az),numel(el));
for i = 1:numel(az)    
    gs(i,:) = 4*Rg*real(Ziso).*giso(i,:)./(abs(scanZ50terms(i,:) + Zg)).^2;
    gsdB(i,:)= 10*log10(gs(i,:));
    gsdB(i,:)= gsdB(i,:) - max(gsdB(i,:));
end

figure;
plot(el,gsdB(1,:),el,gsdB(2,:),el,gsdB(3,:),'LineWidth',2.0)
grid on
axis([0 90 -20 0])
xlabel('Scan Elevation (deg.)')
ylabel('Power pattern(dB)')
title(strcat('E-Plane (az = 0 deg.) Power Pattern'))
legend('az = 0 deg','az = 45 deg','az = 90 deg','Location','best')

Figure contains an axes. The axes with title E-Plane (az = 0 deg.) Power Pattern contains 3 objects of type line. These objects represent az = 0 deg, az = 45 deg, az = 90 deg.

Ссылка

[1] Дж. Аллен, "Усиление и изменение импеданса отсканированных дипольных массивов", Транзакции IRE на Антеннах и Распространении, vol.10, № 5, pp.566-572, сентябрь 1962.

[2] Р. К. Хансен, антенны фазированной решетки, глава 7 и 8, John Wiley & Sons Inc., 2-й выпуск, 1998.

[3] Р. Дж. Мэйллукс, 'Руководство Антенны Фазированной решетки', Дом Artech, 2-й выпуск, 2005

[4] В. Стуцмен, Г. Тиле, 'Теория антенны и проект', John Wiley & Sons Inc., 3-й выпуск, 2013.

Смотрите также