时间:2024-09-03
德州学院能源与机械学院 孙秀云
根轨迹作为一种经典的分析方法,经常被用来进行线性系统分析。但是对于复杂系统手绘根轨迹非常困难,针对这个问题,本文利用MATLAB中的GUI设计了根轨迹仿真分析平台。线性系统的传递函数可以表示为,一般多项式形式、乘积多项式形式和零、极点三种形式,本文所设计的仿真分析平台可以绘出三种传递函数表示的系统根轨迹,还可以零极点改变对系统根轨迹的影响。该仿真平台很大程度上减少了线性系统根轨迹分析的工作量,也使根轨迹的分析结果变得更加直观。
线性系统的闭环特征根决定系统性能,当系统参数发生变化时,闭环特征根也会生成相应的根轨迹,所以根轨迹与系统性能之间也有着比较密切的联系。根轨迹是经典控制理论中,分析和设计线性定常系统最常用的图解方法,特别在进行多回路高阶系统的分析时,应用根轨迹法比用其他方法更加方便,因此,根轨迹在工程实践中获得了广泛的应用。
对于低阶的系统,我们可以利用解析的方法直接求出闭环特征根随系统参数变化的曲线,但是对于高阶系统,我们很难手绘出其根轨迹,尤其是在课堂上讲解时,更是不可能短时间绘出一个复杂系统的根轨迹。为了便于在课堂上快速绘制出系统根轨迹,便于讲解根轨迹对系统性能的影响,本文设计了线性系统根轨迹仿真分析平台。
本文所设计的根轨迹仿真分析平台,根据设定的线性系统模型,可以快速地绘制出该系统的根轨迹曲线。这样学生在课堂上就可以方便地根据根轨迹曲线分析系统的性能,从而对系统进行设计。
线性系统的传递函数模型有多种表达形式,一般包括:分子和分母为s一般多项式形式、分子和分母为s乘积多项式形式和零、极点形式这三种。该仿真平台对于每一种形式都可以任意设定系统参数,从而确定出不同系统的传递函数模型,而且对于传递函数的每一种形式均可以快速地绘制出根轨迹。这就在很大程度上减少了线性系统根轨迹分析的工作量,也使课堂上根轨迹的分析变的更加直观。本仿真平台总体主界面如图1所示。
对于分子分母为s一般多项式的传递函数,按照分子分母多项式的形式进行程序的编程和根轨迹的绘制。在界面中设置四个可编辑文本框,程序加在所放置的绘图按钮的回调函数callback下,且必须在句柄后输入根轨迹所显示的轴位置即axes。首先在该子界面的可编辑文本框中输入所要绘制的开环传递函数的分子分母的系数,输入后在可选择按钮中选择所需绘制根轨迹图形样式,操作完成就会在右边轴中显示出所要求的根轨迹图形。随着光标移动可以显示出所指该点的开环增益、闭环极点、最大超调量和自然振荡角频率。
图1 根轨迹仿真平台主界面
图2 一般多项式形式绘制根轨迹界面
输入传递函数参数,程序运行后的效果图2所示。图中根轨迹上黑点处的开环增益为54,闭环极点是-0.0674+2.971i,最大超调量为107,自然振荡角频率为2.97rad/s。因此,可以得出系统稳定时开环增益Kg<53。
绘制根轨迹按钮的回调函数编写如下:
图3 零、极点形式绘制根轨迹界面
图4 乘积多项式形式绘制根轨迹界面
零极点形式传递函数描述的系统可以根据绘制根轨迹规则手绘出近似根轨迹曲线,但是不能绘制出精确根轨迹,尤其是对于高阶系统很难手绘出其精确根轨迹曲线。本文设计了根据零极点形式快速绘出根轨迹的仿真程序,实现程序和一般多项式形式类似,程序界面如图3所示。运行该程序时,只要输入系统的零极点,仿真程序就会快速绘制出根轨迹曲线,运行效果如图3所示。
传递函数的分子和分母均为多项式乘积表达式时,且多项式不是零极点形式,这样的传递函数称为乘积多项式的传递函数。这种表达形式和零极点绘制方法有所不同,所以本文又设计了按照乘积多项式形式绘制根轨迹曲线的仿真程序,实现方法也是和一般多项式设计方法一样,最终仿真界面如图4所示。输入传递函数参数,运行结果如图4所示,从图4中可以看出该系统的根轨迹为一个圆。
在经典控制理论中,控制系统设计的重要评价取决于系统的单位阶跃响应,由阶跃响应可以很容易地求出系统的各项性能指标。但是,在系统初步设计过程中,重要的方面往往不是如何求出系统的阶跃响应,而是如何根据已知的闭环零极点去定性地分析系统的性能。根据根轨迹就可以得到系统的闭环极点,那么当系统开环零极点变化的时候,闭环系统零极点如何变化,对系统性能分析有着重要作用。利用该仿真系统,可以很容易分析开环系统的零极点对根轨迹的影响。
如果给定的原线性控制系统函数为G(s)=k/s(s^2+4s+5),用我们设计的图形用户界面进行MATLAB仿真,绘制该线性系统的根轨迹。过程如图5所示。
(1)打开GUI设计的主界面,根据传递函数形式选择“乘积多项式形式”按钮,单击进入“乘积多项式形式”子界面。
(2)按照所给定的传递函数参数,在子界面可编辑文本框中填入数据。
(3)选择所要绘制根轨迹图形样式,单击“根轨迹绘图”按钮。
(4)在s平面中画阻尼比0.707线和振荡角频率为1.5rad/s的圆的根轨迹图。选择根轨迹2后,总体运行界面如图5所示。
如果在原线性控制系统上增加一个开环零点后的线性控制系统函数为G(s)=k(s+1)/s(s^2+4s+5),用图形用户界面进行MATLAB仿真,在s平面中画阻尼比0.707线和振荡角频率为1.5rad/s的圆的根轨迹图。选择根轨迹2后,总体运行界面如图6所示。
通过原线性控制系统与增加零点后的系统根轨迹图形的仿真结果可以看出:
图5 原线性控制系统函数根轨迹
图6 增加零点后的控制系统根轨迹
图7 增加零点后的系统根轨迹
增加开环零点后,在实轴上的根轨迹的分布发生变化。
在增加开环零点后,根轨迹渐近线的条数发生变化。
增加开环零点后,若系统的某个开环极点和增加的开环零点重合或者相近,那么它们就构成了一对开环偶极子,可以相互抵消。于是,可以给系统添加一个零点以抵消损失系统性能的极点。
在开环零点增加以后,系统根轨迹图将向左移动,这对于系统的动态性能来说很有利。并且系统所加的零点离虚轴越近,它对整个系统的影响就越大。
如果在原线性控制系统上增加一个开环极点后的线性控制系统函数为G(s)=k/s(s-1)(s^2+4s+5),用图形用户界面进行MATLAB仿真,在s平面中画阻尼比0.707线和振荡角频率为1.5rad/s的圆的根轨迹图。选择根轨迹2后,总体运行结果如图7所示。
通过原线性控制系统与增加极点后的线性控制系统根轨迹图形的仿真结果比较可以得出:
(1)增加开环极点后,在实轴上的根轨迹的分布发生变化。
(2)增加开环极点的数量会改变系统根轨迹的渐近线。增加开环极点将改变根轨迹的分支数。
(3)在开环极点增加以后,系统根轨迹图将向右挪动,这对于系统的动态性能来说是不利的。因此,系统所加的极点离虚轴越近,它对整个系统的影响就越大。
总结:本文主要应用MATLAB的GUI设计了根轨迹仿真平台,该平台可以让用户在实际操作中更直观,更高效地绘制出系统的根轨迹。在主界面中设置3个按钮,分别是一般多项式形式、乘积多项式形式和零、极点形式三种按钮,运用MATLAB中的函数对每一个主界面按钮进行函数编程,这样在运行时点击相关按钮就可以跳转至对应的子界面;然后再分别在每个子界面中根据所需要的内容进行界面设计和相应的程序编辑。该仿真平台人机交互界面简洁,操作方便,使根轨迹绘制不再那么复杂繁琐,便于对线性控制系统的性能分析研究,也会大大提高课堂效率。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!