exponenta event banner

поэтапный. Радиатор

Узкополосный излучатель сигналов

Описание

phased.Radiator Система object™ реализует узкополосный излучатель сигнала. Излучатель преобразует сигналы в излучаемые волновые поля, передаваемые от матриц и отдельных сенсорных элементов, таких как антенны, микрофонные элементы и гидроакустические преобразователи. Выход излучателя представляет поля на опорном расстоянии в один метр от фазового центра элемента или матрицы. Затем можно распространить сигналы на дальнее поле, используя, например, phased.FreeSpace, phased.LOSChannel, или twoRayChannel(Панель инструментов радара) Системные объекты.

Объект излучает области одним из двух способов, которыми управляет собственность CombineRadiatedSignals.

  • Если для параметра «Сигналы радиации» установлено значение true, излучаемое поле в заданных направлениях является когерентной суммой отложенных излучаемых полей от всех элементов (или подрешеток, когда подрешетки поддерживаются). Объект использует фазовое приближение временных задержек для узкополосных сигналов.

  • Если для параметра «Сигналы радиации» установлено значение falseкаждый элемент может излучать в независимом направлении.

Этот объект можно использовать для

  • моделируют электромагнитные излучаемые сигналы как поляризованные или неполяризованные поля в зависимости от того, поддерживает ли элемент или матрица поляризацию и значение свойства поляризации. С помощью поляризации можно передать сигнал в виде поляризованного электромагнитного поля или передать два независимых сигнала с помощью двойных поляризаций.

  • моделирование акустических излучаемых полей с использованием неполяризованных элементов микрофона и матрицы гидроакустических преобразователей и путем установки поляризации в 'None'. Также необходимо задать значение параметра PropagationSpeed, соответствующее среде.

  • излучают поля из субчипов, созданных phased.ReplicatedSubarray и phased.PartitionedArray объекты. Можно управлять всеми субчипами в одном направлении с помощью аргумента угла поворота, STEERANGили направьте каждый подчисток в другом направлении, используя аргумент Subarray element weights, WS. Излучатель распределяет мощности сигнала поровну между элементами каждой подрешетки. Вы не можете установить для свойства ExhapingRadiaSignals значение false для субчипов.

Для излучения сигналов:

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

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

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

Создание

Описание

radiator = phased.Radiator создает узкополосный объект излучателя сигнала, radiator, со значениями свойств по умолчанию.

radiator = phased.Radiator(Name,Value) создает узкополосный излучатель сигнала с каждым свойством Name задать для указанного Value. Можно указать дополнительные аргументы пары имя-значение в любом порядке как (Name1,Value1,...,NameN,ValueN). Заключите каждое имя свойства в отдельные кавычки.

Пример: radiator = phased.Radiator('Sensor',phased.URA,'OperatingFrequency',300e6) устанавливает массив датчиков в однородный прямоугольный массив (URA) со значениями свойств URA по умолчанию. Формирователь луча имеет рабочую частоту 300 МГц.

Свойства

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

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

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

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

Элемент датчика или массив датчиков, указанный как объект System, принадлежащий панели инструментов системы с фазированным массивом. Матрица датчиков может содержать подрешетки.

Пример: phased.URA

Скорость распространения сигнала, заданная как положительный скаляр. Единицы измерения в метрах в секунду. Скорость распространения по умолчанию - это значение, возвращаемое physconst('LightSpeed'). Посмотрите physconst для получения дополнительной информации.

Пример: 3e8

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

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

Пример: 1e9

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

Комбинировать излучаемые сигналы, указанные как true или false. Это свойство дает возможность когерентного суммирования излучаемых сигналов от всех элементов матрицы для создания плоских волн. Установить для этого свойства значение false получение индивидуального излучаемого сигнала для каждого излучающего элемента.

  • Если для параметра «Сигналы радиации» установлено значение true, излучаемое поле в заданных направлениях является когерентной суммой отложенных излучаемых полей от всех элементов (или подрешеток, когда подрешетки поддерживаются). Объект использует фазовое приближение временных задержек для узкополосных сигналов.

  • Если для параметра «Сигналы радиации» установлено значение falseкаждый элемент может излучать в независимом направлении. Если свойство Sensor является массивом, содержащим подмагистрали, нельзя установить для свойства ExhibedRadiaSignals значение 'false.

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

Измерение коэффициента усиления датчика, указанное как 'dB' или 'dBi'.

  • При установке для этого свойства значения 'dB'мощность входного сигнала масштабируется шаблоном мощности датчика (в дБ) в соответствующем направлении и затем объединяется.

  • При установке для этого свойства значения 'dBi'мощность входного сигнала масштабируется шаблоном направленности (в дБи) в соответствующем направлении и затем объединяется. Эта опция полезна, если требуется сравнить результаты со значениями, вычисленными по уравнению радара, использующему dBi для задания коэффициента усиления антенны. Расчет с использованием 'dBi' опция является дорогостоящей, поскольку требует интеграции по всем направлениям для вычисления полной излучаемой мощности датчика.

