exponenta event banner

поэтапный. RTIScope

Диапазон интенсивности

Описание

phased.RTIScope Система object™ создает прокручиваемое отображение интенсивности отклика диапазона как функции времени. Каждая строка представляет отклик диапазона для импульса или сигнала FMCW. Последовательные вызовы объекта добавляют новые строки в нижнюю часть окна отображения. Столбцы представляют отклики в определенном диапазоне по всем импульсам. Можно ввести два типа данных - внутрифазные и квадратурные (I/Q) данные или данные ответа.

  • Данные I/Q - вход состоит из быстрых выборок I/Q для одного или нескольких импульсов или ЧМ-свипов. Область вычисляет ответ диапазона и добавляет его на экран. Для использования данных ввода/вывода установите IQDataInput свойство для true. В этом режиме можно задать свойства, показанные в разделе Свойства, применимые к данным ввода/вывода.

  • Данные ответа - данные состоят из самого ответа диапазона. Область добавляет ответ диапазона к экрану. Например, можно получить ответ диапазона из phased.RangeResponse объект. Чтобы использовать данные ответа, установите IQDataInput свойство для false. В этом режиме можно задать свойства, показанные в разделе Свойства, применимые к данным ответа.

Чтобы создать и запустить область интенсивности диапазона времени,

  1. Создать phased.RTIScope и задайте его свойства.

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

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

Создание

Описание

scope = phased.RTIScope создает диапазон-область интенсивности времени Системный объект, scope. Этот объект отображает интенсивность временного отклика диапазона для входных данных.

пример

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

scope = phased.RTIScope('IQInputData',true,'RangeMethod', ...
        'FFT','SampleRate',1e6,'TimeResolution,0.5,'TimeSpan',10.0, ...
        'RangeFFTLength',1024);
создает объект области, который использует обработку диапазона на основе FFT для данных I/Q, имеющих частоту дискретизации 1 МГц. Разрешение по времени составляет 0,5 секунды, а интервал времени - 10 секунд. Длина диапазона БПФ составляет 1024 выборки.

Свойства

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

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

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

Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.

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

Пример: 'Multi-target Range Time Intensity Scope'

Настраиваемый: Да

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

Расположение и размер окна области видимости интенсивности, заданного как вектор 1 на 4, имеющий форму [left bottom width height].

  • left и bottom укажите местоположение нижнего левого угла окна.

  • width и height укажите ширину и высоту окна.

Единицы измерения выражены в пикселях.

Значение этого свойства по умолчанию зависит от разрешения экрана. По умолчанию окно располагается в центре экрана с шириной и высотой 800 и 450 пикселей соответственно.

Пример: [100 100 500 400]

Настраиваемый: Да

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

Тип входных данных, указанный как false или true. Когда trueобъект предполагает, что входные данные состоят из данных выборки I/Q, и требуется дальнейшая обработка в области диапазона. Когда falseобъект предполагает, что данные являются данными ответа, которые уже были обработаны.

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

Метка оси диапазона, заданная как символьный вектор.

Пример: 'Range (km)'

Настраиваемый: Да

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

Дальность между выборками, заданная как положительный скаляр. Это свойство определяет расстояние между столбцами области. Единицы в метрах.

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

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

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

Интервал времени между выборками, заданный как положительный скаляр. Это свойство определяет интервал времени между строками области. Единицы измерения в секундах.

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

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

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

Единицы интенсивности отклика, указанные как 'db', 'magnitude', или 'power'.

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

Метод обработки диапазона, указанный как 'Matched filter' или 'FFT'.

'Matched filter'Объект применяет согласованный фильтр к входящему сигналу. Этот подход обычно используется с импульсными сигналами, где согласованный фильтр является реверсированной во времени копией передаваемого сигнала.
'FFT'Алгоритм выполняет обработку дальности путем применения БПФ к входному сигналу. Этот подход обычно используется с непрерывными сигналами FMCW и линейными импульсными сигналами ЧМ.

Зависимости

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

Скорость распространения сигнала, заданная как положительный скаляр. Значением по умолчанию этого свойства является скорость света. Посмотрите physconst. Единицы измерения в метрах/секунду.

Пример: 3e8

Зависимости

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

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

Частота выборки, заданная как положительный скаляр. Единицы измерения в Гц.

