Этот пример показывает проект радара перемещения целевой индикации (MTI), чтобы смягчить помеху и идентифицировать движущиеся цели. Для радиолокационной системы помеха относится к полученному эху от экологических рассеяний кроме целей, таких как земля, море или дождь. Эхо помехи может быть на много порядков больше, чем целевое эхо. Радар MTI использует относительно высокие Доплеровские частоты перемещения целей, чтобы подавить эхо помехи, которое обычно имеет нулевые или очень низкие Доплеровские частоты.
Типичный радар MTI использует фильтр высоких частот, чтобы удалить энергию на низких Доплеровских частотах. Поскольку частотная характеристика КИХ-фильтра высоких частот является периодической, некоторая энергия на высоких Доплеровских частотах также удалена. Цели на тех высоких Доплеровских частотах таким образом не будут обнаруживаемы радаром. Эта проблема называется слепой проблемой скорости. В этом примере показано, как использовать метод, названный поразил PRFs, чтобы решить слепую проблему скорости.
Во-первых, задайте компоненты радиолокационной системы. Особое внимание этого примера находится на обработке MTI, таким образом, мы будем использовать радиолокационную систему, созданную в примере, Проектируя Основной Моностатический Импульсный Радар. Читатели поощряются исследовать детали разработки радарных систем через тот пример. Измените высоту антенны в 100 метров, чтобы симулировать радар, смонтированный сверх создания. Заметьте, что PRF в системе составляет приблизительно 30 кГц, который соответствует максимальной однозначной области значений 5 км.
load BasicMonostaticRadarExampleData;
sensorheight = 100;
sensormotion.InitialPosition = [0 0 sensorheight]';
prf = waveform.PRF;
Получите частоту дискретизации, рабочую частоту и скорость распространения.
fs = waveform.SampleRate; fc = radiator.OperatingFrequency; wavespeed = radiator.PropagationSpeed;
Во многих системах MTI, особенно низкопроизводительных единицах, источник питания передатчика является магнетроном. Таким образом передатчик добавляет случайную фазу в каждый переданный импульс. Следовательно, часто необходимо восстановить когерентность в получателе. Такая настройка упоминается, когда когерентный на получают. В этих системах получатель блокирует на случайное, поэтапно осуществленное добавленный передатчиком для каждого импульса. Затем получатель удаляет удар фазы из полученных выборок, полученных в соответствующем импульсном интервале. Мы можем симулировать когерентное на, получают систему путем установки передатчика и получателя как следующее:
transmitter.CoherentOnTransmit = false; transmitter.PhaseNoiseOutputPort = true; receiver.PhaseNoiseInputPort = true;
Затем задайте две движущихся цели.
Первая цель расположена в положении [1600 0 1300]. Учитывая радарное положение, показанное в предыдущих разделах, это имеет область значений 2 км от радара. Скорость цели [100 80 0], соответствуя радиальной скорости-80 м/с относительно радара. Цель имеет радарное сечение 25 квадратных метров.
Вторая цель расположена в положении [2900 0 800], соответствуя области значений 3 км от радара. Установите скорость этой цели к слепой скорости, где Доплеровская подпись цели искажается к импульсной частоте повторения. Эта установка препятствует тому, чтобы радар MTI обнаружил цель. Мы используем dop2speed () функция, чтобы вычислить слепую скорость, которая имеет соответствующую Доплеровскую частоту, равную импульсной частоте повторения.
wavelength = wavespeed/fc; blindspd = dop2speed(prf,wavelength)/2; % half to compensate round trip tgtpos = [[1600 0 1300]',[2900 0 800]']; tgtvel = [[100 80 0]',[-blindspd 0 0]']; tgtmotion = phased.Platform('InitialPosition',tgtpos,'Velocity',tgtvel); tgtrcs = [25 25]; target = phased.RadarTarget('MeanRCS',tgtrcs,'OperatingFrequency',fc);
Сигнал помехи был сгенерирован с помощью самой простой модели помехи, постоянной гамма модели, с гамма набором значений к-20 дБ. Такое гамма значение типично для помехи равнины. Примите, что закрашенные фигуры помехи существуют во всех областях значений, и что каждая закрашенная фигура имеет ширину азимута 10 градусов. Также примите, что основной луч радара указывает горизонтально. Обратите внимание на то, что радар не перемещается.
trgamma = surfacegamma('flatland'); clutter = phased.ConstantGammaClutter('Sensor',antenna,... 'PropagationSpeed',radiator.PropagationSpeed,... 'OperatingFrequency',radiator.OperatingFrequency,... 'SampleRate',waveform.SampleRate,'TransmitSignalInputPort',true,... 'PRF',waveform.PRF,'Gamma',trgamma,'PlatformHeight',sensorheight,... 'PlatformSpeed',0,'PlatformDirection',[0;0],... 'BroadsideDepressionAngle',0,'MaximumRange',5000,... 'AzimuthCoverage',360,'PatchAzimuthWidth',10,... 'SeedSource','Property','Seed',2011);
Теперь мы симулируем 10 полученных импульсов для радара и целей, заданных ранее.
pulsenum = 10; % Set the seed of the receiver to duplicate results receiver.SeedSource = 'Property'; receiver.Seed = 2010; rxPulse = helperMTISimulate(waveform,transmitter,receiver,... radiator,collector,sensormotion,... target,tgtmotion,clutter,pulsenum);
Мы затем передаем полученный сигнал через согласованный фильтр.
matchingcoeff = getMatchedFilter(waveform);
matchedfilter = phased.MatchedFilter('Coefficients',matchingcoeff);
mfiltOut = matchedfilter(rxPulse);
matchingdelay = size(matchingcoeff,1)-1;
mfiltOut = buffer(mfiltOut(matchingdelay+1:end),size(mfiltOut,1));
MTI обрабатывающее использование MTI фильтрует, чтобы удалить низкочастотные компоненты в медленных последовательностях времени. Поскольку помеха земли обычно не перемещается, удалять низкочастотные компоненты может эффективно подавить ее. Компенсатор с тремя импульсами является популярным и простым фильтром MTI. Компенсатор является все-нулевым КИХ-фильтром с коэффициентами фильтра [1 - 2 1].
h = [1 -2 1]; mtiseq = filter(h,1,mfiltOut,[],2);
Используйте некогерентное импульсное интегрирование, чтобы объединить медленные последовательности времени. Исключите первые два импульса, потому что они находятся в переходном периоде фильтра MTI.
mtiseq = pulsint(mtiseq(:,3:end));
% For comparison, also integrate the matched filter output
mfiltOut = pulsint(mfiltOut(:,3:end));
% Calculate the range for each fast time sample fast_time_grid = (0:size(mfiltOut,1)-1)/fs; rangeidx = wavespeed*fast_time_grid/2; % Plot the received pulse energy again range plot(rangeidx,pow2db(mfiltOut.^2),'r--',... rangeidx,pow2db(mtiseq.^2),'b-' ); grid on; title('Fast Time Sequences Using a Uniform PRF'); xlabel('Range (m)'); ylabel('Power (dB)'); legend('Before MTI filter','After MTI filter');
Вспомните, что существует две цели (на уровне 2 км и 3 км). В случае перед фильтрацией MTI обе цели прокладываются под землей в помехе, возвращается. Пик на уровне 100 м является прямым путем, возвращаются из земли прямо ниже радара. Заметьте, что степень уменьшается, когда область значений увеличивается, который происходит из-за потери распространения сигнала.
После фильтрации MTI большинство возвратов помехи удалено за исключением прямого пика пути. Уровень шума не является теперь больше функцией области значений, таким образом, шум является теперь шумом получателя, а не шумом помехи. Это изменение показывает возможность подавления помехи компенсатора с тремя импульсами. В 2-километровой области значений мы видим, что пик представляет первую цель. Однако нет никакого пика в 3-километровой области значений, чтобы представлять вторую цель. Пик исчезает, потому что компенсатор с тремя импульсами подавляет вторую цель, которая перемещается на слепой скорости компенсатора.
Чтобы лучше изучить слепую проблему скорости, давайте посмотрим на частотную характеристику компенсатора с тремя импульсами.
f = linspace(0,prf*9,1000); hresp = freqz(h,1,f,prf); plot(f/1000,20*log10(abs(hresp))); grid on; xlabel('Doppler Frequency (kHz)'); ylabel('Magnitude (dB)'); title('Frequency Response of the Three-Pulse Canceller');
Заметьте, что повторение аннулирует в частотной характеристике. Пустые указатели соответствуют Доплеровским частотам слепых скоростей. Цели с этими Доплеровскими частотами отменяются компенсатором с тремя импульсами. График показывает, что пустые указатели происходят в целочисленных множителях PRF (приблизительно 30 кГц, 60 кГц...). Если мы можем удалить эти пустые указатели или отодвинуть их из Доплеровской области частоты радарных технических требований, мы можем избежать слепой проблемы скорости.
Одно решение слепой проблемы скорости состоит в том, чтобы использовать неоднородный PRF или пораженный PRFs. Смежные импульсы передаются на различных импульсных частотах повторения. Такая настройка продвигает нижнюю границу слепых скоростей к намного более высокому значению. Чтобы проиллюстрировать эту идею, мы будем использовать 2D ступенчатый PRF и строить частотную характеристику компенсатора с тремя импульсами.
Давайте выберем второй PRF на уровне приблизительно 25 кГц, который соответствует максимальной однозначной области значений 6 км.
prf = wavespeed./(2*[6000 5000]); % Calculate the magnitude frequency response for the three-pulse canceller pf1 = @(f)(1-2*exp(1j*2*pi/prf(1)*f)+exp(1j*2*pi*2/prf(1)*f)); pf2 = @(f)(1-2*exp(1j*2*pi/prf(2)*f)+exp(1j*2*pi*2/prf(2)*f)); sfq = (abs(pf1(f)).^2 + abs(pf2(f)).^2)/2; % Plot the frequency response hold on; plot(f/1000,pow2db(sfq),'r--'); ylim([-50, 30]); legend('Uniform PRF','2-staggered PRF');
Из графика ступенчатого PRFs мы видим, что первая слепая скорость соответствует Доплеровской частоте 150 кГц, в пять раз больше, чем универсальный случай PRF. Таким образом цель с 30 кГц Доплеровская частота не будет подавлена.
Теперь симулируйте отраженные сигналы от целей с помощью ступенчатого PRFs.
% Assign the new PRF release(waveform); waveform.PRF = prf; release(clutter); clutter.PRF = prf; % Reset noise seed release(receiver); receiver.Seed = 2010; % Reset platform position reset(sensormotion); reset(tgtmotion); % Simulate target return rxPulse = helperMTISimulate(waveform,transmitter,receiver,... radiator,collector,sensormotion,... target,tgtmotion,clutter,pulsenum);
Мы обрабатываем импульсы как прежде первой передачей их через согласованный фильтр и затем интеграцию импульсов некогерентно.
mfiltOut = matchedfilter(rxPulse); % Use the same three-pulse canceller to suppress the clutter. mtiseq = filter(h,1,mfiltOut,[],2); % Noncoherent integration mtiseq = pulsint(mtiseq(:,3:end)); mfiltOut = pulsint(mfiltOut(:,3:end)); % Calculate the range for each fast time sample fast_time_grid = (0:size(mfiltOut,1)-1)/fs; rangeidx = wavespeed*fast_time_grid/2; % Plot the fast time sequences against range. clf; plot(rangeidx,pow2db(mfiltOut.^2),'r--',... rangeidx,pow2db(mtiseq.^2),'b-' ); grid on; title('Fast Time Sequences Using Staggered PRFs'); xlabel('Range (m)'); ylabel('Power (dB)'); legend('Before MTI filter','After MTI filter');
График показывает, что обе цели теперь обнаруживаемы после фильтрации MTI, и помеха также удалена.
С очень простыми операциями обработка MTI может быть эффективной при подавлении низкоскоростной помехи. Универсальная форма волны PRF пропустит цели на слепых скоростях, но эта проблема может быть решена при помощи ступенчатого PRFs. Для помех, имеющих широкий спектр, обработка MTI могла быть плохой. Тот тип помехи может быть подавлен с помощью пространственно-временной адаптивной обработки. Смотрите Введение в качестве примера в Пространственно-временную Адаптивную Обработку для деталей.
Ссылка: Марк А. Ричардс, основные принципы радарной обработки сигналов, McGraw-Hill, 2005.