exponenta event banner

шаг

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

Оценка направления прибытия с помощью MUSIC

Синтаксис

spectrum = step(estimator,X)
[spectrum,doa] = step(estimator,X)

Описание

Примечание

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

spectrum = step(estimator,X) возвращает спектр MUSIC для сигнала, указанного X.

[spectrum,doa] = step(estimator,X) также возвращает широкополосные направления сигнала поступления, doa. Чтобы использовать этот синтаксис, установите DOAOutputPort свойство для true.

Примечание

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

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

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

Оценка MUSIC, указанная как phased.MUSICEstimator Системный объект.

Пример: phased.MUSICEstimator

Принятый сигнал, заданный как M-by-N комплекснозначная матрица. Величина М - это количество значений выборки (снимков), содержащихся в сигнале, а N - количество сенсорных элементов в массиве.

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

Пример: [[0;1;2;3;4;3;2;1;0],[1;2;3;4;3;2;1;0;0]]

Типы данных: double
Поддержка комплексного номера: Да

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

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

Пространственный спектр MUSIC, возвращаемый как неотрицательный, действительный вектор столбца K-длины, представляющий величину оцененного пространственного спектра MUSIC. Каждая запись соответствует углу, указанному ScanAngles собственность.

Направления поступления сигналов, возвращаемые в виде действительного вектора строк L-длины. Направление угла прихода - это угол между направлением источника и осью массива или широкими углами. Угловые единицы в градусах. L - количество сигналов, указанных NumSignals или вычислено с использованием метода, указанного NumSignalsMethod собственность.

Зависимости

Чтобы включить этот выходной аргумент, установите DOAOutputPort свойство для true.

Примеры

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

Оценка DOA двух сигналов, принятых стандартной 10-элементной ULA, имеющей расстояние между элементами 1 метр. Затем постройте график спектра MUSIC.

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

Создайте массив ULA. Рабочая частота антенны 150 МГц.

fc = 150.0e6;
array = phased.ULA('NumElements',10,'ElementSpacing',1.0);

Создайте поступающие сигналы в ULA. Истинное направление поступления первого сигнала - 10 ° по азимуту и 20 ° по возвышению. Направление второго сигнала - 60 ° по азимуту и -5 ° по возвышению.

fs = 8000.0;
t = (0:1/fs:1).';
sig1 = cos(2*pi*t*300.0);
sig2 = cos(2*pi*t*400.0);
sig = collectPlaneWave(array,[sig1 sig2],[10 20; 60 -5]',fc);
noise = 0.1*(randn(size(sig)) + 1i*randn(size(sig)));

Оцените ДОУ.

estimator = phased.MUSICEstimator('SensorArray',array,...
    'OperatingFrequency',fc,...
    'DOAOutputPort',true,'NumSignalsSource','Property',...
    'NumSignals',2);
[y,doas] = estimator(sig + noise);
doas = broadside2az(sort(doas),[20 -5])
doas = 1×2

    9.5829   60.3813

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

plotSpectrum(estimator,'NormalizeResponse',true)

Figure contains an axes. The axes with title MUSIC Spatial Spectrum contains an object of type line. This object represents 1 GHz.

Во-первых, оценить DOA двух сигналов, принятых стандартной 10-элементной ULA, имеющей расстояние между элементами, равное половине длины волны. Затем постройте график пространственного спектра.

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

Рабочая частота антенны 150 МГц. Направления прихода двух сигналов разделены на 2 °. Направление первого сигнала - азимут 30 ° и отметка 0 °. Направление второго сигнала - азимут 32 ° и отметка 0 °. Оцените количество сигналов с помощью критерия Минимальная длина описания (MDL).

Создайте сигналы, поступающие в ULA.

fs = 8000;
t = (0:1/fs:1).';
f1 = 300.0;
f2 = 600.0;
sig1 = cos(2*pi*t*f1);
sig2 = cos(2*pi*t*f2);
fc = 150.0e6;
c = physconst('LightSpeed');
lam = c/fc;
array = phased.ULA('NumElements',10,'ElementSpacing',0.5*lam);
sig = collectPlaneWave(array,[sig1 sig2],[30 0; 32 0]',fc);
noise = 0.1*(randn(size(sig)) + 1i*randn(size(sig)));

Оцените ДОУ.

estimator = phased.MUSICEstimator('SensorArray',array,...
    'OperatingFrequency',fc,'DOAOutputPort',true,...
    'NumSignalsSource','Auto','NumSignalsMethod','MDL');
[y,doas] = estimator(sig + noise);
doas = broadside2az(sort(doas),[0 0])
doas = 1×2

   30.0000   32.0000

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

plotSpectrum(estimator,'NormalizeResponse',true)

Figure contains an axes. The axes with title MUSIC Spatial Spectrum contains an object of type line. This object represents 1 GHz.

Представлен в R2016b