RangeAngleResponse

Ответ угла области значений

Описание

RangeAngleResponse Система object™ создает объект ответа угла области значений. Этот объект вычисляет ответ угла области значений сигнала с помощью или согласованного фильтра или БПФ.

Вход к объекту ответа угла области значений является кубом данных. Организация куба данных следует соглашению Phased Array System Toolbox™. Первая размерность куба представляет быстро-разовые выборки или области значений полученных сигналов. Второе измерение представляет несколько каналов, таких как датчики или лучи. Третья размерность, медленное время, представляет импульсы или развертки. Если данные содержат только один канал, например, куб данных может содержать меньше, чем три измерения. Обработка области значений действует по первому измерению куба. Угловая обработка действует вдоль второго измерения.

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

Получить ответ угла области значений:

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

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

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

Создание

Описание

response = phased.RangeAngleResponse создает phased.RangeAngleResponse Системный объект, response, со значениями свойств по умолчанию.

response = phased.RangeAngleResponse(Name,Value) свойства наборов для phased.RangeAngleResponse объект с помощью одной или нескольких пар "имя-значение". Например, response = phased.RangeAngleResponse('RangeMethod','FFT','SampleRate',1e6) создает объект, который использует метод обработки области значений БПФ на уровне частоты дискретизации 1 МГц. Заключите имена свойства в кавычки.

Свойства

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

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

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

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

Сенсорная матрица в виде Системного объекта Phased Array System Toolbox массивов.

Пример: phased.URA

Метод обработки области значений в виде 'Matched filter' или 'FFT'.

  • 'Matched filter' — Объектные фильтры соответствия входящий сигнал. Этот подход обычно используется в импульсных сигналах, где согласованный фильтр является реверсом времени переданного сигнала.

  • 'FFT' — Объект применяет БПФ к входному сигналу. Этот подход обычно используется в щебетавших сигналах, таких как FMCW, и линейный FM пульсировал сигналы.

Пример: 'Matched filter'

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

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

Пример: 3e8

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

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

Пример: 1e9

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

Частота дискретизации сигнала в виде положительного скаляра с действительным знаком. Модули находятся в герц.

Пример: 1e6

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

Линейная развертка FM клонится в виде скаляра. Быстро-разовая размерность signal входной параметр к step должен соответствовать разверткам, имеющим этот наклон.

Пример: 1.5e9

Зависимости

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

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

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

Зависимости

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

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

Фактор децимации для dechirped сигнализирует в виде положительного целого числа. Алгоритм децимации использует КИХ-фильтр 30-го порядка, сгенерированный fir1(30,1/D), где D фактор децимации. Значение по умолчанию 1 не подразумевает децимации.

Когда обработка сигналов FMCW, десятикратное уменьшение сигнала dechirped полезны для сокращения нагрузки на конвертеры A/D.

Зависимости

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

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

Источник длины БПФ, используемой в обработке области значений dechirped, сигнализирует в виде 'Auto' или 'Property'.

  • 'Auto' — Длина БПФ равняется длине быстро-разовой размерности куба входных данных.

  • 'Property' — Задайте длину БПФ при помощи RangeFFTLength свойство.

Зависимости

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

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

Длина БПФ используется в обработке области значений в виде положительного целого числа.

Зависимости

Чтобы включить это свойство, установите RangeMethod свойство к 'FFT' и RangeFFTLengthSource свойство к 'Property'

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

Окно взвешивания БПФ для обработки области значений в виде 'None', 'Hamming', 'Chebyshev', 'Hann', 'Kaiser', 'Taylor', или 'Custom'.

Если вы устанавливаете это свойство на 'Taylor', сгенерированное окно Тейлора имеет четыре почти постоянных боковых лепестка рядом с mainlobe.

Зависимости

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

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

Затухание бокового лепестка для обработки области значений в виде положительной скалярной величины. Затухание применяется к Кайзеру, Чебышеву, или окнам Тейлора. Модули находятся в дБ.

Зависимости

Чтобы включить это свойство, установите RangeMethod свойство к 'FFT' и RangeWindow свойство к 'Kaiser', 'Chebyshev', или 'Taylor'.

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

