phased.BeamscanEstimator2D

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

Описание

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

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

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

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

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

Создание

Описание

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

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 использовать прямое обратное усреднение, чтобы оценить ковариационную матрицу для сенсорных матриц с сопряженным симметричным коллектором массивов.

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

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

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

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

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

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

Типы данных: 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 2 N матрицей предполагаемых азимутов и вертикальными изменениями направления сигнала. N задан NumSignals свойство. Если объект не может идентифицировать направление сигнала, он возвратит NaN.

Примечание

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

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

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

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

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

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

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

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

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

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

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

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

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

release(obj)

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

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

Примеры

свернуть все

Оцените DOAs двух сигналов, полученных URA с 50 элементами с прямоугольной решеткой. Антенна рабочая частота составляет 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

Поскольку значения для AzimuthScanAngles и свойства ElevationScanAngles имеют гранулярность 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

Постройте beamscan пространственный спектр

plotSpectrum(estimator)

Алгоритмы

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

Ссылки

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

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

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

| |

Введенный в R2011a