В этом примере показано, как тип сигнала влияет на характеристики обнаружения радиолокационной системы. В примере рассматривается ситуация, когда для существующей конструкции радиолокационной системы ставится новая цель производительности. Поскольку старая конструкция больше не может достигать желаемых рабочих характеристик, принята новая форма сигнала. В примере также показано, как моделировать цели Swerling, моделировать возврат и затем обнаруживать целевые диапазоны.
В примере Имитация тестовых сигналов для радарного приемника сконструирована моностатическая импульсная РЛС для достижения следующей цели:
минимальное сечение РЛС цели (РУ): 1 , неплавающий;
максимальная однозначная дальность: 5 км;
вероятность обнаружения: 0,9;
вероятность ложной тревоги: 1е-6.
load BasicMonostaticRadarExampleData;Новые требования к производительности
После развертывания системы возникают два новых требования:
максимальная однозначная дальность должна быть увеличена до 8 км
система также должна быть способна обнаруживать цели Swerling Case 2.
Можно ли изменить существующую конструкцию для достижения новой производительности? Для ответа на этот вопрос необходимо пересчитать параметры, на которые влияют эти новые требования.
Первым изменяемым параметром является частота повторения импульсов (PRF). Его необходимо пересчитать на основе нового максимального однозначного диапазона.
prop_speed = radiator.PropagationSpeed; max_range = 8000; prf = prop_speed/(2*max_range);
По сравнению с PRF 30 кГц существующей конструкции новый PRF 18,737 кГц меньше. Следовательно, интервал между импульсами больше. Отметим, что это тривиальное изменение в программном обеспечении радара и достаточно дешево по стоимости оборудования.
waveform.PRF = prf;
Далее, поскольку цель описана с помощью модели случая Сверлинга 2, нам нужно использовать уравнение Шнидмана вместо уравнения Олберсхайма, чтобы вычислить необходимое SNR для достижения обозначенных Pd и Pfa. Уравнение Шнидмана предполагает некогерентную интеграцию и детектор квадратного закона. Количество интегрируемых импульсов равно 10.
num_pulse_int = 10; pfa = 1e-6; snr_min = shnidman(0.9,pfa,num_pulse_int,2)
snr_min = 6.1583
Если бы мы использовали ту же прямоугольную форму сигнала в существующей конструкции, ширина импульса осталась бы той же самой, потому что она определяется разрешением диапазона. Однако, поскольку наша максимальная дальность увеличилась с 5 км до 8 км, а целевая модель переключилась с нефлюктуационного на Swerling case 2, нам нужно пересчитать требуемую пиковую мощность передачи.
fc = radiator.OperatingFrequency;
lambda = prop_speed/fc;
peak_power = ((4*pi)^3*noisepow(1/waveform.PulseWidth)*max_range^4*...
db2pow(snr_min))/(db2pow(2*transmitter.Gain)*1*lambda^2)peak_power = 4.4821e+04
Пиковая мощность примерно в восемь раз превышает предыдущее требование. Это больше не является тривиальной модификацией, поскольку (1) существующее радиолокационное оборудование предназначено для получения импульса с пиковой мощностью около 5200 Вт. Хотя большинство конструкций оставят некоторый запас над требуемой мощностью, маловероятно, что существующая система может вместить в восемь раз больше мощности; (2) Очень дорого заменить аппаратные средства для вывода такой высокой мощности. Следовательно, текущая конструкция должна быть модифицирована с учетом новой цели путем использования более сложных методов обработки сигналов.
Линейный ЧМ-сигнал
Один из подходов к уменьшению потребности в мощности заключается в использовании сигнала, отличного от прямоугольного сигнала. Например, линейный ЧМ-сигнал может использовать более длинный импульс, чем прямоугольный сигнал. В результате требуемая пиковая мощность передачи падает.
Рассмотрим детали конфигурации линейного ЧМ-сигнала.
Желательное разрешение диапазона определяет ширину полосы частот формы сигнала. Для линейного ЧМ-сигнала ширина полосы равна ширине полосы его развертки. Однако длительность импульса больше не ограничивается возвратно-поступательным движением полосы пропускания импульса, так что может быть использована гораздо большая ширина импульса. Мы используем длительность импульса, которая в 20 раз больше, и устанавливаем частоту дискретизации в два раза больше полосы пропускания импульса.
range_res = 50; pulse_bw = prop_speed/(2*range_res); pulse_width = 20/pulse_bw; fs = 2*pulse_bw; waveform = phased.LinearFMWaveform(... 'SweepBandwidth',pulse_bw,... 'PulseWidth',pulse_width,... 'PRF',prf,... 'SampleRate',fs);
Теперь мы определяем новую требуемую мощность передачи, необходимую для выполнения проектных требований.
peak_power = ((4*pi)^3*noisepow(1/waveform.PulseWidth)*max_range^4*...
db2pow(snr_min))/(db2pow(2*transmitter.Gain)*1*lambda^2)peak_power = 2.2411e+03
Эта мощность передачи находится в пределах возможностей нашей существующей радиолокационной системы. Мы достигли пиковой мощности передачи, которая может соответствовать новым требованиям без модификации существующего аппаратного обеспечения.
transmitter.PeakPower = peak_power;
Теперь, когда мы определили радар для соответствия проектным спецификациям, мы настраиваем цели и среду для моделирования всей системы.
Цели
Как и в случае с вышеупомянутым примером, мы предполагаем, что в среде свободного пространства имеется 3 цели. Однако теперь целевой моделью является случай Сверлинга 2, положения цели и средние сечения радара определяются следующим образом:
tgtpos = [[2024.66; 0; 0],[6518.63; 0; 0],[6845.04; 0; 0]]; tgtvel = [[0;0;0],[0;0;0],[0;0;0]]; tgtmotion = phased.Platform('InitialPosition',tgtpos,'Velocity',tgtvel); tgtrcs = [2.2 1.1 1.05]; fc = radiator.OperatingFrequency; target = phased.RadarTarget(... 'Model','Swerling2',... 'MeanRCS',tgtrcs,... 'OperatingFrequency',fc);
Мы задаем начальное число для генерации rcs в целях, чтобы мы могли воспроизвести те же результаты.
target.SeedSource = 'Property';
target.Seed = 2007;Среды распространения
Мы также установили канал распространения между РЛС и каждой целью.
channel = phased.FreeSpace(... 'SampleRate',waveform.SampleRate,... 'TwoWayPropagation',true,... 'OperatingFrequency',fc);
Синтез сигналов
Мы задаем начальное число для генерации шума в приемнике, чтобы мы могли воспроизвести те же результаты.
receiver.SeedSource = 'Property'; receiver.Seed = 2007; fast_time_grid = unigrid(0,1/fs,1/prf,'[)'); slow_time_grid = (0:num_pulse_int-1)/prf; rxpulses = zeros(numel(fast_time_grid),num_pulse_int); % pre-allocate for m = 1:num_pulse_int % Update sensor and target positions [sensorpos,sensorvel] = sensormotion(1/prf); [tgtpos,tgtvel] = tgtmotion(1/prf); % Calculate the target angles as seen by the sensor [tgtrng,tgtang] = rangeangle(tgtpos,sensorpos); % Simulate propagation of pulse in direction of targets pulse = waveform(); [txsig,txstatus] = transmitter(pulse); txsig = radiator(txsig,tgtang); txsig = channel(txsig,sensorpos,tgtpos,sensorvel,tgtvel); % Reflect pulse off of targets tgtsig = target(txsig,true); % Receive target returns at sensor rxsig = collector(tgtsig,tgtang); rxpulses(:,m) = receiver(rxsig,~(txstatus>0)); end
Порог обнаружения
Порог обнаружения вычисляется с использованием шумовой информации с учетом интеграции импульсов. Следует отметить, что в загруженной системе, как описано в вышеупомянутом примере, полоса пропускания шума составляет половину частоты дискретизации. Мы строим порог вместе с первыми двумя импульсами.
noise_bw = receiver.SampleRate/2; npower = noisepow(noise_bw,... receiver.NoiseFigure,receiver.ReferenceTemperature); threshold = npower * db2pow(npwgnthresh(pfa,num_pulse_int,'noncoherent')); pulseplotnum = 2; helperRadarPulsePlot(rxpulses,threshold,... fast_time_grid,slow_time_grid,pulseplotnum);

