实验一利用相关函数辨识脉冲响应分析解析(共8页)_第1页
实验一利用相关函数辨识脉冲响应分析解析(共8页)_第2页
实验一利用相关函数辨识脉冲响应分析解析(共8页)_第3页
实验一利用相关函数辨识脉冲响应分析解析(共8页)_第4页
实验一利用相关函数辨识脉冲响应分析解析(共8页)_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上北京工商大学系统辨识课程实验报告(2014-2015 1学期)课程名称 : 系统辨识 题 目 : 利用相关分析法辨识脉冲响应 专业班级 : 控制工程 学生姓名 : 指导教师 : 刘 刘 成 绩 : 2015年1月18日一、实验目的通过仿真实验掌握利用相关分析法辨识脉冲响应的原理和方法。二、实验内容 图1为本实验的原理框图。过程传递函数为,其中;分别为过程的输入和输出变量;为过程测量白噪声,服从正态分布,均值为零,方差为,记作;为过程的脉冲响应理论值,为过程脉冲响应估计值,为过程脉冲响应估计误差。 过程的输入驱动采用M序列,输出受到白噪声的污染。根据过程的输入和输出数据

2、,利用相关分析算法根据输出过程的脉冲响应值,并与过程脉冲响应理论值比较,得到过程脉冲响应估计误差值,当时,应该有。v(k)z(k)u(k)y(k)相关分析法图1 相关分析法辨识脉冲响应原理框图三、实验要求进行方案设计,模拟过程传递函数,获得输出数据,用M序列作为辨识的输入信号,噪声采用标准正态分布的白噪声,计算互相关函数,不同l值的脉冲响应估计值、脉冲响应理论值和脉冲响应估计误差,计算信噪比,画出实验流程图,用MATLAB编程实现。4、 实验原理1、采用串联传递函数仿真 u(k)x(k)y(k) 令,则的表达框图为:2、一个单输入单输出线性定常系统的动态特性可用它的脉冲响应函数g()来描述。

3、这样,只要记录x(t)、y(t)的值,并计算它们的互相关函数,即可求得脉冲响应函数g()。 而在系统有正常输入的情形下,辨识脉冲响应的原理图如下图所示。五、实验框图6、 实验代码function ex2clc;clear all;close all;%创建M序列Np=63;%循环周期delta_T = 1;%时钟节拍a=1;%幅度M(1)=1;M(2)=0;M(3)=0;M(4)=1;M(5)=1;M(6)=0;%初始化M序列M_XuLie(Np) = 0;for n = 1 : Np temp = xor(M(6), M(5); if(temp = 0) M_XuLie(n) = a; el

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

5、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(k)-x(k-1)/T0end%获取没有白噪声时候输出完毕%作图figure(1);plot(u,'r');hold on;plot(x,'k');plot(y,'b'

6、);legend('u(k)','x(k)','y(k)');%第二步,将白噪声添加入输出信号%产生白噪声信号vfangcha = 0.5;%随意指定的方差v = fangcha * randn(1,63*4);%信号叠加,输出实际信号z(k)z = y + v;figure(2);%打印无白噪声污染信号plot(y,'b');hold on;%打印白噪声信号plot(v,'m');%打印白噪声污染后的信号plot(z,'k');legend('y(k)','v(k)'

7、;,'z(k)');%计算Rmz(k)for k = 1 : Np Rmz(k)=0;%初始化为0 for i = (Np + 1) : (r+1)*Np) Rmz(k)=Rmz(k) + u(i-k)*z(i); end Rmz(k)=Rmz(k)/(r*Np); end%计算cc=-Rmz(Np - 1);%计算脉冲响应估计值g1g1=Np*(Rmz+c)/(Np+1)*a2*delta_T);%计算理论脉冲g0for k = 1: Np g0(k)=K/(T1-T2)*(exp(-k*delta_T/T1)-exp(-k*delta_T/T2);end%计算脉冲响应估计误

8、差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(k),中间输入x(k),无干扰输入(k)2、白噪声标准差为1.5时,理想输出y(k),带干扰的输出z(k),干扰v(k)3、输入白噪声标准差为1.5,周期数r为3时,脉冲响应理论值与估计值:脉冲响应估计误差: 0.04678、 实验结论1、 根据维纳-霍夫积分方程,只

温馨提示

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

评论

0/150

提交评论