找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] 递推最小二乘参数辨识与仿真实例

[复制链接]
admin 发表于 2013-3-23 19:47:19 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
摘  要: 介绍了基于递推最小二乘法进行系统辨识的基本原理,对给定的实际输入输出数据运用MATLAB的M语言编写递推最小二乘算法,最后给出相应的仿真结果和分析,并对得到的模型进行验证。
关键词: 系统辨识;递推最小二乘;MATLAB;仿真
       对于一个系统,在输入输出数据的基础上,从一组给定模型类中,确定一个与所测系统等价的模型,这种方法叫做辨识。辨识是在实际应用中获取系统模型的最为重要的手段之一,也是数学模型和实际应用联系的纽带。而最小二乘类辨识则是在给定的结构框架下,利用模型输出与实际输出间的误差不断纠正模型参数,最终得到最优模型的过程[1]。在使用最小二乘法进行参数估计时,为了实现实时控制,必须优化成递推算法RLS(Recursive Least Square),主要用于在线辨识。MATLAB是一种面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平[2]。
     本文使用MATLAB2009a的M语言对递推最小二乘算法进行编程,最后使用MATLAB自带的辨识工具箱SIT(System Identification Toolbox)对得到的仿真结果进行了验证。
1 线性系统辨识[3]
1.1 问题描述

20121107051228605641193.gif
其对应的辨识问题的表达形式如图2所示。
     图2中,h(k)和z(k)是模型的输入输出变量,在离散点上必须是可观测的;v(k)为模型噪声;?兹是未知模型参数。
20121107051228652521194.gif
2 仿真实例[4]
2.1 选择输入信号

     为了准确辨识系统参数,对输入信号有如下要求:在辨识时间内,过程的动态必须被输入信号持续激励。从谱分析角度看,这就意味着信号频带能覆盖系统的频带宽度。除此之外还要求信号有可重复性,不能是不可重复的随机噪声,因此本文选择满足上述要求的M序列作为输入信号。
2.2 先验知识
     在对给定的过程进行辨识之前,掌握如下先验知识:纯迟延d=0;模型如式(7)所示,且数据长度L=1 000,na=nb=4。
20121107051228683771195.gif
2.4 模型验证
     本文使用MATLAB自带的辨识工具箱SIT(System Identification Toolbox)对得到的仿真结果进行验证。在MATLAB2009a的Command Window中输入ident命令,SIT被打开。需将给定的输入输出数据设置为该模块的输入输出方可进行验证。结果如图4所示。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-25 00:35 , Processed in 0.056911 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表