exponenta event banner

шаг

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

Выполнить оценку пространственного спектра

Синтаксис

Y = step(H,X)
[Y,ANG] = step(H,X)

Описание

Примечание

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

Y = step(H,X) оценивает пространственный спектр из X использование оценщика H. X - матрица, столбцы которой соответствуют каналам. Y - матрица, представляющая величину оцененного 2-D пространственного спектра. Размер строки Y равно количеству углов в ElevationScanAngles и размерность столбца Y равно количеству углов в AzimuthScanAngles собственность. Можно указать аргумент, X, как одинарная или двойная точность.

Размер первого размера входной матрицы может изменяться для моделирования изменения длины сигнала. Изменение размера может происходить, например, в случае формы импульса с переменной частотой повторения импульса.

[Y,ANG] = step(H,X) возвращает дополнительные выходные данные ANG как направление поступления сигнала (DOA), когда DOAOutputPort свойство - true. ANG - двухстрочная матрица, где первая строка представляет расчетный азимут, а вторая строка представляет расчетный уровень (в градусах).

Примечание

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

Примеры

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

Оценка DOA двух сигналов, принятых 50-элементным URA с прямоугольной решёткой. Рабочая частота антенны 150 МГц. Фактическое направление первого сигнала - -37 ° по азимуту и 0 ° по отметке. Направление второго сигнала - 17 ° по азимуту и 20 ° по возвышению.

Создайте сигналы, дискретизированные на частоте 8 кГц.

fc = 150e6;
fs = 8000;
t = (0:1/fs:1).';
x1 = cos(2*pi*t*300);
x2 = cos(2*pi*t*400);
array = phased.URA('Size',[5 10],'ElementSpacing',[1 0.6]);
array.Element.FrequencyRange = [100e6 300e6];
x = collectPlaneWave(array,[x1 x2],[-37 0;17 20]',fc);

Добавление сложного шума.

noise = 0.1*(randn(size(x))+1i*randn(size(x)));

Создайте оценщик MVDR DOA для URA.

estimator = phased.MVDREstimator2D('SensorArray',array,...
    'OperatingFrequency',fc,...
    'DOAOutputPort',true,'NumSignals',2,...
    'AzimuthScanAngles',-50:50,...
    'ElevationScanAngles',-30:30);

Используйте step метод к оценкам DOA.

[~,doas] = estimator(x + noise)
doas = 2×2

    17   -37
    20     0

Постройте график спектра.

plotSpectrum(estimator)

Figure contains an axes. The axes with title 2-D MVDR Spatial Spectrum contains an object of type surface.

См. также

|