exponenta event banner

поэтапный. CustomAntennaElement

Пользовательский антенный элемент

Описание

phased.CustomAntennaElement Система object™ моделирует антенный элемент с пользовательской пространственной диаграммой отклика. Шаблон отклика может быть определен для поляризованных или неполяризованных полей.

Чтобы создать пользовательский антенный элемент:

  1. Создать phased.CustomAntennaElement и задайте его свойства.

  2. Вызовите объект с аргументами, как если бы это была функция.

Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.

Создание

Описание

antenna = phased.CustomAntennaElement создает объект System, antenna, со значениями свойств по умолчанию. Шаблон отклика по умолчанию является пространственно изотропным.

пример

antenna = phased.CustomAntennaElement(Name,Value) создает пользовательский антенный объект, antenna, с каждым указанным свойством Name, имеющим указанное значение. Можно указать дополнительные аргументы пары имя-значение в любом порядке как (Name1,Value1,...,NameN,ValueN). Например, выходной отклик объекта зависит от того, установлена или нет поляризация.

  • Чтобы создать неполяризованный шаблон ответа, установите SpecifyPolarizationPattern свойство для false (по умолчанию). Затем используйте MagnitudePattern и PhasePattern для определения шаблона отклика.

  • Чтобы создать поляризованный шаблон отклика, установите SpecifyPolarizationPattern свойство для true. Затем используйте любой или все из HorizontalMagnitudePattern, HorizontalPhasePattern, VerticalMagnitudePattern, и VerticalPhasePattern для определения шаблона отклика.

Свойства

развернуть все

Если не указано иное, свойства не настраиваются, что означает невозможность изменения их значений после вызова объекта. Объекты блокируются при их вызове, и release функция разблокирует их.

Если свойство настраивается, его значение можно изменить в любое время.

Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.

Частоты, на которых должны быть возвращены частотная характеристика и образцы антенны, определили как вектор ряда 1 на L. Элементы вектора должны быть в возрастающем порядке. Антенный элемент не имеет отклика вне частотного диапазона, заданного минимальным и максимальным элементами частотного вектора. Единицы измерения в Гц.

Пример: [200:50:300]*1e6

Типы данных: double

Частотные характеристики на частотах, определенных в FrequencyVector свойство, указанное как вектор строки 1-by-L. L равно длине вектора, указанного в FrequencyVector собственность. Единицы измерения находятся в дБ.

Пример: [0 6 0]

Типы данных: double

Система координат пользовательской диаграммы направленности антенны, указанная 'az-el' или 'phi-theta'. При указании 'az-el', используйте AzimuthAngles и ElevationAngles для задания системы координат массива. При указании 'phi-theta', используйте PhiAngles и ThetaAngles для задания системы координат массива.

Типы данных: char

Задайте азимутальные углы как вектор длины-P. Эти углы представляют собой азимутальные углы, в которых задана пользовательская картина излучения. Значение P должно быть больше 2. Азимутальные углы должны лежать между -180 ° и 180 ° и находиться в строго возрастающем порядке. Единицы измерения в градусах.

Пример: [30 40 50]

Зависимости

Чтобы включить это свойство, установите значение PatternCoordinateSystem свойство для 'az-el'.

Типы данных: double

Задайте углы отметки в виде вектора длины-Q. Эти углы представляют собой углы возвышения, в которых задана пользовательская картина излучения. Q должно быть больше 2. Углы возвышения должны лежать между -90 ° и 90 ° и находиться в строго возрастающем порядке. Единицы измерения в градусах.

Пример: [-30 0 +30]

Зависимости

Чтобы включить это свойство, установите значение PatternCoordinateSystem свойство для 'az-el'.

Типы данных: double

Углы Phi в системе координат phi-theta, заданные как действительный вектор P-длины. Эти углы представляют собой phi-углы, в которых указан пользовательский шаблон. Значение P должно быть больше 2.

Пример: [90:180]

Зависимости

Чтобы включить это свойство, установите значение PatternCoordinateSystem свойство для 'phi-theta'.

Типы данных: double

Углы тета в системе координат фи-тета, задаваемые как действительный вектор Q-длины. Эти углы представляют собой углы тета, в которых указан пользовательский шаблон. Q должно быть больше 2.