Пример: 10e3

Зависимости

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

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

Наклон линейного сдвига ЧМ, заданного как скаляр. Единицы измерения в Гц/с.

Зависимости

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

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

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

Зависимости

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

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

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

Пример: 128

Зависимости

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

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

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

Зависимости

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

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

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

Описание

scope(X) добавляет новые строки в область интенсивности диапазона. Вход X могут быть данными выборки ввода/вывода или данными ответа диапазона в зависимости от значения IQDataInput собственность.

scope(X,Xref) также определяет опорный сигнал, используемый для дешифрования входного сигнала, X. Этот синтаксис применяется при установке IQDataInput свойство для true, RangeMethod свойство для 'FFT', и DechirpInput свойство для true. Этот синтаксис чаще всего используется с сигналами FMCW. Xref обычно является передаваемым сигналом.

scope(X,coeff) также задает коэффициенты согласованного фильтра, coeff. Этот синтаксис применяется при установке IQDataInput свойство для true и RangeMethod свойство для 'Matched Filter'. Этот синтаксис чаще всего используется с импульсными сигналами.

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

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

Входные данные, заданные как комплексная матрица N-by-M. Интерпретация данных зависит от установки IQDataInput собственность.

  • Когда IQDataInput является trueкаждый столбец содержит N быстрых отсчетов I/Q для импульса или свипа FMCW. M - количество импульсов в случае импульсных сигналов или число разворотов частоты для сигналов FMCW. Область вычисляет и отображает ответ диапазона.

    • Когда RangeMethod имеет значение 'FFT' и DechirpInput является false, X ранее был дехирпирован.

    • Когда RangeMethod имеет значение 'FFT' и DechirpInput является false, X ранее не расшифровывался. Использовать синтаксис, включающий XREF в качестве входных данных.

    • Когда RangeMethod имеет значение 'MatchedFilter', X не был отфильтрован. Использовать синтаксис, включающий COEF в качестве входных данных.

  • Когда IQDataInput является false, каждый столбец содержит N выборок ответа для импульса или свипа FMCW, такого как полученный phased.RangeResponse. M - количество импульсов в случае импульсных сигналов или число разворотов частоты для сигналов FMCW. В области отображается только ответ диапазона.

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

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

release(obj)

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

showВключить видимость областей
hideОтключить видимость области
isVisibleВидимость областей
stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

Создайте прокручиваемое отображение интенсивности в каждом диапазоне как функции времени. Интенсивность представляет собой комбинацию интенсивностей от трех моделируемых целей. Одна цель начинается с диапазона 250 м и перемещается наружу до 950 м. Вторая цель начинается с 1000 м и перемещается внутрь до 300 м. Третья остается на уровне 400 м. Интенсивности вычисляются с помощью встроенной функции. rangePow. Цели движутся ступенями по 10 м, но rangePow функция распространяет интенсивность по ближайшим ячейкам диапазона, которые разнесены на каждый метр.

Встроенная функция rangePow моделирует целевой возврат с разбросом, имеющий интенсивность, падающую с четвертой мощностью диапазона.

txpow = 200;
gain = 2e8;
std = 5;
rangePow = @(rngbins,range) ...
    gain.*exp(-0.5*((rngbins-range)./std).^2).* ...
    txpow./(range.^4)./(sqrt(2*pi).*std);

Создайте область RTI для просмотра данных интенсивности.

scope = phased.RTIScope( ...
    'IQDataInput',false,...
    'Name','Range-Time Intensity Scope',...
    'Position',[560 375 560 420],...
    'RangeLabel','Range (m)', ...
    'RangeResolution',1, ...
    'TimeResolution',0.05,'TimeSpan',6, ...
    'IntensityUnits','magnitude');

Создайте ячейки диапазона для трех целей.

rngbins = 0:900;
ranges(:,1) = 250:10:950;
ranges(:,2) = 1000:-10:300;
ranges(:,3) = 400;

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

for k = 1:size(ranges,1)
    y = rangePow(rngbins,ranges(k,1)) + ...
        rangePow(rngbins,ranges(k,2)) + ...
        rangePow(rngbins,ranges(k,3));
    scope(y.');
    pause(.1);
end

Подробнее

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

Представлен в R2019a