How to draw a pulse train

조회 수: 5(최근 30일)
Sadiq Akbar
Sadiq Akbar 2022년 3월 15일
댓글: Scott MacKenzie 2022년 3월 17일
I want to draw a pulse train in Matlab like the one shown blue in attached picture. The duration of each pulse is Tp and there are M=199 zeros in between two consective pulses. The PRI of the pulse train is 200Tp. Then I want to decompose each pulse into 7 small pulses of amplitude +1 and -1 (i.e., 1Tp=7Tc where Tc=28ns is the duration of small pulse) like shown white in the attached picture.
  댓글 수: 1
Sadiq Akbar
Sadiq Akbar 2022년 3월 16일
I write a code that draws a square train. The code is as below:
clear all
clc
fy=100;
wy=2*pi*fy;
duy=0.02;
fs=20000;
dt=1/fs;
t=-(duy-dt):dt:(duy-dt);
A=1.5;
y=A*square(wy*t);
plot(t,y,'k')
axis([-duy duy -2.5 2.5])
xlabel('Seconds')
title('Square signal')
Now I want to replace each -ve pulse with M=199 zeros. Can anyboy help me how to do that?

댓글을 달려면 로그인하십시오.

답변(1개)

Scott MacKenzie
Scott MacKenzie 2022년 3월 16일
편집: Scott MacKenzie 2022년 3월 17일
It seems you want to replace the negative portion of the pulse with zeros. Like this, perhaps:
fy=100;
wy=2*pi*fy;
duy=0.02;
fs=20000;
dt=1/fs;
t=-(duy-dt):dt:(duy-dt);
A=1.5;
y=A*square(wy*t);
subplot(1,2,1);
plot(t,y,'k')
axis([-duy duy -2.5 2.5])
xlabel('Seconds')
title('Square signal')
subplot(1,2,2);
y(y<0)=0;
plot(t,y,'k')
axis([-duy duy -2.5 2.5])
xlabel('Seconds')
title('Square signal')
  댓글 수: 6
Scott MacKenzie
Scott MacKenzie 2022년 3월 17일
You're welcome. Good luck.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by