The barrageJammer
объект моделирует широкополосную помеху. Область выхода barrageJammer
является комплексной белой Гауссовой шумовой последовательностью. Изменяемые свойства заградительного глушителя:
ERP
- Эффективная мощность излучения в ваттах
SamplesPerFrameSource
- Источник количества выборок на систему координат
SamplesPerFrame
- Количество выборок на систему координат
SeedSource
- Источник seed для генератора случайных чисел
Seed
- Seed для генератора случайных чисел
Действительная и мнимая части комплексной последовательности белого Гауссова шума имеют отклонение, равную 1/2 эффективной излучаемой степени в ваттах. Обозначите эффективную излучаемую степень в ваттах по P. Выход заградительного глушителя:
В этом уравнении x[n]
и y[n]
являются некоррелированными последовательностями нулевых Гауссовых случайных переменных с единичным отклонением.
Этот пример исследует статистические свойства выхода заградительного глушителя и то, как они относятся к эффективной излучаемой степени (ERP). Создайте заградительный глушитель, используя эффективную излучаемую степень 5000 Вт. Сгенерируйте выход с 500 выборками на систему координат. Затем вызовите step
функция один раз, чтобы сгенерировать одну систему координат комплексных данных. Использование histogram
функция, показать распределение выходных значений защемителя заграждения. The BarrageJammer
Системный объект использует генератор случайных чисел. В этом примере seed генератора случайных чисел фиксируется в иллюстративных целях и может быть удалено.
rng default jammer = 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
которые согласуются с предсказанным значением .
Этот пример демонстрирует, как симулировать эффект застревания заграждения на целевом эхо. Во-первых, создайте необходимые объекты. Вам нужны массив, передатчик, излучатель, цель, помеха, коллектор и приемник. Кроме того, вам нужно задать два пути распространения: один от массива до цели и назад, и другой путь от jammer до массива.
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 = 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')