控制理论的经典实例:单摆系统
单摆系统
最近几个学期我在上「自动控制原理」课程,在讲解「控制系统的数学模型」这部分内容时,我使用了经典的单摆系统模型作为实例,在课堂上取得了不错的效果。
「控制系统的数学模型」这章首先介绍了如何建立控制系统的微分方程模型,这是对系统进行控制和分析的基础和前提;其次,它介绍了线性定常系统,这是课程中主要研究的一类系统;最后,它介绍了如何利用Laplace变换法求解微分方程,经典控制理论最重要的概念「传递函数」就是在微分方程求解过程中引入的。该部分内容涉及到较多的理论推导,学生很容易产生畏惧心理,从而影响学习效果。因此,应精心挑选优秀的实例进行讲解。我认为,优秀的实例应该具备如下几个特征:
- 能充分支持知识点的讲解;
- 难度不大,学生容易掌握;
- 学生感兴趣;
- 一个实例可用于多个知识点的讲解。
单摆系统这个实例满足上述所有的特征。下面简单介绍我的教学过程。
模型的建立
首先是控制系统微分方程的建立。将单摆的摆线拉开一个小的初始角度\(\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}} \]
总结
可以发现,单摆系统这个实例满足了前面提到的优秀实例应该满足的条件:
- 一个实例充分支撑了多个内容的讲解;
- 模型虽是非线性的,但可以通过简单的数学知识将其线性化;
- 得到输出的拉氏变换表达式后,通过查表法即得到时域中的解析表达式,求解过程足够简单;
- 学生在中学阶段就学过单摆的周期表达式,但不知道如何得来,对它比较感兴趣。
所以,单摆系统是非常优秀的实例。从课堂效果来看,学生对单摆的模型推导、非线性方程的线性化以及微分方程的求解过程展现了强烈的兴趣,推导出熟悉的单摆周期公式后,学生觉得很有意思,气氛比较活跃,取得了不错的教学效果。