目录

  • 一、辨识的基本理论
  • 二、MATLAB系统辨识工具箱实例介绍
    • 2.1 实例介绍
    • 2.1 进入系统辨识工具箱界面
    • 2.2 加载数据
    • 2.3 导入数据
    • 2.3 数据画图(数据预处理)
    • 2.4 模型估计和验证
  • 三、结论

网上有比较详细的关于系统辨识工具箱函数的介绍,但是并没有根据相关实例进行讲解,因此让人看得云里雾里。这里我通过实例对MATLAB系统辨识工具箱函数进行详细讲解,帮助大家更容易理解系统辨识工具箱

这个工具箱是一个处理离散采样数据,主要用最小二乘结构模型来进行辨识的一个软件包。它的结构设计比较合理、清晰、可扩展性好,因此为很多辨识理论研究者所采用,但其中递推算法涉及较少,需要使用者作二次开发。除此之外还有如神经网络辨识和控制辨识工具箱等的一些辨识软件。
可参考:
[1]张浩然,韩正之,李昌刚.基于MATLAB的神经网络辨识与控制工具箱[J].计算机仿真,2003(03):72-74+14.

Matlab的系统辨识工具箱提供了进行系统辨识的有力工具。系统辨识中的模型是考虑了噪声影响的随机模型。Matlab工具箱包括模型类模型结构参数的确定两部分内容。利用Matlab编程环境,开发图形界面和多种辨识模型与算法等。模型类的确定主要是根据先验知识对过程的特性进行一定程度的假设,明确所要建立的模型是静态的还是动态的,是连续的还是离散的、是线性的还是非线性的、是参数模型还是非参数模型。支持的模型类主要有:非参数模型类中的脉冲响应模型;参数模型中的(ARX)模型、(ARMAX)模型、Box-Jenkins模型和状态空间模型等。在模型结构确定以后,就可以进行模型参数的辨识了,Matlab中对模型进行参数辨识方法包括最小二乘法、误差预报估计法、辅助变量法、几何网络法等。

一、辨识的基本理论

对于一个系统,在输入输出数据的基础上,从一组给定模型类中,确定一个与所测系统等价的模型,这种方法叫做辨识

这个定义明确了辨识的三大要素:系统的输入输出数据(数据集)、模型类和等价准则(准则函数)。

系统的测得数据用h(k)h(k)h(k)表示,输出用z(k)z(k)z(k)表示,辨识模型的输出估计为z^(k)\hat{z}(k)z^(k),实际输出与它的偏差为z~(k)\tilde{z}(k)z~(k)。辨识就是通过某种算法,利用模型输出与实际输出间的误差不断纠正模型参数,最终得到最优模型的过程。

在具体的辨识过程中,应该如何选择辨识函数呢?每个辨识算法都对应于特定的模型类型,所以应先选定模型类,再选择辨识算法及辨识函数。

辨识常见的几类模型如下:

  1. ARX模型
    A(z−1)y(k)=B(z−1)u(k−nk)+e(k)A(z^{-1}) y(k)=B(z^{-1})u(k-n_k)+e(k)A(z−1)y(k)=B(z−1)u(k−nk​)+e(k)
  2. ARMAX模型
    A(z−1)y(k)=B(z−1)u(k−nk)+C(z−1)e(k)A(z^{-1}) y(k)=B(z^{-1})u(k-n_k)+C(z^{-1})e(k)A(z−1)y(k)=B(z−1)u(k−nk​)+C(z−1)e(k)
  3. Box-Jenkins模型
    y(k)=B(z−1)F(z−1)u(k−nk)+C(z−1)D(z−1)e(k)y(k)=\frac{B(z^{-1})}{F(z^{-1})}u(k-n_k)+\frac{C(z^{-1})}{D(z^{-1})}e(k)y(k)=F(z−1)B(z−1)​u(k−nk​)+D(z−1)C(z−1)​e(k)
  4. 通用线性模型
    A(z−1)y(k)=B(z−1)F(z−1)u(k−nk)+C(z−1)D(z−1)e(k)A(z^{-1})y(k)=\frac{B(z^{-1})}{F(z^{-1})}u(k-n_k)+\frac{C(z^{-1})}{D(z^{-1})}e(k)A(z−1)y(k)=F(z−1)B(z−1)​u(k−nk​)+D(z−1)C(z−1)​e(k)

