通俗理解滑模变结构(2)

一、仿真

接上一节的内容,用Matlab simulink模块搭建模块,搭建模型如下:
在这里插入图片描述
前面control是控制器部分,model是我们上一节的对象。
给定x1初始值为3,x2,x3的初始值为0,仿真时间为10s,仿真结果如下图所示
x1
在这里插入图片描述
x2
在这里插入图片描述
x3
在这里插入图片描述
从图中可以看出,x1,x2,x3都会收敛到0,说明上节设计的镇定控制器成功,simulink模型我放在资源中,自取,用的是matlab2018a。此时,我们用示波器观察u,会发现图如下:
在这里插入图片描述
这个u出现了一个黄色的带,这就是滑模变结构控制中的抖振,这是由于u的不连续而产生的现象,即u中的符号函数sgn(s)。但在实际控制系统中,我们并不希望出现这样的现象,因为抖振会影响控制性能,接下来我将介绍如何处理抖振。

二、抖振处理

从上图u可以看到此时抖振比较大,抖振太大在实际系统会影响系统的性能,甚至会导致系统不稳定,因此在实际系统中使用滑模,我们需要尽量减少抖振。
从上文可知,抖振有很大一部分由于符号函数sgn(s)引起,为了减小抖振,我们可以用其他函数代替符号函数,常用来替代符号函数的切换函数有以下几种:
1.采用饱和函数sat(s)代替符号函数,饱和函数的形式如下:
s a t ( s ) = { 1 , s > Δ k s , ∣ s ∣ < Δ , k = 1 Δ − 1 , s < − Δ sat(s)=\left\{\begin{matrix} & 1,&s>\Delta \\ ks,&\left | s \right |<\Delta,&k=\frac{1}{\Delta } \\ & -1,&s<-\Delta \end{matrix}\right. sat(s)=ks,1,s<Δ,1,s>Δk=Δ1s<Δ其中 Δ \Delta Δ的大小会影响抖振程度,当 Δ \Delta Δ为无穷小时,饱和函数就是符号函数。(注意:并不是抖振越小越好,其实抖振会影响控制速度与控制精度,精度与速度往往两者不可兼得,一般而言,抖振越大系统反应速度越快,但精度很差;抖振小,精度高,但反应速度会差(个人理解,可能有误))

2.连续函数,连续函数的形式如下: Θ ( s ) = s ∣ s ∣ + Δ , Δ > 0 \Theta (s)=\frac{s}{\left | s \right |+\Delta },\Delta>0 Θ(s)=s+Δs,Δ>0
在这里插入图片描述

3.双曲正切函数 t a n h ( ξ s ) tanh(\xi s) tanh(ξs)


除了改变切换函数减小抖振,还有很多其他方法,我在后续的文章主要介绍两种特殊滑模面设计:动态滑模设计与终端滑模设计(Terminal滑模)

  • 32
    点赞
  • 123
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值