step

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

Выведите ответы подрешеток

Описание

Примечание

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

пример

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

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

пример

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

Примечание

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

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

H

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

FREQ

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

ANG

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

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

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

V

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

STEERANGLE

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

Если этот аргумент является вектор-столбцом с 2 элементами, он имеет форму [азимут; вертикальное изменение]. Угол азимута должен быть между-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.

Примеры

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

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

Примечание: Этот пример запускается только в 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');

Найдите ответ каждой подрешетки в опорном направлении. Примите, что рабочая частота составляет 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 object. The axes object 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 object. The axes object with title Azimuth Cut (elevation angle = 0.0°) contains an object of type line. This object represents independent subarrays.

Смотрите также

|