phased.DTIScope

Разовый Доплером осциллограф интенсивности

Описание

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

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

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

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

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

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

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

Создание

Описание

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

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

scope = phased.DTIScope('IQInputData',false, ...
        'OperatingFrequency',1e6, ...
        'SampleRate',1e6,'DopplerOutput','Speed', ...
        'OperatingFrequency',10e6,'DopplerFFTLength',512);
создает объект scope, который отображает промежуток с 10 вторым разом данных с помощью Доплеровского размера БПФ 512 для данных I/Q. Доплеровские устройства вывода являются скоростью в метрах в секунду.

Свойства

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

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

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

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

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

Пример: 'Multi-target Doppler Time Intensiy Scope'

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Доплеровская ось возмещена в виде скаляра. Это свойство яблоки смещение частоты к Доплеровской оси. Модули находятся в Гц.

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

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

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

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

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

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

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

Доплер вывел область в виде 'Frequency' или 'Speed'. Если вы устанавливаете это свойство на 'Frequency', Доплеровская область является эффектом Доплера. Модули находятся в Гц. Если вы устанавливаете это свойство на 'Speed'', Доплеровская область является соответствующей радиальной скоростью. Модули находятся в m/s.

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

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

Пример: 3e8

Зависимости

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

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

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

Зависимости

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

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

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

Зависимости

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

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

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

Синтаксис

Описание

пример

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

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

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

Входные данные в виде K с комплексным знаком-by-L матрица. Интерпретация данных зависит от значения IQDataInput свойство.

  • Когда IQDataInput true, вход состоит из полученных быстро-разовых и медленно-разовых данных для каждого импульса PRI или развертки FMCW. K обозначает количество выборок времени. L является количеством импульсов в случае импульсных сигналов или количеством dechirped разверток частоты для сигналов FMCW. Осциллограф вычисляет и отображает Доплеровский ответ.

  • Когда IQDataInput false, вход уже состоит из данных об ответе в Доплеровской области, такой как произведенный, например, phased.RangeDopplerResponse. Каждая строка содержит набор Доплеровских ответов. Каждый ответ соответствует элементу Dop вектор. Осциллограф служит только в качестве отображения Доплеровского ответа.

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

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

release(obj)

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

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

Примеры

свернуть все

Создайте phased.DTIScope возразите, чтобы просмотреть прокручивающую разовую Доплером карту Интенсивности.

Загрузите данные в качестве примера.

load('RTIDTIExampleData.mat')
rx_pulses = zeros(numel(fast_time),num_pulse_int);

Создайте осциллограф DTI.

scope = phased.DTIScope('IQDataInput',false,...
    'DopplerOutput','Speed',...
    'PropagationSpeed',c,...
    'OperatingFrequency',fc,...
    'Name','Doppler-Time Display',...
    'DopplerResolution',DopplerRes, ...
    'DopplerOffset',-prf/2,...
    'TimeResolution',0.05,...
    'TimeSpan',5,...
    'IntensityUnits','magnitude',...
    'Position',[560 375 560 420]);

Получите импульсный интервал повторения, 33,3564 микросекунды.

pri = 1/prf;

Передайте 2 000 импульсов и когерентно обработайте обучение 10 импульсов за один раз. Существуют 200, обучается. После каждого импульса переместите радарная платформа и цель. Радар отражается от трех целей. Первые шаги вдоль оси X на уровне-150 м/секунда. Вторые перемещения вдоль оси X на уровне +150 м/секунда. Третья цель является стационарной. После каждой последовательности импульсов вычислите Доплеровский ответ с помощью БПФ.

nsteps = 200;
for k = 1:nsteps
    for m = 1:num_pulse_int
        [ant_pos,ant_vel] = radarplatform(pri);
        [tgt_pos,tgt_vel] = targetplatforms(pri);
        sig = waveform();
        [s,tx_status] = transmitter(sig);
        [~,tgt_ang] = rangeangle(tgt_pos,ant_pos);
        tsig = radiator(s,tgt_ang);
        tsig = channels(tsig,ant_pos,tgt_pos,ant_vel,tgt_vel);
        rsig = targets(tsig);
        rsig = collector(rsig,tgt_ang);
        rx_pulses(:,m) = preamplifier(rsig,~(tx_status>0));
    end
    
    rx_pulses = gain(rx_pulses);
    dshift = fft(rx_pulses.');
    dshift = fftshift(abs(dshift),1);
    scope(mean(dshift,2));
    
    pause(0.1)
    radarplatform(.05);
    targetplatforms(.05);
end

Больше о

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

Введенный в R2019a