phased.BeamscanEstimator2D

2-D оценки пространственного спектра beamscan

Описание

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

Для оценки пространственного спектра:

  1. Создайте phased.BeamscanEstimator2D Объекту и установите его свойства.

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

Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».

Создание

Описание

estimator = phased.BeamscanEstimator2D создает 2-D оценки пространственного спектра Системного объекта луча.

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

Свойства

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

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

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

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

Массив датчика, заданный как Phased Array System Toolbox Системного объекта массива.

Пример: phased.URA

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

Пример: 3e8

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

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

Пример: 1e9

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

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

Пример: 5

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

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

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

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

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

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

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

Пример: [-70:75]

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

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

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

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

Пример: 3

Зависимости

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

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

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

Описание

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

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

пример

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

Примечание

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

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

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

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

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

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

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

Величина предполагаемого пространственного спектра, возвращенная как положительная, реальная, K -by - L матрица.

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

Предполагаемые углы направления приходов сигнала, возвращенные как действительная матрица 2 K. Каждый столбец имеет форму [azimuth;elevation]. The NaN значение в любом элементе матрицы указывает, что оценка не может быть найдена. Модули указаны в степенях.

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

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

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

release(obj)

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

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

Примеры

свернуть все

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

antenna = phased.IsotropicAntennaElement('FrequencyRange',[100e6 300e6]);
array = phased.URA('Element',antenna,'Size',[5 10],'ElementSpacing',[1 0.6]);
fc = 150e6;
lambda = physconst('LightSpeed')/fc;
ang1 = [-37.5; 10.2];
ang2 = [17.4; 20.6];
x = sensorsig(getElementPosition(array)/lambda,8000,[ang1 ang2],0.2);
estimator = phased.BeamscanEstimator2D('SensorArray',array,'OperatingFrequency',fc, ...
    'DOAOutputPort',true,'NumSignals',2,'AzimuthScanAngles',-50:50,'ElevationScanAngles',-30:30);
[~,doas] = estimator(x);
disp(doas)
    17   -37
    20    10

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

estimator2 = phased.BeamscanEstimator2D('SensorArray',array,'OperatingFrequency',fc, ...
    'DOAOutputPort',true,'NumSignals',2,'AzimuthScanAngles',-50:0.05:50,'ElevationScanAngles',-30:0.05:30);
[~,doas] = estimator2(x);
disp(doas)
   17.3000  -37.4000
   20.5000   10.3000

Постройте график пространственного спектра луча

plotSpectrum(estimator)

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

Алгоритмы

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

Ссылки

[1] Деревья фургонов, H. Optimum Array Processing. Нью-Йорк: Wiley-Interscience, 2002.

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

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