Радарное сжатие импульса

Этот пример показывает эффекты импульсного сжатия, где переданный импульс модулируется и коррелируется с полученным сигналом. Импульсное сжатие используется в радаре и системах гидролокатора, чтобы улучшить отношение сигнал-шум (SNR) и разрешение области значений путем сокращения длительности эха.

Взаимная корреляция области времени

Прямоугольный щебет

Во-первых, визуализируйте импульсное сжатие с меандром. Создайте один второй длинный импульс с частотой f0 из 10 Гц и частота дискретизации fs из 1 kHz.

fs = 1e3;
tmax = 15;
tt = 0:1/fs:tmax-1/fs;
f0 = 10;
T = 1;
t = 0:1/fs:T-1/fs;
pls = cos(2*pi*f0*t);

Создайте полученный сигнал, запускающийся в 5 секунды, базирующиеся от исходного импульса без любого шума. Сигнал представляет все больше удаленные цели, отраженные сигналы которых разделяются 2 секунды. Термин отражающей способности ref определяет, какую часть переданной степени полученный импульс имеет. Фактор затухания att диктует, сколько сила сигнала уменьшает в зависимости от времени.

t0 = 5;
dt = 2*T;
lgs = t0:dt:tmax;
att = 1.1;
ref = 0.2;
rpls = pulstran(tt,[lgs;ref*att.^-(lgs-t0)]',pls,fs);

Добавьте Гауссов белый шум. Задайте ОСШ 15 дБ.

SNR = 15;
r = randn(size(tt))*std(pls)/db2mag(SNR);
rplsnoise = r+rpls;

Перекрестный коррелируйте полученный сигнал с переданным импульсом и постройте обработанный сигнал. Переданный импульс, полученный импульс без шума и шумный полученный сигнал построены в верхнем графике для удобства.

[m,lg] = xcorr(rplsnoise,pls);
m = m(lg>=0);
tm = lg(lg>=0)/fs;

subplot(2,1,1)
plot(tt,rplsnoise,t,pls,tt,rpls)
xticks(lgs)
legend('Noisy Received','Initial Pulse','Noiseless Received')
title('Transmitted/Received Signals')
ylabel('Magnitude (L.U.)')

subplot(2,1,2)
plot(tm,abs(m))
xticks(lgs)
title('Matched Filter Output')
xlabel('Time (s)')
ylabel('Magnitude (L.U.)')

Figure contains 2 axes objects. Axes object 1 with title Transmitted/Received Signals contains 3 objects of type line. These objects represent Noisy Received, Initial Pulse, Noiseless Received. Axes object 2 with title Matched Filter Output contains an object of type line.

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

dt = 1.5*T;
lgs = t0:dt:tmax;
rpls = pulstran(tt,[lgs;ref*att.^-(lgs-t0)]',pls,fs);
rplsnoise = r + rpls;
[m,lg] = xcorr(rplsnoise,pls);
m = m(lg>=0);
tm = lg(lg>=0)/fs;

subplot(2,1,1)
plot(tt,r,t,pls,tt,rpls)
xticks(lgs)
legend('Noisy Received','Initial Pulse','Noiseless Received')
title('Transmitted/Received Signals')
ylabel('Magnitude (L.U.)')

subplot(2,1,2)
plot(tm,abs(m))
xticks(lgs)
title('Matched Filter Output')
xlabel('Time (s)')
ylabel('Magnitude (L.U.)')

Figure contains 2 axes objects. Axes object 1 with title Transmitted/Received Signals contains 3 objects of type line. These objects represent Noisy Received, Initial Pulse, Noiseless Received. Axes object 2 with title Matched Filter Output contains an object of type line.

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

Линейный щебет Модулируемой частоты (FM)

Завершите ту же процедуру, но с комплексным чирплетом с частотой, которая запускается на уровне 0 Гц и линейно увеличивается до 10 Гц. Реальные радиолокационные системы часто используют линейные сигналы FM с комплексным знаком улучшить разрешение области значений, потому что ответ согласованного фильтра является больше и более узким. С тех пор существует мнимый компонент к щебету и согласованному фильтру, все графики должны быть сделаны с помощью действительной части формы волны.

pls = chirp(t,0,T,f0,'complex');
rpls = pulstran(tt,[lgs;ref*att.^-(lgs-t0)]',pls,fs);
r = randn(size(tt))*std(pls)/db2mag(SNR);
rplsnoise = r + rpls;

[m,lg] = xcorr(rplsnoise,pls);
m = m(lg>=0);
tm = lg(lg>=0)/fs;

subplot(2,1,1)
plot(tt,real(r),t,real(pls),tt,real(rpls))
xticks(lgs)
legend('Noisy Received','Initial Pulse','Noiseless Received')
title('Transmitted/Received Signals')
ylabel('Magnitude (L.U.)')

subplot(2,1,2)
plot(tm,abs(m))
xticks(lgs)
title('Matched Filter Output')
xlabel('Time (s)')
ylabel('Magnitude (L.U.)')

Figure contains 2 axes objects. Axes object 1 with title Transmitted/Received Signals contains 3 objects of type line. These objects represent Noisy Received, Initial Pulse, Noiseless Received. Axes object 2 with title Matched Filter Output contains an object of type line.

Взаимная корреляция с линейным щебетом FM обеспечивает намного более прекрасное разрешение для целевого шума несмотря на целевое эхо, являющееся ближе вместе. Боковые лепестки эха также значительно уменьшаются по сравнению с прямоугольным щебетом, допуская более точное целевое обнаружение.

Свертка частотного диапазона

В то время как взаимная корреляция действительно улучшает разрешение области значений, алгоритм предоставляет себя лучше аналоговой аппаратной реализации. Чаще всего радиолокационные системы используют подобный процесс в названной согласованной фильтрации цифровой области, где к полученному сигналу применяют операцию свертки с инвертированной временем версией переданного импульса. Согласованная фильтрация часто делается в частотном диапазоне, потому что свертка во временном интервале эквивалентна умножению в частотном диапазоне, делая процесс быстрее. Поскольку начальный импульс инвертируется временем, отфильтрованный выход задерживается шириной импульса T, который составляет 1 секунду.

Показать это, реверс времени исходный линейный импульс FM и заполнить импульс нулями, чтобы сделать импульс и переданную форму волны той же длиной. Вычислите и постройте преобразование Фурье сопряженного комплексного числа инвертированного временем импульса и сигнала с шумом. Умножьте эти два импульса в частотном диапазоне и постройте продукт

pls_rev = [fliplr(pls) zeros(1, length(r) - length(pls))];
PLS = fft(conj(pls_rev));
R = fft(rplsnoise);
fft_conv = PLS.*R;
faxis = linspace(-fs/2,fs/2,length(PLS));

clf
subplot(3,1,1)
plot(faxis,abs(fftshift(PLS)))
title('FFT of Time-Reversed Transmitted Pulse')
xlim([-100 100])
ylabel('Magnitude (L.U)')

subplot(3,1,2)
plot(faxis,abs(fftshift(R)))
title('FFT of Noisy Signal')
xlim([-100 100])
ylabel('Magnitude (L.U)')

subplot(3,1,3)
plot(faxis,abs(fftshift(fft_conv)))
title("FFT of Multiplied Signals")
xlabel('Frequency (Hz)')
xlim([-100 100])
ylabel('Magnitude (L.U)')

Figure contains 3 axes objects. Axes object 1 with title FFT of Time-Reversed Transmitted Pulse contains an object of type line. Axes object 2 with title FFT of Noisy Signal contains an object of type line. Axes object 3 with title FFT of Multiplied Signals contains an object of type line.

Преобразуйте получившийся сигнал назад во временной интервал и постройте его.

pls_prod = ifft(fft_conv);

clf
plot((0:length(pls_prod)-1)/fs,abs(pls_prod))
xticks(lgs+T)
xlabel('Time (s)')
ylabel('Magnitude (L.U.)')
title('Matched Filter Output')

Figure contains an axes object. The axes object with title Matched Filter Output contains an object of type line.

Сокращение бокового лепестка Используя Windows

Чтобы сгладить боковые лепестки после согласованной фильтрации, примените окно к переданному импульсу перед инвертированием времени. Шаги в предыдущем разделе, как показывали, лучше визуализировали процесс согласованной фильтрации в частотном диапазоне. Функциональный fftfilt может быстро применить согласованную фильтрацию к функции.

n = fftfilt(fliplr(conj(pls)),rplsnoise);
n_win = fftfilt(fliplr(conj(pls).*taylorwin(length(pls), 30)'),rplsnoise);

clf
plot(tt,abs(n),tt,abs(n_win))
xticks(lgs+T)
xlabel('Time (s)')
ylabel('Magnitude (L.U.)')
legend('No Window', 'Hamming Window')
title('Matched Filter Output')

Figure contains an axes object. The axes object with title Matched Filter Output contains 2 objects of type line. These objects represent No Window, Hamming Window.

Доплер переключенные цели

Когда радарный импульс отражается от стационарной цели, импульс не модулируется и таким образом имеет большой ответ, когда переданная форма волны используется для согласованной фильтрации. Однако движущиеся цели отражают, что Доплер переключил импульсы, делая ответ из согласованной фильтрации менее сильным. Одно решение этого состоит в том, чтобы использовать банк согласованных фильтров с переключенными формами волны Доплера, которые могут использоваться, чтобы определить эффект Доплера отраженного импульса. Радиолокационная система может оценить целевую скорость, когда эффект Доплера пропорционален скорости.

Чтобы показать Доплеру, обрабатывающему использование банка согласованных фильтров, создайте ответ, который является Доплером, переключенным 5 Гц.

pls = chirp(t,0,T,f0, 'complex');
shift = 5;
pls_shift = chirp(t,shift,T,f0+shift,'complex');
rpls_shift = pulstran(tt,[lgs;ref*att.^-(lgs-t0)]',pls_shift,fs);
r = (randn(size(tt)) + 1j*randn(size(tt)))*std(pls)/db2mag(SNR);
rplsnoise_shift = r + rpls_shift;

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

filters = [];
for foffset = 0:4:10
    filters = [filters; chirp(t,0+foffset,T,f0+foffset,'complex')];
end

Графический вывод частотного диапазона исходного импульса и нового импульса показывает, что новый импульс возмещен 5 Гц.

clf
pspectrum([pls; pls_shift].',fs)
xlim([-100 100])

Figure contains an axes object. The axes object with title Fres = 2.5667 Hz contains 2 objects of type line.

Примените каждый согласованный фильтр к переключенному частотой импульсу и постройте выход.

matched_pls = fftfilt(fliplr(conj(pls_shift)),rplsnoise_shift);
filt_bank_pulses = fftfilt(fliplr(filters)',rplsnoise_shift);

clf
subplot(2,1,1)
plot(tt,abs(matched_pls),'Color',[0.6350, 0.0780, 0.1840])
title('Matched Filter (5 Hz)')
ylabel('Magnitude (L.U.)')
xticks(lgs+T)
subplot(2,1,2)
plot(tt, abs(filt_bank_pulses))
legend("0 Hz", "4 Hz", "8 Hz")
title('Matched Filter Bank')
xlabel('Time (s)')
ylabel('Magnitude (L.U.)')

Figure contains 2 axes objects. Axes object 1 with title Matched Filter (5 Hz) contains an object of type line. Axes object 2 with title Matched Filter Bank contains 3 objects of type line. These objects represent 0 Hz, 4 Hz, 8 Hz.

График со всеми тремя выходными параметрами показывает, что согласованный фильтр, переключенный на 4 Гц, имеет самый большой ответ, таким образом, радиолокационная система аппроксимировала бы эффект Доплера, чтобы быть приблизительно 4 Гц. Используя большее количество Доплеровских фильтров с меньшим сдвигом частоты интервалы могут помочь улучшить Доплеровское разрешение.

Этот метод Доплера, обрабатывающего, часто не используется из-за более медленной природы применения многих фильтров. Большая часть обработки сигналов по радарным возвратам сделана с кубом данных, где три измерения являются быстрыми выборками времени (ответ области значений в импульсе), количество элементов массива и медленные выборки времени (количество импульсов). После того, как система определяет область значений объекта, преобразование Фурье сделано через медленное измерение времени, чтобы определить Доплера цели. Для этой настройки метод куба данных не был бы идеален для Доплера, обрабатывающего, поскольку система передает только один импульс. Метод куба данных работает лучше всего, когда у вас есть многочисленные импульсы, который является, почему много радиолокационных систем используют последовательность импульсов или серию импульсов, а не одного импульса для Доплера области значений, обрабатывающего.

Смотрите также

| | |