В этом примере показано, как создать и анализировать антенные решетки в Antenna Toolbox™, с акцентом на концепции, такие как сканирование луча, уровень бокового лепестка, взаимная связь, шаблоны элемента и пики лепестков. Исследования находятся на линейной матрице с 9 элементами полуволновых диполей
Выберите частоту проекта, чтобы быть 1,8 ГГц, который, оказывается, одна из несущих частот для сотовых систем 3G/4G. Задайте размер массивов с помощью числа элементов, N и межэлементного интервала, дуплекса.
freq = 1.8e9;
c = physconst('lightspeed');
lambda = c/freq;
N = 9;
dx= 0.49*lambda;
Отдельный элемент массива является диполем. Начальная длина этого диполя выбрана, чтобы быть. Обрежьте его длину, чтобы достигнуть резонанса (X~0).
dipole_L = lambda/2; dipole_W = lambda/200; mydipole = dipole; mydipole.Length = dipole_L; mydipole.Width = dipole_W; mydipole.TiltAxis = 'Z'; mydipole.Tilt = 90; fmin = freq - .05*freq; fmax = freq + .05*freq; minX = 0.0001; % Minimum value of reactance to achieve trim = 0.0005; % The amount to shorten the length at each iteration resonant_dipole = dipole_tuner(mydipole,freq,fmin,fmax,minX,trim); Z_resonant_dipole = impedance(resonant_dipole,freq)
Z_resonant_dipole = 71.8205 - 0.7236i
helement = figure;
show(resonant_dipole)
axis tight
Присвойте резонирующий диполь как отдельного излучателя линейной матрицы. В то время как изолированный диполь был настроен для резонанса на частоте проекта, это будет расстроено в среде массивов. Измените число элементов и интервал и наблюдайте геометрию массивов. Элементы расположены на ось X и пронумерованы слева направо.
dipole_array = linearArray;
dipole_array.Element = resonant_dipole;
dipole_array.NumElements = N;
dipole_array.ElementSpacing = dx;
hArray = figure;
show(dipole_array)
axis tight
Визуализируйте шаблон для линейной матрицы на 3D пробеле на частоте проекта.
pattern3Dfig = figure; pattern(dipole_array,freq)
3D шаблон массива показывает максимум луча под азимутальным углом 90 градусов. Постройте 2D диаграмму направленности в азимутальной плоскости (x-y плоскость), который соответствует нулевому углу возвышения.
patternazfig1 = figure; az_angle = 1:0.25:180; pattern(dipole_array,freq,az_angle,0,'CoordinateSystem','rectangular') axis([0 180 -25 15])
Массив имеет пиковую направленность 12.83 dBi, и первые боковые лепестки по обе стороны от пика составляют приблизительно 13 дБ вниз. Это вызвано тем, что массив имеет универсальное амплитудное заострение со всеми элементами, питаемыми на уровне 1 В. Уровнем бокового лепестка можно управлять при помощи различных амплитудных заострений на элементах массива, таких как Чебышев и Тейлор.
Выбор набора сдвигов фазы позволяет нам сканировать луч к определенному углу. Эта настройка линейной матрицы позволяет сканировать в азимутальной плоскости (x-y плоскость), который соответствует нулевому углу возвышения. Отсканируйте луч 30 градусов от разворота (азимутальный угол 120 градусов).
scanangle = [120 0]; ps = phaseshift(freq,dx,scanangle,N); dipole_array.PhaseShift = ps; patternazfig2 = figure; pattern(dipole_array,freq,az_angle,0,'CoordinateSystem','rectangular') axis([0 180 -25 15])
Пик основного луча теперь на расстоянии в 30 градусов от начального пика (азимут = 90 градусов). Отметьте понижение направленности приблизительно 0,9 дБ. Для бесконечных массивов это отбрасывание увеличивается с увеличением угла сканирования согласно теореме косинусов.
В небольших массивах шаблон отдельного элемента может значительно варьироваться. Для того, чтобы установить этот факт, постройте шаблон центральных элементов и этих двух граничных элементов. Чтобы получить эти шаблоны, взволнуйте один только каждый элемент и отключите остальных в ссылочный импеданс. Элементы пронумерованы слева направо, в направлении оси X.
element_number = [1 ceil(N/2)-1 ceil(N/2) ceil(N/2)+1 N]; D_element = nan(numel(element_number),numel(az_angle)); legend_string = cell(1,numel(element_number)); for i = 1:numel(element_number) D_element(i,:) = pattern(dipole_array,freq,az_angle,0, ... 'CoordinateSystem','rectangular', ... 'ElementNumber',element_number(i), ... 'Termination',real(Z_resonant_dipole)); legend_string{i} = strcat('N = ',num2str(element_number(i))); end patternazfig3 = figure; plot(az_angle,D_element,'LineWidth',1.5) xlabel('Azimuth (deg)') ylabel('Directivity (dBi)') title('Element Patterns') grid on legend(legend_string,'Location','best')
График шаблонов элемента показывает, что, кроме центрального элемента, все другие - зеркальные отображения о центре графика, i.e. шаблон элемента 1-го элемента является зеркальным отражением об азимуте = 90 градусов шаблона элемента 9-го элемента и т.д.
Взаимная связь является явлением, посредством чего токи, разработанные на каждом элементе в массиве, не зависят только от своего собственного возбуждения, но имеют вклады от других элементов также. Чтобы изучить этот эффект, мы упростим массив до случая с 2 элементами, похожего на [1].
dipole_array.NumElements = 2; dipole_array.AmplitudeTaper = 1; dipole_array.PhaseShift = 0;
Чтобы наблюдать эффект взаимной связи, варьируйтесь интервал между элементами массива и постройте изменение, взаимный импеданс между парой диполей в массиве [1]. Поскольку элементы параллельны друг другу, связь сильна.
spacing = (lambda/2:0.05:2).*lambda; Z12 = nan(1,numel(spacing)); for i = 1:numel(spacing) dipole_array.ElementSpacing = spacing(i); s = sparameters(dipole_array,freq,real(Z_resonant_dipole)); S = s.Parameters; Z12(i) = 2*S(1,2)*70/((1 - S(1,1))*(1- S(2,2)) - S(1,2)*S(2,1)); end mutualZ12fig = figure; plot(spacing./lambda,real(Z12),spacing./lambda,imag(Z12),'LineWidth',2) xlabel('Spacing, d/\lambda') ylabel('Impedance (\Omega)') grid on title('Mutual Impedance Variation With Spacing') legend('Resistance','Reactance')
Пики лепестков являются максимумами основного луча, предсказанного теоремой умножения шаблона. Когда интервал массивов меньше чем или равен, только основной лепесток существует на видимом пробеле без других пиков лепестков. Пики лепестков появляются, когда интервал массивов больше. Для большого интервала пик (пики) лепестков мог появиться на видимом пробеле даже в нулевом угле сканирования. Привлеките пики лепестков по делу о линейной матрице 9 диполей. Отсканируйте луч 0 градусов от разворота (азимутальный угол 90 градусов).
dipole_array.NumElements = 9; dipole_array.ElementSpacing = lambda/2; D_half_lambda = pattern(dipole_array,freq,az_angle,0,'CoordinateSystem','rectangular'); dipole_array.ElementSpacing = 0.75*lambda; D_three_quarter_lambda = pattern(dipole_array,freq,az_angle,0,'CoordinateSystem','rectangular'); dipole_array.ElementSpacing = 1.5*lambda; D_lambda = pattern(dipole_array,freq,az_angle,0,'CoordinateSystem','rectangular'); patterngrating1 = figure; plot(az_angle,D_half_lambda,az_angle,D_three_quarter_lambda,az_angle,D_lambda,'LineWidth',1.5); grid on xlabel('Azimuth (deg)') ylabel('Directivity (dBi)') title('Array Pattern (Elevation = 0 deg)') legend('d=\lambda/2','d=0.75\lambda','d=1.5\lambda','Location','best')
По сравнению с расположенным с интервалами массивом расположенный с интервалами массив показывает 2 дополнительных одинаково сильных peaks на видимом пробеле - пики лепестков. Расположенный с интервалами массив все еще имеет один уникальный пик луча при нулевом скане от разворота (азимутальный угол 90 градусов). Отсканируйте этот массив от разворота, чтобы наблюдать внешний вид пиков лепестков.
dipole_array.ElementSpacing = 0.75*lambda; azscan = 45:10:135; scanangle = [azscan ;zeros(1,numel(azscan))]; D_scan = nan(numel(azscan),numel(az_angle)); legend_string1 = cell(1,numel(azscan)); for i = 1:numel(azscan) ps = phaseshift(freq,dx,scanangle(:,i),N); dipole_array.PhaseShift = ps; D_scan(i,:) = pattern(dipole_array,freq,az_angle,0,'CoordinateSystem','rectangular'); legend_string1{i} = strcat('scan = ',num2str(azscan(i)),' deg'); end patterngrating2 = figure; plot(az_angle,D_scan,'LineWidth',1) xlabel('Azimuth (deg)') ylabel('Directivity (dBi)') title('Scan Pattern for 0.75\lambda Spacing Array ((Elevation = 0 deg)') grid on legend(legend_string1,'Location','best')
Массив интервала с универсальным возбуждением и нулем phaseshift не имеет пиков лепестков на видимом пробеле. Пик основного луча происходит в развороте (азимут = 90 градусов). Однако для угла сканирования 65 градусов и ниже, и для 115 градусов и выше пик лепестков вводит видимый пробел. Чтобы избежать пиков лепестков, выберите интервал элемента или меньше. С меньшим интервалом взаимная связь более сильна.
Чтобы изучить эффект шаблона элемента на полной диаграмме направленности антенной решетки, постройте нормированный центральный шаблон элемента по сравнению с нормированной направленностью линейной матрицы 9 диполей в развороте.
dipole_array.ElementSpacing = 0.49*lambda; dipole_array.PhaseShift = 0; Dmax = pattern(dipole_array,freq,90,0); D_scan = nan(numel(azscan),numel(az_angle)); % Pre-allocate legend_string2 = cell(1,numel(azscan)+1); legend_string2{1} = 'Center element'; for i = 1:numel(azscan) ps = phaseshift(freq,dx,scanangle(:,i),N); dipole_array.PhaseShift = ps; D_scan(i,:) = pattern(dipole_array,freq,az_angle,0,'CoordinateSystem','rectangular'); D_scan(i,:) = D_scan(i,:) - Dmax; legend_string2{i+1} = strcat('scan = ',num2str(azscan(i))); end patternArrayVsElement = figure; plot(az_angle,D_element(3,:) - max(D_element(3,:)),'LineWidth',3) hold on plot(az_angle,D_scan,'LineWidth',1) axis([min(az_angle) max(az_angle) -20 0]) xlabel('Azimuth (deg)') ylabel('Directivity (dBi)') title('Scan Pattern for 0.49\lambda Spacing Array') grid on legend(legend_string2,'Location','southeast') hold off
Обратите внимание, что полная форма нормированной диаграммы направленности антенной решетки приблизительно следует за нормированным центральным шаблоном элемента близко к развороту. Диаграмма направленности антенной решетки в целом является продуктом шаблона элемента и фактора массивов (AF).
[1] В. Л. Стуцмен, Г. А. Тиле, Теория Антенны и Проект, p. 307, Вайли, 3-й Выпуск, 2013.