Определите следующую функцию времени:
={10≤t≤τ0otherwise
Предположим, что радар передает сигнал следующего вида:
(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)

Найдите полосу пропускания прямоугольного импульса.
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)
