LADRC的学习——用simulink搭建仿真模型
作者:墨心; 时间:2019.7.25
用simulink搭建仿真模型
前面两篇博客主要讲了ADRC的相关概念和知识,并且尝试着搭建模型和仿真,之后学习了PID的相关知识,了解了Kp,Ki,Kd三个参数的意义。
接下来,主要根据高志强教授的论文,按照其方法来搭建模型。
参考文献:
[1] Zhiqiang Gao. Scaling and bandwidth-parameterization based controller tuning[P]. American Control Conference, 2003. Proceedings of the 2003,2003.
一、LADRC的介绍
LDRC - Linear Active Disturbances Rejection Controller,按照翻译,它就是一个线性的自抗扰控制器,这是ADRC的简化,但是简化不一定功能就很差,而且比PID有着更好的控制效果。原ADRC的结构框如图所示:
其中LADRC在这个基础上减少了安排过渡过程,非线性反馈改为PD控制,保留ESO,从而达到进行精确控制的效果。
控制对象的表达形式需要化为这样的形式:
则f为:
在这里,y和u是输入信号和输出信号,w为外部扰动,a和b是微分方程的y‘和y的系数,我们可以通过控制对象的传递函数来化解为微分方程,从而得到被控对象的标准形式。f 可以被看做一般性扰动,它可以代表未知的内部动态,最后期望是通过ESO观测出来进行补偿。
因为 f 作为扰动,我们最基本的想法是获得 f_ ,用它在控制律里面,从而得到
这样系统就变为了带增益的双积分器的问题,从而有
则扰动为 f - f_.
然后系统些为状态方程的形式:
x3 = f 作为一个增加的扰动, h = f‘(一阶导) 作为未知扰动,则 f 的估计就可以使用状态观测器,如下:
则状态观测器就可以改写为扩张状态观测器(ESO),其结构如下:
L 为观测器增益向量,其可以用一些现有的方法来得到,比如极点配置的方法。则控制器可以写为:
然后忽略z3,这个系统就可以变为带有增益的双积分器,其中 z3 = f ;这样其就可以用PD控制器来控制:
其中 r 为设定值。注意 -Kdz2 代替了 -Kd(r’ - z2),这样r微分以后为0,这样就有:
因此下面通过一个具体例子,来搭建simulink。
二、LADRC的模型的搭建
现在举一个例子:
其中被控对象的标准微分方程为:
其中Td为转矩,为一常量,可以写为:
LADRC扩张状态观测器的标准型为:
这里通过 z1 估计 y ,z2 估计 y’ , z3 估计 f ,f 为扰动,如上面说的那样化简。然后PD控制器标准型为:
其中 omega_c 为可调参数。
通过ESO,PD控制器,被控对象,因此搭建模型如下。
a.LESO模型的搭建
把它封装为一个子系统,为LESO,如下所示:
b.加上PD控制器成为LADRC
接下来得到LADRC, 接下里加入被控对象得到一个整体的系统,通过调节参数来检验系统的情况。
c.整体框图
这是整体框图,这是加上被控对象以后得到的仿真图。接下来通过调节参数,用不同的信号来看控制效果。
d.控制效果的检验
其中有一些全局参数,用这样的方式来赋值,如图所示:
这个文件得和仿真图片在同一个文件目录下,先调节参数,再运行这个文件,再运行仿真图。
1.方波,omega_c = 5;
2.方波,omega_c = 20
3.方波,omega_c = 40;
4.正弦波,omega_c = 50;
5.锯齿波,omega_c = 50;
可以看出,LADRC在这个被控对象的情况下,与输入基本重合,控制效果特别好,而且只用调节一个omega_c 参数,一般在一定范围内往大了调效果会比较好。
接下来准备看清华大学 陈星 的硕士论文,自抗扰控制器参数整定方法及其在热工过程中的应用,通过换被控对象来看控制效果,并且深入理解ADRC,为以后用程序变成得到通过的控制算法做准备。
LADRC的学习——用simulink搭建仿真模型相关推荐
- 导弹六自由度仿真模型,图1所有模块都给,对学习MATLAB/simulink搭建模型很有帮助。
导弹六自由度仿真模型,图1所有模块都给,对学习MATLAB/simulink搭建模型很有帮助. ID:67300675534834059AKmine
- 风力发电仿真系列-基于Simulink搭建的DFIG仿真模型
基于Simulink搭建的DFIG仿真模型 双馈式感应发电机(DFIG)是在同步电机和异步电机的基础上发展起来的一种新型发电机.DFIG的主要优点是其足够宽的速度范围,能使组合式风力涡轮机以最佳的 ...
- 基于MATLAB/Simulink搭建的纯电动汽车整车仿真模型,包括驾驶员模块,电机模块,制动能量回收模块
基于MATLAB/Simulink搭建的纯电动汽车整车仿真模型,包括驾驶员模块,电机模块,制动能量回收模块,传动系统模块,纵向动力学模块,电池模块,由上述部分,搭建完成整车模型. 1.该模型具备较高精 ...
- pmsm simulink foc 仿真模型搭建
PMSM是永磁同步电机的缩写,Simulink是MATLAB中的一种可视化建模工具,FOC是磁场定向控制的缩写,是一种电机控制策略. 因此,搭建PMSM Simulink FOC仿真模型的基本步骤包括 ...
- matlab里的仿真模型块,搭建simulink模型(如何利用MATLAB/SIMULINK搭建简单的仿真模型)...
如何利用MATLAB/SIMULINK搭建简单的仿真模型 安装完MATLAB软件后,在电脑桌面点击MATLAB快捷方式 打开MATLAB后,点击Simulink Library按钮 之后会进入Simu ...
- LADRC的学习——寻找物理模型被控对象(验证调参效果)
LADRC的学习--寻找实际被控对象传函(验证调参效果) 一.前文总结 这篇文章主要寻找英文论文,然后提取里面实际被控对象的物理模型,用LADRC控制器进行控制,然后用三种方法验证其中的控制效果. ...
- LADRC的学习——PID的学习
PID部分的学习 上文介绍了ADRC的理论,并试着按照自己的理解用Matab编程实现韩老师论文中的算法,但是对调节参数和一些地方还不太懂,因此我打算从头开始理解,从PID的好坏开始学习理解,看Kp,K ...
- matlab/simulink 搭建 基于mpc的车道保持辅助系统
总结一些自己亲身经历学习遇到的问题 :关于基于simulink搭建的车道保持辅助系统(lane keeping assist system) 成果图 调用函数: 下面是调用代码供大家复制 嘿嘿 add ...
- 风力发电仿真系列-基于Simulink搭建的双馈风力发电(DFIG)模型
基于Simulink搭建的双馈风力发电(DFIG)模型 1.双馈风力发电机 双馈异步风力发电机(DFIG)是一种绕线式感应发电机,是变速恒频风力发电机组的核心部分.DFIG主要由两大部分组成,分别 ...
最新文章
- 超美观的 Vue+Element 开源后台管理 UI
- 这样就可以很方便的知道明天的天气了
- 后台开发必读书籍--大话数据结构
- Linux headtail命令
- 深入解析Windows窗口创建和消息分发
- 前端学习(2570):template和jsx的对比
- 东软实训2-在jsp中使用javaBean
- [DB]MariaDB 与 MySql 数据库
- MTK 6765/6739/6755/6761/6763 android9.0 user版本打开root权限(adb root权限和 apk root权限)
- 杰奇小说2.3独家定制版淡绿唯美模板自动采集关关采集器带WAP
- matlab位图矢量化,位图矢量化的处理算法研究
- 使用Java解析Json
- 【论文阅读】Improving Table Structure Recognition with Visual-Alignment Sequential Coordinate Modeling
- 适合程序员的 5 款 Linux 发行版
- iOS iTunes导入本地视频(文件共享)
- 闭环式数字孪生智慧交通管理系统平台应用及分析
- Linux下性能监控、守护进程与计划任务管理
- 单应性矩阵的求解过程及应用
- oracle 051考试,OCP/OCA认证考试指南全册Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)练习与知识点...
- WPF 给文本框TextBlock以及密码框PassWord加背景水印实现用户登录提示
热门文章
- vue better-scroll 下拉上拉,加载刷新
- solr中facet及facet.pivot理解
- 解决java.lang.NoClassDefFoundError: org/apache/log4j/Level
- iOS下JS和原生交互,函数互调
- Redis使用详细教程
- 实例分割小工具labelme转coco
- 映射网络驱动器 net use
- 微信小程序入门 ——增删改查+页面跳转+传值取值+布局样式
- Emscripten教程之C++和JavaScript绑定(三)
- 思科交换机2950 强制恢复出厂设置(清密码)