Визуализация сигнала в диапазоне доплеровской области может помочь вам интуитивно понять связи между целями. На карте дальности-доплеровской карты можно:
Посмотрите, как далеко находятся цели и как быстро они приближаются или отходят.
Различают цели, движущиеся с различными скоростями на различных дальностях, в частности:
Если платформа передатчика неподвижна, на карте дальности-доплеровской характеристики отображается отклик от стационарных целей при нулевом доплеровском значении.
Для целей, которые движутся относительно платформы передатчика, карта доплеровского диапазона показывает отклик при ненулевых доплеровских значениях.
Вы также можете использовать диапазон-доплеровский ответ невизуальными способами. Например, можно выполнить обнаружение пиков в области диапазона-доплеровского диапазона и использовать информацию для разрешения связи диапазона-доплеровского диапазона радиолокационной системы FMCW.
Вы можете использовать phased.RangeDopplerResponse объект для вычисления и визуализации диапазона-доплеровского отклика входных данных. Этот объект выполняет обработку дальности в быстрое время с последующей доплеровской обработкой в медленное время. Конфигурация объекта и синтаксис обычно зависят от типа радиолокационной системы.
Эта процедура обычно используется для получения доплеровского отклика диапазона для импульсной радиолокационной системы. (В частном случае линейных импульсов ЧМ процедура в радиолокационных системах FMCW является альтернативным вариантом.)
Создать phased.RangeDopplerResponse объект, установка RangeMethod свойство для 'Matched Filter'.
Настройте эти характеристики или примите значения по умолчанию для любого из них:
Скорость распространения сигнала
Частота выборки
Длина БПФ для доплеровской обработки
Характеристики окна для доплеровского взвешивания, если таковые имеются
Предпочтение выхода доплеровской области в терминах радиальной скорости или частоты доплеровского сдвига. (Если выбрана радиальная скорость, также укажите несущую частоту сигнала.)
Упорядочить данные, x, в матрицу. Столбцы в этой матрице соответствуют отдельным последовательным импульсам.
Использовать plotResponse для построения графика диапазона - доплеровский ответ или step для получения данных, представляющих диапазон-доплеровский отклик. Включать x и соответствующие коэффициенты фильтра в синтаксисе при вызове plotResponse или step.
Примеры см. в разделе step справочная страница или шаблон ответа Range-Speed для целевого объекта.
Эта процедура обычно используется для получения доплеровского отклика диапазона для радиолокационной системы FMCW. Эту процедуру также можно использовать для системы, использующей линейные импульсные сигналы ЧМ. В случае импульсных сигналов обычно используется обработка растяжения для дехирпирования сигнала.
Создать phased.RangeDopplerResponse объект, установка RangeMethod свойство для 'Dechirp'.
Настройте эти характеристики или примите значения по умолчанию для любого из них:
Скорость распространения сигнала
Частота выборки
Уклон сдвига FM
Должен ли процессор дегирпировать или прореживать сигнал
Длина БПФ для обработки диапазона. Алгоритм выполняет БПФ для преобразования дехирпированных данных в частотную область биений, которая предоставляет информацию о диапазоне.
Характеристики окна для взвешивания диапазона, если таковые имеются
Длина БПФ для доплеровской обработки
Характеристики окна для доплеровского взвешивания, если таковые имеются
Предпочтение выхода доплеровской области в терминах радиальной скорости или частоты доплеровского сдвига. (Если выбрана радиальная скорость, также укажите несущую частоту сигнала.)
Упорядочить данные, x, в матрицу, в которой столбцы соответствуют сдвигам или импульсам, которые являются отдельными и последовательными.
В случае сигнала FMCW со сдвигом треугольника, сдвиги чередуются между положительным и отрицательным наклонами. Однако phased.RangeDopplerResponse предназначен для обработки последовательных протягиваний одного и того же уклона. Подавать phased.RangeDopplerResponse для системы «треугольник-сдвиг» используйте один из следующих подходов.
Укажите положительное значение SweepSlope значение свойства, с x соответствует только восходящим сдвигам. Истинные значения доплеровской или скорости составляют половину того, что step возвращает или plotResponse участки.
Укажите отрицательное значение SweepSlope значение свойства, с x соответствует только нисходящим сдвигам. Истинные значения доплеровской или скорости составляют половину того, что step возвращает или plotResponse участки.
Использовать plotResponse для построения графика диапазона - доплеровский ответ или step для получения данных, представляющих диапазон-доплеровский отклик. Включать x в синтаксисе при вызове plotResponse или step. Если данные еще не расшифрованы, включите в синтаксис опорный сигнал.
Пример см. в разделе plotResponse справочная страница.
В этом примере показано, как визуализировать скорость и дальность цели в импульсной радиолокационной системе, использующей прямоугольную форму сигнала.
Разместите изотропный антенный элемент в глобальном начале координат (0,0,0). Затем поместите мишень с неплавающей RCS 1 квадратный метр на (5000,5000,10), что примерно в 7 км от передатчика. Установите рабочую (несущую) частоту 10 ГГц. Для имитации моностатического радара установите InUseOutputPort свойство на передатчике для true. Рассчитайте дальность и угол от датчика до цели.
antenna = phased.IsotropicAntennaElement(... 'FrequencyRange',[5e9 15e9]); transmitter = phased.Transmitter('Gain',20,'InUseOutputPort',true); fc = 10e9; target = phased.RadarTarget('Model','Nonfluctuating',... 'MeanRCS',1,'OperatingFrequency',fc); txloc = [0;0;0]; tgtloc = [5000;5000;10]; antennaplatform = phased.Platform('InitialPosition',txloc); targetplatform = phased.Platform('InitialPosition',tgtloc); [tgtrng,tgtang] = rangeangle(targetplatform.InitialPosition,... antennaplatform.InitialPosition);
Создайте прямоугольный импульсный сигнал длительностью 2 мкс с PRF 10 кГц. Определите максимальный однозначный диапазон для данного PRF. Используйте уравнение радара для определения пиковой мощности, необходимой для обнаружения цели. Эта цель имеет RCS 1 квадратный метр в максимальном однозначном диапазоне для рабочей частоты и коэффициента усиления передатчика. SNR основан на требуемой частоте ложных аварийных сигналов
для некогерентного детектора.
waveform = phased.RectangularWaveform('PulseWidth',2e-6,... 'OutputFormat','Pulses','PRF',1e4,'NumPulses',1); c = physconst('LightSpeed'); maxrange = c/(2*waveform.PRF); SNR = npwgnthresh(1e-6,1,'noncoherent'); lambda = c/target.OperatingFrequency; maxrange = c/(2*waveform.PRF); tau = waveform.PulseWidth; Ts = 290; dbterm = db2pow(SNR - 2*transmitter.Gain); Pt = (4*pi)^3*physconst('Boltzmann')*Ts/tau/target.MeanRCS/lambda^2*maxrange^4*dbterm;
Установите пиковую мощность передачи в значение, полученное из уравнения радара.
transmitter.PeakPower = Pt;
Создайте объекты-радиаторы и коллекторы, работающие на частоте 10 ГГц. Создайте путь свободного пространства для распространения импульса на цель и от цели. Затем создайте получателя.
radiator = phased.Radiator(... 'PropagationSpeed',c,... 'OperatingFrequency',fc,'Sensor',antenna); channel = phased.FreeSpace(... 'PropagationSpeed',c,... 'OperatingFrequency',fc,'TwoWayPropagation',false); collector = phased.Collector(... 'PropagationSpeed',c,... 'OperatingFrequency',fc,'Sensor',antenna); receiver = phased.ReceiverPreamp('NoiseFigure',0,... 'EnableInputPort',true,'SeedSource','Property','Seed',2e3);
Распространение 25 импульсов к цели и от цели. Собрать эхо-сигналы в приемнике и сохранить их в 25-столбцовой матрице rx_puls.
numPulses = 25; rx_puls = zeros(100,numPulses);
Цикл моделирования
for n = 1:numPulses
Генерация формы сигнала
wf = waveform();
Форма сигнала передачи
[wf,txstatus] = transmitter(wf);
Излучайте импульс в сторону цели
wf = radiator(wf,tgtang);
Распространение импульса к цели
wf = channel(wf,txloc,tgtloc,[0;0;0],[0;0;0]);
Отразить его за пределами цели
wf = target(wf);
Передача импульса обратно в передатчик
wf = channel(wf,tgtloc,txloc,[0;0;0],[0;0;0]);
Собрать эхо-сигнал
wf = collector(wf,tgtang);
Прием эхо-сигнала цели
rx_puls(:,n) = receiver(wf,~txstatus);
end
Создайте объект диапазона-доплеровского отклика, использующий подход согласованного фильтра. Настройте этот объект для отображения радиальной скорости, а не доплеровской частоты. Использовать plotResponse для построения графика зависимости диапазона от скорости.
rangedoppler = phased.RangeDopplerResponse(... 'RangeMethod','Matched Filter',... 'PropagationSpeed',c,... 'DopplerOutput','Speed','OperatingFrequency',fc); plotResponse(rangedoppler,rx_puls,getMatchedFilter(waveform))

На графике показана стационарная мишень на дальности примерно 7000 м.