Matlab在控制理论时域分析法教学中的应用
2011-11-15戴成梅
刘 伟 戴成梅
(周口师范学院物理与电子工程系,河南 周口 466001)
Matlab在控制理论时域分析法教学中的应用
刘 伟 戴成梅
(周口师范学院物理与电子工程系,河南 周口 466001)
时域分析法是一种直接在时间域中对系统进行分析的方法,具有直观和准确的优点.它是根据控制系统输入与输出之间的时域表达式,分析系统的稳定性、瞬态过程和稳态误差.根据自动控制原理课程的特点和授课内容要求,结合多媒体教学实践,提出了在课堂上将MATLAB的函数功能和PowerPoint课件有机融合起来的现场教学方法.该方法不仅图文并茂、动静结合,而且可以让学生看到实时的科学计算结果,从而有效的激发学生的学习兴趣,加深学生对抽象理论知识的理解和弥补实验环节的不足.
MATLAB软件;时域分析;瞬态指标;仿真曲线
《自动控制原理》是高等工科院校自动化专业和电子信息类专业的一门重要基础课程,其应用领域非常广泛,几乎遍及电类及非电类的各个工程技术学科.学好这门课程,掌握自动控制的基本原理,学会自动控制系统的分析和设计方法,对于高等工科院校自动化专业和电子信息类专业的学生来说是非常重要的.在自动控制原理教学过程中,常常要分析同一系统在不同参数情况下对同一信号源的不同响应过程及相应的瞬态过程指标,这就需要画一些函数曲线,我们尝试着将仿真软件MATLAB引入到传统的教学中来,将大量的曲线图表清晰的展现在学生面前.通过实践,取得了较好的教学效果.MATLAB简介 MATLAB(Matrix Laboratory,即“矩阵实验室”)是美国Mathworks公司于1984年推出的一种面向科学与工程的计算软件,它将不同领域的计算集成为函数的形式,用户在使用时,只需调用这些函数并赋予实际参数就能解决实际问题.MATLAB软件已经成为应用代数、自动控制原理、数字信号分析与处理、时问序列分析、统计应用、动态系统仿真等学科的一个重要工具[1].
1 线性系统稳定性分析
线性系统稳定的充要条件是系统的特征根均位于S平面的左半部分.系统的零极点模型可以直接被用来判断系统的稳定性.另外,MATLAB语言中提供了有关多项式的操作函数,也可以用于系统的分析和计算[2].
1.1 直接求特征多项式的根
设p为特征多项式的系数向量,则MATLAB函数roots()可以直接求出方程p=0在复数范围内的解v,该函数的调用格式为:
例1已知系统的特征多项式为:
特征方程的解可由下面的MATLAB命令得出。
利用多项式求根函数roots(),可以很方便的求出系统的零点和极点,然后根据零极点分析系统稳定性和其它性能.
1.2 零极点分布图。
在MATLAB中,可利用pzmap()函数绘制连续系统的零、极点图,从而分析系统的稳定性,该函数调用格式为:
例2给定传递函数:
利用下列命令可自动打开一个图形窗口,显示该系统的零、极点分布图,如图1所示.
图1 系统的零、极点分布图
2 系统动态特性分析
2.1 单位阶跃响应的求法:
控制系统工具箱中给出了一个函数step()来直接求取线性系统的阶跃响应,如果已知传递函数为:
则该函数可有以下几种调用格式:
该函数将绘制出系统在单位阶跃输入条件下的动态响应图,同时给出稳态值.如果需要将输出结果返回到MATLAB工作空间中,则采用以下调用格式:
例3已知传递函数为:
利用以下MATLAB命令可得阶跃响应曲线如图2所示.
图2 MATLAB绘制的响应曲线
2.2 求阶跃响应的性能指标
MATLAB提供了强大的绘图计算功能,可以用多种方法求取系统的动态响应指标.我们首先介绍一种最简单的方法——游动鼠标法.对于例3,在程序运行完毕后,用鼠标左键点击时域响应图线任意一点,系统会自动跳出一个小方框,小方框显示了这一点的横坐标(时间)和纵坐标(幅值).按住鼠标左键在曲线上移动,可以找到曲线幅值最大的一点——即曲线最大峰值,此时小方框中显示的时间就是此二阶系统的峰值时间,根据观察到的稳态值和峰值可以计算出系统的超调量.系统的上升时间和稳态响应时间可以依此类推.另一种比较常用的方法就是用编程方式求取时域响应的各项性能指标.与上一段介绍的游动鼠标法相比,编程方法稍微复杂,但通过下面的学习,读者可以掌握一定的编程技巧,能够将控制原理知识和编程方法相结合,自己编写一些程序,获取一些较为复杂的性能指标[3].
通过前面的学习,我们已经可以用阶跃响应函数step()获得系统输出量,若将输出量返回到变量y中,可以调用如下格式
该函数还同时返回了自动生成的时间变量t,对返回的这一对变量y和t的值进行计算,可以得到时域性能指标.
①峰值时间(timetopeak)可由以下命令获得:
应用取最大值函数max()求出y的峰值及相应的时间,并存于变量Y和k中.然后在变量t中取出峰值时间,并将它赋给变量timetopeak.
② 最大(百分比)超调量(percentovershoot)可由以下命令得到:
dcgain()函数用于求取系统的终值,将终值赋给变量C,然后依据超调量的定义,由Y和C计算出百分比超调量.
③ 上升时间(risetime)可利用MATLAB中控制语句编制M文件来获得.要求出上升时间,可以用while语句编写以下程序得到:
在阶跃输入条件下,y的值由零逐渐增大,当以上循环满足y=C时,退出循环,此时对应的时刻,即为上升时间.
对于输出无超调的系统响应,上升时间定义为输出从稳态值的10%上升到90%所需时间,则计算程序如下:
用向量长度函数length()可求得t序列的长度,将其设定为变量i的上限值[4].
例4已知二阶系统传递函数为:
利用下面的stepanalysis.m程序可得到阶跃响应如图3及性能指标数据.
运行后的响应图如图3,命令窗口中显示的结果为
图3 二阶系统阶跃响应
由于课堂上直接进行演示,使得本课程教师教起来轻松,学生学起来愉悦,提高了上课效率,也使得该课程的教学更加生动、活跃,方便学生理解和掌握比较抽象的问题,有助于学生独立学习和科研能力的提高.在MATLAB中,已经把复杂的概念和数学公式编织成可以直接调用的函数.可以调用来讲解许多概念和理论的实际意义和应用,因此我们在演示图形时只是将MATLAB作为一种辅助教学手段,淡化了程序的编写过程,程序的编写非常简洁,只让学生观察仿真结果和比较各个图形,使课本中的抽象原理形象化,提高了教学效果.
[1]黄忠霖.控制系统MATLAB计算及仿真[M].北京:国防工业出版社,2001.
[2]薛定宇.反馈控制系统设计与分析-MATLAB[M].语言应用,北京:清华大学出版社,2000.
[3]朱汉敏.Matlab在静电场教学中的优越性[J].上海电力学院学报,2005,(3):66-68.
[4]魏可新.Matlab语言与自动控制系统设计[M].北京:电子工业出版社,2002.
THE APPLICATION OF MATLAB IN THE TEACHING OF TIME DOMAIN ANALYSIS METHOD IN CONTROL THEORY
LIU WeiDAI Cheng-mei
(Department of Physics and Electrionic Engineering,Zhoukou Normal University,Zhoukou Henan 466001)
Time domain analysis method is a direct system analysis method in the time domain with an intuitive and accurate advantage.It is based on the control between the system input and output time domain expression,analysising the stability of the system,transient state and steady error.According to the principle of automatic control course characteristics and teaching contents and combining multimedia teaching practice,This paper presents MATLAB function and PowerPoint courseware of organic integration of the scene teaching method in the class. The method is not only illustrated by use of pictures and text,static and dynamic,and allows students to see the real scientific results In order to effectively stimulate students interest in learning,it Deepens the student to understand the theory of abstraction and makes up for the inadequacy of link experiment.
Matlab software,time domain analysis,transient standard,simulation curve
G71
A
1672-2868(2011)06-0140-04
2011-11-07
河南省教育厅自然科学研究计划项目(项目编号:2009B510020)
刘伟(1976-),女,河南太康人。讲师,硕士,研究方向:智能控制
责任编辑:陈 凤