exponenta event banner

Компенсатор импульсов антенны с адаптивным смещенным фазовым центром

Использование адаптивного компенсатора импульсов DPCA

Рассмотрим бортовую радиолокационную систему, которая должна подавлять захламление и, возможно, помехи помех. При любом из следующих условий можно выбрать адаптивный компенсатор импульсов DPCA (ADPCA) для подавления этих эффектов.

  • Помехи и другие интерференционные эффекты являются существенными. Компенсатор импульсов DPCA подвержен помехам, поскольку компенсатор импульсов DPCA не использует принятые данные.

  • Алгоритм инверсии матрицы выборки (SMI) неприменим из-за вычислительных затрат или быстро меняющейся среды.

phased.ADPCAPulseCanceller объект реализует компенсатор импульсов ADPCA. Этот компенсатор импульсов использует данные, принятые от двух последовательных импульсов, для оценки ковариационной матрицы пространственно-временных помех. В частности, объект позволяет указать:

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

  • Количество защитных ячеек, близких к целевым ячейкам. Алгоритм распознает защитные ячейки, чтобы предотвратить загрязнение целевой отдачи оценкой помех.

Адаптивный компенсатор импульсов DPCA для отклонения беспорядка и помех

В этом примере реализован адаптивный компенсатор импульсов DPCA для подавления беспорядков и помех. Сценарий идентичен сценарию в DPCA Pulse Canceller to Reject Clutter, за исключением того, что в месте (3.5e3,1e3,0) добавляется шум, эквивалентный стационарному широкополосному глушителю заграждения. Глушитель имеет эффективную излучаемую мощность 1 кВт.

Для повторения сценария для удобства бортовая радиолокационная платформа представляет собой шестиэлементную ULA, работающую на частоте 4 ГГц. Элементы матрицы разнесены на половину длины волны несущей частоты 4 ГГц. Радар излучает десять прямоугольных импульсов длительностью два мкс с PRF 5 кГц. Платформа движется вдоль оси массива со скоростью, равной половине произведения шага элемента и PRF. Подавление импульсов ADPCA применимо, поскольку vT = d/2, где

  • v - скорость платформы;

  • T представляет интервал повторения импульсов

  • d - межэлементный интервал массива;

Мишень имеет неплавающий RCS 1 квадратный метр и движется с вектором постоянной скорости (15,15,0).

PRF = 5e3;
fc = 4e9;
fs = 1e6;
c = physconst('LightSpeed');
antenna = phased.IsotropicAntennaElement...
    ('FrequencyRange',[8e8 5e9],'BackBaffled',true);
lambda = c/fc;
array = phased.ULA(6,'Element',antenna,'ElementSpacing',lambda/2);
waveform = phased.RectangularWaveform('PulseWidth', 2e-6,...
    'PRF',PRF,'SampleRate',fs,'NumPulses',1);
radiator = phased.Radiator('Sensor',array,...
    'PropagationSpeed',c,...
    'OperatingFrequency',fc);
collector = phased.Collector('Sensor',array,...
    'PropagationSpeed',c,...
    'OperatingFrequency',fc);
vy = (array.ElementSpacing * PRF)/2;
transmitterplatform = phased.Platform('InitialPosition',[0;0;3e3],...
    'Velocity',[0;vy;0]);
% Load simulated constant gamma clutter
load clutterdata
target = phased.RadarTarget('MeanRCS',1,...
    'Model','Nonfluctuating','OperatingFrequency',fc);
targetplatform = phased.Platform('InitialPosition',[5e3; 5e3; 0],...
    'Velocity',[15;15;0]);
% add jammer signal with 200 samples per frame and an ERP of 1000 W.
jamsig = sqrt(1000)*randn(200,1);

jammerplatform = phased.Platform(...
    'InitialPosition',[3.5e3; 1e3; 0],'Velocity',[0;0;0]);
channel = phased.FreeSpace('OperatingFrequency',fc,...
    'TwoWayPropagation',false,'SampleRate',fs);
receiver = phased.ReceiverPreamp('NoiseFigure',0,...
    'EnableInputPort',true,'SampleRate',fs,'Gain',40);
transmitter = phased.Transmitter('PeakPower',1e4,...
    'InUseOutputPort',true,'Gain',40);

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

