matlab生成常用訊號(方波、三角波、隨機訊號、單位衝激)

bcbobo21cn發表於2020-11-14

使用Octave線上;

1 方波

y=square(t,DUTY)

產生一個時長為t、幅值為±1的週期性方波訊號,其中的DUTY表示佔空比,即在訊號的一個週期中正值所佔的百分比;

t=-2*pi/100:pi/500:2*pi/100;

y=square(2*pi*25*t,50);
plot(t,y);

2 三角波

三角波訊號的產生呼叫sawtooth(t,width),,width值為0-1之間;

t=0:pi/180:2*pi;
y=sawtooth(5*t,0.5);
plot(t,y,'r');     % t為橫座標,y為縱座標,'r' - 畫紅色線; 

3 隨機訊號

隨機訊號的產生呼叫rand(m,n),表示產生m行,n列的0-1之間的隨機數;

    t=1:1:60;
    N=length(t);
    zaoshengY=rand(1,N);
    plot(t,zaoshengY,'r');

4 單位衝激

"單位衝激函式"是,是一個“面積”等於1的理想化了的窄脈衝。圖示如下;

t=-5:0.01:5;
cjy=0*(t>=-5&t<0)+1*(t==3)+0*(t>0&t<=5);
plot(t,cjy)

    這個可以自己寫;t在某個值時y為1,t為其他值則y為0;

 

相關文章