收藏 分享(赏)

实验2 脉冲响应法.doc

上传人:ysd1539 文档编号:6187557 上传时间:2019-04-01 格式:DOC 页数:8 大小:275.50KB
下载 相关 举报
实验2  脉冲响应法.doc_第1页
第1页 / 共8页
实验2  脉冲响应法.doc_第2页
第2页 / 共8页
实验2  脉冲响应法.doc_第3页
第3页 / 共8页
实验2  脉冲响应法.doc_第4页
第4页 / 共8页
实验2  脉冲响应法.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、实验 2 脉冲响应法实验报告哈尔滨工业大学航天学院控制科学与工程系专业: 自动化 班级: 0904103 姓名: 邱国锐 日期: 2012 年 10 月 11 日1实验题目: 脉冲响应法 _2实验目的通过仿真实验掌握利用相关分析法辨识脉冲响应的原理和方法。3实验主要原理一个单入单出线性定常系统的动态特性可用它的脉冲响应函数 g() 来描述。这样,只要记录 x(t)、y(t)的值,并计算它们的互相关函数,即可求得脉冲响应函数 g()。而在系统有正常输入的情形下,辨识脉冲响应的原理图如下图所示。0 ()()ytgxtd则 00011lim()()lim()T Tttxttd上 式 两 端 同 乘

2、, 进 而 取 时 间 均 值 , 有0 xyxRgRd则这 就 是 著 名 的 维 纳 霍 夫 积 分 方 程 。0() (), () () ()xxxyxxytkkRgRdgk如 果 输 入 是 , 这 时 的 自 相 关 函 数 为则 根 据 维 纳 霍 夫 积 分 方 程 可 得或 者 白 噪 声4实验对象或参数实验对象:Matlab实验参数:,r 和 sigma 由用户输入Sec26Tec,38120,K5程序框图6程序代码function ex2%创建M序列Np=63;%循环周期delta_T = 1;%时钟节拍a=1;%幅度%初始化M序列M(1)=1;M(2)=0;M(3)=0;

3、M(4)=1;M(5)=1;M(6)=0;M_XuLie(Np) = 0;for n = 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序列完毕r = 3; % 周期数u=repmat(M_XuLie,1,r+1);%将M序列赋给输入,作为输入信号%第一步,从u(k)得到x(k),y(k)K =

4、120;T0 = 1; % 采样时间T1 = 8.3;T2 = 6.2;K1=K/(T1*T2);%初始化X(k),Y(k)为0K2=1x(63)=0;y(63)=0for k = 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)序列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

5、(k)-x(k-1)/T0end%获取没有白噪声时候输出完毕%作图figure(1);plot(u,r);hold on;plot(x,k);plot(y,b);legend(u(k),x(k),y(k);%第二步,将白噪声添加入输出信号%产生白噪声信号vfangcha = 0.5;%随意指定的方差v = fangcha * randn(1,63*4);%信号叠加,输出实际信号z(k)z = y + v;%figure(2);%plot(v,m);%hold on;%plot(z,y);figure(2);%打印无白噪声污染信号plot(y,b);hold on;%打印白噪声信号plot(v,

6、m);%打印白噪声污染后的信号plot(z,k);legend(y(k),v(k),z(k);%计算Rmz(k)for k = 1 : NpRmz(k)=0;%初始化为0for i = (Np + 1) : (r+1)*Np)Rmz(k)=Rmz(k) + u(i-k)*z(i);endRmz(k)=Rmz(k)/(r*Np);end%计算cc=-Rmz(Np - 1);%计算脉冲响应估计值g1g1=Np*(Rmz+c)/(Np+1)*a2*delta_T);%计算理论脉冲g0for k = 1: Npg0(k)=K/(T1-T2)*(exp(-k*delta_T/T1)-exp(-k*del

7、ta_T/T2);end%计算脉冲响应估计误差delta_gdelta_g=sqrt(sum(g0-g1).2)/sum(g0.2);figure(3);plot(g0,k);hold on;plot(g1,r);%axis(0,100,0,10);legend(脉冲响应理论值g0(k),脉冲响应估计值g1);7实验结果及分析(1)输如 u,中间输入 x,无干扰输入 y(2)白噪声标准差为 1.5 时,理想输出 y,带干扰的输出 z,干扰 v:(3)输入白噪声标准差为 1.5,周期数 r 为 3 时,脉冲响应理论值与估计值:脉冲响应估计误差: 0.0467实验结论:本次试验,验证了维纳-霍夫积分方程的正确性,同时对 M 序列有了更深层次的理解,对相关分析法辨识脉冲响应这种方法有了更多的了解和运用。在程序中修改 r 的值,和方差得到的结果不同,在仿真中,看到,白噪声方差越大,实际输出结果的偏差也就越大,周期数越大脉冲响应的估计值与理论值越接近,同时会增大数据量。可以证明当 k 很大时,误差趋于。同时本次实验也对 MATLAB 编程更加熟悉,对系统辨识这门科学有了更多的了解。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 中学实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报