exponenta event banner

Однородный прямоугольный массив

Поддержка однородных прямоугольных массивов

Можно реализовать однородный прямоугольный массив (URA) с phased.URA. Элементы массива распределены в плоскости yz с направлением взгляда массива вдоль положительной оси X. При использовании phased.URA, необходимо указать следующие аспекты массива:

  • Сенсорные элементы матрицы

  • Количество строк и интервал между ними

  • Количество столбцов и интервал между ними

  • Геометрия плоской решетки, которая может быть прямоугольной или треугольной

Однородная прямоугольная решетка изотропных антенных элементов

В этом примере показано, как создать однородный прямоугольный массив (URA) и получить информацию о позициях элементов, отклике массива и межэлементных временных задержках. Затем смоделировать прием двух синусоидальных волн, идущих из разных направлений. Оба сигнала имеют 1GHz несущую частоту.

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

Создание URA и получение позиций элементов

Создайте и просмотрите шестиэлементный URA с двумя элементами вдоль оси Y и тремя элементами вдоль оси Z. Используйте прямоугольную решетку с интервалом по умолчанию 0,5 метра вдоль размеров строки и столбца массива. Каждый элемент является изотропным антенным элементом, который является типом элемента по умолчанию для URA.

fc = 1e9;
array = phased.URA([3,2]);
viewArray(array)

pos = getElementPosition(array);

Координата x равна нулю для всех элементов массива.

Вычислить задержки элементов

Вычислите задержки элементов для сигналов, поступающих от + 45 ° и -45 ° по азимуту и отметке 0 °.

delay = phased.ElementDelay('SensorArray',array);
ang = [45,-45];
tau = delay(ang);

Первый столбец tau содержит задержки элемента для сигнала, падающего на матрицу от + 45 ° азимута. Второй столбец содержит задержки для сигнала, поступающего из -45 °. Задержки равны по величине, но противоположны по знаку, как и ожидалось.

Вычислить принятые сигналы

Следующий код моделирует прием двух синусоидальных волн, поступающих от источников дальнего поля. Один сигнал - волна синуса на 100 Гц, прибывающая от азимута на 20 ° и возвышения на 10 °. Второй сигнал - волна синуса на 300 Гц, прибывающая от азимута на-30 ° и возвышения на 5 °.

t = linspace(0,1,1000);
x1 = cos(2*pi*100*t)';
x2 = cos(2*pi*300*t)';
ang1 = [20;10];
ang2 = [-30;5];
recsig = collectPlaneWave(array,[x1 x2],[ang1 ang2],fc);

Каждый столбец recsig представляет принятые сигналы в соответствующем элементе URA.

Постройте график отклика массива в 3D

Можно построить график отклика массива с помощью pattern способ.

pattern(array,fc,[-180:180],[-90:90],'PropagationSpeed',physconst('LightSpeed'),...
    'CoordinateSystem','rectangular','Type','powerdb')

Figure contains an axes. The axes with title 3D Response Pattern contains an object of type surface.