phased.CustomAntennaElement позволяет моделировать пользовательский антенный элемент. При использовании phased.CustomAntennaElement, необходимо указать следующие аспекты антенны:
Вектор рабочей частоты для антенного элемента
Частотная характеристика элемента на частотах в операционном частотном векторе
Азимутальные углы и углы возвышения, в которых вычисляется пользовательский отклик
Магнитудная картина излучения. Эта диаграмма показывает пространственную характеристику антенны на заданных углах азимута и отметки.
Совет
Можно импортировать диаграмму направленности, в которой используются координаты u/v или углы, а не азимут/угол возвышения. Использовать такой шаблон с phased.CustomAntennaElementСначала преобразуйте образец в форму азимут/отметка. Использовать uv2azelpat или phitheta2azelpat для выполнения преобразования. Пример см. в разделе Анализ антенной решетки с помощью пользовательской диаграммы направленности.
Для пользовательского антенного элемента характеристика антенны зависит от частотной характеристики и диаграммы направленности. В частности, частотные и пространственные отклики интерполируются отдельно с использованием интерполяции ближайшего соседа и затем умножаются вместе для получения полного отклика. Во избежание ошибок интерполяции диапазон углов азимута должен включать +/- 180 градусов, а диапазон углов места - +/- 90 градусов.
Создайте пользовательский объект антенного элемента. Картина излучения имеет косинусную зависимость от угла места, но не зависит от азимутального угла.
az = -180:90:180; el = -90:45:90; elresp = cosd(el); magpattern = mag2db(repmat(elresp',1,numel(az))); phasepattern = zeros(size(magpattern)); antenna = phased.CustomAntennaElement('AzimuthAngles',az,... 'ElevationAngles',el,'MagnitudePattern',magpattern, ... 'PhasePattern',phasepattern);
Отображение диаграммы направленности.
disp(antenna.MagnitudePattern)
-Inf -Inf -Inf -Inf -Inf
-3.0103 -3.0103 -3.0103 -3.0103 -3.0103
0 0 0 0 0
-3.0103 -3.0103 -3.0103 -3.0103 -3.0103
-Inf -Inf -Inf -Inf -Inf
Вычислите характеристику антенны на парах азимут-отметка (-30,0) и (-45,0) на частоте 500 МГц.
ang = [-30 0; -45 0]; resp = antenna(500.0e6,ang); disp(resp)
0.7071
1.0000
Следующий код иллюстрирует, как интерполяция ближайшего соседа используется для поиска отклика напряжения антенны в двух направлениях. Суммарный отклик является произведением углового отклика и частотного отклика.
g = interp2(deg2rad(antenna.AzimuthAngles),... deg2rad(antenna.ElevationAngles),... db2mag(antenna.MagnitudePattern),... deg2rad(ang(1,:))', deg2rad(ang(2,:))','nearest',0); h = interp1(antenna.FrequencyVector,... db2mag(antenna.FrequencyResponse),500e6,'nearest',0); antresp = h.*g;
Сравнить значение antresp на отклик антенны.
disp(mag2db(antresp))
-3.0103
0