
加噪声一般是对模拟信号加噪声
matlab有一个函数很方便加入高斯白噪声
x是信号序列,
y
=
awgn(x,snr)
在信号x中加入高斯白噪声,信噪比snr以db为单位。x的强度假定为0dbw。
比如:
x
=
sqrt(2)*sin(0:pi/8:6*pi)
y
=
awgn(x,10)
plot(x,'b')hold
on
plot(y,'r')
s=tf('s')G=40/(s*(s+2))
[Gm,Pm,Wcg,Wcp]=margin(G)
w=0.1:0.1:10000
[mag,phase]=bode(G,w)magdb=20*log10(mag)
phim1=45deta=10
phim=phim1-Pm+deta
bita=(1-sin(phim*pi/180))/(1+sin(phim*pi/180))
n=find(magdb+10*log10(1/bita)<=0.0001)
wc=n(1)
w1=(wc/10)*sqrt(bita)w2=(wc/10)/sqrt(bita)
numc=[1/w1,1]denc=[1/w2,1]
Gc=tf(numc,denc)
GmdB=20*log10(Gm)
GcG=Gc*G
[Gmc,Pmc,Wcgc,Wcpc]=margin(GcG)
GmcdB=20*log10(Gmc)
disp('未校正系统的开环传递函数和频率响应参数:h,r,wc')
G,[GmdB,Pm,Wcp]
disp('校正装置传递函数和校正后系统开环传递函数')
Gc,GcG
disp('校正后系统系统的频率响应参数:h,r,wc')
[GmcdB,Pmc,Wcpc]
disp('校正装置的参数T和bita值:T,bita')
T=1/w1[T,bita]
bode(G,GcG)
grid
sys1=feedback(G,1)sys2=feedback(GcG,1)
figure(2)step(sys1,sys2)
grid
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)