Пример: [40:80]

Зависимости

Чтобы включить это свойство, установите значение PatternCoordinateSystem свойство для 'phi-theta'.

Типы данных: double

Ответ поляризованного массива, указанный как false или true.

  • Когда SpecifyPolarizationPattern свойство имеет значение falseантенный элемент передает или принимает неполяризованное излучение. В этом случае используйте MagnitudePattern свойство для установки диаграммы отклика антенны.

  • Когда SpecifyPolarizationPattern свойство имеет значение trueантенный элемент передает или принимает поляризованное излучение. В этом случае используйте HorizontalMagnitudePattern и HorizontalPhasePattern свойства для установки характеристики горизонтальной поляризации и VerticalMagnitudePattern и VerticalPhasePattern свойства для задания шаблона отклика вертикальной поляризации.

Типы данных: logical

Величина комбинированного поляризационного антенного излучения, диаграмма, заданная как матрица Q-за-P или матрица Q-за-P-за-L. Это свойство используется только в том случае, если SpecifyPolarizationPattern свойство имеет значение false. Единицы величины находятся в дБ.

  • Если значением этого свойства является матрица Q-by-P, то ко всем частотам, указанным в FrequencyVector собственность.

  • Если значением является массив Q-by-P-by-L, каждая страница массива Q-by-P задает шаблон для соответствующей частоты, указанной в FrequencyVector собственность.

Если шаблон содержит NaN при любом направлении азимута и отметки преобразуется в -Inf, указывая нулевой отклик в этом направлении. Пользовательский антенный объект использует интерполяцию для оценки отклика антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательский шаблон ответа должен содержать азимутальные углы в диапазоне [–180,180] степени. Установите диапазон углов возвышения равным [–90,90] степени.

Типы данных: double

Фаза комбинированной поляризационной диаграммы направленности антенны, заданной как матрица Q-за-P или матрица Q-за-P-за-L. Это свойство используется только в том случае, если SpecifyPolarizationPattern свойство имеет значение false. Единицы измерения в градусах.

  • Если значением этого свойства является матрица Q-by-P, то ко всем частотам, указанным в FrequencyVector собственность.

  • Если значением является массив Q-by-P-by-L, каждая страница массива Q-by-P задает шаблон для соответствующей частоты, указанной в FrequencyVector собственность.

Пользовательский антенный объект использует интерполяцию для оценки отклика антенны в заданном направлении. Во избежание ошибок интерполяции пользовательский шаблон отклика должен содержать азимутальные углы в диапазоне [-180 °, 180 °]. Установите диапазон углов возвышения [-90 °, 90 °].

Типы данных: double

Величина горизонтальной поляризационной составляющей диаграммы направленности антенны, заданной как вещественно-значная матрица Q-за-P или вещественно-значимая матрица Q-за-P-за-L. Единицы величины находятся в дБ.

  • Если значением этого свойства является матрица Q-by-P, то ко всем частотам, указанным в FrequencyVector собственность.

  • Если значением является массив Q-by-P-by-L, каждая страница массива Q-by-P задает шаблон для соответствующей частоты, указанной в FrequencyVector собственность.

Если массив величин содержит NaN при любом направлении азимута и отметки преобразуется в -Inf, указывая нулевой отклик в этом направлении. Пользовательский антенный объект использует интерполяцию для оценки отклика антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательский шаблон ответа должен содержать азимутальные углы в диапазоне [–180,180]° и углы возвышения в диапазоне [–90,90]°.

Зависимости

Чтобы включить это свойство, установите значение SpecifyPolarizationPattern свойство для true.

Типы данных: double

Фаза горизонтальной поляризационной составляющей диаграммы направленности антенны, заданная как вещественно-значная матрица Q-за-P или вещественно-значимая матрица Q-за-P-за-L. Это свойство используется только в том случае, если SpecifyPolarizationPattern свойство имеет значение true. Единицы измерения фазы выражены в градусах.

  • Если значением этого свойства является матрица Q-by-P, то ко всем частотам, указанным в FrequencyVector собственность.

  • Если значением является массив Q-by-P-by-L, каждая страница массива Q-by-P задает шаблон для соответствующей частоты, указанной в FrequencyVector собственность.

