Заградительный передатчик помех

Поддержка моделирования заградительного передатчика помех

Объектные модели phased.BarrageJammer широкополосный передатчик помех. Вывод phased.BarrageJammer является комплексной белой Гауссовой шумовой последовательностью. Модифицируемые свойства заградительного передатчика помех:

  • ERP — Эффективная излучаемая мощность в ваттах

  • SamplesPerFrameSource — Источник количества выборок на кадр

  • SamplesPerFrame — Количество выборок на кадр

  • SeedSource — Источник seed для генератора случайных чисел

  • Seed — Отберите для генератора случайных чисел

Действительные и мнимые части комплексной белой Гауссовой шумовой последовательности у каждого есть отклонение, равное 1/2 эффективная излучаемая мощность в ваттах. Обозначьте эффективную излучаемую мощность в ваттах P. Заградительный передатчик помех вывод:

w[n]=P2x[n]+jP2y[n]

В этом уравнении x[n] и y[n] являются некоррелироваными последовательностями нулевых средних Гауссовых случайных переменных с модульным отклонением.

Образцовый заградительный передатчик помех Вывод

Этот пример исследует статистические свойства заградительного передатчика помех вывод и как они относятся к эффективной излучаемой мощности (ERP). Создайте заградительный передатчик помех с помощью эффективной излучаемой мощности 5 000 ватт. Сгенерируйте вывод на 500 выборках на кадр. Затем вызовите функцию step однажды, чтобы сгенерировать один кадр комплексных данных. Используя функцию histogram, покажите распределение заградительных выходных значений передатчика помех. Системный объект BarrageJammer использует генератор случайных чисел. В этом примере seed генератора случайных чисел фиксируется в иллюстративных целях и может быть удален.

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным синтаксисом step. Например, замените myObject(x) на step(myObject,x).

rng default
jammer = phased.BarrageJammer('ERP',5000,...
    'SamplesPerFrame',500);
y = jammer();
subplot(2,1,1)
histogram(real(y))
title('Histogram of Real Part')
subplot(2,1,2)
histogram(imag(y))
title('Histogram of Imaginary Part')
xlabel('Watts')

Средние значения действительных и мнимых частей

mean(real(y))
ans = -1.0961
mean(imag(y))
ans = -2.1671

которые являются эффективно нулевыми. Стандартные отклонения действительных и мнимых частей

std(real(y))
ans = 50.1950
std(imag(y))
ans = 49.7448

которые соглашаются с ожидаемым значением ERP/2.

Образцовый эффект заградительного передатчика помех на целевом эхе

Этот пример демонстрирует, как моделировать эффект заградительного передатчика помех на целевом эхе. Во-первых, создайте требуемые объекты. Вам нужны массив, передатчик, теплоотвод, цель, передатчик помех, коллектор и получатель. Кроме того, необходимо задать два пути к распространению: один от массива до цели и назад, и другой путь от передатчика помех до массива.

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным синтаксисом step. Например, замените myObject(x) на step(myObject,x).

antenna = phased.ULA(4); 
Fs = 1e6;
fc = 1e9;
rng('default')
waveform = phased.RectangularWaveform('PulseWidth',100e-6,...
    'PRF',1e3,'NumPulses',5,'SampleRate',Fs);
transmitter = phased.Transmitter('PeakPower',1e4,'Gain',20,...
    'InUseOutputPort',true);
radiator = phased.Radiator('Sensor',antenna,'OperatingFrequency',fc);
jammer = phased.BarrageJammer('ERP',1000,...
    'SamplesPerFrame',waveform.NumPulses*waveform.SampleRate/waveform.PRF);
target = phased.RadarTarget('Model','Nonfluctuating',...
    'MeanRCS',1,'OperatingFrequency',fc);
targetchannel = phased.FreeSpace('TwoWayPropagation',true,...
    'SampleRate',Fs,'OperatingFrequency', fc);
jammerchannel = phased.FreeSpace('TwoWayPropagation',false,...
    'SampleRate',Fs,'OperatingFrequency', fc);
collector = phased.Collector('Sensor',antenna,...
    'OperatingFrequency',fc);
amplifier = phased.ReceiverPreamp('EnableInputPort',true);

Примите, что массив, цель и передатчик помех являются стационарными. Массив расположен в глобальном начале координат, (0,0,0). Цель расположена в (1000,500,0), и передатчик помех расположен в (2000 2000 100). Определите направления от массива до цели и передатчика помех.

targetloc = [1000 ; 500; 0];
jammerloc = [2000; 2000; 100];
[~,tgtang] = rangeangle(targetloc);
[~,jamang] = rangeangle(jammerloc);

Наконец, передайте форму волны меандра к цели, отразите его от цели и соберите эхо в массиве. Одновременно, передатчик помех передает создающий затор сигнал к массиву. Создающий затор сигнал и эхо смешаны в получателе. Сгенерируйте форму волны

wav = waveform();
% Transmit waveform
[wav,txstatus] = transmitter(wav);
% Radiate pulse toward the target
wav = radiator(wav,tgtang);
% Propagate pulse toward the target
wav = targetchannel(wav,[0;0;0],targetloc,[0;0;0],[0;0;0]);
% Reflect it off the target
wav = target(wav);
% Collect the echo
wav = collector(wav,tgtang);

Сгенерируйте создающий затор сигнал

jamsig = jammer();
% Propagate the jamming signal to the array
jamsig = jammerchannel(jamsig,jammerloc,[0;0;0],[0;0;0],[0;0;0]);
% Collect the jamming signal
jamsig = collector(jamsig,jamang);

% Receive target echo alone and target echo + jamming signal
pulsewave = amplifier(wav,~txstatus);
pulsewave_jamsig = amplifier(wav + jamsig,~txstatus);

Постройте результат и сравните его с полученной формой волны с и без затора.

subplot(2,1,1)
t = unigrid(0,1/Fs,size(pulsewave,1)*1/Fs,'[)');
plot(t*1000,abs(pulsewave(:,1)))
title('Magnitudes of Pulse Waveform Without Jamming--Element 1')
ylabel('Magnitude')
subplot(2,1,2)
plot(t*1000,abs(pulsewave_jamsig(:,1)))
title('Magnitudes of Pulse Waveform with Jamming--Element 1')
xlabel('millisec')
ylabel('Magnitude')