一类综合的模糊化自适应滑模控制

news2024/11/15 15:42:48

目录

前言

1.系统描述

2.控制器设计

3.模糊化设计

3.1构造模糊系统 

3.2自适应律设计

4仿真分析

4.1仿真系统

4.2仿真结果


前言

上几篇文章分别介绍了模糊化切换增益(也就是模糊化外界扰动d)、模糊化系统部分的不确定项f、模糊化整个切换项,其原理分别为利用滑膜存在条件ss'的关系、状态变量、滑模面s设计隶属度函数构造模糊系统,输出为自适应律,通过自适应律对需要估计的部分进行逼近。今天这篇文章将去逼近系统不确定性f和g,以及外界扰动d,即同时模糊化系统部分的不确定项f、模糊化整个切换项,相当于对前面的文章进行了一个综合。

1.系统描述

和上篇文章一样以n阶系统为例:

x^{n}=f+gu+dt

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

2.控制器设计

和上几篇文章的设计一模一样,仍以简单的线性滑膜面为例,其实其它类型的滑模面方法都类似

Sliding mode surface:

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

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

其中usw即为切换项/鲁棒项,假定我们选择等速趋近律ηsign(s),其中η > |d|max,且当其为理想参照切换项。

3.模糊化设计

假设系统的f、g和外界扰动d均有界未知,则上述控制器变为:

3.1构造模糊系统 

①对系统部分的f和g逼近时,使用xi的隶属度函数均选择gaussmf(x,[pi/12,pi/24-(i-1)*pi/24]),i=1,2,3,4,5。即:

总结:使用xi的隶属度函数构造模糊系统f^(xi|θf)和g^(xi|θg),输出为模糊向量ξ和Φ,模糊输出向量用于构造逼近f和g所设计的自适应律θf和θg,且f^ = θf*ξf、g^ = θg*ξg。

②对外界扰动d逼近时,使用滑模面s的隶属度函数均选择s形隶属度函数sigmf(x,[-5,-3+(j-1)*3]),j=1,2,3。即:

总结:使用s的隶属度函数构造模糊系统d^(s|θusw),输出为模糊向量ξusw,模糊输出向量用于构造逼近d所设计的自适应律θusw,且usw^ = θusw*ξusw。

3.2自适应律设计

所以自适应律的设计最优值为逼近误差最小时的取值:

定义逼近的误差:

即:

符号解释说明:

  指系统中的不确定f;

指实际取值的自适应律θ时逼近的f(因为逼近也不可能做到没一点误差),即实际逼近的f ;

  指取值为最优自适应律参数θf*时逼近的f,即最优逼近的f。

同样和上两篇文章一样要求取自适应律,则要进行Lyapunov函数稳定性分析,通过稳定性分析证明来得到自适应律,定义Lyapunov函数:

其中:

为了方便运算,对V求导前先运算得到s':

这里由于g是估计的,不能和以往一样直接代入控制输入u,需要进行转化(想办法利用上述的逼近误差表达式) ,先加减g^u

由控制输入:  

 得到: ​​​​​​​ 

 消去 ​​​​​​​,得到:

​​​​​​​将逼近误差表达式:

​​​​​​​代入,得到:

​​​​​​​ ​​​​​​​

 为了引入实际自适应律与理想自适应律的误差关系,即上面定义Lyapunov函数定义的:

s'式子加减 ​​​​​​​

 所以Lyapunov函数导数V'=

​​​​​​​由于理想的usw^ = ηsign(s),所以有:

​​​​​​​ ​​​​​​​ 所以设计如下的自适应律:

其中r1、r2、r3 > 0。

​​​​​​​最终得到V'=

注:

①这里为了缩写简化,有的地方将usw写成了h。

②θ'为自适应律,下标为对应的不确定项;ξ为模糊基向量,即模糊系统的输出,下标含义同自适应律,(.)表示设计模糊系统所使用的变量,分别为xi和滑模面s。

