ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:125.79KB ,
资源ID:9162822      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9162822.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(系统辨识试验.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

系统辨识试验.docx

1、系统辨识试验系统辨识实验实验指导书赵英凯南京工业大学自动化学院2006-04-17实验一 基于OLS法的系统辨识数字仿真实验 2实验二 基于RLS法的系统辨识数字仿真实验 7实验一 基于OLS法的系统辨识数字仿真实验一、实验目的1、深入理解系统辨识中相关分析法及最小二乘法的相关内容。2、学会用Matlab或C语言等进行系统辨识的仿真研究二、实验设备装有相应软件的计算机。三、实验原理(请见教材,次处从略)四、实验内容1.伪随机二位式信号(PRBS)的生成。2.用普通最小二乘法(OLS)法辨识对象数学模型。五、实验要求1.熟悉系统辨识中的相关内容。2.掌握Matlab或C语言等进行系统辨识仿真研究

2、的一般步骤。3.实验前基本应完成相关的编程任务,实验时调试相应程序。4.修改相应参数与随机噪声幅度,观察并分析结果。5.软件包人机界面的开发与设计。(选做)六、.实验步骤实验步骤:1、运行matlab1)File-New-M-File打开M文件编辑窗口2)输入自己编写的程序3)点击run按钮,如果程序出错则调试程序,如果运行正常的话则观察程序的运行结果具体的实验步骤:1.伪随机二位式信号(PRBS)的生成:X1=1;X2=0;X3=1;X4=0; %移位寄存器输入Xi初态(0101), Yi为移位寄存器各级输出m=60; %置M序列总长度for i=1:m Y4=X4; Y3=X3; Y2=X

3、2; Y1=X1; X4=Y3; X3=Y2; X2=Y1; X1=xor(Y3,Y4); %异或运算 if Y4=0 U(i)=-1; else U(i)=Y4;end endM=U%绘图i1=ik=1:1:i1;plot(k,U,k,U,rx)xlabel(k)ylabel(M序列)title(移位寄存器产生的M序列)注:这是一个采用四级移位寄存器产生prbs信号的程序,同学们可以将这个程序编写的更具通用性,使得移位寄存器的级数可以选择。2.用普通最小二乘法(OLS)法辨识对象数学模型选择的仿真对象的数学模型如下其中,是服从正态分布的白噪声N。输入信号采用4阶M序列,幅度为1。选择如下形式

4、的辨识模型 设输入信号的取值是从k =1到k =16的M序列,则待辨识参数为=。其中,被辨识参数、观测矩阵z L、H L的表达式为 , , 程序框图如下所示:参考程序:%olsu=-1,1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,1,1; %系统辨识的输入信号为一个周期的M序列z=zeros(1,16); %定义输出观测值的长度for k=3:16 z(k)=1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2); %用理想输出值作为观测值endsubplot(3,1,1) %画三行一列图形窗口中的第一个图形stem(u) %画出输入信号u的经线图形su

5、bplot(3,1,2) %画三行一列图形窗口中的第二个图形i=1:1:16; %横坐标范围是1到16,步长为1plot(i,z) %图形的横坐标是采样时刻i, 纵坐标是输出观测值z, 图形格式为连续曲线subplot(3,1,3) %画三行一列图形窗口中的第三个图形stem(z),grid on%画出输出观测值z的经线图形,并显示坐标网格u,z%显示输入信号和输出观测信号%L=14%数据长度HL=-z(2) -z(1) u(2) u(1);-z(3) -z(2) u(3) u(2);-z(4) -z(3) u(4) u(3);-z(5) -z(4) u(5) u(4);-z(6) -z(5)

6、 u(6) u(5);-z(7) -z(6) u(7) u(6);-z(8) -z(7) u(8) u(7);-z(9) -z(8) u(9) u(8);-z(10) -z(9) u(10) u(9);-z(11) -z(10) u(11) u(10);-z(12) -z(11) u(12) u(11);-z(13) -z(12) u(13) u(12);-z(14) -z(13) u(14) u(13);-z(15) -z(14) u(15) u(14) %给样本矩阵HL赋值ZL=z(3);z(4);z(5);z(6);z(7);z(8);z(9);z(10);z(11);z(12);z(1

7、3);z(14);z(15);z(16)% 给样本矩阵zL赋值%calculating parameters%计算参数c1=HL*HL; c2=inv(c1); c3=HL*ZL; c=c2*c3 %计算并显示 %DISPLAY PARAMETERSa1=c(1), a2=c(2), b1=c(3), b2=c(4) %从 中分离出并显示a1 、a2、 b1、 b2%End注:由于输出观测值没有任何噪音成分,所以辨识结果也无任何误差,同学们可以在输出观测值中添加噪音,观察ols的辨识效果。同时,可以尝试增加输入信号的数量,看辨识结果有何变化。七、实验报告要求1、整理分析实验结果与程序,并打印之

