实验2---相关分析法辨识脉冲响应(共9页)_第1页
实验2---相关分析法辨识脉冲响应(共9页)_第2页
实验2---相关分析法辨识脉冲响应(共9页)_第3页
实验2---相关分析法辨识脉冲响应(共9页)_第4页
实验2---相关分析法辨识脉冲响应(共9页)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上实验2 相关分析法辨识脉冲响应实验报告哈尔滨工业大学航天学院控制科学与工程系专业: 自动化 班级: 姓名: 籍洋 日期: 2013 年 10 月 10 日1实验题目: 相关分析法辨识系统脉冲响应 2实验目的 通过仿真实验掌握利用相关分析法辨识脉冲响应的原理和方法。3实验主要原理一个单入单出线性定常系统的动态特性可用它的脉冲响应函数g()来描述。这样,只要记录x(t)、y(t)的值,并计算它们的互相关函数,即可求得脉冲响应函数g()。而在系统有正常输入的情形下,辨识脉冲响应的原理图如下图所示。4实验对象或参数相关分析法v(k)u(k)z(k)下图为本实验的原理框图。系统

2、的传递函数为,其中;分别为系统的输入和输出变量;为测量白噪声,服从正态分布,均值为零,方差为,记作;为系统的脉冲响应理论值,为系统脉冲响应估计值,为系统脉冲响应估计误差。系统的输入采用M序列(采用实验1中的M序列即可),输出受到白噪声的污染。根据过程的输入和输出数据,利用相关分析法计算出系统的脉冲响应值,并与系统的脉冲响应理论值比较,得到系统脉冲响应估计误差值,当时,应该有。u(k)x(k)y(k)u(k)y(k)1、模拟过程传递函数,获得过程的输入和输出数据(采样时间取1秒)。(1) 惯性环节其中,T为惯性环节的时间常数,K为惯性环节的静态放大倍数。若采样时间记作,则惯性环节的输出可写成:(

3、2) 传递函数仿真(串联) 令,则的表达框图为:2、互相关函数的计算其中,r为周期数,表示计算互相关函数所用的数据是从第二个周期开始的,目的是等过程仿真数据进入平稳状态。(可分别令r =1、3,对比仿真结果)3、c的补偿补偿量c应取,不能取。因为是周期函数,则有,故不能取。4、计算脉冲响应估计值 脉冲响应估计值 脉冲响应估计误差 u(k)y(k)5程序框图结束 绘图计算估计误差求理论脉冲响应g0求估计脉冲响应G求RmzZ=Y+V求出系统在M序列作用下的输出y产生M序列和白噪声v初始化参数T0,T1,T2,K 开始6程序代码function sigma= response(r)x=0,1,0,1

4、,1,0; %初始化Np=26-1; %M序列长度a=1; %振幅t=1;for i=1:Np*(r+1) y(i)=x(6); temp=xor(x(5),x(6); for j=5:-1:1 x(j+1)=x(j); end x(1)=temp; endfor i=1:Np*(r+1) if(y(i)=0) u(i)=a; else u(i)=-a; endend K=120;T1=8.3;T2=6.2;T0=1;K1=K/T1/T2;x(1)=0;y(1)=0;for k=2:Np*(r+1) x(k)=exp(-T0/T1)*x(k-1)+T1*K1*(1-exp(-T0/T1)*u(

5、k-1)+T1*K1*(T1*(exp(-T0/T1)-1)+T0)*(u(k)-u(k-1)/T0; y(k)=exp(-T0/T2)*y(k-1)+T2*(1-exp(-T0/T2)*x(k-1)+T1*(T2*(exp(-T0/T2)-1)+T0)*(x(k)-x(k-1)/T0; %未经白噪声污染的输出endv=whitenoise(1,length(y); %产生白噪声z=y+v; %系统实际输出for k=1:Np sum=0; for i=Np+1:(r+1)*Np sum=u(i-k)*z(i)+sum; end Rmz(k)=1/(r*Np)*sum;endc=-Rmz(Np

6、-1); %补偿量c%计算脉冲响应估计值for k=1:Np G(k)=Np/(Np+1)*a2*t)*(Rmz(k)+c); g0(k)=K/(T1-T2)*(exp(-k*t/T1)-exp(-k*t/T2);end%计算脉冲响应估计误差SUM1=0;SUM2=0;for k=1:Np e(k)=g0(k)-G(k); SUM1=e(k)2+SUM1; SUM2=g0(k)2+SUM2;endsigma=sqrt(SUM1/SUM2);step=0:Np-1;plot(step,Rmz(63),Rmz(1:62);hold on;plot(step,G(63),G(1:62),'r

7、');plot(step,g0(63),g0(1:62),'g');legend('互相关函数','脉冲响应估计值','脉冲响应理论值')end产生白噪声的函数:function sig=whitenoise(sigma,len) %白噪声产生函数,sigma为均方差,len为白噪声序列数据长度a=65539;M=;b=100;x(1)=12345;r(1)=x(1)/M; % 第一部分为产生0-1的均匀分布随机数for i=1:12*len x(i+1)=mod(a*x(i)+b,M); r(i+1)=x(i+1)/M;

8、end %-% n = 12;for i = 1 : len sig(i)=0; for j = 1 : n sig(i) = sig(i) + r(n * (i - 1) + j);%第二部分产生正态分布,方差为sigma的随机序列 endendsig = (sig - 12*0.5)*sigma; end 7实验结果及分析另r1, 白噪声均方差sigma=0.5,运行命令:sigma=response(1)运行结果如下:得sigma = 0.0416另r3,白噪声均方差sigma=0.5,运行命令:sigma=response(3,0.5)运行结果如下:得sigma = 0.0373图像如下:比较发现r=1和r=3时产生的曲线基本相似,但是脉冲响应误差在r=3时更小。另r1, 白噪声均方差sigma=1,运行命令:sigma= response(1,1)运行结果如下:得sigma = 0.0594比较第一个与第三个结果,发现脉冲响应的估计误差是随着输入白噪声标准差的增大而增大的,白噪声标准差越小,对系统的输出干扰越小.8结论在本次系统辨识的实验上机当

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论