动态系统控制理论经典应用:倒立摆
1、问题设置和设计要求
本例中的系统由安装在机动推车上的倒立摆组成。倒立摆系统是控制系统教科书和研究文献中常见的一个例子。它之所以受欢迎,部分原因是它在没有控制的情况下是不稳定的,也就是说,如果推车不移动来平衡它,钟摆就会简单地倒下。此外,系统的动力学是非线性的。该控制系统的目标是通过向倒立摆所连接的推车施加力来平衡倒立摆。
在这种情况下,我们将考虑一个二维问题,其中摆杆被约束在下图所示的垂直平面内移动。对于该系统,控制输入是水平移动推车的力 F F F,输出是摆杆的角度大小 θ \theta θ和推车的水平位置 x x x。
对于这个例子,让我们假设以下相关的量:
(M)推车的质量 0.5 kg
(m)摆杆的质量 0.2 kg
(b)推车的摩擦系数 0.1 N/m/sec
( l l l)摆杆质心到关节点的长度 0.3 m
(I)摆杆质量惯性矩0.006 kg.m^2
(F)施加到推车上的力
(x)推车的位置坐标
(θ)垂直方向的摆角(向下)
对于这个问题的PID、根轨迹和频率响应部分,我们只对摆杆的位置控制感兴趣。这是因为这些部分中使用的技术最适合单输入单输出(SISO)系统。因此,没有一个设计标准涉及推车的位置。然而,在控制器设计完成后,我们将研究控制器对推车位置的影响。对于这些部分,我们将设计一个控制器,在摆杆与推车发生脉冲“碰撞”后,将其恢复到垂直向上的位置。具体而言,设计标准是摆杆在5秒内返回其直立位置,并且在受到1Nsec量级的脉冲干扰后,摆杆从垂直方向的移动不会超过0.05弧度。摆杆开始时将处于垂直向上的平衡状态, θ \theta θ= π \pi π。
总之,该系统的设计要求是:
- θ \theta θ的稳定时间小于5秒。
- 摆角 θ \theta θ与垂直方向的夹角不超过0.05弧度。
利用状态空间设计技术,我们能够更容易地处理多输出系统。在我们的案例中,倒立摆系统是单输入多输出(SIMO)系统。因此,对于倒立摆示例的状态空间部分,我们将尝试同时控制摆杆的角度和小车的位置。在这些条件下,希望推车在5秒内达到相应位置。还希望摆杆在5秒内稳定到其垂直位置,此外,摆角与垂直向上位置的夹角不超过20度(0.35弧度)。
总之,倒立摆状态空间示例的设计要求是:
- x x x和 θ \theta θ的稳定时间小于5秒
- 摆杆与垂直方向的夹角不超过 20 度(0.35 弧度)
- 对于 x x x 和 θ \theta θ 的稳态误差小于 2%
2、力分析和系统方程
以下是倒立摆系统的两个元件自由状态下的示意图。
将推车自由状态的示意图中水平方向的力相加,可以得到以下运动方程:
M x ¨ + b x ˙ + N = F ( 1 ) M\ddot{x}+b\dot{x}+N=F (1) Mx¨+bx˙+N=F(1)请注意,您也可以对推车的垂直方向上的力求和,但不会获得有用的信息。将摆杆自由体图中水平方向的力相加,可以得到反作用力 N N N的以下表达式: N = m x ¨ + m l θ ¨ cos θ − m l θ ˙ 2 sin θ ( 2 ) N=m\ddot{x}+ml\ddot{θ}\cos\theta-ml\dot{θ}^2 \sin\theta(2) N=mx¨+mlθ¨cosθ−mlθ˙2sinθ(2)如果你把这个方程代入第一个方程,你会得到这个系统的两个控制方程之一: ( M + M ) x ¨ + b x ˙ + m l θ ¨ cos θ − m l θ ˙ 2 sin θ = F ( 3 ) (M+M)\ddot{x}+b\dot{x}+ml\ddot{\theta}\cos\theta-ml\dot{\theta}^2 \sin\theta=F(3) (M+M)x¨+bx˙+mlθ¨cosθ−mlθ˙2sinθ=F(3)要得到这个系统的第二个运动方程,将垂直于摆杆的力求和。沿着这个轴求解系统大大简化了数学运算。你应该得到下面的方程式。 P sin θ + N cos θ − m g sin θ = m l θ ¨ + m x ¨ cos θ ( 4 ) P\sin\theta+N\cos\theta-mg\sin\theta=ml\ddot{\theta}+m\ddot{x}\cos\theta(4) Psinθ+Ncosθ−mgsinθ=mlθ¨+mx¨cosθ(4)为了去掉上面方程中的 P P P和 N N N项,将关于摆杆质心的力矩求和,得到下面的方程。 − P l sin θ − N l cos θ = I θ ¨ ( 5 ) -Pl\sin\theta -Nl\cos\theta=I\ddot{\theta}(5) −Plsinθ−Nlcosθ=Iθ¨(5)结合最后两个表达式,得到第二个控制方程:
( I + m l 2 ) θ ¨ + m g l sin θ = − m l x ¨ cos θ ( 6 ) (I+ml^2)\ddot{\theta}+mgl\sin\theta=-ml\ddot{x}\cos\theta(6) (I+ml2)θ¨+mglsinθ=−mlx¨cosθ(6)由于我们将在本例中使用的分析和控制设计技术仅适用于线性系统,因此需要对这组方程进行线性化。具体来说,我们将线性化关于垂直向上平衡位置的方程, θ \theta θ= π \pi π,并将假设系统停留在这个平衡点的一个小邻域内。这个假设应该是合理有效的,因为在控制下我们希望摆杆的偏离垂直向上位置不超过 20 度。设 ϕ \phi ϕ 表示摆杆的位置偏离平衡点的偏差,即 θ \theta θ= π \pi π+ ϕ \phi ϕ。再次假设与平衡位置的偏差很小( ϕ \phi ϕ),我们可以使用系统方程中非线性函数的以下小角度近似:
cos θ = cos ( π + ϕ ) ≈ − 1 ( 7 ) \cos \theta = \cos(\pi + \phi) \approx -1 (7) cosθ=cos(π+ϕ)≈−1(7) sin θ = sin ( π + ϕ ) ≈ − ϕ ( 8 ) \sin \theta = \sin(\pi + \phi) \approx -\phi (8)