Если вы пишете свою собственную функцию окна, первый аргумент должен быть длиной окна.

Примечание

Вместо того, чтобы использовать массив ячеек, можно передать во всех аргументах путем построения указателя на анонимную функцию. Например, можно установить значение CustomRangeWindow к @(n)taylorwin(n,nbar,sll), где вы ранее установили значения nbar и sll.

Пример: {@taylor,5,-35}

Зависимости

Чтобы включить это свойство, установите RangeMethod свойство к 'FFT' и RangeWindow свойство к 'Custom'.

Типы данных: function_handle | cell

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

Зависимости

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

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

Диапазон ссылки сетки области значений в виде неотрицательного скаляра.

  • Если вы устанавливаете RangeMethod свойство к 'Matched filter', диапазон ссылки установлен в запуск сетки области значений.

  • Если вы устанавливаете RangeMethod свойство к 'FFT', диапазон ссылки определяется ReferenceRangeCentered свойство.

    • Когда вы устанавливаете ReferenceRangeCentered свойство к true, диапазон ссылки установлен в центр сетки области значений.

    • Когда вы устанавливаете ReferenceRangeCentered свойство к false, диапазон ссылки установлен в запуск сетки области значений.

    Модули исчисляются в метрах.

Это свойство является настраиваемым.

Пример: 1000.0

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

Источник максимального количества выборок входного сигнала в виде 'Auto' или 'Property'. Когда вы устанавливаете это свойство на 'Auto', объект автоматически выделяет достаточно памяти, чтобы буферизовать входной сигнал. Когда вы устанавливаете это свойство на 'Property', вы задаете максимальное количество выборок во входном сигнале с помощью MaximumNumInputSamples свойство. Любой входной сигнал дольше, чем то значение является усеченным.

Чтобы использовать этот объект с сигналом переменного размера в MATLAB® Function Block в Simulink®, установите это свойство на 'Property' и установленный значение для MaximumNumInputSamples свойство.

Зависимости

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

Максимальное количество выборок во входном сигнале в виде положительного целого числа. Это свойство ограничивает размер входного сигнала. Входной сигнал является первым аргументом к объекту. Количество выборок является количеством строк во входе. Входной сигнал дольше, чем это значение является усеченным.

Пример: 1024

Зависимости

Чтобы включить это свойство, установите RangeMethod свойство к 'Matched filter' и набор MaximumNumInputSamplesSource свойство к 'Property'.

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

Источник угла вертикального изменения в виде 'Property' или 'Input port'.

'Property'Угол вертикального изменения прибывает из ElevationAngle свойство.
'Input port'Угол вертикального изменения прибывает из входного параметра.

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

Пример: 45.0

Зависимости

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

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

Угловой ответ охватывает в виде с действительным знаком 2 1 вектор. Объект вычисляет ответ угла области значений в угловой области значений, [min_angle max_angle].

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

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

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

Пример: [256]

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

Можно объединить дополнительные входные параметры, когда их свойства включения установлены. Дополнительные входные параметры должны быть перечислены в том же порядке как порядок свойств включения. Например,

[RESP,RANGE,ANG] = response(X,XREF,EL)
или
[RESP,RANGE,ANG] = response(X,COEFF,EL)

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

Описание

[RESP,RANGE,ANG] = response(X) возвращает ответ угла области значений, RESP, области значений, RANGE, и углы, ANGX сигнал dechirped. Этот синтаксис применяется, когда вы устанавливаете RangeMethod свойство к 'FFT' и DechirpInput свойство к false. К этому синтаксису часто применяются сигналы FMCW.

пример

[RESP,RANGE,ANG] = response(X,XREF) также задает ссылочный сигнал, XREF к dechirped сигнал. Этот синтаксис применяется, когда вы устанавливаете RangeMethod свойство к 'FFT' и DechirpInput свойство к true. К этому синтаксису часто применяются сигналы FMCW. Затем ссылочный сигнал может быть переданным сигналом.

[RESP,RANGE,ANG] = response(X,COEFF) также задает COEFF как коэффициенты согласованного фильтра. Этот синтаксис применяется, когда вы устанавливаете RangeMethod свойство к 'MatchedFilter'. Этот синтаксис часто применяется к импульсным сигналам.

