phased.MUSICEstimator

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

Описание

The phased.MUSICEstimator Система object™ реализует узкополосный алгоритм классификации нескольких сигналов (MUSIC) для равномерных линейных массивов (ULA). MUSIC является алгоритмом наведения направления с высоким разрешением, способным разрешать близко расположенные источники сигналов. Алгоритм основан на собственном пространственном разложении пространственной ковариационной матрицы датчика.

Для оценки направления прибытия (DOA):

  1. Определите и настройте phased.MUSICEstimator Системный объект. См. «Конструкция».

  2. Вызовите step метод оценки DOAs согласно свойствам phased.MUSICEstimator.

Примечание

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

Конструкция

estimator = phased.MUSICEstimator создает Системный объект оценки MUSIC DOA, estimator.

estimator = phased.MUSICEstimator(Name,Value) создает Системный объект, estimator, с каждым заданным именем свойства, установленным на заданное значение. Можно задать дополнительные аргументы пары "имя-значение" в любом порядке как (Name1, Value1..., NameN, ValueN).

Свойства

расширить все

Массив датчиков ULA, заданный как phased.ULA Системный объект. Если вы не задаете никаких свойств пары "имя-значение" для массива датчиков ULA, используются свойства по умолчанию для массива.

Скорость распространения сигнала, заданная как реальная положительная скалярная величина. Модули указаны в метрах в секунду. Скорость распространения по умолчанию является значением, возвращаемым physconst('LightSpeed').

Пример: 3e8

Типы данных: single | double

Рабочая частота, заданная как положительная скалярная величина. Модули указаны в Гц.

Пример: 1e9

Типы данных: single | double

Включите прямое-обратное среднее, заданное как false или true. Установите это свойство на true использовать прямое-назад среднее для оценки матрицы ковариации для массивов датчика с сопряженным симметричным массивом коллектором.

Типы данных: logical

Углы широкополосного скана, заданные как действительный вектор. Модули указаны в степенях. Широкие углы находятся между направлением поиска и осью массива ULA. Углы лежат между -90 ° и 90 ° включительно. Задайте углы в увеличивающемся значении.

Пример: [-20:20]

Типы данных: single | double

Опция включения выхода направления прибытия (DOA), заданная как false или true. Чтобы получить DOA сигналов, установите это свойство на true. DOA возвращаются во втором выходном аргументе при выполнении объекта.

Типы данных: logical

Источник количества поступающих сигналов, указанный как 'Auto' или 'Property'.

  • 'Auto' - Объект System оценивает количество поступающих сигналов с помощью метода, заданного в NumSignalsMethod свойство.

  • 'Property' - Укажите количество поступающих сигналов, использующих NumSignals свойство.

Типы данных: char

Метод, используемый для оценки количества поступающих сигналов, заданный как 'AIC' или 'MDL'.

  • 'AIC' - Информационный критерий Акайке

  • 'MDL' - Критерий минимальной длины описания

Зависимости

Чтобы включить это свойство, задайте NumSignalsSource на 'Auto'.

Типы данных: char

Количество поступающих сигналов для оценки DOA, заданное в виде положительного целого числа.

Пример: 3

Зависимости

Чтобы включить это свойство, задайте NumSignalsSource на 'Property'.

Типы данных: single | double

Опция для включения пространственного сглаживания, заданная как неотрицательное целое число. Используйте пространственное сглаживание, чтобы вычислить направления прихода когерентных сигналов. Значение нуля не задает пространственное сглаживание. Положительное значение представляет количество подрешеток, используемых для вычисления сглаженной (усредненной) матрицы ковариации источника. Каждый шаг в этом значении позволяет вам обрабатывать один дополнительный когерентный источник, но уменьшает эффективное количество элементов массива на один. Длина сглаживающей апертуры, L, зависит от длины массива, M и среднего числа, K, по L = M – K + 1. Максимальное значение K - M – 2.

Пример: 5

Типы данных: double

Методы

plotSpectrumПостройте спектр MUSIC
сбросСброс состояний системного объекта
шагОценить направление прибытия используя MUSIC
Общий для всех системных объектов
release

Разрешить изменение значения свойства системного объекта

Примеры

свернуть все

Оцените DOA двух сигналов, принятых стандартным ULA с 10 элементами, имеющим интервал между элементами 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)));

Оцените DOAs.

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 двух сигналов, принятых стандартным ULA с 10 элементами, имеющим интервал между элементами половину длины волны. Затем постройте график пространственного спектра.

Примечание: Можно заменить каждый вызов функции эквивалентным 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)));

Оцените DOAs.

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.

Алгоритмы

расширить все

Ссылки

[1] Van Trees, H. L. Optimum Array Processing. Нью-Йорк: Wiley-Interscience, 2002.

Расширенные возможности

.
Введенный в R2016b