phased.ReplicatedSubarray

Поэтапный массив сформирован реплицированными подмассивами

Описание

ReplicatedSubarray объект представляет поэтапный массив, который содержит копии подмассива, созданного путем тиражирования одного заданного массива.

Получить ответ подмассивов:

  1. Задайте и настройте свой поэтапный массив, содержащий реплицированные подмассивы. Смотрите Конструкцию.

  2. Вызовите step вычислить ответ подмассивов согласно свойствам phased.ReplicatedSubarray. Поведение step характерно для каждого объекта в тулбоксе.

Можно также использовать ReplicatedSubarray возразите как значение SensorArray или Sensor свойство объектов, которые выполняют beamforming, регулирование и другие операции.

Примечание

Запуск в R2016b, вместо того, чтобы использовать step метод, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполните эквивалентные операции.

Конструкция

H = phased.ReplicatedSubarray создает реплицированный Системный объект подмассива, H. Этот объект представляет массив, который содержит копии подмассива.

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

Свойства

Subarray

Подмассив, чтобы реплицировать

Задайте подмассив, который вы используете, чтобы сформировать массив. Подмассивом должен быть phased.ULA, phased.URA, или phased.ConformalArray объект.

Значение по умолчанию: phased.ULA со значениями свойств по умолчанию

Layout

Размещение подмассивов

Задайте размещение реплицированных подмассивов как 'Rectangular' или 'Custom'.

Значение по умолчанию: 'Rectangular'

GridSize

Размер прямоугольной сетки

Задайте размер прямоугольной сетки как одно положительное целое число или 1 2 положительный целочисленный вектор-строка. Это свойство применяется только, когда вы устанавливаете Layout свойство к 'Rectangular'.

Если GridSize скаляр, массив имеет то же количество подмассивов в каждой строке и столбце.

Если GridSize 1 2 вектор, вектор имеет форму [NumberOfRows, NumberOfColumns]. Первая запись является количеством подмассивов вдоль каждого столбца, в то время как вторая запись является количеством подмассивов в каждой строке. Строка приезжает локальный y - ось, и столбец приезжает локальный z - ось. Этот рисунок показывает, как 3 2 подмассив URA реплицирован с помощью GridSize значение [1,2].

Значение по умолчанию: [1 2]

GridSpacing

Интервал прямоугольной сетки

Задайте прямоугольный интервал сетки подмассивов как положительный скаляр с действительным знаком, 1 2 вектор-строка или 'Auto'. Это свойство применяется только, когда вы устанавливаете Layout свойство к 'Rectangular'. Модули разрядки сетки выражаются в метрах.

Если GridSpacing скаляр, интервал вдоль строки и интервал вдоль столбца являются тем же самым.

Если GridSpacing длина 2 вектора-строки, это имеет форму [SpacingBetweenRows, SpacingBetweenColumn]. Первая запись задает интервал между строками вдоль столбца. Вторая запись задает интервал между столбцами вдоль строки.

Если GridSpacing 'Auto', репликация сохраняет интервал элемента в обеих строках и столбцах. Эта опция доступна, только если вы используете phased.ULA или phased.URA возразите как подмассив.

Значение по умолчанию: 'Auto'

SubarrayPosition

Положения подмассива в пользовательской сетке