Пользовательский антенный объект использует интерполяцию для оценки отклика антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательский шаблон ответа должен содержать азимутальные углы в диапазоне [–180,180]° и углы возвышения в диапазоне [–90,90]°.

Зависимости

Чтобы включить это свойство, установите значение SpecifyPolarizationPattern свойство для true.

Типы данных: double

Величина вертикальной поляризационной составляющей диаграммы направленности антенны, заданной как матрица Q-за-P или матрица Q-за-P-за-L. Это свойство используется только в том случае, если SpecifyPolarizationPattern свойство имеет значение true. Единицы величины находятся в дБ.

  • Если значением этого свойства является матрица Q-by-P, то ко всем частотам, указанным в FrequencyVector собственность.

  • Если значением является массив Q-by-P-by-L, каждая страница массива Q-by-P задает шаблон для соответствующей частоты, указанной в FrequencyVector собственность.

Если шаблон содержит NaN при любом направлении азимута и отметки преобразуется в -Inf, указывая нулевой отклик в этом направлении. Пользовательский антенный объект использует интерполяцию для оценки отклика антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательский шаблон ответа должен содержать азимутальные углы в диапазоне[–180,180]° и углы возвышения в диапазоне [–90,90]°.

Зависимости

Чтобы включить это свойство, установите значение SpecifyPolarizationPattern свойство для true.

Типы данных: double

Фаза вертикальной поляризационной составляющей диаграммы направленности антенны, определяемой как матрица Q-за-P или матрица Q-за-P-за-L. Это свойство используется только в том случае, если SpecifyPolarizationPattern свойство имеет значение true. Единицы измерения фазы выражены в градусах.

  • Если значением этого свойства является матрица Q-by-P, то ко всем частотам, указанным в FrequencyVector собственность.

  • Если значением является массив Q-by-P-by-L, каждая страница массива Q-by-P задает шаблон для соответствующей частоты, указанной в FrequencyVector собственность.

Пользовательский антенный объект использует интерполяцию для оценки отклика антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательский шаблон ответа должен содержать азимутальные углы в диапазоне [–180,180]° и углы возвышения в диапазоне [–90,90]°.

Зависимости

Чтобы включить это свойство, установите значение SpecifyPolarizationPattern свойство для true.

Типы данных: double

Установить для этого свойства значение true для выравнивания антенного элемента по нормали к решетке. Диаграмма направленности антенны поворачивается так, что ось X системы координат элемента указывает вдоль нормали решетки. Это свойство используется только в том случае, если антенный элемент принадлежит решетке. Используйте свойство совместно с ArrayNormal имущества phased.URA и phased.UCA Системные объекты. Установить для этого свойства значение false для использования массива элементов без поворота. Значение по умолчанию -.

Типы данных: logical

Использование

Описание

пример

RESP = antenna(FREQ,ANG) возвращает отклик напряжения антенны RESP на рабочих частотах, указанных в FREQ и направления, указанные в ANG. Форма RESP зависит от того, поддерживает ли антенный элемент поляризацию, как определено SpecifyPolarizationPattern собственность. Если SpecifyPolarizationPattern имеет значение false, RESP является матрицей M-by-L, содержащей отклик антенны при углах M, указанных в ANG и на L частотах, указанных в FREQ. Если SpecifyPolarizationPattern имеет значение true, RESP является MATLAB ®struct содержащие два поля, RESP.H и RESP.V, представляющий отклик антенны в горизонтальной и вертикальной поляризации соответственно. Каждое поле является матрицей M-by-L, содержащей антенный отклик на М углах, указанных в ANG и на L частотах, указанных в FREQ.

Примечание

Объект выполняет инициализацию при первом выполнении объекта. Эта инициализация блокирует неперестраиваемые свойства и входные спецификации, такие как размеры, сложность и тип данных входных данных. При изменении неперестраиваемого свойства или входной спецификации системный объект выдает ошибку. Чтобы изменить неперестраиваемые свойства или входные данные, необходимо сначала вызвать release метод разблокирования объекта.

Входные аргументы

развернуть все

