資源描述:
《實(shí)驗(yàn)2 脈沖響應(yīng)法》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、實(shí)驗(yàn)2脈沖響應(yīng)法實(shí)驗(yàn)報(bào)告哈爾濱工業(yè)大學(xué)航天學(xué)院控制科學(xué)與工程系專業(yè):自動化班級:0904103姓名:邱國銳日期:2012年10月11日1.實(shí)驗(yàn)題目:脈沖響應(yīng)法______2.實(shí)驗(yàn)?zāi)康耐ㄟ^仿真實(shí)驗(yàn)掌握利用相關(guān)分析法辨識脈沖響應(yīng)的原理和方法。3.實(shí)驗(yàn)主要原理一個(gè)單入單出線性定常系統(tǒng)的動態(tài)特性可用它的脈沖響應(yīng)函數(shù)g(σ)來描述。這樣,只要記錄x(t)、y(t)的值,并計(jì)算它們的互相關(guān)函數(shù),即可求得脈沖響應(yīng)函數(shù)g(τ)。而在系統(tǒng)有正常輸入的情形下,辨識脈沖響應(yīng)的原理圖如下圖所示。4.實(shí)驗(yàn)對象或參數(shù)實(shí)驗(yàn)對象:Matlab實(shí)驗(yàn)參數(shù):,r和sigma由用戶輸入5.程
2、序框圖6.程序代碼functionex2%創(chuàng)建M序列Np=63;%循環(huán)周期delta_T=1;%時(shí)鐘節(jié)拍a=1;%幅度%初始化M序列M(1)=1;M(2)=0;M(3)=0;M(4)=1;M(5)=1;M(6)=0;M_XuLie(Np)=0;forn=1:Nptemp=xor(M(6),M(5));if(temp==0)M_XuLie(n)=a;elseM_XuLie(n)=-a;endM(6)=M(5);M(5)=M(4);M(4)=M(3);M(3)=M(2);M(2)=M(1);M(1)=temp;end%stairs(M_XuLie)%生成M
3、序列完畢r=3;%周期數(shù)u=repmat(M_XuLie,1,r+1);%將M序列賦給輸入,作為輸入信號%第一步,從u(k)得到x(k),y(k)K=120;T0=1;%采樣時(shí)間T1=8.3;T2=6.2;K1=K/(T1*T2);%初始化X(k),Y(k)為0K2=1x(63)=0;y(63)=0fork=2:63*4%取得x(k)序列x(k)=exp(-T0/T1)*x(k-1)+T1*K1*(1-exp(-T0/T1))*u(k-1)+T1*K1...*(T1*(exp(-T0/T1)-1)+T0)*(u(k)-u(k-1))/T0%取得y(k)
4、序列y(k)=exp(-T0/T2)*y(k-1)+T2*K2*(1-exp(-T0/T2))*x(k-1)+T2*K2...*(T2*(exp(-T0/T2)-1)+T0)*(x(k)-x(k-1))/T0end%獲取沒有白噪聲時(shí)候輸出完畢%作圖figure(1);plot(u,'r');holdon;plot(x,'k');plot(y,'b');legend('u(k)','x(k)','y(k)');%第二步,將白噪聲添加入輸出信號%產(chǎn)生白噪聲信號vfangcha=0.5;%隨意指定的方差v=fangcha*randn(1,63*4);%信號疊
5、加,輸出實(shí)際信號z(k)z=y+v;%figure(2);%plot(v,'m');%holdon;%plot(z,'y');figure(2);%打印無白噪聲污染信號plot(y,'b');holdon;%打印白噪聲信號plot(v,'m');%打印白噪聲污染后的信號plot(z,'k');legend('y(k)','v(k)','z(k)');%計(jì)算Rmz(k)fork=1:NpRmz(k)=0;%初始化為0fori=(Np+1):((r+1)*Np)Rmz(k)=Rmz(k)+u(i-k)*z(i);endRmz(k)=Rmz(k)/(r*Np
6、);end%計(jì)算cc=-Rmz(Np-1);%計(jì)算脈沖響應(yīng)估計(jì)值g1g1=Np*(Rmz+c)/((Np+1)*a^2*delta_T);%計(jì)算理論脈沖g0fork=1:Npg0(k)=K/(T1-T2)*(exp(-k*delta_T/T1)-exp(-k*delta_T/T2));end%計(jì)算脈沖響應(yīng)估計(jì)誤差delta_gdelta_g=sqrt(sum((g0-g1).^2)/sum(g0.^2));figure(3);plot(g0,'k');holdon;plot(g1,'r');%axis([0,100,0,10]);legend('脈沖響
7、應(yīng)理論值g0(k)','脈沖響應(yīng)估計(jì)值g1');7.實(shí)驗(yàn)結(jié)果及分析(1)輸如u,中間輸入x,無干擾輸入y(2)白噪聲標(biāo)準(zhǔn)差為1.5時(shí),理想輸出y,帶干擾的輸出z,干擾v:(3)輸入白噪聲標(biāo)準(zhǔn)差為1.5,周期數(shù)r為3時(shí),脈沖響應(yīng)理論值與估計(jì)值:脈沖響應(yīng)估計(jì)誤差:0.0467實(shí)驗(yàn)結(jié)論:本次試驗(yàn),驗(yàn)證了維納-霍夫積分方程的正確性,同時(shí)對M序列有了更深層次的理解,對相關(guān)分析法辨識脈沖響應(yīng)這種方法有了更多的了解和運(yùn)用。在程序中修改r的值,和方差得到的結(jié)果不同,在仿真中,看到,白噪聲方差越大,實(shí)際輸出結(jié)果的偏差也就越大,周期數(shù)越大脈沖響應(yīng)的估計(jì)值與理論值越接近,同
8、時(shí)會增大數(shù)據(jù)量??梢宰C明當(dāng)k很大時(shí),誤差趨于。同時(shí)本次實(shí)驗(yàn)也對MATLAB編程更加熟悉,對系統(tǒng)