王晨丰
摘要:鉴于自动控制原理课程所具有的理论性强、知识点抽象、公式图像多等诸多特点,以往所采用的单纯课堂理论讲解加实验的教学方法,对高职学生而言,一方面比较被动且效果不佳,另一方面也不利于其实践能力的培养。本文是在高职《自动控制原理》课程教学的背景下,将MATLAB仿真软件应用于教学过程中,并结合教学实例对其在课程中的应用做了总结。通过比较,基于MATLAB仿真软件的课堂教学,避免了教学过程中繁琐的计算推导,调动了学生的积极性,凸显了其直观性和灵活性的特点,取得了较好的教学效果。
关键词:MATLAB;高职;自动控制原理;课程教学
中图分类号:G642 文献标识码:A文章编号:1672-3791(2015)05(c)0000-00
1.引言
《自动控制原理》课程是基于当今高新技术的发展和高职高专教育的发展特点而设置的,它是机电一体化、电气自动化、机电及相关专业的专业基础课,同时它又是一门侧重于理论性、指导于实践的课程。该课程中相关概念抽象,涉及面广,有其特殊的框图表示方法,公式多、绘图量大且准确度要求高,加之运用到高等数学中微分方程、拉氏变换等相关知识,高职学生普遍感到有一定的难度。
2011年年底教育部组织专家组对我院进行高等职业院校人才培养评估工作验收,在机电工程系的说课抽检环节中,作为专家组成员之一的西北大学的姚聪莉教授就曾指出我系该课程存在理论性过强,相关概念抽象,教学方法单一的问题。后续经过课程改革的进一步讨论,我们采用了基于MATLAB仿真软件的课堂教学,教学实践表明这是一种比较实用的教学方法。它把MATLAB 作为一种基本工具与教学内容有机结合,利用MATLAB可以快捷的得到理想的结果和直观的曲线图,避免了繁杂的数学推导,加深了对抽象概念的理解,同时教学效果和效率均有明显提高。
MATLAB是美国MathWorks公司于1984年推出的集数值分析、矩阵运算、信号处理和图形显示等功能于一体的软件开发工具包,它包括大量诸如信号处理、图像处理、控制系统识别、神经网络等工具箱,使其成为目前国际学术界确认的准确、可靠的科学计算标准软件之一。它凭借其编程简单、数值及图像显示方便、用户界面友好、扩展容易等优点,在自动控制领域使用日益广泛[1]。
本文主要从高职高专教学活动中的两个主要知识点出发,体现MATLAB软件辅助教学的鲜明效果。最后对MATLAB在整个自控原理教学中的使用做一总结。
2.教学实例
2.1利用MATLAB仿真程序建立系统传递函数的零、极点分布图。
在MATLAB 中,可以利用多种方法来绘制连续系统的零、极点图,如利用pzmap、tf2zp等函数解决[2]。其与常规的数学方法相比,简单直观,不需要较强的数学运算,且能完成具有较高阶数的特征多项式系统的绘图,并能求取零、极点的精确值。
例如,某系统的传递函数为 ,试求出零、极点及增益值,并绘出零、极点图。
其仿真程序如下[3]:
>> num=[6 7 8 9];
>> den=[5 4 3 2 1];
>> [z,p,k]=tf2zp(num,den)
则屏幕显示系统的零、极点及增益值如下:
z =
-1.1457
-0.0105 + 1.1442i
-0.0105 - 1.1442i
p =
0.1378 + 0.6782i
0.1378 - 0.6782i
-0.5378 + 0.3583i
-0.5378 - 0.3583i
k =
1.2000
继续执行:
>> pzmap(num,den);
>> title('Zero-Pole Map 零极点图');
则该系统的零、极点图如图1所示:
图1 该系统的零、极点图及一个极点值p =0.1378 + 0.6782i在图中的相关信息
我们还可以把鼠标箭头停留在任一个零、极点上,此时软件会显示这个零极点在图中的相关信息,如图1中小方框所示。借助这些内容可以方便的完成后续内容中对“系统稳定性”的判定,如本例中系统是不稳定的。(线性系统稳定的充要条件:所有极点都分布在S平面的虚轴左侧。)
2.2利用MATLAB仿真程序完成时域分析法中二阶系统的阶跃响应曲线分析。
在控制系统的时域分析中,二阶系统是其重要组成部分之一,而其中二阶系统的阶跃响应则又与其重要的参数无阻尼振荡频率ωn和阻尼比ξ直接相关,不同阻尼比的二阶系统阶跃响应曲线反映了几种不同情况下的暂态响应。利用MATLAB仿真程序把不同阻尼比的响应曲线绘制在同一幅图上,通过互相比较,可以清楚的了解零阻尼、欠阻尼、临界阻尼及过阻尼四种情况的差异,并能利用系统的动态性能指标加以深度分析[4]。
例如:典型二阶系统闭环传递函数为,式中令ωn为一固定值,
则系统的瞬态响应只与参变量ξ有关。下面用MATLAB仿真软件分析ξ取0变至1时(每隔0.1取一值)及等于3.0时的单位阶跃响应[5]。
其仿真程序如下:
>> wn=20;
>> ki=[0:0.1:1.0,3.0];
>> hold on
>> for k=ki
num=wn^2
den=[1,2*k*wn,wn^2]
step(num,den);
end
>> title('Step Response 阶跃响应')
>> hold off
则图2即为该程序运行后的响应曲线。
图2 不同阻尼比的二阶系统单位阶跃响应曲线
从上述共12条曲线可以看出,(1)最上方的曲线不平滑,但明显可看出带有持续的等幅振荡过程,随时间基本不衰减,是零阻尼情况(即ξ=0);(2)最下方的曲线是过阻尼情况(即ξ>1),而紧挨它上方的就是临界阻尼情况(即ξ=1),两者在动态性能指标上存在差异(如上升时间,调节时间等);(3)其余中间部分曲线便是二阶系统中最常见的欠阻尼情况(即 0<ξ<1),从曲线上可以直观的看到欠阻尼的稳态值为1,而暂态值是一个随时间t增长而衰减的振荡过程。
除了以上两点教学应用实例,在自动控制原理的诸多部分,都能引入MATLAB辅助教学,如:系统结构图的等效变换,系统的稳态误差分析,利用SIMULINK建立系统模型及仿真,绘制奈奎斯特图(Nyquist)、伯德图(Bode)及根轨迹图等,尤其在绘图时,人工绘制步骤多、计算量大且结果不精确,参数不易调整,而MATLAB方便、快捷、直观的解决了这些问题,大大提高了教学的效率及效果。
3.小结
鉴于《自动控制原理》课程的理论性,抽象性和工程应用性,加之该课程需要的一定数学基础,而我们现在的高职学生普遍数学基础较差,学习吃力,进而导致对该课程研究对象不明确,缺乏兴趣[6]。经过近两学年对MATLAB辅助教学的强化,教学效率及效果有了进一步的提高。以12级高职机电班为例,引入仿真软件教学后,从实验报告的内容分析及心得体会方面,从后续相关知识点讲解的难易度方面,从课堂上教与学的互动程度及学生对问题的关注点方面,都能感觉到明显的变化。尤其是在时域分析中对典型输入信号的响应情况的建模与仿真、频域分析法中对伯德图的绘制、系统校正前后的比较等方面,效果十分明显。
因此, MATLAB仿真与自控课程的有机整合,一方面提高了教学效率,使得原来枯燥的课堂教学变得更加灵活,使得教学模式多样化,给高职相关理工类课程的改革提供了参照;另一方面更重要的是充分调动了学生的积极性和主动性,给学生打开了另一扇了解控制技术的窗口,对他们工程实践能力和创新能力的提高创造了有利条件。
参考文献:
[1] 张德喜,周予生等.MATLAB语言程序设计教程 [M]北京:中国铁道出版社,2006.1-2
[2] 焦斌.自动控制原理与应用 [M]北京:高等教育出版社,2004.70-71
[3] 王划一等.自动控制原理 [M]北京:国防工业出版社,2006.141-142
[4] 张岳,白霞,孔晓红编著.自动控制原理(第2版)[M]北京:清华大学出版社,2010.38-42
[5] 邹伯敏.自动控制理论(第3版)[M]北京:机械工业出版社,2007.96-97
[6] 刘秋菊. MATLAB在高职《自动控制原理》课程教学中的应用 [EB/OL]《邢台职业技术学院学报》,2009,3.