[RESP,RANGE,ANG] = response(___,EL) также задает EL как угол вертикального изменения. Этот синтаксис применяется, когда вы устанавливаете ElevationAngleSource свойство к 'Input port'.

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

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

Куб входного сигнала в виде K с комплексным знаком-by-N матричный или K с комплексным знаком-by-N-by-L массив. Содержимое куба данных зависит от типа обработки угла области значений, заданной различными синтаксисами.

  • K является количеством выборок области значений или быстро-разовых.

  • N является количеством независимых пространственных каналов, таких как датчики или лучи.

  • L является медленно-разовой размерностью, которая соответствует количеству импульсов или развертывается во входном сигнале.

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

Ссылочный сигнал, используемый в dechirping в виде K с комплексным знаком-by-1 вектор-столбец. Количество строк должно равняться длине быстро-разовой размерности X.

Зависимости

Чтобы включить этот входной параметр, установите значение RangeMethod к 'FFT' и DechirpInput к true.

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

Коэффициенты согласованного фильтра в виде P с комплексным знаком-by-1 вектор-столбец. P должен быть меньше чем или равен K. K является количеством выборки области значений или быстро-разовых.

Зависимости

Чтобы включить этот входной параметр, установите значение RangeMethod к 'Matched filter'.

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

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

Зависимости

Чтобы включить этот аргумент, установите ElevationAngleSource свойство к 'Input port'.

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

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

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

Куб данных об ответе области значений, возвращенный как одно из следующего:

  • M с комплексным знаком - вектор-столбец элемента

  • M с комплексным знаком-by-L матрица

  • M с комплексным знаком-by-N - L массив

Значение M зависит от типа обработки

Свойство RangeMethodСвойство DechirpInputЗначение M
'FFT'false

Если вы устанавливаете RangeFFTLength свойство к 'Auto', M = K, длина быстро-разовой размерности x. В противном случае M равняется значению RangeFFTLength свойство.

trueM равняется частному количества строк, K, входного сигнала значением фактора децимации, D, заданного в DecimationFactor.
'Matched filter'нет данныхM = K, длина быстро-разовой размерности x.

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

Значения области значений по измерению области значений, возвращенному как M с действительным знаком-by-1 вектор-столбец. rnggrid задает области значений, соответствующие быстро-разовой размерности RESP куб выходных данных. M является длиной быстро-разовой размерности RESP. Значения области значений монотонно увеличиваются и равномерно распределенные. Модули исчисляются в метрах.

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

Угловые значения вдоль углового направления, возвращенного как P-by-1 вектор с действительным знаком. Модули в градусах.

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

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

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

release(obj)

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

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

Примеры

свернуть все

Вычислите ответ угла области значений от импульсного радара, передающего прямоугольную форму волны с помощью подхода согласованного фильтра. Сигнал включает три цели, возвращается. Два на расстоянии приблизительно в 2 000 м, и третье на расстоянии приблизительно в 3 500 м. Кроме того, две цели являются стационарными относительно радара, в то время как третье переезжает от радара на уровне приблизительно 100 м/с. Сигналы достигают универсальной линейной матрицы с 8 элементами.

Во-первых, загрузите данные в качестве примера.

load('RangeAngleResponseExampleData','rectdata');
fs = rectdata.fs;
propspeed = rectdata.propspeed;
fc = rectdata.fc;
rxdata = rectdata.rxdata;
mfcoeffs = rectdata.mfcoeffs;
%noisepower = rectdata.noisepower;
antennaarray = rectdata.antennaarray;

Во-вторых, создайте объект ответа угла области значений для обработки согласованного фильтра.

rngangresp = phased.RangeAngleResponse(...
    'SensorArray',antennaarray,'OperatingFrequency',fc,...
    'SampleRate',fs,'PropagationSpeed',propspeed);

Получите карту угла области значений.

[resp,rng_grid,ang_grid] = rngangresp(rxdata,mfcoeffs);

Постройте ответ.

plotResponse(rngangresp,rxdata,mfcoeffs,'Unit','db');

Алгоритмы

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

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

Введенный в R2018b