题目
设计滑模变结构控制器,实现对小车倒立摆系统的稳摆控制,给出小车位移、摆杆位移、小车速度、摆杆角度的变化曲线。小车倒立摆系统的参数如图所示。
动力学建模
运用拉格朗日方程进行建模
根据拉格朗日方程进行建模:
线性化
对上面得到的方程进行线性化,由于我们的控制目标是保持小球稳定在0°左右,所以可以对正弦,余弦进行线性化
为方便接下来计算令F=U+W,那么线性化后方程为:
F=(M+m)+ml
mgl=ml²
+ml
带入题目所给参数通过这两个等式可以解得:
写成状态方程:
具体可以看这篇文章https://blog.csdn.net/MinimalControl/article/details/137525796
进行3D建模
可以按照这个视频建立模型:
【小车倒立摆最优控制教程 - Part1 Simulink Simscape Multibody仿真建模】 https://www.bilibili.com/video/BV19M4y1E799/?share_source=copy_web
simulink中是这样的:
设计滑模控制器
滑模控制(Sliding Mode Control, SMC)是一种在处理非线性系统时非常有效的控制技术。它通过驱动系统状态达到并保持在特定的滑模面附近,来实现控制目标。滑模控制的基本思想是设计一个滑模面,使得一旦系统状态达到该滑模面,它们将保持在滑模面附近运动。滑模控制分为两个阶段:趋近阶段和滑动阶段。
趋近阶段:系统状态从任意初始状态趋近滑模面。
滑动阶段:一旦系统状态达到滑模面,它们将在滑模面上运动,对外部扰动和不确定性不敏感。
滑模面的设计是滑模控制的关键步骤。滑模面S(x)通常被设计为状态变量的线性组合:
S(x) = Cx
对于S(x)求导可得趋近率,趋近率一般有如下几种设计:
根据求导后S(x)的表达式与自己设计的趋近率可以解出控制器表达式。
综上可以设计滑模控制器:
在simulink中可以设计控制器:
关于滑模控制器可以参考这篇文章:
自动控制:滑模控制(Sliding Mode Control, SMC)-CSDN博客
结果
把滑模控制器和倒立摆模型连接得:
给系统赋值:
通过示波器可以看出控制效果不错: