码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 切换模糊化的自适应滑模控制


    目录

    前言

    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条。

  • 相关阅读:
    Western blot实验步骤
    【SQL语法基础】什么是事务处理,如何使用COMMIT和ROLLBACK进行操 作?
    springcloudalibaba架构(17):Gateway网关限流
    C语言打印出九九乘法表
    一个信号博弈模型的解法
    解决tomcat8.5.37控制台中文乱码问题
    单链表的创建定义
    Ubuntu小知识总结
    Rust 学习记录-注意事项
    JVM Native内存泄露的排查分析(64M 问题)
  • 原文地址:https://blog.csdn.net/weixin_50892810/article/details/128137534
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号