全文预览

系统辨识的Matlab实现方法(手把手)

上传者:叶子黄了 |  格式:docx  |  页数:16 |  大小:0KB

文档介绍
ulink做一下阶跃响应,再把实验数据代入上述函数段,那就不行咯!怎么办呢,只能另辟蹊径了!二、(SystemIdentificationTool)系统辨识工具箱早听说matlab博大精深,神通广大了,于是乎我确定肯定有更简单、直观、强大的工具来完成这小儿科把戏。查资料琢磨之后,我做了个小实验,在simulink里验证了该种方法。该方法的大原则是:在确定了系统的输入输出数据(两个列向量N×1形式,如果是1×N,会提示出错!)之后,设计好一定的辨识原则(比如说是2阶?3阶?,传递函数是零极点形式,还是带阻尼形式,等等),然后就交给强大的matlab,得到辨识结果。Stepbystep,plz!Step1、建立模型获取系统输入输出数据图1图1系统的输入是阶跃信号,用Scope1监视,并输出到workspace(这步不会的自己百度哦),采样周期是0.1s,得到输入变量u(101×1的矩阵);本人在系统的阶跃响应上叠加了一白噪声,当然也可以不加噪声,加了噪声就是期望更真实的模拟实际情况,白噪声参数设置见图2图2同样在Scope2监视,也将结果输出到workspace,得到响应数据y(同样也是101×1的矩阵)Step2、进入辨识工具箱&mandwindow输入ident,回车,进入辨识工具箱图3图3点击import下拉菜单,选时域数据timedomaindata,见图4图4在下图5红色圈区域输入之前得到的系统输入和输出数据,u和y图5在下图6绿色圈内输入数据的一些信息,因为之前模型中,阶跃起点我是放在0s处的,这里也设置0,如果前面模型仿真是1s,这里应该也是1s;采样时间是0.1s,根据实际情况设置统一哦图6设置完之后,点击import此时界面变成图7图7如果在下图8勾选红框这个选项,就会出现我们刚才设定输入输出数据的曲线,如图9所示,其他勾选项是频域的分析和显示,暂不用它。图8

收藏

分享

举报
下载此文档