NumPulses = 10;
wav = waveform();
M = fs/PRF;
N = array.NumElements;
rxsig = zeros(M,N,NumPulses);
%csig = zeros(M,N,NumPulses);
jsig = zeros(M,N,NumPulses);
fasttime = unigrid(0,1/fs,1/PRF,'[)');
rangebins = (c * fasttime)/2;
receiver.SeedSource = 'Property';
receiver.Seed = 56113;
jamloc = jammerplatform.InitialPosition;
for n = 1:NumPulses
    [txloc,txvel] = transmitterplatform(1/PRF); % move transmitter
    [tgtloc,tgtvel] = targetplatform(1/PRF); % move target
    [~,tgtang] = rangeangle(tgtloc,txloc); % get angle to target
    [txsig,txstatus] = transmitter(wav); % transmit pulse

    txsig = radiator(txsig,tgtang); % radiate pulse
    txsig = channel(txsig,txloc,tgtloc,...
       txvel,tgtvel); % propagate pulse to target
    txsig = target(txsig); % reflect off target
    txsig = channel(txsig,tgtloc,txloc,...
       tgtvel,txvel); % propagate to array
    rxsig(:,:,n) = collector(txsig,tgtang); % collect pulse
    
    [~,jamang] = rangeangle(jamloc,txloc); % angle from jammer to transmitter
    jamsig = channel(jamsig,jamloc,txloc,...
       [0;0;0],txvel); % propagate jammer signal
    jsig(:,:,n) = collector(jamsig,jamang); % collect jammer signal
    
    rxsig(:,:,n) = receiver(...
        rxsig(:,:,n) + csig(:,:,n) + jsig(:,:,n),...
        ~txstatus); % receive pulse plus clutter return plus jammer signal   
end

Определите целевой диапазон, затвор диапазона и двусторонний доплеровский сдвиг.

sp = radialspeed(tgtloc, targetplatform.Velocity, ...
    txloc, transmitterplatform.Velocity);
tgtdoppler = 2*speed2dop(sp,lambda);
tgtLocation = global2localcoord(tgtloc,'rs',txloc);
tgtazang = tgtLocation(1);
tgtelang = tgtLocation(2);
tgtrng = tgtLocation(3);
tgtcell = val2ind(tgtrng,c/(2*fs));

Обработка откликов массива с помощью неадаптивного компенсатора импульсов DPCA. Для этого создайте объект DPCA и примените его к принятым сигналам.

canceller = phased.DPCACanceller('SensorArray',array,'PRF',PRF,...
    'PropagationSpeed',c,...
    'OperatingFrequency',fc,...
    'Direction',[0;0],'Doppler',tgtdoppler,...
    'WeightsOutputPort',true);
[y,w] = canceller(rxsig,tgtcell);

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

plot([tgtrng/1e3,tgtrng/1e3],[0 7e-2],'-.',rangebins/1e3,abs(y))
axis tight
xlabel('Range (km)')
ylabel('Magnitude')
title('DPCA Canceller Output with Jamming')

Figure contains an axes. The axes with title DPCA Canceller Output with Jamming contains 2 objects of type line.

Примените адаптивный компенсатор импульсов DPCA. Используйте 100 тренировочных ячеек и 4 защитные ячейки, по две на каждой стороне затвора целевого диапазона.

canceller = phased.ADPCACanceller('SensorArray',array,'PRF',PRF,...
    'PropagationSpeed',c,...
    'OperatingFrequency',fc,...
    'Direction',[0;0],'Doppler',tgtdoppler,...
    'WeightsOutputPort',true,'NumGuardCells',4,...
    'NumTrainingCells',100);
[y_adpca,w_adpca] = canceller(rxsig,tgtcell);

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

plot([tgtrng/1e3,tgtrng/1e3],[0 4e-7],'-.',rangebins/1e3,abs(y_adpca))
axis tight
title('ADPCA Canceller Output with Jamming')
xlabel('Range (km)')
ylabel('Magnitude')

Figure contains an axes. The axes with title ADPCA Canceller Output with Jamming contains 2 objects of type line.

Осмотрите углово-доплеровскую реакцию. Обратите внимание на наличие гребня загромождения в плоскости угла-доплера и нулевого значения в широком угле глушителя для всех частот доплера.

angdopplerersponse = phased.AngleDopplerResponse('SensorArray',array,...
    'OperatingFrequency',fc,...
    'PropagationSpeed',c,...
    'PRF',PRF,'ElevationAngle',tgtelang);
plotResponse(angdopplerersponse,w_adpca)
title('Angle-Doppler Response with ADPCA Pulse Cancellation')
text(az2broadside(jamang(1),jamang(2)) + 10,...
    0,'\leftarrow Interference Null')

Figure contains an axes. The axes with title Angle-Doppler Response with ADPCA Pulse Cancellation contains 2 objects of type image, text.