Прямоугольные импульсные формы волны

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

Задайте следующую функцию времени:

a(t)={10tτ0иначе

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

x(t)=a(t)sin(ωct)

where В обозначает несущую частоту. Обратите внимание, что 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.