基于扩张观测器(LESO)的滑模控制
目录
前言
1 二阶系统LESO观测器设计
2.基于LESO的滑模控制器设计
3. 仿真分析(普通高增益项)
3.1仿真模型
3.2仿真结果
3.3 总结
4. 仿真分析(优化后的高增益项)
4.1 优化高增益项
4.2仿真结果
4.2.1 高增益①仿真结果
4.2.2 高增益②仿真结果
4.3 总结
5 学习问题
前言
上两篇文章我们介绍了扰动观测器和高增益观测器,顾名思义,扰动观测器就是观测未知的扰动,使我们系统针对扰动时能够“对症下药”;高增益观测器就是一种状态观测器,由于实际中系统并非都是理想的可直接测量的,所以需要借助观测器得到状态变量。
VSC/SMC(八)——基于慢时变干扰观测器的滑模控制(含程序模型)_Mr. 邹的博客-CSDN博客_慢时变干扰观测器
VSC/SMC(七)——基于高增益观测器的滑模控制(白嫖程序模型)_Mr. 邹的博客-CSDN博客
本篇文章,继续介绍一种常见的扩张观测器,也就是我们文献中常看到的缩写:LESO,并且可以和控制器并行设计。
那为什么叫“扩张”?是因为它的结构上比系统多了状态变量。
好了我们开始介绍以及仿真分析吧。
1 二阶系统LESO观测器设计
先以一个简单的二阶系统为例进行设计,它的状态空间方程为如下标准形式:
其中:
假设这个系统的状态变量是不可测的,为其设计如下的LESO:
其中,ε > 0,且α1、α2、α3均为正实数,即满足如下多项式为Hurwitz多项式:
观测器的状态变量为:
可以看到,比上述二阶系统的状态变量多了一个,实际上σ可以看成是对扰动f的一个观测/估计。
也有的文献直接将分式看成一个调节参数,如下:
同理,λ1、λ2、λ3均为正实数。
还有的文献直接将误差变量进行观测,有兴趣的读者可以参考这篇:
《基于扩张观测器的非线性不确定系统输出跟踪---王新华》
对于稳定性分析,读者可以自行阅读文献,这里篇幅原因就不介绍了,谢谢理解!
2.基于LESO的滑模控制器设计
为了使x1能跟踪指令位置x1d,所以跟踪误差e = x1-x1d,并定义如下的线性滑模面:
其中,c > 0。
注:其实这个滑模面是“中间”滑模面,“中间”指的是观测器,所以后面证明稳定性还是要引入第一级滑模面。
这里我还是应用等效滑模的思想设计控制律:
①对滑模面求导,有:
②选取等速趋近律,并且联立滑模导函数,有:
③Lyapunov稳定性证明
略......
所以得到得控制律为:
为了减少抖阵,取ηsign(s) = ηs ,进而得到:
其中:
注:这里的误差是观测器与指令位置之间的误差,同理(x1^)'-(x1d)' = (e')^,即跟踪位置导数(速度)的观测误差。
3. 仿真分析(普通高增益项)
3.1仿真模型
取上述系统b = 0.1,扰动d = 3*sin(t),指令位置xd = sin(t),并取初始状态为[0.5;0],建立的simulink模型如下:
3.2仿真结果
3.3 总结
优点:可以看到,这样的状态观测器因为有高增益的存在,所以能使跟踪误差迅速趋于0,即跟踪效果和反应速度很快;
缺点:但是导致了一个问题,由于高增益项的存在使得初始峰值很大,这样导致初始的误差很大,而且对控制器的伤害也很大,所以需要优化设计高增益项。
4. 仿真分析(优化后的高增益项)
4.1 优化高增益项
由于扩张观测器本质上也是一种高增益观测器,从上述的仿真结果我们可以看到虽然最终效果不错,但是如果扩张观测器的初始值与被控对象的初值不同,便会导致峰值现象,现在设计如下的两种高增益:
①
②
其中,u > 0,λ1 > 0,λ2 > 0。
4.2仿真结果
4.2.1 高增益①仿真结果
4.2.2 高增益②仿真结果
4.3 总结
可以看到相比较普通增益,优化后的自适应增益对初始状态的峰值明显较小,说明了所设计优化增益的合理性。
5 学习问题
①对于Simulink Scope模块的多次使用会导致运算时间长,可以选择使用To Workspace模块将数据输出到工作区间后,使用命令画图。
②所谓的“扩张”指的是扩张了对不确定性项f的估计,把f当成状态变量,所以整体的观测器比被控对象多了一个状态变量f^。
③从相轨迹看稳态误差感觉有些奇怪。
如果有帮助,麻烦帮忙点个赞是我最大的分享动力,非常感谢!
注:仅为便利自己学习,错误在所难免,如有侵权,请联系删除,有兴趣的学者可以参考学习交流,谢谢!
参考资料:
《Nonlinear Control》
基于扩张观测器(LESO)的滑模控制相关推荐
- matlab里面滑模控制示例,基于趋近律的滑模控制matlab仿真实例(12页)-原创力文档...
基于趋近律的滑模控制 一.基于趋近律的滑模控制 1.控制器的设计 针对状态方程 (1) 采用趋近律的控制方式,控制律推导如下: (2) (3) 其中slaw为趋近律. 将状态方程式(1)代人(2)得 ...
- VSC/SMC(十五)——基于模糊逼近的积分滑模控制
目录 前言 1. 一阶系统积分滑模 1.1 一阶系统 1.2 控制器设计 1.2.1 选取积分滑模面 1.2.2 选取指数趋近律 1.2.3 Lypunov闭环系统稳定性证明 1.3 仿真分析 1.4 ...
- 【模糊滑模】基于模糊切换增益调节的滑模控制
前言:接上文,滑模控制主要的问题是抖振问题,接着我就学习了一下如何减小抖振,这里主要根据模糊控制来减小,看了一下模糊滑模控制,它是将符号函数的增益系数自适应,来减小滑模面附近的抖振,在这期间稍微有点感 ...
- VSC/SMC(一)——基于趋近律的滑模控制(含程序模型)
目录 1.几种典型的趋近律 1.1等速趋近律 1.2指数趋近律 1.3幂次趋近律 1.4一般趋近律 2.控制器设计 2.1被控对象 2.2选取滑膜面 2.3定义跟踪误差 2.4计算控制律 3.Simu ...
- VSC/SMC(十四)——全局快速Terminal滑模控制(含程序模型)
目录 1. 收敛时间分析 2.高阶全局Terminal滑模控制器设计与分析 3.高阶全局Terminal滑模鲁棒控制器设计与分析 3.1 总结 4. 仿真分析 4.1 二级非线性系统 4.2 S函数编 ...
- VSC/SMC(十三)——快速和非奇异Terminal滑模控制(含程序模型)
目录 前言 1.Terminal滑模控制 1.1 传统Terminal滑模 1.2非奇异Terminal滑模 1.3 非奇异快速Terminal滑模 2.传统Terminal滑模 2.1 控制器设计 ...
- 滑模控制学习笔记(三)
滑模控制学习笔记(三) 基于趋近律的滑模控制 几种典型的趋近律 等速趋近律 指数趋近律 幂次趋近律 一般趋近律 基于趋近律的控制器设计 仿真实例 状态空间模型建立 滑模控制器模型建立 仿真结果 基于趋 ...
- 滑模控制学习笔记(四)
滑模控制学习笔记(四) 基于上界的滑模控制 系统描述 控制器设计 仿真实例 基于准滑动模态的滑模控制 仿真实例 基于上界的滑模控制 系统描述 考虑二阶非线性系统如下:θ¨=f(θ,θ˙)+g(θ, ...
- 【控制】滑模控制,小例子,有程序有结果图
目录 滑模控制的一点笔记和看法 1 [控制]滑动模型控制(Sliding Mode Control) 2 [控制]滑模控制,小例子,有程序有结果图 3 [控制]滑模控制,滑模面的选择 文章目录 1 问 ...
最新文章
- Unity UGUI —— 无限循环List(转载)
- 如何将现有的项目添加到远程的git库里面!
- PTA-习题11-2 查找星期 (15 分)-enum
- python流式下载处理_流式下载 - 对象存储 OSS - 阿里云
- [转帖]外壳命名空间扩展
- 黑金花大理石_石材用上黑金花,一看就是富豪家
- java序列化层数_java序列化详解
- php 封装模式,PHP设计模式(三):封装
- Python——Django-settings.py的内容
- 使用ETest实现汽车ECU的HIL测试
- python小明爬楼梯_Python3爬楼梯算法示例
- 简单案例之人人网登录界面
- 新手看Mockplus
- Win10 触摸屏 快捷键操作
- Python:求列表的最大数以及下标
- 关于vue路由模式导致微信jssdk授权问题的正确解决姿势
- 如何搭建App自动化测试框架?
- C语言丨整蛊必备小程序,好玩炸翻天(附源码)
- R语言ggplot2可视化散点图(scatter plot)、使用scale_size函数自定义指定散点大小的度量、scale_fill_distiller函数自定义指定散点的颜色映射(填充色的度量)
- [Linux]关于在国产操作系统上安装Oracle数据库