Зависимости

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

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

Конфигурация поляризации, указанная как 'None', 'Combined', или 'Dual'. При установке для этого свойства значения 'None', поле вывода считается скалярным полем. При установке для этого свойства значения 'Combined', излучаемые поля поляризованы и интерпретируются как единый сигнал в присущей датчику поляризации. При установке для этого свойства значения 'Dual'компоненты поляризации H и V излучаемого поля являются независимыми сигналами.

Пример: 'Dual'

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

Включить ввод весов, указанный как false или true. Когда true, используйте входной аргумент объекта W для указания весов. Веса применяются к отдельным элементам массива (или на уровне подмассива, когда поддерживаются подмагистрали).

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

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

Описание

пример

Y = radiator(X,ANG) излучает поля, Y, полученные из сигналов, X в направлениях, указанных ANG.

пример

Y = radiator(X,ANG,LAXES) также указывает LAXES как направления осей локальной системы координат. Чтобы использовать этот синтаксис, задайте для свойства Поляризация значение 'Combined'.

пример

Y = radiator(XH,XV,ANG,LAXES) определяет сигнал порта горизонтальной поляризации, XHи сигнал порта вертикальной поляризации, XV. Чтобы использовать этот синтаксис, задайте для свойства Поляризация значение 'Dual'.

Y = radiator(___,W) также указывает W в качестве весов элементов или субчипов. Чтобы использовать этот синтаксис, задайте для свойства WearingInputPort значение true.

Y = radiator(___,STEERANG) также указывает STEERANG в качестве угла поворота подрешетки. Чтобы использовать этот синтаксис, задайте для свойства Sensor массив, поддерживающий подмассоры, и установите значение SubarraySteering свойства этого массива для 'Phase' или 'Time'.

Y = radiator(___,WS) также указывает WS в виде весов, применяемых к каждому элементу внутри каждого подрешетки. Чтобы использовать этот синтаксис, задайте для свойства Sensor массив, поддерживающий подмассоры, и установите значение SubarraySteering свойство массива to 'Custom'.

Можно комбинировать необязательные входные аргументы, если заданы их разрешающие свойства, например: Y = radiator(X,ANG,LAXES,W,STEERANG) объединяет несколько входных аргументов. Дополнительные входные данные должны быть перечислены в том же порядке, что и разрешающие свойства.

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

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

Излучаемый сигнал, определяемый как вектор M-by-1 с комплексными значениями или матрица M-by-N. M - длина сигнала, а N - количество элементов матрицы (или подрешеток при поддержке подрешеток).

Размеры X

ИзмерениеСигнал
M-by-1 вектор

Один и тот же сигнал излучается из всех элементов матрицы (или из всех подрешеток, когда поддерживаются подрешетки).

M-by-N matrixКаждый столбец соответствует сигналу, излучаемому соответствующим элементом матрицы (или соответствующими подрешётками, когда поддерживаются подрешетки).

Размер первого размера входной матрицы может изменяться для моделирования изменения длины сигнала. Изменение размера может происходить, например, в случае формы импульса с переменной частотой повторения импульса.

Зависимости

Чтобы включить этот аргумент, установите для свойства Polarization значение 'None' или 'Combined'.

Типы данных: double
Поддержка комплексного номера: Да

Направления излучения сигналов, определяемые как вещественно-значная матрица 2-by-L. Каждый столбец определяет направление излучения в форме [AzimuthAngle;ElevationAngle]. Азимутальный угол должен лежать между -180 ° и 180 ° включительно. Угол возвышения должен лежать между -90 ° и 90 ° включительно. Когда собственность CombineRadiatedSignalsfalse, число углов должно равняться числу элементов массива, N. Единицы измерения в градусах.

Пример: [30,20;45,0]

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

Локальная система координат, заданная как действительная ортогональная матрица 3 на 3. Столбцы матрицы определяют ортонормированные оси x, y и z локальной системы координат относительно глобальной системы координат.

Пример: rotx(30)

Зависимости

Чтобы включить этот аргумент, установите Polarization свойство для 'Combined' или 'Dual'.

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

Сигнал порта H-поляризации для излучения, определяемый как вектор M-by-1 с комплексными значениями или матрица M-by-N с комплексными значениями. M - длина сигнала, а N - количество элементов матрицы (или подрешеток при поддержке подрешеток).

Размеры XH

ИзмерениеСигнал
M-by-1 вектор