Задайте положения подмассивов в пользовательской сетке. Это значение свойства является 3 N матрицей, где N указывает на количество подмассивов в массиве. Каждый столбец матрицы представляет положение одного подмассива в системе локальной координаты массива, в метрах, с помощью формы [x; y; z.

Это свойство применяется, когда вы устанавливаете Layout свойство к 'Custom'.

Значение по умолчанию: [0 0; -0.5 0.5; 0 0]

SubarrayNormal

Подмассив нормальные направления в пользовательской сетке

Задайте нормальные направления подмассивов в массиве. Это значение свойства является 2 N матрицей, где N является количеством подмассивов в массиве. Каждый столбец матрицы задает нормальное направление соответствующего подмассива в форме [азимут; вертикальное изменение]. Каждый угол в градусах и задан в системе локальной координаты.

Можно использовать SubarrayPosition и SubarrayNormal свойства представлять любое расположение, по которому пары подмассивов отличаются определенными преобразованиями. Преобразования могут объединить перевод, вращение азимута и вращение вертикального изменения. Однако вы не можете использовать преобразования, которые требуют вращения вокруг нормального.

Это свойство применяется, когда вы устанавливаете Layout свойство к 'Custom'.

Значение по умолчанию: [0 0; 0 0]

SubarraySteering

Руководящий метод подмассива

Задайте метод подмассива, держащегося как любой 'None' | 'Phase' | 'Time' | 'Custom'.

  • Когда вы устанавливаете это свойство на 'Phase', фазовращатель используется, чтобы регулировать подмассив. Используйте STEERANG аргумент step метод, чтобы задать держащееся направление.

  • Когда вы устанавливаете это свойство на 'Time', подмассивы управляются с помощью задержек. Используйте STEERANG аргумент step метод, чтобы задать держащееся направление.

  • Когда вы устанавливаете это свойство на 'Custom', подмассивы управляются путем установки независимых весов для всех элементов в каждом подмассиве. Используйте WS аргумент step метод, чтобы задать веса для всех подмассивов.

Значение по умолчанию: 'None'

PhaseShifterFrequency

Частота фазовращателя подмассива

Задайте рабочую частоту фазовращателей, которые выполняют регулирование подмассива. Значение свойства является положительной скалярной величиной в герц. Это свойство применяется, когда вы устанавливаете SubarraySteering свойство к 'Phase'.

Значение по умолчанию: 3e8

NumPhaseShifterBits

Количество битов квантования фазовращателя

Количество битов раньше квантовало компонент сдвига фазы формирователя луча или регулирующий векторные веса. Задайте количество битов как неотрицательное целое число. Значение нуля указывает, что никакое квантование не выполняется.

Значение по умолчанию: 0

Методы

collectPlaneWaveСимулируйте полученные плоские волны
направленностьНаправленность реплицированного подмассива
getElementPositionПоложения элементов массива
getNumElementsЧисло элементов в массиве
getNumSubarraysКоличество подмассивов в массиве
getSubarrayPositionПоложения подмассивов в массиве
isPolarizationCapableВозможность поляризации
шаблонПостройте реплицированную направленность подмассива и шаблоны
patternAzimuthПостройте реплицированную направленность подмассива или шаблон по сравнению с азимутом
patternElevationПостройте реплицированную направленность подмассива или шаблон по сравнению с вертикальным изменением
plotResponseПостройте шаблон ответа массива
шагВыведите ответы подмассивов
viewArrayПросмотрите геометрию массивов
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

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

Постройте ответ азимута ULA с 4 элементами, состоявшего из двух ULAs с 2 элементами. По умолчанию элементы антенны являются изотропными.

sArray = phased.ULA('NumElements',2,'ElementSpacing',0.5);
sRSA = phased.ReplicatedSubarray('Subarray',sArray,...
   'Layout','Rectangular','GridSize',[1 2],...
   'GridSpacing','Auto');

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

fc = 1.0e9;
pattern(sRSA,fc,[-180:180],0,...
    'PropagationSpeed',physconst('LightSpeed'),...
    'Type','powerdb',...
    'Normalize',true,...
    'CoordinateSystem','polar')

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

Создайте массивы из подмассивов.

sSD = phased.ShortDipoleAntennaElement;
sULA = phased.ULA('Element',sSD,...
    'NumElements',2,...
    'ElementSpacing',0.5);
sRSA = phased.ReplicatedSubarray('Subarray',sULA,...
    'Layout','Rectangular',...
    'GridSize',[1 2],...
    'GridSpacing','Auto');

Покажите вертикальный ответ поляризации для подмассивов.

fc = 1.0e9;
ang = [0;0];
resp = step(sRSA,fc,ang,physconst('LightSpeed'));
disp(resp.V)
   -2.4495
   -2.4495

Создайте массив, состоящий из трех копий ULA с 4 элементами разрядка элементов 1/2 длина волны независимо. Массив действует на уровне 300 МГц.

c = physconst('LightSpeed'); 
fc = 300e6;
lambda = c/fc;
subarray = phased.ULA(4,0.5*lambda);

Регулируйте все подмассивы общим сдвигом фазы на 10 азимутов степеней.

array = phased.ReplicatedSubarray('Subarray',subarray,'GridSize',[1 3], ... 
    'SubarraySteering','Phase','PhaseShifterFrequency',fc); 
steer_ang = [10;0]; 
sv_array = phased.SteeringVector('SensorArray',array,... 
    'PropagationSpeed',c); 
wts_array = sv_array(fc,steer_ang);
pattern(array,fc,-90:90,0,'CoordinateSystem','Rectangular',... 
    'Type','powerdb','PropagationSpeed',c,'Weights',wts_array,... 
    'SteerAngle',steer_ang);
legend('phase-shifted subarrays')

Вычислите независимые веса подмассива из руководящих векторов подмассива. Веса указывают на 5, 15, и 30 азимутов степеней. Установите SubarraySteering свойство к 'Custom' .

steer_ang_subarrays = [5 15 30;0 0 0];
sv_subarray = phased.SteeringVector('SensorArray',subarray,... 
    'PropagationSpeed',c);
wc = sv_subarray(fc,steer_ang_subarrays); 
array.SubarraySteering = 'Custom';
pattern(array,fc,-90:90,0,'CoordinateSystem','Rectangular',... 
    'Type','powerdb','PropagationSpeed',c,'Weights',wts_array,... 
    'ElementWeight',conj(wc)); 
legend('independent subarrays') 
hold off

Ссылки

[1] Mailloux, Роберт Дж. Электронно отсканированные массивы. Сан-Рафаэль, CA: Morgan & Claypool Publishers, 2007.

[2] Mailloux, Роберт Дж. Поэтапное руководство антенны массивов, 2-й Эд. Норвуд, MA: дом Artech, 2005.

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

Представленный в R2012a