exponenta event banner

Формы прямоугольных импульсов

Определение прямоугольной формы импульса

Определите следующую функцию времени:

a (t) ={10≤t≤τ0otherwise

Предположим, что радар передает сигнал следующего вида:

x (t) = a (t) sin (startct)

где λ c обозначает несущую частоту. Следует отметить, что a (t) представляет двухпозиционную прямоугольную амплитудную модуляцию несущей частоты. После демодуляции комплексная огибающая x (t) представляет собой прямоугольный импульс a (t) с действительным значением, имеющий длительность, составляющую λ секунд.

Создание прямоугольных импульсных сигналов

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

  • Частота отбора проб

  • Длительность импульса

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

  • Количество выборок или импульсов в каждом векторе, представляющем форму сигнала

График прямоугольной формы сигнала

В этом примере показано, как создать прямоугольную переменную формы импульса с помощью phased.RectangularWaveform . Пример также строит график импульса и находит полосу пропускания импульса.

Построение прямоугольной формы импульса длительностью 50 мкс, частотой дискретизации 1 МГц и частотой повторения импульсов (PRF) 10 кГц.

waveform = phased.RectangularWaveform('SampleRate',1e6,...
    'PulseWidth',50e-6,'PRF',10e3);

Постройте график одного прямоугольного импульса путем вызова plot непосредственно на переменной прямоугольной формы сигнала. plot является методом phased.RectangularWaveform. Этот метод создает аннотированный график формы импульса.

plot(waveform)

Figure contains an axes. The axes with title Rectangular pulse waveform: real part, pulse 1 contains an object of type line.

Найдите полосу пропускания прямоугольного импульса.

bw = bandwidth(waveform)
bw = 20000

Полоса пропускания, bw, прямоугольного импульса в герцах - это приблизительно обратная величина длительности импульса 1/sRect.PulseWidth.

Импульсы прямоугольной формы сигнала

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

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

Создайте прямоугольный импульс длительностью 100 мкс и PRF 1 кГц. Установите число импульсов на выходе равным двум.

waveform = phased.RectangularWaveform('PulseWidth',100e-6,...
    'PRF',1e3,'OutputFormat','Pulses','NumPulses',2);

Создайте копию прямоугольного импульса и измените ширину импульса в исходной форме сигнала на 10 мкс.

waveform2 = clone(waveform);
waveform.PulseWidth = 10e-6;

sRect и sRect1 теперь укажите различные прямоугольные импульсы, поскольку вы изменили длительность импульса waveform.

Выполните системные объекты для возврата двух импульсов прямоугольных импульсных сигналов.

y = waveform();
y2 = waveform2();

Постройте график реальной части сигналов.

totaldur = 2*1/waveform.PRF;
totnumsamp = totaldur*waveform.SampleRate;
t = unigrid(0,1/waveform.SampleRate,totaldur,'[)');
subplot(2,1,1)
plot(t.*1000,real(y))
axis([0 totaldur*1e3 0 1.5])
title('Two 10-\musec duration pulses (PRF = 1 kHz)')
set(gca,'XTick',0:0.2:totaldur*1e3)
subplot(2,1,2)
plot(t.*1000,real(y2))
axis([0 totaldur*1e3 0 1.5])
xlabel('Milliseconds')
title('Two 100-\musec duration pulses (PRF = 1 kHz)')
set(gca,'XTick',0:0.2:totaldur*1e3)

Figure contains 2 axes. Axes 1 with title Two 10-\musec duration pulses (PRF = 1 kHz) contains an object of type line. Axes 2 with title Two 100-\musec duration pulses (PRF = 1 kHz) contains an object of type line.