8、。2、小结调试程序的方法,并提出改进意见。3、上交相关软盘或将程序与电子文档通过EMAIL发给老师。八实验思考题:1、用C语言编程实现递推最小二乘法和对象阶的辨识的编程。2、用F检验法来进行对象阶的辨识。3、修改相应参数与随机噪声幅度,观察并分析结果4、编制系统辨识的软件包,制作良好的用户界面。(选作)5、自己可选取一个具体的对象(如某化工厂的加热炉)进行建模。实验二 基于RLS法的系统辨识数字仿真实验一、实验目的1、深入理解系统辨识中相关分析法及最小二乘法的相关内容。2、学会用Matlab或C语言等进行系统辨识的仿真研究二、实验设备 装有相应软件的计算机。三、实验原理1. 考虑如下图所示的仿

9、真对象:图中, 是服从N分布的不相关随机噪声。且 , , (1)选择上图所示的辨识模型。仿真对象选择如下的模型结构: (2)其中,是服从正态分布的白噪声N。输入信号采用4位移位寄存器产生的M序列,幅度为0.03。按式(3) (3)构造h (k);加权阵取单位阵;利用如下公式计算K(k)、和P(k),计算各次参数辨识的相对误差,精度满足要求后停机。递推最小二乘法的推导公式如下: (4)2.阶的辨识前面所讨论的系统辨识方法,都是假定模型的阶次是已知的,因此仅仅要求估计差分方程的系数。但实际上,系统的阶次是很难被准确知道的。因为对阶次的理解程度是直接与一个线性差分方程的准确结构有关的,所以有关阶次的

10、确定也可以称为系统结构的确定。经验指出,一个模型的阶次不准,就可能在控制系统设计时发生严重问题。故在辨识过程中,模型的阶次是否合适是必须加以检验的。一般阶的方法中,常用的有这么几种:零极点相消法、目标函数法和F检验法。下面只介绍其中的目标函数法。 当我们用不同阶的模型给系统的输入输出观测数据进行最小二乘拟合时,会得到不同的估计误差:因此利用J极小化确定阶是很自然的。实验表明,假设模型具有大于1而小于的阶n,当n取1,2,时, 若随着n的增加, 在 (阶的估计量)-1时,J最后一次出现陡峭的下降,往后就近似地保持不变或者只有微小的下降(见下图),则取。也就是说,模型阶次的确定可以直接依次计算阶次

11、n1,2,时的最小二乘估计以及相应的损失函数,然后选择当下降不明显时的阶次作为合适的模型阶次n,这种方法也叫确定阶的估计准则方法,有很广的应用。 J 四、实验内容1. 用递推最小二乘法(RLS)法辨识对象数学模型。2. 对象阶的辨识。五、实验要求1. 熟悉系统辨识中的相关内容。2. 掌握Matlab或C语言等进行系统辨识仿真研究的一般步骤。3. 实验前基本应完成相关的编程任务,实验时调试相应程序。4. 修改相应参数与随机噪声幅度,观察并分析结果。5. 软件包人机界面的开发与设计。(选做)六、实验步骤1.首先要熟悉一下MATLAB的运行环境:1)File-New-M-File打开M文件编辑窗口2

12、)输入自己编写的程序3)点击run按钮,如果程序出错则调试程序,如果运行正常的话则观察程序的运行结果2. 用递推最小二乘法(RLS)法辨识对象数学模型在这个实验中,我们采用以下模型进行仿真: (5)其中uk是幅值为1的PRBS信号输入,ek是白噪声,即(0,1)的正态分布序列,它的方差时可以调整的。这个系统的采样值y(k)和u(k)作为已知数据,采用实验一的最小二乘法估计这个系统的参数。下面是递推最小二乘法的流程图:相关程序如下:%RLSclear%清理工作间变量L=15;% M序列的周期y1=1;y2=1;y3=1;y4=0;%四个移位寄存器的输出初始值for i=1:L;%开始循环,长度为

