The 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