Один и тот же сигнал излучается из всех элементов матрицы (или из всех подрешеток, когда поддерживаются подрешетки).

M-by-N matrixКаждый столбец соответствует сигналу, излучаемому соответствующим элементом матрицы (или соответствующими подрешётками, когда поддерживаются подрешетки).

Размеры и размеры XH и XV должно быть то же самое.

Размер первого размера входной матрицы может изменяться для моделирования изменения длины сигнала. Изменение размера может происходить, например, в случае формы импульса с переменной частотой повторения импульса.

Зависимости

Чтобы включить этот аргумент, установите для свойства Polarization значение 'Dual'.

Типы данных: double
Поддержка комплексного номера: Да

Излучаемый сигнал порта V-поляризации, определяемый как комплексный вектор M-by-1 или комплексная матрица M-by-N. M - длина сигнала, а N - количество элементов матрицы (или подрешеток при поддержке подрешеток).

Размеры XV

ИзмерениеСигнал
M-by-1 вектор

Один и тот же сигнал излучается из всех элементов матрицы (или из всех подрешеток, когда поддерживаются подрешетки).

M-by-N matrixКаждый столбец соответствует сигналу, излучаемому соответствующим элементом матрицы (или соответствующими подрешётками, когда поддерживаются подрешетки).

Размеры и размеры XH и XV должно быть то же самое.

Размер первого размера входной матрицы может изменяться для моделирования изменения длины сигнала. Изменение размера может происходить, например, в случае формы импульса с переменной частотой повторения импульса.

Зависимости

Чтобы включить этот аргумент, установите для свойства Polarization значение 'Dual'.

Типы данных: double
Поддержка комплексного номера: Да

Вес элемента или подмассива, заданный как вектор N-by-1 столбца с комплексным значением, где N - количество элементов массива (или подмассив, если массив поддерживает подмагистрали).

Зависимости

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

Типы данных: double
Поддержка комплексного номера: Да

Веса элементов субчипов, заданные как матрица NSE-by-N с комплексными значениями или 1-by-N массив ячеек, где N - количество субчипов. Эти веса применяются к отдельным элементам в пределах подрешетки.

Веса элементов субчипов

Массив датчиковВеса субчипов
phased.ReplicatedSubarray

Все субчипы имеют одинаковые размеры и размеры. Затем веса субчипов образуют матрицу NSE-by-N. NSE - количество элементов в каждом подрешете, а N - количество подрешеток. Каждый столбец WS определяет веса для соответствующего подмассива.

phased.PartitionedArray

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

  • матрица NSE-на-N, где NSE теперь является числом элементов в наибольшем подчищении. Первые Q элементов в каждом столбце являются весами элементов для подрешетки, где Q - количество элементов в подрешетке.

  • массив ячеек 1-by-N. Каждая ячейка содержит вектор столбцов весов для соответствующего подрешетки. Векторы столбцов имеют длины, равные количеству элементов в соответствующем подрешетке.

Зависимости

Чтобы включить этот аргумент, установите Sensor для массива, который содержит подмагистрали и задает SubarraySteering свойство массива to 'Custom'.

Типы данных: double
Поддержка комплексного номера: Да

Угол поворота подматрицы, заданный как вектор столбца длиной 2. Вектор имеет вид [azimuthAngle;elevationAngle]. Азимутальный угол должен быть от -180 ° до 180 ° включительно. Угол возвышения должен быть от -90 ° до 90 ° включительно. Единицы измерения в градусах.

Пример: [20;15]

Зависимости

Чтобы включить этот аргумент, установите Sensor для массива, который поддерживает подмагистрали и задает SubarraySteering свойства этого массива для 'Phase' или 'Time'

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

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

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

Излучаемые сигналы, определяемые как комплексная матрица M-by-L или матрица 1-by-L ячеек, где L - число углов излучения, ANG. M - длина входного сигнала, X.

  • Если для свойства «Поляризация» установлено значение 'None', выходной аргумент Y является матрицей M-by-L.

  • Если для свойства «Поляризация» установлено значение 'Combined' или 'Dual', Y - 1-by-L клеточный массив структур. Каждая ячейка соответствует отдельному излучающему сигналу. Каждый struct содержит три вектора столбцов, содержащих компоненты X, Y и Z поляризованных полей, определенных относительно глобальной системы координат.

Типы данных: double
Поддержка комплексного номера: Да

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

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

release(obj)

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

stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

Распространять и объединять излучение от пяти изотропных антенных элементов. Создайте однородный линейный массив из пяти изотропных антенн.

Сначала создайте массив ULA.

array = phased.ULA('NumElements',5);

Постройте объект-излучатель.