③自适应律的标准组成形式即为:θ' = 调节参数ri*模糊系统输出ξj。

4仿真分析

4.1仿真系统

仍采用和前述文章一直的二阶倒立摆非线性系统,并增加扰动d=sin(t):

4.2仿真模型

指令信号xd = 0.1sin(t),且x0=[pi/6;0;0]

4.3仿真结果

4.3结论

①可以看到基于模糊逼近f、g、usw的滑膜控制在初态响应上优于普通等速趋近律;

②从切换项估计usw^和滑模面s可以看到模糊滑膜控制抖动更小;

③无论自适应律参数ri怎么调节都无法实现逼近,存在较大的误差。

④而且在参数调节上,ri如果调大会报错,滑模面系数在模糊滑模控制中不能调的很大,但是普通趋近律中可以调大一些。

⑤实际上是利用滑模面s、相应的变量的隶属度函数μi进行估计,自适应律的作用就是模糊输出和调节参数ri的乘积,用于调参逼近不确定;

⑥由于滑模控制律中分母为g^,而自适应律为g^的组成,所以自适应律状态变量初值不能为0,即g^不能为0,否则NAN报错。

注:由于符号太多可能会存在错误,可以指出,后续有时间我也会再去检查,谢谢理解!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/56795.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何制作gif图片?

文章目录一、下载LICEcap【制作gif的工具】(按步骤安装即可)二、LICEcap的使用录制步骤:三、录制的gif效果展示一、下载LICEcap【制作gif的工具】(按步骤安装即可) LICEcap是一款简洁易用的动画屏幕录制软件&#xff…

HTML CSS大学生期末网页大作业 DW个人网页设计 人物介绍 历史人物岳飞介绍

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

智慧工地技术方案

二、 系统概述 建筑工地是一个安全事故多发的场所。目前,工程建设规模不断扩大,工艺流程纷繁复杂,如何完善现场施工现场管理,控制事故发生频率,保障文明施工一直是施工企业、政府管理部门关注的焦点。尤其随着社会的…

Elasticsearch_第3章_ elasticsearch_进阶

Elasticsearch_第3章_ elasticsearch_进阶 文章目录Elasticsearch_第3章_ elasticsearch_进阶0.学习目标1.数据聚合1.1.聚合的种类1.2.DSL实现聚合1.2.1.Bucket聚合语法1.2.2.聚合结果排序1.2.3.限定聚合范围1.2.4.Metric聚合语法1.2.5.小结1.3.RestAPI实现聚合1.3.1.API语法1.…

Redis数据结构

一.NoSQL 1.认识NoSQL 关系型数据库:结构化(有很多约束),关联的(数据库会自己维护数据之间的关联,如外键),SQL查询(语法统一),满足事务ACID的特性…

C# Winform 文本面板带滚动条

Winform 中如果需要在一个固定大小的面板中显示一些内容,并且面板能上下拖动,将所有的内容完整的展示,这种需求很常见,下面就演示如何实现的吧 效果: 1.新建一个winform 项目,在界面中拖入一个Panel 将 p…

港科夜闻|香港科技大学校长叶玉如教授,新加坡国立大学曾运雄博士:发现阿尔茨海默病新疗法...

关注并星标每周阅读港科夜闻建立新视野 开启新思维1、香港科技大学校长叶玉如教授、新加坡国立大学曾运雄博士:发现阿尔茨海默病新疗法。由中科院院士、香港科技大学校长叶玉如教授,及新加坡国立大学感染、免疫与炎症研究所的曾运雄博士共同领导的团队研…

rxjs pipeable operators(下)

rxjs pipeable operators(下) 这一篇主要就是讲 flattening operators,像其他的 pipeable 一样, flattening operators 内部会 subscribe 每一个传进来的 Observable,并且将其返回一个新的 Observable。不过它可以将 …

VsCode + gdb + gdbserver远程调试arm嵌入式linux C/C++程序

