поэтапный. RTIScope

Осциллограф интенсивности области значений

Описание

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

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

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

Создать и запустить разовый областью значений осциллограф интенсивности,

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

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

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

Создание

Синтаксис

scope = phased.RTIScope
scope = phased.phased.RTIScope(Name,Value)

Описание

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. ...
        'RangeFFTLength',1024);
создает объект scope, который использует основанную на БПФ обработку области значений для данных I/Q, имеющих частоту дискретизации 1 МГц. Разрешение времени составляет 0,5 секунды, и отрезок времени составляет 10 секунд. Длина БПФ области значений является 1 024 выборками.

Свойства

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

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

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

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

Отобразите заголовок, заданный как вектор символов. Заголовок появляется в строке заголовка окна.

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

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

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

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

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

  • width и height задают ширину и высоту окна.

Модули находятся в пикселях.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Обрабатывающий область значений метод, заданный как 'Matched filter' или 'FFT'.

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

Зависимости

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

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

Пример: 3e8

Зависимости

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

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

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

Пример: 10e3

Зависимости

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

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

Наклон линейной развертки FM, заданной как скаляр. Модули находятся в Гц/секунда.

Зависимости

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

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

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

Зависимости

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

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

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

Пример: 128

Зависимости

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

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

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

Зависимости

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

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

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

Синтаксис

scope(X)
scope(X,Xref)

Описание

scope(X) добавляют новые строки к разовому областью значений осциллографу интенсивности. Вход X может быть выборочными данными I/Q или данными об ответе области значений в зависимости от значения свойства IQDataInput.

scope(X,Xref) также задает ссылочный сигнал использовать для dechirping входной сигнал, 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 является количеством импульсов в случае импульсных сигналов или количеством dechirped разверток частоты для сигналов FMCW. Осциллограф вычисляет и отображает ответ области значений.

    • Когда RangeMethod установлен в 'FFT', и DechirpInput является false, X ранее был dechirped.

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

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

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

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

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

release(obj)

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

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

Примеры

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

Создайте отображение прокрутки интенсивности в каждой области значений как функция времени. Интенсивность является комбинацией интенсивности от трех моделируемых целей. Одна цель запускается в области значений 250 м и перемещается исходящий в 950 м. Вторая цель запускается на уровне 1 000 м и перемещается внутрь в 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