exponenta event banner

шаг

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

Выходные отклики элементов массива

Синтаксис

RESP = step(H,FREQ,ANG)

Описание

Примечание

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

RESP = step(H,FREQ,ANG) возвращает ответы элементов массива RESP на рабочих частотах, указанных в FREQ и направления, указанные в ANG.

Примечание

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

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

H

Объект массива

FREQ

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

ANG

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

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

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

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

RESP

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

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

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

Примеры

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

Создайте 5-элементную гетерогенную ULA элементов косинусной антенны с разностными откликами и найдите отклик каждого элемента на азимуте 30 °.

antenna1 = phased.CosineAntennaElement('CosinePower',1.5);
antenna2 = phased.CosineAntennaElement('CosinePower',1.8);
array = phased.HeterogeneousULA(...
    'ElementSet',{antenna1,antenna2},...
    'ElementIndices',[1 2 2 2 1]);
fc = 1e9;
c = physconst('LightSpeed');
ang = [30;0];
resp = array(fc,ang)
resp = 5×1

    0.8059
    0.7719
    0.7719
    0.7719
    0.8059

Найдите отклик гетерогенного массива ULA из 7 пользовательских элементов микрофона с различными откликами.

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

Создайте два микрофона с различными шаблонами отклика.

mic1 = phased.CustomMicrophoneElement(...
    'FrequencyResponse',[20 20e3]);
mic1.PolarPatternFrequencies = [500 1000];
mic1.PolarPattern = mag2db([...
    0.5+0.5*cosd(mic1.PolarPatternAngles);...
    0.6+0.4*cosd(mic1.PolarPatternAngles)]);
mic2 = phased.CustomMicrophoneElement(...
    'FrequencyResponse',[20 20e3]);
mic2.PolarPatternFrequencies = [500 1000];
mic2.PolarPattern = mag2db([...
    ones(size(mic2.PolarPatternAngles));...
    ones(size(mic2.PolarPatternAngles))]);

Создайте гетерогенную ULA.

array = phased.HeterogeneousULA(...
    'ElementSet',{mic1,mic2},...
    'ElementIndices',[1 1 2 2 2 1 1]);

Найдите отклик массива на азимуте 40 ° и 50 °.

fc = [1500, 2000];
ang = [40 50; 0 0];
resp = array(fc,ang)
resp = 
resp(:,:,1) =

    9.0642    8.5712
    9.0642    8.5712
   10.0000   10.0000
   10.0000   10.0000
   10.0000   10.0000
    9.0642    8.5712
    9.0642    8.5712


resp(:,:,2) =

    9.0642    8.5712
    9.0642    8.5712
   10.0000   10.0000
   10.0000   10.0000
   10.0000   10.0000
    9.0642    8.5712
    9.0642    8.5712

См. также

|