基本流程跟我的另一篇文章《VsCode gdb gdbserver远程调试C程序》一样,不一样的是需要重新编译gdb和交叉编译gdbserver。 一、准备工作 sudo apt install libgmp-dev 如果不安装,编译gdb时可能会报错:configure: error: GMP is missing o…

[附源码]计算机毕业设计springboot疫情管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

如何阅读别人的代码

会读好源码,才能写出好代码 而且除了经常写代码,还要保持习惯看看别人是怎么写的,这里我只引出一个话题就是如何阅读别人的代码 。一个工整的代码就好比欣赏一个漂亮的美女一样让人赏心悦目,百看不厌,一个乱糟糟的代码就不忍直视&…

AAAI 2023| 旷视研究院入选论文亮点解读

近日,国际人工智能顶级会议 AAAI 2023 (Association for the Advancement of Artificial Intelligence)公布了录用结果。本届会议共收到来自全球的 8777 篇论文投稿,其中 1721 篇论文被录用,论文录用率为 19.6%。AAAI …

【LeetCode】1796. 字符串中第二大的数字

题目描述 给你一个混合字符串 s ,请你返回 s 中 第二大 的数字,如果不存在第二大的数字,请你返回 -1 。 混合字符串 由小写英文字母和数字组成。 示例 1: 输入:s “dfa12321afd” 输出:2 解释:…

【网络层】动态路由算法、自治系统AS、IP数据报格式

文章目录路由算法路由表 --------协议自己算出最佳路由---找最少的跳数的路路由算法分类静态路由算法---手动配置---军事网络、小网络---缺点 路由更新慢动态路由算法----路由器之间彼此交换信息-------适合大型网络动态路由算法全局性链路状态 路由算法----------OSPF----所有…

远程办公:为远程桌面配置固定的公网TCP端口地址

在上一篇文章《远程办公:通过Cpolar内网穿透,远程桌面控制家里/公司内网电脑》中,我们通过cpolar映射远程桌面3389端口,成功实现了在外远程桌面控制家里/公司的Windows电脑。 但免费使用cpolar所生成的公网地址为随机公网地址&am…

linux软件管家——yum

文章目录1. yum1. 主要概念理解2. yum的使用1.查找软件2. 安装软件1.为什么要加上sudo提高权限?2.正常安装3.直接安装3.卸载软件1. 正常卸载2. 直接卸载3. 动态小火车的展示3. yum源1. 概念2. 查找yum源3. 替换yum源1. 备份yum源2. 更新国内yum源 注意事项 3. 缓存清空1. yum …

Isaac SDK Sim 环境

Isaac 是 NVIDIA 开放的机器人平台。其 Isaac SDK 包括以下内容: Isaac Apps: 各种机器人应用示例,突出 Engine 特性或专注 GEM 功能Isaac Engine: 一个软件框架,可轻松构建模块化的机器人应用Isaac GEMs: 感知、规划到驱动的模块化算法包&a…

使用VC++输出调频波

接此; 使用VC输出调幅波的数值和波形_bcbobo21cn的博客-CSDN博客 前面是基本的调幅;下面来看一下基本的调频; 调频就是使载波的频率随调制信号的频率改变;载波是一个等幅的高频振荡;调制信号就是要传递的信息&#…

ARM mkv210_image.c 文件详解

一、mkv210_image.c 的使用演示 裸机程序中的 Makefile(实际上真正的项目的 Makefile 都是这样的)是把程序的编译和链接过程分开的。(平时我们用 gcc a.c -o exe 这种方式来编译时,实际上把编译和链接过程一步完成了。在内部实际…

WebRTC实战-第二章-使用WebRTC实现音视频通话

目录参考理论iceServerWebRTC共分成三个API,分别对应上面三个作用。getUserMedia调用流程开发步骤leave、peer-leave信令实现offer、answer、candidate信令实现开发获取浏览器的流常规设置设置限制条件创建RTCPeerConnectionRTCDataChannelWebRTC Security外部函数库…