倒立摆:Simulink控制器设计
问题设置和设计要求
在这个问题中,如下图所示,带有倒立摆的小车被冲击力“撞上”了
。

对于此示例,我们假设
(M)推车质量0.5公斤
(m)摆质量0.2公斤
(b)推车的摩擦力0.1 N / m /秒
(l)到摆质量中心的长度0.3 m
(I)摆惯性0.006 kg * m ^ 2
(F)施加在推车上的力N
(x)推车位置坐标m
垂直弧度的(θ)摆角
在设计过程中,我们将开发PID控制器连接其插入单输入单输出工厂。更简单,当推车受到1-Nsec脉冲时,控制器将尝试将摆锤垂直向上保持。购物车在这些条件下,设计标准为:
-
稳定时间预期5秒
-
摆锤与垂直方向的距离不得超过0.05弧度
对非线性模型实施PID控制
在“
倒立摆:PID控制器设计”
页面中,
设计
了PID控制器,其比例,积分和微分增益分别等于100,1和20为了实现此闭环系统,将从我们
倒立摆的Simulink的建模
页面中的工厂模型开始。按照以下步骤,我们将建立一个以摆放位置的参考输入和加压到手推车上的干扰力为基础的闭环模型。
-
首先,打开先前生成的Simulink模型。您可以通过右键点击 Pend_Model.slx 或 Pend_Model_Simscape.slx 然后选择“ 将链接另存为...” 来下载它们。我们将使用Simscape模型来利用其提供的动画功能。
-
从Simulink /数学运算库中插入两个添加块。
-
将 符号 块 列表中 的“添加”块之一更改为“ +-”。
-
从其Simulink /源库中插入一个常量块。将其值更改为0。这是垂直向上对应于摆锤的参考输入。请注意,非Simscape模型(以及本例中的其余页面)将摆角垂直指向时将摆角定义为等于pi。
-
从Simulink / Continuous库中插入PID控制器块。
-
通过双击编辑PID块。将 比例(P): 增益更改为“ 100”,将 积分(I): 增益更改为“ 1”,转换 微分(D): 增益更改为“ 20”。
-
现在连接下图所示的块:

非线性闭环响应
现在我们可以模拟闭环系统。确保物理参数设置如下。
M = 0.5;
m = 0.2;
b = 0.1;
I = 0.006;
g = 9.8;
l = 0.3;
现在,开始模拟(从“
模拟”
菜单中选择
“运行”
或输入
Ctrl-T
)。在模拟运行时,倒立摆的动画将可视化系统产生的运动。回想一下,必须在“
模拟”>“模型配置”参数“
菜单下选择”在
模拟
过程中显示动画”
选项。运行模拟后,您应该看到以下响应。
