step

Системный объект: фазированный. ReplicatedSubarray
Пакет: поэтапный

Выходные отклики подрешеток

Описание

Примечание

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

пример

RESP = step(H,FREQ,ANG,V) возвращает ответы, RESP, из подрешеток в массиве, на рабочих частотах, заданных в FREQ и направления, указанные в ANG. V - скорость распространения. Элементы внутри каждой подрешетки соединяются с центром фазы подрешетки с помощью передачи с равным путем.

RESP = step(H,FREQ,ANG,V,STEERANGLE) использует STEERANGLE как направление управления подрешетки. Этот синтаксис доступен, когда вы устанавливаете SubarraySteering свойство любому из 'Phase' или 'Time'.

пример

RESP = step(H,FREQ,ANG,V,WS) использует WS как веса элемента подрешетки. Этот синтаксис доступен, когда вы устанавливаете SubarraySteering свойство к 'Custom'.

Примечание

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

Входные параметры

H

Фазированная решетка, образованный реплицированными подрешетками.

FREQ

Рабочие частоты массива в герцах. FREQ является вектор-строка длины L. Типичные значения находятся в пределах области значений, заданной свойством H.Subarray.Element. Это свойство названо FrequencyRange или FrequencyVector, в зависимости от типа элемента в массиве. Элемент имеет нулевую характеристику на частотах вне этой области значений.

ANG

Направления в степенях. ANG может быть либо матрицей 2-by-M, либо вектор-строка длины M.

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

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

V

Скорость распространения в метрах в секунду. Это значение должно быть скаляром.

STEERANGLE

Направление рулевого управления подрешетки. STEERANGLE может быть либо 2-элементным вектором-столбцом либо скаляром.

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

Если STEERANGLE является скаляром, он задает угол азимута направления. В этом случае угол возвышения принимается равным 0 °.

Зависимости

Чтобы включить этот аргумент, установите SubarraySteering на 'Phase' или 'Time'.

WS

Веса элементов подрешетки

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

Зависимости

Чтобы включить этот аргумент, установите SubarraySteering на 'Custom'.

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

RESP

Характеристики напряжения подрешеток фазированной решетки. Это выход зависит от того, поддерживает ли массив поляризацию или нет.

  • Если массив не способен поддерживать поляризацию, характеристика напряжения, RESP, имеет размерности N -by- M -by- L. Первая размерность, N, представляет количество подрешеток в фазированной решетке, второе измерение, M, представляет количество углов, заданных в ANG, в то время как L представляет количество частот, заданное в FREQ. Каждый столбец RESP содержит ответы подрешеток для соответствующего направления, заданного в ANG. Каждая из L страниц RESP содержит ответы подрешеток на соответствующую частоту, указанную в FREQ.

  • Если массив способен поддерживать поляризацию, ответ на напряжение, RESP, является MATLAB® struct содержащие два поля, RESP.H и RESP.V, каждый из которых имеет размерности N -by- M -by- L. Поле, RESP.H, представляет горизонтальную поляризационную характеристику массива, в то время как RESP.V представляет вертикальную поляризационную характеристику массива. Первая размерность, N, представляет количество подрешеток в фазированной решетке, второе измерение, M, представляет количество углов, заданных в ANG, в то время как L представляет количество частот, заданное в FREQ. Каждый из M столбцов содержит ответы подрешеток для соответствующего направления, заданного в ANG. Каждая из L страниц содержит ответы подрешеток на соответствующую частоту, указанную в FREQ.

Примеры

расширить все

Вычислите ответ при boresight для двух 2-элементных массивов ULA, которые образуют подрешетки 4-элементного массива ULA из короткодипольных антенных элементов.

Примечание.Этот пример выполняется только в R2016b или более поздней версии. Если вы используете более ранний релиз, замените каждый вызов функции на эквивалентный step синтаксис. Для примера замените myObject(x) с step(myObject,x).

Создайте двухэлементный ULA короткодипольных антенных элементов. Затем расположите две копии, чтобы сформировать ULA с 4 элементами.

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

Найдите ответ каждой подрешетки в boresight. Предположим, что рабочая частота составляет 1 ГГц, а скорость распространения волны является скоростью света.

c = physconst('LightSpeed');
resp = replicatedarray(1.0e9,[0;0],c)
resp = struct with fields:
    H: [2x1 double]
    V: [2x1 double]

Создайте массив, состоящий из трех копий 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')

Figure contains an axes. The axes with title Azimuth Cut (elevation angle = 0.0°) contains an object of type line. This object represents 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

Figure contains an axes. The axes with title Azimuth Cut (elevation angle = 0.0°) contains an object of type line. This object represents independent subarrays.

См. также

|