Рисунок показывает, что импульсы очень широки, что может привести к плохому разрешению диапазона. Кроме того, вторая и третья мишени полностью маскируются шумом.
Сопоставленный фильтр
Как и в случае прямоугольной формы сигнала, принятые импульсы сначала проходят через согласованный фильтр для улучшения ОСШ. Согласованный фильтр предлагает выигрыш обработки, который дополнительно улучшает порог обнаружения. Кроме того, дополнительное преимущество согласованного фильтра линейной ЧМ-формы сигнала заключается в том, что он сжимает форму сигнала во временной области, так что отфильтрованный импульс становится намного более узким, что приводит к лучшему разрешению диапазона.
matchingcoeff = getMatchedFilter(waveform); matchedfilter = phased.MatchedFilter(... 'CoefficientsSource','Property',... 'Coefficients',matchingcoeff,... 'GainOutputPort',true); [rxpulses, mfgain] = matchedfilter(rxpulses); threshold = threshold * db2pow(mfgain);
Скомпенсировать согласованную задержку фильтра
matchingdelay = size(matchingcoeff,1)-1; rxpulses = buffer(rxpulses(matchingdelay+1:end),size(rxpulses,1));
Затем к сигналу применяется изменяющийся во времени коэффициент усиления, так что можно использовать постоянный порог по всему обнаруживаемому диапазону.
range_gates = prop_speed*fast_time_grid/2; lambda = prop_speed/fc; tvg = phased.TimeVaryingGain(... 'RangeLoss',2*fspl(range_gates,lambda),... 'ReferenceLoss',2*fspl(max_range,lambda)); rxpulses = tvg(rxpulses);
Некогерентная интеграция
Теперь мы интегрируем импульсы приема некогерентно для дальнейшего улучшения SNR. Эта операция также называется интеграцией видео.
rxpulses = pulsint(rxpulses,'noncoherent');
helperRadarPulsePlot(rxpulses,threshold,fast_time_grid,slow_time_grid,1);
После интеграции видео данные готовы к заключительной стадии обнаружения. По сюжету выше мы видим, что ложных тревог нет.
Обнаружение дальности
Наконец, определение порога выполняется для интегрированных импульсов. Схема обнаружения идентифицирует пики и затем преобразует их позиции в диапазоны целей.
[~,range_detect] = findpeaks(rxpulses,'MinPeakHeight',sqrt(threshold));Истинные диапазоны и предполагаемые диапазоны:
true_range = round(tgtrng)
true_range = 1×3
2025 6519 6845
range_estimates = round(range_gates(range_detect))
range_estimates = 1×3
2025 6525 6850
Следует отметить, что эти оценки дальности являются точными только до разрешения дальности, которое может быть достигнуто радиолокационной системой, которое в данном примере составляет 50 м.
В этом примере мы использовали чирп-сигнал для обнаружения дальности. Используя чирп-сигнал, мы смогли уменьшить требуемую пиковую мощность передачи, таким образом достигая большего обнаруживаемого диапазона 8 км для целей Swerling case 2.