phased.BeamscanEstimator

Beamscan пространственное средство оценки спектра для ULA

Описание

phased.BeamscanEstimator Система object™ вычисляет beamscan пространственную оценку спектра для универсальной линейной матрицы (ULA). Объект оценивает входящий сигнал пространственный спектр с помощью узкополосного обычного формирователя луча.

Оценить пространственный спектр:

  1. Создайте phased.BeamscanEstimator объект и набор его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Описание

estimator = phased.BeamscanEstimator создает beamscan пространственный Системный объект средства оценки спектра.

пример

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

Свойства

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

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

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

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

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

Пример: 3e8

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

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

Пример: 1e9

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

Количество битов раньше квантовало компонент сдвига фазы формирователя луча или регулирующий векторные веса, заданные как неотрицательное целое число. Значение нуля указывает, что никакое квантование не выполняется.

Пример 5

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

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

Типы данных: логический

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

Пример 5

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

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

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

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

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

Типы данных: логический

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

Пример 3

Зависимости

Чтобы включить это свойство, установите DOAOutputPort свойство к true.

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

Использование

Описание

Y = estimator(X) оценивает пространственный спектр из данных X.

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

пример

[Y,ANG] = estimator(X) возвращает направления прибытия, ANG, из сигналов. Чтобы включить этот синтаксис, установите DOAOutputPort свойство к true. ANG вектор-строка из предполагаемых поперечных углов (в градусах). Можно задать ANG как одинарная или двойная точность. Если объект не может идентифицировать направление сигнала, он возвратит NaN.

Примечание

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

Входные параметры

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

Данные о канале, заданные как матрица с комплексным знаком. Столбцы матрицы данных соответствуют каналам.

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

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

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

Величина предполагаемого пространственного спектра, возвращенного как 1 с действительным знаком L вектор-столбцом. L является количеством углов сканирования, заданных ScanAngles свойство.

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

Предполагаемые поперечные углы прибытия сигнала, возвращенного как 1 с действительным знаком K вектором-строкой. Модули в градусах. NaN значение в любом векторном элементе указывает, что оценка не могла быть найдена.

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

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

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

plotSpectrumПостройте пространственный спектр
stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

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

Оцените DOA двух сигналов, полученных ULA с 10 элементами с интервалом элемента 1 метра. Антенна рабочая частота составляет 150 МГц. Фактическое направление первого сигнала составляет 10 ° в азимуте и 20 ° в вертикальном изменении. Направление второго сигнала составляет 60 ° в азимуте и-5 ° в вертикальном изменении.

Создайте сигналы и массив.

fs = 8000;
t = (0:1/fs:1).';
x1 = cos(2*pi*t*300);
x2 = cos(2*pi*t*400);
antenna = phased.IsotropicAntennaElement('FrequencyRange',[100e6 300e6]);
array = phased.ULA('Element',antenna,'NumElements',10,'ElementSpacing',1);
fc = 150e6;
x = collectPlaneWave(array,[x1 x2],[10 20;60 -5]',fc);
noise = 0.1*(randn(size(x)) + 1i*randn(size(x)));

Решите для DOAs.

estimator = phased.BeamscanEstimator('SensorArray',array, ...
    'OperatingFrequency',fc,'DOAOutputPort',true,'NumSignals',2);
[~,doas] = estimator(x + noise);
doas = broadside2az(sort(doas),[20 -5]);
disp(doas)
    9.5829   60.3813

Поскольку значения по умолчанию для ScanAngles свойство имеет гранулярность 1, оценки DOA не точны. Улучшите точность путем выбора более прекрасной сетки.

estimator2 = phased.BeamscanEstimator('SensorArray',array, ...
    'OperatingFrequency',fc,'ScanAngles',-60:0.1:60, ...
    'DOAOutputPort',true,'NumSignals',2);
[~,doas] = estimator2(x + noise);
doas = broadside2az(sort(doas),[20 -5]);
disp(doas)
   10.0093   59.9751

Постройте beamscan спектр

plotSpectrum(estimator)

Алгоритмы

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

Ссылки

[1] Деревья фургона, H. Оптимальная Обработка матриц. Нью-Йорк: Wiley-межнаука, 2002, стр 1142–1143.

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

Смотрите также

|

Представленный в R2012a