二、MATLAB系统辨识工具箱实例介绍

2.1 实例介绍

有一个加热的系统,其加热原理是在其入口处采用网状电阻丝对其内空气进行加热,原理如同吹风机,此系统的输入为供给电阻丝的能量,系统输出时加热系统出口处空气的温度。这是典型的线性SISO系统,此系统包含1000 个输入输出数据,现在要根据系统的输入输出数据找出描述系统特性的最佳模型。

该次对加热系统采用的是ARX模型,其表达式为:
A(z−1)y(k)=B(z−1)u(k−nk)+e(k)A(z^{-1}) y(k)=B(z^{-1})u(k-n_k)+e(k)A(z−1)y(k)=B(z−1)u(k−nk​)+e(k)

2.1 进入系统辨识工具箱界面

两种方法,第一种:
打开应用程序栏的系统辨识工具箱,


第二种,直接在命令行窗口输入“ident”:


进入界面后,弹出如下窗口:

2.2 加载数据

由于此例子是MATLAB自带的,其名称为’dryer2’,因此直接load即可:

load dryer2

可以看到在工作区窗口中出现了两组数据u2和y2,这两组数据正是上面所说加热系统的输入和输出数据u2为输入,y2为输出。

2.3 导入数据


选择import data(输入数据)——>time domain signals(时域数据)——>
input:u2
output:y2
这里的两个输入栏是用来输入上面所说的系统输入和输出信号;
data name中输入的是辨识数据名称,默认为mydata,这里为了区分,修改为data;
starting time:辨识的起始时间,一般取0;
samping interval:输入的是采样间隔(单位为s),这里的间隔时间要由具体的实验情况而定,这里采用0.08s
所有输入好后界面如下:

输入完成后点击import按钮,可以看到刚才设置的名为data辨识数据已经被导入GUI中。

2.3 数据画图(数据预处理)

数据画图也就是将导入的数据生成图表,数据预处理包括对前面导入的data 数据进行去偏移,以及将数据分成估计模型数据和验证模型数据两部分。

勾选GUI 界面的time polt 图框会弹出原始数据的图表界面,如下图所示。

可以看到输入输出信号是有偏差的,点击GUI界面的preprocess(预处理)——>remove mean(移除平局值),可以得到偏差消除后的输出数据,此时的数据平均值为0,如下图所示。

与此同时,在GUI 界面的数据方框中会出现一组datad 数据,将图框中的数据拖入Workingdata 方框中,如下图所示,此时数据处理的第一步已经完成。

2.4 模型估计和验证

点击Estimate ——>polynomial models(多项式模型即线性模型)会弹出模型参数输入界面,在模型参数界面中
structure(结构)参数栏选择ARX:[na nb nk];
orders(阶数)参数栏输入[1:10 1:10 1:10]【即模型三个变量的阶数为1~10阶】;
然后点击estimate 按钮弹出图6 所示的ARX 参数模型界面,其中红、蓝、绿三条是不同算法下的吻合度最高的模型。

其中红色表示的是用最小二乘法得到的模型,它也是符合度最高的模型。
点击红色部分,然后点击insert按钮,模型就会自动加入GUI 界面的import models 中,然后勾选model output 框,就会弹出模型输出曲线界面,如下图所示,估计输出与验证数据输出重合度达到85.25%,说明估计模型比较符合实际。

三、结论

本文主要讨论了MATLAB系统辨识仿真工具箱GUI 模块的系统辨识过程。通过工具箱GUI 模块可以非常方便地对“黑箱”系统进行系统识,不需要太多的编程,辨识的效率比较高。

参考:
1.《基于MATLAB 系统辨识工具的系统辨识》

