切换模糊化的自适应滑模控制

news/2024/10/17 15:22:05/

目录

前言

1.系统描述

2.控制器设计

3.模糊逼近切换项

4.仿真分析

4.1仿真系统

4.2仿真模型

4.3仿真结果

4.4结论 

5.总结


前言

前面两篇文章分别介绍了切换增益模糊化系统不确定项f或g模糊化,其原理都是使用模糊控制对未知量进行估计,上两篇文章直达链接:

VSC/SMC(十五)——基于模糊逼近的积分滑模控制_Mr. 邹的博客-CSDN博客_积分滑模面的优势

基于模糊推理的滑膜控制_Mr. 邹的博客-CSDN博客

本篇文章介绍将整个切换项模糊化,也就是对鲁棒项的整体都进行估计,简单叙述一下为什么要这样做,直接使用我们的常值切换不行么?

答:因为常值切换项需要大于扰动才能实现滑膜控制的鲁棒性,但是扰动又不是常值,通常是不断变化的,这就需要切换项大于扰动的上界,这就使得切换项这个"开关"不可避免的带来控制输入以及控制目标的抖动。

1.系统描述

以n阶系统为例吧:

x^{n}=f+gu+dt

 其中f和g为已知函数(线性或者非线性均可),dt为有上届的扰动。

2.控制器设计

仍以简单的线性滑膜面为例,其实其它类型的滑模面方法都类似

Sliding mode surface:

 其中e=x-xd,ki为满足Hurwitz多项式条件的取值。

 很容易得到我们的控制输入:

其中usw即为切换项/鲁棒项,假定我们选择等速趋近律,且当其为理想参照切换项。

3.模糊逼近切换项

使用滑膜面设计模糊系统h\hat{}(s|\theta )逼近切换项ηsign(s),定义滑模面的隶属度函数Φ(s)为:

 注:h\hat{}(s|\theta )含义为利用s设计的模糊系统得到模糊输出(切换项),θ为估计所需要设计的自适应律

所以理想的h\hat{}(s|\theta )为:

其中θ*代表理想的自适应律。 

所以目标为最小化两者间的误差(估计切换项和理想等速切换项),定义最优参数(自适应律取值)为

 定义Lyapunov函数为:

其中理想和实际的估计切换项所需的自适应律误差为:

接下来对Lyapunov函数求导,但是不妨先对s求导简化:

对Lyapunov函数求导有:

由于理想的自适应律为

代入V',有:

 所以当:

且取η>|d|max即可保证闭环系统的稳定性,其中Φ(s)即为上述滑模面的隶属度函数。

此时估计的切换项h^为:

证明完毕!而且得到估计所需要设计的自适应律。

4.仿真分析

4.1仿真系统

取如下的非线性倒立摆系统并加上扰动dt

4.2仿真模型

4.3仿真结果

4.4结论 

从跟踪效果上看模糊自适应切换项的跟踪效果更佳;总切换项和滑模面上看模糊化切换项的误差更小,证实了所设计的模糊化切换项的有效性。

5.总结

①实际上对于自适应律的组成=调节参数γ*滑模面s*模糊输出基向量Φ,即模糊输出的结果为基向量Φ。

②注意基向量的维度=模糊系统的维数=模糊规则数,这里是3条。


http://www.ppmy.cn/news/810.html

相关文章

阿里云Redis性能压力测试(二十)

文章目录1.云Redis性能压力测试2.安装redis-banchmark压测工具3.压测两节点的Redis集群4.压测四节点的Redis集群4.1.扩容集群为四节点4.2.压力测试5.压测结果对比1.云Redis性能压力测试 我们当前Redis集群是2个节点2个分片,使用redis-benchmark工具对Redis集群进行…

Numpy入门[3]——Numpy数组及其索引

Numpy入门[3]——Numpy数组及其索引 参考: https://ailearning.apachecn.org/ 使用Jupyter进行练习 先导入numpy: import numpy as np产生数组 从列表产生数组 mylist [0, 1, 2, 3] a np.array(mylist) aarray([0, 1, 2, 3])或者直接将列表传入 a …

springboot简述

文章目录一、SpringBoot简介1、springboot快速入门1、开发步骤1.创建springboot入门项目2.创建controller3.启动服务器4.测试2、对比spring3、springboot工程快速启动4.切换web服务器二、配置文件1.配置文件格式2.properties配置文件3.yaml格式配置文件1.语法规则2.yaml配置文件…

【python与数据分析】实验十三 北京市空气质量

目录 一、实验内容 二、完成情况 三、数据分析 1.问题描述 2.编程思路 3.程序代码 4.程序运行结果 (1)2014年-2019年AQI时间序列折线图 (2)各年AQI折线图、AQI直方图、PM2.5与AQI散点图、空气质量整体情况的饼图 ​&am…

HTML+CSS大作业:众志成城 抗击疫情 抗击疫情网页制作作业 疫情防控网页设计

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

import一个“太极”库,让Python代码提速100倍

众所周知,Python的简单和易读性是靠牺牲性能为代价的—— 尤其是在计算密集的情况下,比如多重for循环。 不过现在,大佬胡渊鸣说了: 只需import 一个叫做“Taichi”的库,就可以把代码速度提升100倍! 不信&…

网格化微型空气质量站是什么?系统参数?工作特点?

产品简介 网格化微型空气质量站是一种集数据采集、存储、传输和管理于一体的无人值守的环境监测系统,能全天候、连续、自动地监测环境,在提供PM10、PM2.5、 SO2、 NO2、CO、O3等参数数据的基础上,可扩展对VOCs、氯气、硫化氢、氨气等多种特征…

Spark中常用的聚合算子说明及使用

一、groupByKey 1、基本释义 groupByKey 顾名思义是“按照 Key 做分组”,但实际上groupByKey算子包含分组和收集两步。具体来说,对于元素类型为(Key,Value)键值对的 Paired RDD,groupByKey 的功能就是对 …