Рабочая частота элемента антенны, определенного как неотрицательный скаляр или неотрицательный, вектор ряда 1 на L, с реальным знаком. Единицы измерения частоты - в Гц.

FREQ должны находиться в диапазоне значений, указанных FrequencyRange или FrequencyVector свойство элемента. В противном случае элемент не выдает ответ, и ответ возвращается как –Inf. Большинство элементов объектов используют FrequencyRange собственность, за исключением phased.CustomAntennaElement, которая использует FrequencyVector собственность.

Пример: [1e8 2e6]

Типы данных: double

Азимут и углы возвышения направлений ответа, определенных как вектор ряда 1 на М, с реальным знаком или матрица 2 на М, с реальным знаком, где M - количество угловых направлений. Угловые единицы в градусах. Угол азимута должен лежать в диапазоне от -180 ° до 180 ° включительно. Угол места должен лежать в диапазоне от -90 ° до 90 ° включительно.

  • Если ANG является вектором 1-by-M, каждый элемент задает азимутальный угол направления. В этом случае соответствующий угол возвышения принимается равным нулю.

  • Если ANG является 2-by-M матрицей, каждый столбец матрицы задает направление в форме [азимут; отметка].

Азимутальный угол - это угол между осью x и проекцией вектора направления на плоскость xy. Этот угол является положительным при измерении от оси X к оси Y. Угол места - это угол между вектором направления и плоскостью xy. Этот угол является положительным при измерении по направлению к оси Z. См. определение углов азимута и отметки.

Пример: [110 125; 15 10]

Типы данных: double

Выходные аргументы

развернуть все

Отклик напряжения антенного элемента, возвращаемый в виде комплексной матрицы M-by-L. В этой матрице M представляет количество углов, указанных в ANG и L представляет количество частот, указанных в FREQ.

Типы данных: double

Функции объекта

Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:

release(obj)

развернуть все

beamwidthВычислить и отобразить ширину диаграммы направленности образца сенсорного элемента
directivityНаправленность антенны или элемента преобразователя
isPolarizationCapableПоляризационная способность антенного элемента
patternГрафик направленности антенны или элемента преобразователя и диаграммы направленности
patternAzimuthГрафик направленности антенны или элемента преобразователя и зависимости диаграммы направленности от азимута
patternElevationГрафик направленности антенны или элемента преобразователя и зависимости диаграммы направленности от отметки
stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

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

Определяемый пользователем образец имеет полное направление в направлении азимута и косинусный образец в направлении фасада. Предположим, что антенна работает на частоте 1 ГГц. Получить отклик при азимуте 20 ° и отметке 30 °.