MATLAB系统辨识工具箱介绍(完结)相关推荐

  1. matlab系统辨识工具箱原理,matlab常用工具箱介绍

    怎么使用matlab系统辨识工具箱 如果是系统自带的,你可以直接用,如果是外部的或者是自编的你需要先把文件夹拷贝到tools文件夹下,再设置路径. Matlab常用工具箱介绍(英汉对照)Matlab ...

  2. 基于matlab系统辨识工具箱,基于matlab的识别系统

    怎么使用matlab系统辨识工具箱 如果是系统自带的,你可以直接用,如果是外部的或者是自编的你需要先把文件夹拷贝到tools文件夹下,再设置路径. Matlab常用工具箱介绍(英汉对照)MatlabM ...

  3. Matlab常用工具箱介绍

    Matlab常用工具箱介绍 Matlab Main Toolbox--matlab主工具箱 Control System Toolbox--控制系统工具箱 Communication Toolbox- ...

  4. matlab系统辨识工具箱原理,matlab有哪些常用工具箱

    如何使用matlab中的工具箱? 如果是系统自带的,你可以直接用,如果是外部的或者是自编的你需要先把文件夹拷贝到tools文件夹下,再设置路径. Matlab常用工具箱介绍(英汉对照)MatlabMa ...

  5. matlab 系统辨识工具箱,MATLAB系统辨识工具箱的应用.ppt

    MATLAB系统辨识工具箱的应用 MATLAB系统辨识工具箱的应用 1.系统的表示方法 下图标出了基本的输入输出结构,其中: 输入信号: 输出信号: 假设方框中的系统为线性系统,可以得出输入输出信号的 ...

  6. 【新星计划】MATLAB系统辨识工具箱使用方法

    1.进入System Identification主界面 打开APP栏的系统辨识工具箱, 弹出如下界面 然后点击import data,选择加载类型为时域类型 2.加载数据 导入采集的实验数据,从工作 ...

  7. MATLAB系统辨识工具箱学习

    文章目录 1 进入System Identification主界面 2 运行程序,加载数据 3 参数辨识 4 查看结果 4.1 系统辨识窗口查看 4.2 在命令行中查看 参考文章 1 进入System ...

  8. matlab 系统辨识,matlab 系统辨识工具箱三分钟入手

    matlab中自带了很多工具箱,因为课程要求要用到系统辨识工具箱,也就是System Identification toolbox自己折腾了一段时间,算是勉强会用了,这里简单讲解一下怎么使用非常简单. ...

  9. matlab 系统辨识工具箱三分钟入手

    matlab中自带了很多工具箱,因为课程要求要用到系统辨识工具箱,也就是System Identification toolbox 自己折腾了一段时间,算是勉强会用了,这里简单讲解一下怎么使用 非常简 ...

最新文章

  1. linux无线网卡的安装
  2. es6 数组合并_九个前端开发必学超级实用的 ES6 特性
  3. clnt_create: RPC: Program not registered
  4. stl取出字符串中的字符_从C ++ STL中的字符串访问字符元素
  5. 用免费WiFi 连接消费者,Zenreach 获 3000 万美元B轮融
  6. python培训拾遗
  7. Kotlin的匿名方法实现接口回调
  8. Mybatis Sql 大于号小于号不兼容
  9. N皇后问题——DFS+回溯剪枝
  10. java运行nc后空白页,用友NC开发本地启动客户端时界面空白问题的解决
  11. ae 的动画导出为html,Bodymovin v5.5.5 AE脚本可以导出json格式在Web动画制作工具
  12. Ubuntu pptp服务器搭建教程(保姆级)
  13. Activity的概述
  14. python储物柜难题_7个储物柜收纳小技巧,轻松解决你的收纳难题。
  15. 怎么订到特价机票(有可能比火车票还便宜哦)
  16. Vue中href属性动态拼接
  17. 展台设计:企业展台搭建都有哪些途径?
  18. 电脑不能连接wifi怎么办连不上wifi怎么办
  19. Android 记录自己的错误(Fatal signal 6 (SIGABRT), code -6 in tid 16701 (RenderThread))
  20. 西安音乐学院人计算机学院,西安音乐学院.我校5部作品“中国大学生计算机设计大赛”获奖...

热门文章

  1. python 脚本式编程
  2. struts2 拦截器和过滤器理解
  3. 双线性插值的python实现
  4. SQL Server 2000服务无法启动,提示“系统找不到指定的文件”解决方法及sp4安装不上...
  5. sirs模型_数学建模常用算法——传染病模型(一)SI模型
  6. 跳频扩频通信系统Matlab仿真
  7. iOS Xcode 打包IPA问题集锦
  8. 单例模式应用场景及实现(By C++)
  9. ArcGIS API for JavaScript 3.x 点击拾取坐标
  10. 林大ACM培训day3心得