radiator = phased.Radiator('Sensor',array,...
    'OperatingFrequency',300e6,'CombineRadiatedSignals',true);

Создайте простой излучаемый сигнал.

x = [1;-1;1;-1;1;-1];

Укажите азимут и отметку направления излучения.

radiatingAngle = [30;10];

Излучайте сигнал.

y = radiator(x,radiatingAngle)
y = 6×1 complex

  -0.9523 - 0.0000i
   0.9523 + 0.0000i
  -0.9523 - 0.0000i
   0.9523 + 0.0000i
  -0.9523 - 0.0000i
   0.9523 + 0.0000i

Распространение и объединение излучения от пяти короткодипольных антенных элементов.

Установите однородный линейный массив из пяти короткодипольных антенн с включенной поляризацией. Затем создайте объект-излучатель.

antenna = phased.ShortDipoleAntennaElement;
array = phased.ULA('Element',antenna,'NumElements',5);
radiator = phased.Radiator('Sensor',array,'OperatingFrequency',300e6,...
    'CombineRadiatedSignals',true,'Polarization','Combined');

Поверните локальную систему координат от глобальных координат на 10 ° вокруг оси X. Продемонстрируйте, что выходные данные представляют поляризованное поле.

Укажите простой излучаемый сигнал и направление излучения по азимуту и отметке. Излучайте поля в двух направлениях.

x = [1;-1;1;-1;1;-1];
radiatingAngles = [30 30; 0 20];
y = radiator(x,radiatingAngles,rotx(10))
y=1×2 struct array with fields:
    X
    Y
    Z

Показать y-компонент поляризованного поля, излучаемого в первом направлении.

disp(y(1).Y)
  -0.2131 + 0.0000i
   0.2131 - 0.0000i
  -0.2131 + 0.0000i
   0.2131 - 0.0000i
  -0.2131 + 0.0000i
   0.2131 - 0.0000i

Излучайте сигнал с одной изотропной антенны.

antenna = phased.IsotropicAntennaElement;
radiator = phased.Radiator('Sensor',antenna,'OperatingFrequency',300e6);
sig = [1;1];
radiatingAngles = [30 10]';
y = radiator(sig,radiatingAngles);

Излучайте сигнал дальнего поля в двух направлениях из 5-элементной матрицы.

array = phased.ULA('NumElements',5);
radiator = phased.Radiator('Sensor',array,'OperatingFrequency',300e6);
sig = [1;1];
radiatingAngles = [30 10; 20 0]';
y = radiator(sig,radiatingAngles);

Излучайте сигналы из 3-элементной антенной решетки. Каждая антенна излучает отдельный сигнал в отдельном направлении.

array = phased.ULA('NumElements',3);
radiator = phased.Radiator('Sensor',array,'OperatingFrequency',1e9,...
    'CombineRadiatedSignals',false);
sig = [1 2 3; 2 8 -1];
radiatingAngles = [10 0; 20 5; 45 2]';
y = radiator(sig,radiatingAngles)
y = 2×3

     1     2     3
     2     8    -1

Используйте систему двойной поляризации для получения целевой информации рассеяния. Имитировать передатчик и приемник, где вертикальные и горизонтальные компоненты передаются последовательно с использованием входных портов передатчика. Сигналы от двух поляризационных выходных портов приемника затем используются для определения целевой матрицы рассеяния.

scmat = [0 1i; 1i 2];
radiator = phased.Radiator('Sensor', ...
    phased.CustomAntennaElement('SpecifyPolarizationPattern',true), ...
    'Polarization','Dual');
target = phased.RadarTarget('EnablePolarization',true,'ScatteringMatrix', ...
    scmat);
collector = phased.Collector('Sensor', ...
    phased.CustomAntennaElement('SpecifyPolarizationPattern',true), ...
    'Polarization','Dual');
xh = 1;
xv = 1;

Передайте горизонтальную составляющую и отобразите отраженные компоненты поляризации Shh и Svh.

x = radiator(xh,0,[0;0],eye(3));
xrefl = target(x,[0;0],eye(3));
[Shh,Svh] = collector(xrefl,[0;0],eye(3))
Shh = 0
Svh = 0.0000 + 3.5474i

Передача вертикальной составляющей и отображение отраженных компонент поляризации Shv и Svv.

x = radiator(0,xv,[0;0],eye(3));
xrefl = target(x,[0;0],eye(3));
[Shv,Svv] = collector(xrefl,[0;0],eye(3))
Shv = 0.0000 + 3.5474i
Svv = 7.0947

Ссылки

[1] Деревья фургонов, H. Оптимальная обработка массива. Нью-Йорк: Wiley-Interscience, 2002.

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

.

См. также

| | | | (Панель инструментов радара)

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