exponenta event banner

шаг

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

Расчет вектора рулевого управления

Синтаксис

SV = step(H,FREQ,ANG)
SV = step(H,FREQ,ANG,STEERANGLE)
SV = step(H,FREQ,ANG,WS)

Описание

Примечание

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

SV = step(H,FREQ,ANG) возвращает вектор управления SV массива для направлений, указанных в ANG. Рабочие частоты указаны в FREQ. Значение SV зависит от IncludeElementResponse имущество H, следующим образом:

  • Если IncludeElementResponse является true, SV включает в себя ответы отдельных элементов.

  • Если IncludeElementResponse является false, вычисление предполагает, что элементы являются изотропными и SV не включает ответы отдельных элементов. Кроме того, если SensorArray имущество H содержит субчипы, SV - коэффициент матрицы среди подрешеток, а фазовый центр каждой подрешетки находится в ее геометрическом центре. Если SensorArray не содержит субчипов, SV - коэффициент массива среди элементов.

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

SV = step(H,FREQ,ANG,WS) использование WS в виде весов, применяемых к каждому элементу внутри каждого подрешетки. Чтобы использовать этот синтаксис, установите SensorArray для массива, который поддерживает подмагистрали и задает SubarraySteering свойство массива to 'Custom', и H.IncludeElementResponse является true.

Примечание

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

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

H

Объект вектора управления.

FREQ

Рабочие частоты в герцах. FREQ - вектор строки длины L.

ANG

Проезд в градусах. ANG может быть либо 2-by-M матрицей, либо вектором строки длиной М.

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

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

STEERANGLE

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

Если STEERANGLE - вектор длины-2, он имеет вид [азимут; отметка]. Угол азимута должен быть от -180 градусов до 180 градусов, а угол места - от -90 градусов до 90 градусов.

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

WS

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

Веса элементов субчипов, заданные как матрица 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. Каждая ячейка содержит вектор столбцов весов для соответствующего подрешетки. Векторы столбцов имеют длины, равные количеству элементов в соответствующем подрешетке.

Зависимости

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

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

SV

Рулевой вектор. Форма вектора управления зависит от того, EnablePolarization свойство имеет значение true или false.

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

    Если установить H.IncludeElementResponse свойство для trueвектор управления включает в себя ответы отдельных элементов. Если установить H.IncludeElementResponse свойство для falseпредполагается, что элементы являются изотропными. Затем вектор управления не включает в себя отклики отдельных элементов.

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

    Если установить EnablePolarization кому false для массива, поддерживающего поляризацию, вся информация о поляризации отбрасывается. Комбинированный шаблон из обоих H и V поляризации используют на каждом элементе для вычисления вектора управления.

    Моделирование поляризации также требует, чтобы матрица датчиков, указанная в SensorArray свойство может имитировать поляризацию, и IncludeElementResponse свойство имеет значение true.

Примеры

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

Вычислите вектор поворота для однородной линейной матрицы в направлении азимута 30 ° и отметки 20 °. Предположим, что массив "работает на частоте 300 МГц.

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

array = phased.ULA('NumElements',2);
steeringvector = phased.SteeringVector('SensorArray',array);
fc = 300.0e6;
ang = [30;20];
sv = steeringvector(fc,ang);

См. также

|