Пользовательский антенный элемент
The phased.CustomAntennaElement
Системный object™ моделирует антенный элемент с пользовательской диаграммой направленности пространственного отклика. Диаграмма направленности может быть задана для поляризованных или неполяризованных полей.
Чтобы создать пользовательский антенный элемент:
Создайте phased.CustomAntennaElement
Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
создает Системный объект, antenna
= phased.CustomAntennaElementantenna
, со значениями свойств по умолчанию. Значение по умолчанию диаграммы направленности пространственно изотропно.
создает пользовательский объект антенны, antenna
= phased.CustomAntennaElement(Name
,Value
)antenna
, с каждым заданным именем свойства, установленным на заданное значение. Можно задать дополнительные аргументы пары "имя-значение" в любом порядке как (Name1
, Value1
..., NameN
, ValueN
). Для примера выхода реакция объекта зависит от того, установлена ли поляризация или нет.
Чтобы создать неполяризованную диаграмму направленности, установите SpecifyPolarizationPattern
свойство к false
(по умолчанию). Затем используйте MagnitudePattern
и PhasePattern
свойства для определения диаграммы направленности.
Чтобы создать поляризованную диаграмму направленности, установите SpecifyPolarizationPattern
свойство к true
. Затем используйте любой или все HorizontalMagnitudePattern
, HorizontalPhasePattern
, VerticalMagnitudePattern
, и VerticalPhasePattern
свойства для определения диаграммы направленности.
Если не указано иное, свойства являются нетронутыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируются, когда вы вызываете их, и release
функция разблокирует их.
Если свойство настраивается, можно изменить его значение в любой момент.
Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Использование Системных объектов.
FrequencyVector
- Вектор частоты отклика и шаблона[0 1e20]
(по умолчанию) | вектор-строку L 1 байтЧастоты, на которых должны быть возвращены частотная характеристика и шаблоны антенны, заданные как вектор-строка L 1 байт. Элементы вектора должны быть в порядке возрастания. Антенный элемент не имеет отклика вне частотной области значений, заданного минимальным и максимальным элементами вектора частоты. Модули указаны в Гц.
Пример: [200:50:300]*1e6
Типы данных: double
FrequencyResponse
- Частотные характеристики антенного элемента[0 0]
(по умолчанию) | вектор 1-by L с реальным значениемЧастотные характеристики на частотах, заданных в FrequencyVector
свойство, заданное как вектор-строка L 1 байт. L равняется длине вектора, заданной в FrequencyVector
свойство. Модули указаны в дБ.
Пример: [0 6 0]
Типы данных: double
PatternCoordinateSystem
- Система координат пользовательского шаблона антенны'az-el'
(по умолчанию) | 'phi-theta'
Система координат пользовательского шаблона антенны, заданная 'az-el'
или 'phi-theta'
. Когда вы задаете 'az-el'
, используйте AzimuthAngles
и ElevationAngles
свойства для задания системы координат шаблона. Когда вы задаете 'phi-theta'
, используйте PhiAngles
и ThetaAngles
свойства для задания системы координат шаблона.
Типы данных: char
AzimuthAngles
- Азимутальные углы[-180:180]
(по умолчанию) | вектор P длины с реальным значениемЗадайте углы азимута как вектор с P длиной. Эти углы являются азимутальными углами, где задана пользовательская диаграмма направленности излучения. P должно быть больше 2. Углы азимута должны лежать между -180 ° и 180 ° и находиться в строго увеличивающемся порядке. Модули указаны в степенях.
Пример: [30 40 50]
Чтобы включить это свойство, установите PatternCoordinateSystem
свойство к 'az-el'
.
Типы данных: double
ElevationAngles
- Углы возвышения[-90:90]
(по умолчанию) | вектор Q длины с реальным значениемЗадайте углы возвышения как вектор с Q длиной. Эти углы являются углами возвышения, где задана пользовательская диаграмма направленности излучения. Q должно быть больше 2. Углы высоты должны лежать между -90 ° и 90 ° и быть в строго увеличивающемся порядке. Модули указаны в степенях.
Пример: [-30 0 +30]
Чтобы включить это свойство, установите PatternCoordinateSystem
свойство к 'az-el'
.
Типы данных: double
PhiAngles
- углы Phi в системе phi-theta координат0:360
(по умолчанию) | вектор P -length с реальным значениемУглы Phi в системе координат phi-theta, заданные как действительный вектор P -length. Эти углы являются углами phi, где задан пользовательский шаблон. P должно быть больше 2.
Пример: [90:180]
Чтобы включить это свойство, установите PatternCoordinateSystem
свойство к 'phi-theta'
.
Типы данных: double
ThetaAngles
- theta в системе phi-theta координат0:180
(по умолчанию) | вектор Q -length с реальным значениемTheta в системе координат phi-theta, заданные как действительный вектор Q -length. Эти углы являются углами theta, где задан пользовательский шаблон. Q должно быть больше 2.
Пример: [40:80]
Чтобы включить это свойство, установите PatternCoordinateSystem
свойство к 'phi-theta'
.
Типы данных: double
SpecifyPolarizationPattern
- Поляризованная характеристика массиваfalse
(по умолчанию) | true
Поляризованная характеристика массива, заданная как false
или true
.
Когда SpecifyPolarizationPattern
для свойства задано значение false
, антенный элемент передает или принимает неполяризованное излучение. В этом случае используйте MagnitudePattern
свойство для установки диаграммы направленности антенны.
Когда SpecifyPolarizationPattern
для свойства задано значение true
, антенный элемент передает или принимает поляризованное излучение. В этом случае используйте HorizontalMagnitudePattern
и HorizontalPhasePattern
свойства для установки горизонтального диаграммы направленности поляризации и VerticalMagnitudePattern
и VerticalPhasePattern
свойства для установки вертикального диаграммы направленности поляризации.
Типы данных: logical
MagnitudePattern
- Величина комбинированной диаграммы направленности антенного излученияzeros(181,361)
(по умолчанию) | вещественный Q -by- P матрица | вещественный Q -by- P -by- LВеличина комбинированного поляризационного антенного излучения, шаблон задан как Q матрица P или Q массив -by P -by L. Это свойство используется только когда SpecifyPolarizationPattern
для свойства задано значение false
. Модули величины указаны в дБ.
Если значение этого свойства является Q -by - P матрицей, тот же шаблон применяется ко всем частотам, заданным в FrequencyVector
свойство.
Если значение является массивом Q -by- P -by- L, каждая страница Q -by- P массива задает шаблон для соответствующей частоты, заданной в FrequencyVector
свойство.
Если шаблон содержит NaN
в любом азимуте и повышении направлении он преобразуется в -Inf
, что указывает на нулевую характеристику в этом направлении. Пользовательский объект антенны использует интерполяцию, чтобы оценить ответ антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательская диаграмма направленности должен содержать углы азимута в области значений [–180,180]
степени. Установите область значений углов возвышения равным [–90,90]
степени.
Типы данных: double
PhasePattern
- Фаза комбинированной диаграммы направленности антенного излученияzeros(181,361)
(по умолчанию) | вещественный Q -by- P матрица | вещественный Q -by- P -by- LФаза комбинированной диаграммы направленности поляризации, заданная как Q матрица P или Q массив -by P -by L. Это свойство используется только когда SpecifyPolarizationPattern
для свойства задано значение false
. Модули указаны в степенях.
Если значение этого свойства является Q -by - P матрицей, тот же шаблон применяется ко всем частотам, заданным в FrequencyVector
свойство.
Если значение является массивом Q -by- P -by- L, каждая страница Q -by- P массива задает шаблон для соответствующей частоты, заданной в FrequencyVector
свойство.
Пользовательский объект антенны использует интерполяцию, чтобы оценить ответ антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательская диаграмма направленности должен содержать углы азимута в [–180°,180°] области значений. Установите область значений углов возвышения равным [–90°,90°].
Типы данных: double
HorizontalMagnitudePattern
- Величина горизонтальной поляризации диаграммы направленности антенного излученияzeros(181,361)
(по умолчанию) | вещественный Q -by- P матрица | вещественный Q -by- P -by- LВеличина горизонтального компонента поляризации диаграммы направленности антенн, определенной как с реальным знаком 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
HorizontalPhasePattern
- Фаза горизонтальной поляризации диаграммы направленности антенного излученияzeros(181,361)
(по умолчанию) | вещественный Q -by- P матрица | вещественный Q -by- P -by- LФаза горизонтальной поляризации диаграммы направленности антенного излучения, заданная как действительная матрица Q -by- P или Q массива -by- P-by- L. Это свойство используется только когда SpecifyPolarizationPattern
для свойства задано значение true
. Модули измерения фазы указаны в степенях.
Если значение этого свойства является Q -by - P матрицей, тот же шаблон применяется ко всем частотам, заданным в FrequencyVector
свойство.
Если значение является массивом Q -by- P -by- L, каждая страница Q -by- P массива задает шаблон для соответствующей частоты, заданной в FrequencyVector
свойство.
Пользовательский объект антенны использует интерполяцию, чтобы оценить ответ антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательская диаграмма направленности должен содержать углы азимута в области значений [–180,180]°
и углы возвышения в области значений [–90,90]°
.
Чтобы включить это свойство, установите SpecifyPolarizationPattern
свойство к true
.
Типы данных: double
VerticalMagnitudePattern
- Величина вертикальной поляризации диаграммы направленности антенного излученияzeros(181,361)
(по умолчанию) | вещественный Q -by- P матрица | вещественный Q -by- P -by- LВеличина вертикальной поляризации диаграммы направленности антенного излучения задается в виде Q матрицы P или Q массива -by P -by 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
VerticalPhasePattern
- Фаза вертикальной поляризации диаграммы направленности антенного излученияzeros(181,361)
(по умолчанию) | вещественный Q -by- P матрица | вещественный Q -by- P -by- LФаза вертикальной поляризации диаграммы направленности антенного излучения, заданная как Q матрица P или Q массив -by P -by L. Это свойство используется только когда SpecifyPolarizationPattern
для свойства задано значение true
. Модули измерения фазы указаны в степенях.
Если значение этого свойства является Q -by - P матрицей, тот же шаблон применяется ко всем частотам, заданным в FrequencyVector
свойство.
Если значение является массивом Q -by- P -by- L, каждая страница Q -by- P массива задает шаблон для соответствующей частоты, заданной в FrequencyVector
свойство.
Пользовательский объект антенны использует интерполяцию, чтобы оценить ответ антенны в заданном направлении. Чтобы избежать ошибок интерполяции, пользовательская диаграмма направленности должен содержать углы азимута в области значений [–180,180]°
и углы возвышения в области значений [–90,90]°
.
Чтобы включить это свойство, установите SpecifyPolarizationPattern
свойство к true
.
Типы данных: double
MatchArrayNormal
- Соответствовать элементу normal to array normaltrue
(по умолчанию) | false
Установите это свойство на 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 матрицей, содержащей ответ антенны при M углах, заданных в ANG
и на L частотах, указанных в FREQ
.
Примечание
Объект выполняет инициализацию при первом выполнении объекта. Эта инициализация блокирует нетронутые свойства и входные спецификации, такие как размерности, сложность и тип данных входных данных. Если вы изменяете свойство nontunable или спецификацию входа, системный объект выдает ошибку. Чтобы изменить нетронутые свойства или входы, необходимо сначала вызвать release
метод для разблокировки объекта.
FREQ
- Рабочая частота антенного элементаРабочая частота антенного элемента, заданная как неотрицательный скалярный или неотрицательный, действительный, 1-байт- L вектор-строка. Частотные модули указаны в Гц.
FREQ
должно находиться в области значений значений, заданных FrequencyRange
или FrequencyVector
свойство элемента. В противном случае элемент не выдает отклика, и ответ возвращается следующим –Inf
. Большинство элементов объектов используют FrequencyRange
свойство кроме phased.CustomAntennaElement
, который использует FrequencyVector
свойство.
Пример: [1e8 2e6]
Типы данных: double
ANG
- Азимут и углы возвышения направлений откликаАзимут и углы возвышения направлений отклика, заданные как действительный, 1-байтовый M вектор-строка или как действительная, 2-байтовая M матрица, где M - количество угловых направлений. Угловые модули находятся в степенях. Угол азимута должен лежать в области значений от -180 ° до 180 ° включительно. Угол возвышения должен лежать в области значений от -90 ° до 90 ° включительно.
Если ANG
является вектором с M 1 байт, каждый элемент задает азимутальный угол направления. В этом случае соответствующий угол возвышения принимается равным нулю.
Если ANG
является 2-бай- M матрицей, каждый столбец матрицы задает направление в форме [азимут; повышение].
Угол азимута является углом между осью x и проекцией вектора направления на плоскость xy. Этот угол положителен при измерении от оси x к оси y. Угол возвышения является углом между вектором направления и xy-плоскостью. Этот угол положителен при измерении к оси z. См. определение азимута и углов возвышения.
Пример: [110 125; 15 10]
Типы данных: double
RESP
- Реакция напряжения антенныРеакция напряжения антенного элемента, возвращаемая как комплексно- M L матрица. В этой матрице M представляет количество углов, заданных в ANG
а L представляет количество частот, заданное в FREQ
.
Типы данных: double
Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)
beamwidth | Вычислите и отобразите ширину луча шаблона элемента датчика |
directivity | Направление антенны или элемента преобразователя |
isPolarizationCapable | Поляризационная способность антенного элемента |
pattern | Постройте диаграмму направленности и шаблонов антенны или элемента преобразователя |
patternAzimuth | Постройте график направленности антенны или элемента преобразователя и шаблона от азимута |
patternElevation | Постройте график направленности антенны или элемента преобразователя и шаблона от повышения |
Создайте пользовательскую антенну с косинусоидным шаблоном. Затем постройте график перепада по повышению характеристики степени антенны.
Пользовательский шаблон является всенаправленным в азимутальном направлении и имеет косинусоидальный шаблон в повышение направлении. Предположим, что антенна работает на 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')
Отобразите ответ антенны как линейный график в координатах u-v.
pattern(array,fc,[-1:.01:1],0,'CoordinateSystem','uv','Type','powerdb')
Моделируйте короткую дипольную антенну, ориентированную вдоль - ось локальной системы координат антенны. Для этого типа антенны горизонтальные и вертикальные компоненты электрического поля заданы как и .
Задайте нормированную диаграмму направленности излучения короткой дипольной антенны с азимутом, , и повышения, , координаты. Вертикальный и горизонтальный диаграммы направленности излучения до максимума.
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
свойства для задания значений величины шаблона. The 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')
Комбинированная поляризационная характеристика, показанная ниже, иллюстрирует -axis null для диполя.
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
Направленность является максимальной повышение.
Покажите, что 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')
Постройте график вертикального разреза направленности как линейный график, показывающий, что максимальная направленность составляет приблизительно 2 дБ.
pattern(antenna,fc,0,[-90:90],'CoordinateSystem','rectangular', ... 'Type','directivity')
Создайте пользовательский Системный объект антенны. Пользовательский шаблон является всенаправленным в азимутальном направлении и имеет косинусоидальный шаблон в повышение направлении. Предположим, что антенна работает на частоте 1 ГГц. Сначала покажите ответ в boresight. Отобразите шаблон 3-D для диапазона 60 градусов азимута и углов подъёма с шагом 0,1 градуса по центру от 0 градусов азимута и 0 градусов.
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
вычисляет оба отклика с помощью интерполяции по ближайшему соседу, а затем умножает отклики, чтобы сформировать общий ответ.
Указания и ограничения по применению:
pattern
, patternAzimuth
, patternElevation
, и plotResponse
методы не поддерживаются.
Смотрите Системные объекты в Генерации кода MATLAB (MATLAB Coder).
phased.ConformalArray
| phased.CosineAntennaElement
| phased.CrossedDipoleAntennaElement
| phased.IsotropicAntennaElement
| phased.ShortDipoleAntennaElement
| phased.ULA
| phased.URA
| phitheta2azel
| phitheta2azelpat
| uv2azel
| uv2azelpat
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.