13、Lx1=xor(y3,y4);%第一个移位积存器的输入是第3个与第4个移位积存器的输出的“或”x2=y1;%第二个移位积存器的输入是第3个移位积存器的输出x3=y2;%第三个移位积存器的输入是第2个移位积存器的输出x4=y3;%第四个移位积存器的输入是第3个移位积存器的输出y(i)=y4;%取出第四个移位积存器幅值为0和1的输出信号,if y(i)0.5,u(i)=-0.03;%如果M序列的值为1时,辨识的输入信号取“-0.03”else u(i)=0.03;%当M序列的值为0时,辨识的输入信号取“0.03”end%小循环结束y1=x1;y2=x2;y3=x3;y4=x4;%为下一次的输入信号

14、做准备end%大循环结束,产生输入信号u figure(1);%第1个图形stem(u),grid on%以径的形式显示出输入信号并给图形加上网格z(2)=0;z(1)=0;%取z的前两个初始值为零for k=3:15;%循环变量从3到15 z(k)=1.5*z(k-1)-0.7*z(k-2)+u(k-1)+0.5*u(k-2);%给出理想的辨识输出采样信号 end%RLS递推最小二乘辨识c0=0.001 0.001 0.001 0.001;%直接给出被辨识参数的初始值,即一个充分小的实向量p0=106*eye(4,4);%直接给出初始状态P0,即一个充分大的实数单位矩阵E=0.0000000

15、05;%相对误差E=0.000000005c=c0,zeros(4,14);%被辨识参数矩阵的初始值及大小e=zeros(4,15);%相对误差的初始值及大小for k=3:15; %开始求K h1=-z(k-1),-z(k-2),u(k-1),u(k-2); x=h1*p0*h1+1; x1=inv(x); %开始求K(k) k1=p0*h1*x1;%求出K的值 d1=z(k)-h1*c0; c1=c0+k1*d1;%求被辨识参数c e1=c1-c0;%求参数当前值与上一次的值的差值 e2=e1./c0;%求参数的相对变化 e(:,k)=e2; %把当前相对变化的列向量加入误差矩阵的最后一列

16、 c0=c1;%新获得的参数作为下一次递推的旧参数 c(:,k)=c1;%把辨识参数c 列向量加入辨识参数矩阵的最后一列 p1=p0-k1*k1*h1*p0*h1+1;%求出 p(k)的值 p0=p1;%给下次用 if e2=E break;%若参数收敛满足要求,终止计算 end%小循环结束end%大循环结束c%显示被辨识参数e%显示辨识结果的收敛情况%分离参数a1=c(1,:); a2=c(2,:); b1=c(3,:); b2=c(4,:); ea1=e(1,:); ea2=e(2,:); eb1=e(3,:); eb2=e(4,:); figure(2);%第2个图形i=1:15;%横坐

17、标从1到15plot(i,a1,r,i,a2,:,i,b1,g,i,b2,:) %画出a1,a2,b1,b2的各次辨识结果title(Parameter Identification with Recursive Least Squares Method)%图形标题figure(3); %第3个图形i=1:15; %横坐标从1到15plot(i,ea1,r,i,ea2,g,i,eb1,b,i,eb2,r:) %画出a1,a2,b1,b2的各次辨识结果的收敛情况title(Identification Precision) %图形标题注:同样这个程序使用的输出信号也没有噪音,所以辨识的结果没有误

18、差,请同学们在输出信号中加入噪音,再使用RLS对其辨识,观察辨识结果,进行分析。2. 同样采用这个模型采用MATLAB或者C语言进行阶的辨识:其中uk是幅值为1的PRBS信号输入,ek是白噪声,即(0,1)的正态分布序列,它的方差时可以调整的。这个系统的采样值y(k)和u(k)作为已知数据,采用实验一的最小二乘法估计这个系统的参数。令模型的阶次分别为n1,2,3,其J值如下表所示。从表中看出,由到,J发生显著的变化。而由到,J没有多大的变化,故可确定这系统的阶次辨识的结果如下,具体编程由同学们来实现。噪声水平损失函数Jn1n2n3265.8630.000248.1470.9870.983337.84824.55824.451308.13199.86398.5985131.9052462.2202440.245七、实验报告要求1、整理分析实验结果与程序,并打印之。2、小结调试程序的方法,并提出改进意见。3、上交相关软盘或将程序与电子文档通过EMAIL发给老师。八实验思考题:1、用C语言变成实现递推最小二乘法和对象阶的辨识的编程。2、用F检验法来进行对象阶的辨识。3、修改相应参数与随机噪声幅度,观察并分析结果4、编制系统辨识的软件包,制作良好的用户界面。(选作)5、自己可选取一个具体的对象(如某化工厂的加热炉)进行建模。6、小结调试程序的方法,并提出改进意见。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1