当前位置: 首页 > news >正文

Matlab利用系统辨识工具箱辨识自带数据集的控制系统参数(传递函数篇)

系统辨识是根据系统的输入输出时间函数来确定描述系统行为的数学模型。在很多控制系统中,难以确定明确的数学物理关系,也就难以确定控制系统中极为重要的传递函数。但Matlab中的的系统辨识工具箱,能够根据输入输出数据计算得到系统的传递函数,或是状态空间模型,极大的方便了对系统的建模。

一、打开系统辨识工具箱

命令行打开:在命令行窗口输入:systemIdentification。

图标打开:在APP中,单击选择SystemIdentification。

二、导入自带数据集

数据我们利用Matlab自带的数据集,导入时选择Examaple。这是一个加热器的数据集,共计1000条数据。输入为加热电功率,输出为温度。

再选了[Example]之后,数据集就被加载到工作区了。其中u2为输入,即加热功率。在这我们可以看到,其实u2只有3.41,6.41两个值,可能对应加热器的两个挡位。

根据这两组数据,生成一个局部曲线。在427的位置,加热挡位变大,温度开始上升,在441的时候,尝试降低挡位,温度开始慢慢降低。由此可以理解这二维数据的关系。

三、数据处理

导入数据之后,需要对数据划分为工作集与验证集,选择范围。

前500个作为工作集,改为500,点击insert。同样改验证集。

数据集截取

验证集截取

在主界面就可以看到工作集与验证集了,并将他们拖入相应的位置。

点击time plot,可实现对数据的预览。其中,蓝色(前500个)为工作集,橙色(后500个)为验证集。

四、开始辨识

可用来辨识的模型很多,此处只选择传递函数,开始辨识。

设置传递函数的极点数与零点数,意义已经忘记了,然后开始辨识。

辨识结果如下图所示。从图形可以看出是用来训练的前500个数据,灰色为实际值,蓝色为模型值,模型辨识精度为83.94%,最终预测误差为0.0185。

五、模型验证

这时候在右上角的tf1就是我们辨识出来的传递函数,双击可查看实际的参数值。

选中模型tf1(可选择多个模型),点击model output,即可查看验证集在多个模型上的表现。可以看出tf1模型对验证集的拟合率为81.32%。

六、获得结果

至此,我们就可以获得该加热系统的传递函数了。有了传递函数,然后可以进行进一步的操作了。

http://www.dtcms.com/a/332556.html

相关文章:

  • DeepSeek-V2:一种强大、经济且高效的混合专家语言模型
  • MySQL视图:虚拟表的强大用途与限制
  • C++:stl-> list的模拟实现
  • Day59--图论--47. 参加科学大会(卡码网),94. 城市间货物运输 I(卡码网)
  • Jmeter自定义脚本
  • paimon实时数据湖教程-主键表更新机制
  • 微服务的编程测评系统11-jmeter-redis-竞赛列表
  • Helm 常用命令 + Bitnami 中间件部署速查表
  • EhViewer安卓ios全版本类下载安装工具的完整路径解析
  • 【web自动化】-8-EXCEL数据驱动
  • 记录一下 StarRocks 点查的 Profile Metrics
  • 科技赋能千年养生丨七彩喜艾灸机器人,让传统智慧触手可及
  • 醋酸镧:看不见的科技助力
  • 学习笔记与效率提升指南:编程、记忆与面试备考
  • QML实现数据可视化
  • 解决Electron透明窗口点击不影响其他应用
  • [系统架构设计师]数据库设计基础知识(六)
  • 【Linux】编辑器vim的使用
  • 17.3 删除购物车商品
  • @Autowired @Resource IDE警告 和 依赖注入
  • 【解决笔记】MyBatis-Plus 中无 selectList 方法
  • 【详细操作指南】如何将 Moodle 与编辑器连接,以修改文档、检查和批改作业等
  • JavaScript 核心基础:类型检测、DOM 操作与事件处理
  • 8.15 机器学习(2)K最近邻算法
  • Chrome插件开发【Tabs】
  • 基于vue和nodejs的茶叶销售平台的设计与实现/基于express的茶叶商城系统
  • 从 LLM 到自主 Agent:OpenCSG 打造开源 AgenticOps 生态
  • 从CAD数据访问到3D协作,HOOPS SDK如何提升PLM解决方案竞争力?
  • PCA降维全解析:从原理到实战
  • p5.js 3D盒子的基础用法