滑模控制理论(SMC)

慈云数据 8个月前 (03-12) 技术支持 98 0

滑模控制理论(Sliding Mode Control,SMC)

滑膜控制理论是一种建立在现代控制理论基础上的控制理论,其核心为李雅普诺夫函数,滑膜控制的核心是建立一个滑模面,将被控系统拉倒滑模面上来,使系统沿着滑模面运动,滑膜控制的优势在于无视外部扰动和不确定性参数,采取一种比较暴力的方式来达到控制目的,但是这种暴力也带来了一些问题,就是正负信号的高频切换,一般的硬件是无法进行信号的高频切换的,所以需要一些其他的方式避免这个问题,还有就是型号的高频切换会导致输出的信号出现震荡,导致系统在所选取的滑模面之间来回震荡,这种震荡是无法消除的,这也是滑膜控制的一个问题。

滑模控制理论(SMC)
(图片来源网络,侵删)

优点

滑动模态可以设计

滑模控制理论(SMC)
(图片来源网络,侵删)

对扰动不敏感

缺点

硬件无法适应高频的信号切换

信号高频切换带来的输出信号震荡

系统建模

我们可以建立一个简单的二阶系统的状态方程

x ˙ 1 = x 2 x ˙ 2 = u \begin{align} \dot x_1 &= x_2 \nonumber \\ \dot x_2 &= u \nonumber \\ \end{align} x˙1​x˙2​​=x2​=u​​

我们的控制目标很明确,就是希望 x 1 = 0 , x 2 = 0 x_1 = 0,x_2=0 x1​=0,x2​=0

设计滑模面

s = c x 1 + x 2 s=cx_1+x_2 s=cx1​+x2​

这里有个问题就是,滑模面是个什么东西,为什么要设计成这个样子,为什么不是别的样子,其实这个涉及一个问题就是我们控制的目标是什么,是 x 1 = 0 , x 2 = 0 x_1 = 0,x_2=0 x1​=0,x2​=0,那如果 s = 0 s=0 s=0呢

{ c x 1 + x 2 = 0 x ˙ 1 = x 2 ⇒ c x 1 + x ˙ 1 = 0 ⇒ { x 1 = x 1 ( 0 ) e − c t x 2 = − c x 1 ( 0 ) e − c t \begin{equation} \begin{cases} cx_1 + x_2 = 0 \\ \dot x_1 = x_2 \\ \end{cases} \Rightarrow cx_1+\dot x_1 = 0 \Rightarrow \begin{cases} x_1 = x_1(0)e^{-ct} \\ x_2 = -cx_1(0)e^{-ct} \\ \end{cases} \nonumber \end{equation} {cx1​+x2​=0x˙1​=x2​​⇒cx1​+x˙1​=0⇒{x1​=x1​(0)e−ctx2​=−cx1​(0)e−ct​​

可以看出状态量最终都会趋于0,而且是指数级的趋于0。 c c c 越大,速度也就越快。所以如果满足 s = c x 1 + c 2 = 0 s=cx_1+c_2=0 s=cx1​+c2​=0,那么系统的状态将沿着滑模面趋于零,( s = 0 s=0 s=0称之为滑模面)

设计趋近律

上面说,如果 s = 0 s=0 s=0 状态变量最终会趋于0,可以如何保证 s = 0 s=0 s=0 呢,这就是控制率 u u u 需要保证的内容了

s ˙ = c x ˙ 1 + x ˙ 2 = c x 2 + u \dot s = c \dot x_1 + \dot x_2 = cx_2+u s˙=cx˙1​+x˙2​=cx2​+u

趋近律就是指 s ˙ \dot s s˙ ,趋近律的一般有以下几种设计

{ s ˙ = − ε s g n ( s ) , ε > 0 s ˙ = − ε s g n ( s ) − k s , ε > 0 , k > 0 s ˙ = − k ∣ s ∣ α s g n ( s ) , 0 0 \\ \dot s = - \varepsilon sgn(s)-ks, \varepsilon > 0 , k>0\\ \dot s = - k|s|^{\alpha}sgn(s), 0 0s˙=−εsgn(s)−ks,ε>0,k>0s˙=−k∣s∣αsgn(s),00 \\ -1,s1,s0−1,s

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon