控制理论的经典实例:单摆系统

单摆系统

最近几个学期我在上「自动控制原理」课程,在讲解「控制系统的数学模型」这部分内容时,我使用了经典的单摆系统模型作为实例,在课堂上取得了不错的效果。

「控制系统的数学模型」这章首先介绍了如何建立控制系统的微分方程模型,这是对系统进行控制和分析的基础和前提;其次,它介绍了线性定常系统,这是课程中主要研究的一类系统;最后,它介绍了如何利用Laplace变换法求解微分方程,经典控制理论最重要的概念「传递函数」就是在微分方程求解过程中引入的。该部分内容涉及到较多的理论推导,学生很容易产生畏惧心理,从而影响学习效果。因此,应精心挑选优秀的实例进行讲解。我认为,优秀的实例应该具备如下几个特征:

  1. 能充分支持知识点的讲解;
  2. 难度不大,学生容易掌握;
  3. 学生感兴趣;
  4. 一个实例可用于多个知识点的讲解。

单摆系统这个实例满足上述所有的特征。下面简单介绍我的教学过程。

模型的建立

首先是控制系统微分方程的建立。将单摆的摆线拉开一个小的初始角度\(\theta_0\)后松开,需计算摆线角度\(\theta\)随时间变化的规律。通过简单的力学分析,可得到理想条件下系统的微分方程

\[ \frac{\mathrm{d}^2 \theta}{\mathrm{d}t^2} + \frac{g}{l} \sin \theta = 0 \]

该系统的输出是摆线的角度\(\theta\),无输入信号,初始状态为\(\theta(0)=\theta_0\)\(\theta^{'}(0)=0\),这就是单摆系统的数学模型。

线性定常系统

然后是线性定常系统的概念。得到了各类系统的微分方程后,可以根据方程的形式对系统进行分类,线性定常微分方程所描述的线性定常系统也称为线性时不变系统,在课程中占据重要的地位。因为单摆模型的微分方程中有非线性项\(\sin\theta\),所以单摆系统是非线性系统。

线性化

接下来是非线性微分方程的线性化。正因为线性定常微分方程具有良好的性质,在条件满足的情况下,可将非线性系统线性化以简化分析过程。教材上给出了线性化的理论推导,但没有介绍实例。单摆系统的线性化则是非常好的实例。

当使用弧度制,\(\theta \ll 1\)时,有\(\sin \theta \approx \theta\),正弦函数在原点附近的线性度非常好,这点可在课堂上可通过MATLAB软件画图演示。所以,单摆的非线性微分方程在摆角很小时可线性化为

\[ \frac{\mathrm{d}^2 \theta}{\mathrm{d}t^2} + \frac{g}{l} \theta = 0 \]

这是个二阶线性定常微分方程。

微分方程求解

最后是使用Laplace变换法求解线性定常微分方程。对方程两边进行Laplace变换,考虑初始条件,得

\[ s^2 \Theta(s) - s \theta(0) - \theta^{'}(0) + \frac{g}{l} \Theta(s) = 0 \]

将初始条件代入,整理得到输出的Laplace变换表达式

\[ \Theta(s) = \frac{\theta_0 s}{s^2 + g/l} \]

通过查表法即可得到Laplace反变换,也就是时域中的解析解

\[ \theta(t) = \theta_0 \cos (\sqrt{\frac{g}{l}t}) \]

即摆角的变化遵循简谐运动的规律。根据正弦函数的周期计算公式,很容易得到单摆的摆动周期为

\[ T = 2 \pi \sqrt{\frac{l}{g}} \]

总结

可以发现,单摆系统这个实例满足了前面提到的优秀实例应该满足的条件:

  1. 一个实例充分支撑了多个内容的讲解;
  2. 模型虽是非线性的,但可以通过简单的数学知识将其线性化;
  3. 得到输出的拉氏变换表达式后,通过查表法即得到时域中的解析表达式,求解过程足够简单;
  4. 学生在中学阶段就学过单摆的周期表达式,但不知道如何得来,对它比较感兴趣。

所以,单摆系统是非常优秀的实例。从课堂效果来看,学生对单摆的模型推导、非线性方程的线性化以及微分方程的求解过程展现了强烈的兴趣,推导出熟悉的单摆周期公式后,学生觉得很有意思,气氛比较活跃,取得了不错的教学效果。