fc = 1e9;
azang = -180:180;
elang = -90:90;
magpattern = mag2db(repmat(cosd(elang)',1,numel(azang)));
phasepattern = zeros(size(magpattern));
antenna = phased.CustomAntennaElement('AzimuthAngles',azang, ...
    'ElevationAngles',elang,'MagnitudePattern',magpattern, ...
    'PhasePattern',phasepattern);
resp = antenna(fc,[20;30])
resp = 0.8660

Постройте график выреза уровня энергетического отклика.

pattern(antenna,fc,20,-90:90,'CoordinateSystem','polar','Type','powerdb')

Постройте график разреза направления по отметке.

pattern(antenna,fc,20,-90:90,'CoordinateSystem','polar','Type','directivity')

Определите пользовательскую антенну в пространстве u-v. Затем вычислите и постройте график ответа.

Определите диаграмму направленности (в дБ) антенны по координатам u и v в пределах единичной окружности.

u = -1:0.01:1;
v = -1:0.01:1;
[u_grid,v_grid] = meshgrid(u,v);
pat_uv = sqrt(1 - u_grid.^2 - v_grid.^2);
pat_uv(hypot(u_grid,v_grid) >= 1) = 0;

Создайте антенну с этой диаграммой направленности. Преобразование координат u-v в координаты азимута и отметки.

[pat_azel,az,el] = uv2azelpat(pat_uv,u,v);
array = phased.CustomAntennaElement('AzimuthAngles',az,'ElevationAngles',el, ...
    'MagnitudePattern',mag2db(pat_azel),'PhasePattern',45*ones(size(pat_azel)));

Вычислите отклик в направлении u = 0,5, v = 0. Предположим, что антенна работает на частоте 1 ГГц. Выход пошагового метода в линейных единицах.

dir_uv = [0.5;0];
dir_azel = uv2azel(dir_uv);
fc = 1e9;
resp = array(fc,dir_azel)
resp = 0.6124 + 0.6124i

Постройте график ответа 3D в координатах u-v.

pattern(array,fc,[-1:.01:1],[-1:.01:1],'CoordinateSystem','uv','Type','powerdb')

Figure contains an axes. The axes with title 3D Response Pattern in u-v space contains an object of type surface.

Отображение отклика антенны в виде линейного графика в координатах u-v.

pattern(array,fc,[-1:.01:1],0,'CoordinateSystem','uv','Type','powerdb')

Figure contains an axes. The axes with title Response in U Space contains an object of type line. This object represents 1 GHz.

Моделирование короткой дипольной антенны, ориентированной вдоль оси X локальной антенной системы координат. Для этого типа антенны горизонтальная и вертикальная составляющие электрического поля задаются EH = jωμIL4πrsin (az) и EV = -jωμIL4πrsin (el) cos (az).

Задайте нормированную диаграмму направленности короткой дипольной антенны в терминах азимута, az и отметки, el, координат. Вертикальная и горизонтальная диаграммы направленности нормализуются до максимума единицы.

az = [-180:180];
el = [-90:90];
[az_grid,el_grid] = meshgrid(az,el);
horz_pat_azel = ...
    mag2db(abs(sind(az_grid)));
vert_pat_azel = ...
    mag2db(abs(sind(el_grid).*cosd(az_grid)));

Установите антенну. Укажите SpecifyPolarizationPattern свойство получения поляризованного излучения. Кроме того, используйте HorizontalMagnitudePattern и VerticalMagnitudePattern для задания значений величины массива. HorizontalPhasePattern и VerticalPhasePattern свойства принимают нулевые значения по умолчанию.

antenna = phased.CustomAntennaElement(...
    'AzimuthAngles',az,'ElevationAngles',el,...
    'SpecifyPolarizationPattern',true,...
    'HorizontalMagnitudePattern',horz_pat_azel,...
    'VerticalMagnitudePattern',vert_pat_azel);

Предположим, что антенна работает на частоте 1 ГГц.

fc = 1e9;

Отображение шаблона вертикальной реакции.

pattern(antenna,fc,[-180:180],[-90:90],...
    'CoordinateSystem','polar',...
    'Type','powerdb',...
    'Polarization','V')

Отображение шаблона горизонтального отклика.

pattern(antenna,fc,[-180:180],[-90:90],...
    'CoordinateSystem','polar',...
    'Type','powerdb',...
    'Polarization','H')

Комбинированный поляризационный отклик, показанный ниже, иллюстрирует нулевое значение оси X диполя.

pattern(antenna,fc,[-180:180],[-90:90],...
    'CoordinateSystem','polar',...
    'Type','powerdb',...
    'Polarization','combined')

Определите пользовательскую антенну в пространстве u-v. Показать, как на шаблон отклика массива влияет выбор MatchArrayNormal имущества phased.CustomAntennaElement.

Определите диаграмму отклика (в дБ) антенны как функцию координат u и v в пределах единичной окружности. Антенна работает на частоте 1 ГГц.

fc = 1e9;
c = physconst('LightSpeed');
u = -1:0.01:1;
v = -1:0.01:1;
[u_grid,v_grid] = meshgrid(u,v);
pat_uv = sqrt(1 - u_grid.^2 - v_grid.^2);
pat_uv(hypot(u_grid,v_grid) >= 1) = 0;

Создайте пользовательскую антенну с таким шаблоном. Преобразование координат u-v в координаты азимута и отметки. Набор MatchArrayNormal кому false.

[pat_azel,az,el] = uv2azelpat(pat_uv,u,v);
antenna = phased.CustomAntennaElement('AzimuthAngles',az,'ElevationAngles',el, ...
    'MagnitudePattern',mag2db(pat_azel),'PhasePattern',45*ones(size(pat_azel)), ...
    "MatchArrayNormal",false);

Создайте URA 3 на 3 с этим элементом и отобразите диаграмму направленности антенны в 3-D полярных координатах. Расстояние между элементами составляет половину длины волны. Нормаль массива указывает вдоль оси Y.

lam = c/fc;
array = phased.URA('Element',antenna,'Size',[3 3],'ElementSpacing', ...
    [lam/2 lam/2],'ArrayNormal','y');
pattern(array,fc,-180:180,-90:90,'PropagationSpeed',c, ...
    'CoordinateSystem','polar','Type','powerdb','Normalize',true)

Массив показывает взаимодействие между массивом элементов, направленным вдоль оси X, и массивом, направленным вдоль оси Y.

Создайте другую пользовательскую антенну с той же диаграммой направленности. Набор MatchArrayNormal к true. Затем создайте другой массив с этим элементом.

antenna2 = phased.CustomAntennaElement('AzimuthAngles',az,'ElevationAngles',el, ...
    'MagnitudePattern',mag2db(pat_azel),'PhasePattern',45*ones(size(pat_azel)), ...
    "MatchArrayNormal",true);
array2 = phased.URA('Element',antenna2,'Size',[3 3],'ElementSpacing', ...
    [lam/2 lam/2],'ArrayNormal','y');
pattern(array2,fc,-180:180,-90:90,'PropagationSpeed',c, ...
    'CoordinateSystem','polar','Type','powerdb','Normalize',true)

Этот массив показывает выровненные элементы и массивы, направленные вдоль оси Y.

Создайте определяемую пользователем антенну со всенаправленным откликом по азимуту и косинусной диаграммой в отметке. Антенна работает на частоте 1 ГГц. Постройте график отклика. Затем найдите ответ антенны при 30 °.

antenna = phased.CustomAntennaElement;
antenna.AzimuthAngles = -180:180;
antenna.ElevationAngles = -90:90;
antenna.MagnitudePattern = mag2db(repmat(cosd(antenna.ElevationAngles)',...
    1,numel(antenna.AzimuthAngles)));

Найти отклик на отметке 30 ° для рабочей частоты 1 ГГц.

fc = 1.0e9;
resp = antenna(fc,[0;30])
resp = 0.8660

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

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

Вычислите направленность пользовательского антенного элемента.

Определите диаграмму направленности антенны для пользовательского элемента антенны в пространстве азимут-отметка. В азимутальном направлении узор имеет повсеместное направление и косинусный узор в направлении фасада. Предположим, что антенна работает на частоте 1 ГГц. Получить отклик при нулевом азимуте и отметке от -30 до 30 градусов.

fc = 1e9;
azang = [-180:180];
elang = [-90:90];
magpattern = mag2db(repmat(cosd(elang)',1,numel(azang)));
phasepattern = zeros(size(magpattern));
antenna = phased.CustomAntennaElement('AzimuthAngles',azang, ...
    'ElevationAngles',elang,'MagnitudePattern',magpattern, ...
    'PhasePattern',phasepattern);

Вычислите направления как функцию отметки для угла азимута 0 °.

angs = [0,0,0,0,0,0,0;-30,-20,-10,0,10,20,30];
freq = 1e9;
d = directivity(antenna,freq,angs)
d = 7×1

    0.5115
    1.2206
    1.6279
    1.7609
    1.6279
    1.2206
    0.5115

Направление максимально на 0∘ отметке.

Показать, что CustomAntennaElement антенный элемент поддерживает поляризацию, когда SpecifyPolarizationPattern свойство имеет значение true.

antenna = phased.CustomAntennaElement('SpecifyPolarizationPattern',true);
isPolarizationCapable(antenna)
ans = logical
   1

Возвращенное значение 1 показывает, что этот антенный элемент поддерживает поляризацию.

Создайте пользовательскую антенну с косинусным узором. Покажите ответ при заглядывании. Затем постройте график поля антенны и диаграммы направленности.

Создайте антенну и вычислите отклик. Определяемый пользователем образец имеет полное направление в направлении азимута и косинусный образец в направлении фасада. Предположим, что антенна работает на частоте 1 ГГц.

fc = 1e9;
antenna = phased.CustomAntennaElement;
antenna.AzimuthAngles = -180:180;
antenna.ElevationAngles = -90:90;
antenna.MagnitudePattern = mag2db(repmat(cosd(antenna.ElevationAngles)', ...
    1,numel(antenna.AzimuthAngles)));
resp = antenna(fc,[0;0])
resp = 1

Постройте график выреза по отметке с откликом на величину в виде линейного графика.

pattern(antenna,fc,0,[-90:90],'CoordinateSystem','rectangular', ...
    'Type','efield')

Figure contains an axes. The axes with title Elevation Cut (azimuth angle = 0.0°) contains an object of type line. This object represents 1 GHz.

Постройте график разреза направления по отметке в виде линейного графика, показывающего, что максимальная направленность составляет приблизительно 2 дБ.

pattern(antenna,fc,0,[-90:90],'CoordinateSystem','rectangular', ...
    'Type','directivity')

Figure contains an axes. The axes with title Elevation Cut (azimuth angle = 0.0°) contains an object of type line. This object represents 1 GHz.

Создайте пользовательский объект «Система антенн». Определяемый пользователем образец имеет полное направление в направлении азимута и косинусный образец в направлении фасада. Предположим, что антенна работает на частоте 1 ГГц. Сначала покажите ответ в поле зрения. Отображение образца 3-D для 60-градусного диапазона углов азимута и отметки, центрированных по азимуту 0 градусов и отметке 0 градусов с приращением 0,1 градуса.

fc = 1e9;
azang = -180:180;
elang = -90:90;
magpattern = mag2db(repmat(cosd(elang)',1,numel(azang)));
antenna = phased.CustomAntennaElement('AzimuthAngles',azang, ...
    'ElevationAngles',elang,'MagnitudePattern',magpattern);
resp = antenna(fc,[0;0])
resp = 1

Постройте график мощности для диапазона углов.

pattern(antenna,fc,[-30:0.1:30],[-30:0.1:30],'CoordinateSystem','polar', ...
    'Type','power')

Создайте антенну с пользовательским ответом. Пользовательский образец имеет синусоидальный образец в направлении азимута и косинусный образец в направлении фасада. Предположим, что антенна работает на частоте 500 МГц. Постройте график по азимуту диаграммы направленности пользовательского антенного элемента на отметке 0 и 30 градусов. Предположим, что рабочая частота составляет 500 МГц.

Создайте антенный элемент.

fc = 500e6;
antenna = phased.CustomAntennaElement;
antenna.AzimuthAngles = -180:180;
antenna.ElevationAngles = -90:90;
antenna.MagnitudePattern = mag2db(abs(cosd(antenna.ElevationAngles)'*sind(antenna.AzimuthAngles)));
patternAzimuth(antenna,fc,[0 30],'Type','powerdb')

Постройте график уменьшенного диапазона углов азимута с помощью Azimuth параметр.

patternAzimuth(antenna,fc,[0 30],'Azimuth',[-45:45],'Type','powerdb')

Создайте антенну с пользовательским ответом. Пользовательский образец имеет синусоидальный образец в направлении азимута и косинусный образец в направлении фасада. Предположим, что антенна работает на частоте 500 МГц. Постройте график увеличения мощности пользовательского антенного элемента на отметке от 0 до 30 градусов. Предположим, что рабочая частота составляет 500 МГц.

Создайте антенный элемент.

fc = 500e6;
antenna = phased.CustomAntennaElement;
antenna.AzimuthAngles = -180:180;
antenna.ElevationAngles = -90:90;
antenna.MagnitudePattern = mag2db(abs(cosd(antenna.ElevationAngles)'*sind(antenna.AzimuthAngles)));
patternElevation(antenna,fc,[0 30],'Type','powerdb')

Постройте график уменьшенного диапазона углов возвышения с помощью Azimuth параметр.

patternElevation(antenna,fc,[0 30],'Elevation',[-45:45],'Type','powerdb')

Алгоритмы

Полная характеристика пользовательского антенного элемента представляет собой комбинацию его частотной характеристики и пространственной характеристики. phased.CustomAntennaElement вычисляет оба ответа, используя интерполяцию ближайшего соседа, а затем умножает ответы для формирования полного ответа.

Расширенные возможности

.
Представлен в R2011a