应用软件论文软件应用论文计算机应用软件论文:MATLAB软件在系统稳定性分析与仿真中的应用摘要:系统的稳定性是系统实现其功能的前提,因此,对系统进行稳定性判断就显得很有必要.判断系统的稳定性可以从系统的线性模型出发,导出系统的系统函数,利用MATLAB软件对系统函数的极点分布情况和冲击响应的模式进行分析,并对系统进行建模仿真,得到系统的极点分布图和冲击响应的模式图,在此基础上,对系统的极点分布图和冲击响应的模式进行分析,根据系统稳定的条件,判断系统是否稳定.关键词:系统;稳定性;系统函数;仿真0引言系统是由若干相互联系、相互作用的单元组成的具有一定功能的有机整体.不同的系统实现的功能是不一样的,但是,任何系统要使其能按照预期的目标实现其功能,都是以系统稳定为先决条件的.即系统必须是稳定的系统,稳定性是系统自身的一种属性,与外部条件无关.因此,对于一个系统来说,设法判断它的稳定性是十分重要的.系统稳定性的判断方法有多种,利用传统方法判断系统的稳定性,一是工作量大、效率差,二是且缺乏强有力的图形输出支持.随着计算机技术的飞速发展,各种功能强大的科学计算和系统仿真软件也应运而生,使人们对各种系统的分析处理变得更加的方便快捷.MATLAB就是一种应用广泛,既可以对系统性能进行分析,又可以对系统进行建模仿真的软件.1MATLAB的功能特点MATLAB被誉为“巨人肩膀上的工具”、是一种功能强大的科学计算和工程仿真软件,它的交互式集成界面能够帮助用户快速地完成数值分析、矩阵运算、数字信号处理、仿真建模、系统控制与优化等功能,广泛应用于航天航空、汽车制造、半导体制造、电子通信、医学研究等领域.它采用与数学表达式相同的形式,不需要传统的程序设计语言,可以在较短时间内掌握并用它来解决一些实际问题.系统开发人员能借助MATLAB软件迅速测试设计构想,综合测评系统性能,快速设计更好的方案来确保更高技术要求,它有如下几个特点:(1)编程效率高.MATLAB是一种面向科学与工程计算的高级语言,允许采用数学形式的语言编写程序,且比BASIC、FORTRAN和C等语言更加接近我们的思维方式.(2)使用方便.MATLAB是一种解释型语言,执行前不需要进行专门的编译.(3)扩充能力强.MATLAB语言有丰富的库函数,在进行复杂的数学运算时可以直接调用,用户文件也可以作为MATLAB的库函数来调用,用户可以根据自己的需要方便地建立和扩充新的库函数,以提高MATLAB使用效率和扩充它的功能.(4)语句简单,内涵丰富.MATLAB语言中最基本最重要的成分是函数,一个函数由函数名、输入变量和输出变量组成.同一函数名,不同数目的输入变量及不同数目的输出变量代表着不同的含义.(5)高效方便的矩阵和数组运算.MATLAB语言规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符,而且这些运算符大部分可以毫无改变地照搬到数组间的运算.另外,它不需要定义数组的维数,而且的MATLAB中,给出了矩阵函数,特殊矩阵专门函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时显得简捷、高效,这是高级语言所不能比拟的.(6)方便的绘图功能.MATLAB的绘图是十分方便的,它有一系列绘图函数,只需调用不同的绘图函数,简单易行.2系统稳定性分析及判别依据一个系统是否稳定,直观地来看,就是当该系统受到某种干扰信号作用时,由干扰信号所引起的系统响应在干扰信号消失后能否自动消失,也就是系统能否回到干扰信号作用前的原来状态,如果由干扰信号引起的系统响应在干扰信号消失后,经过一定的时间,其响应能自动消失,即被衰减为零.系统能够回到干扰作用前的原来状态,则系统就是稳定的系统,若由干扰引起的系统响应在干扰信号消失后,经过一定的时间后,系统仍无法回到干扰作用前的原来状态,则系统就是非稳定的系统.基于以上理论,对于控制系统,要判断它的稳定性,不妨采用通过给系统人为加干扰的方法来进行判断,这就涉及到如何选择干扰源的问题.干扰源的选择是要满足一定的条件的,其条件为:必须是瞬间出现的,作用时间很短的信号.事实上,理论上的单位冲击函数δ(t)就是满足这种要求的一种很好的“干扰”信号源,若以其作为“干扰”信号,则由其引起的系统的响应就是系统的冲击响应h(t),根据h(t)的变化模式完全可以判断出系统是否稳定,若h(t)的变化模式是随时间t呈指数规律衰减或呈减幅正弦振荡的,则系统就是稳定的,否则系统就是不稳定的.而h(t)的变化模式又与其像函数H(s)(系统的系统函数)的极点分布情况有关,若H(s)的所有极点均位于其s平面的左半平面上,则其对应的h(t)的幅度将随时间t的增长逐渐衰减,当t→∞时,h(t)衰减至零,这样的系统称为稳定系统,若H(s)的极点分布不满足上面的要求,则h(t)的变化模式为等幅振荡、增幅振荡和单调增长,系统处于临界稳定和不稳定状态.综上所述,一个系统是否稳定,可以从H(s)的极点分布情况来判断,或者从系统的h(t)的响应模式上来判断,两者是一致的.若H(s)的所有极点均位于其s平面的左半平面上,对应的h(t)的响应模式是呈指数规律衰减或呈减幅正弦振荡,当t→∞时,h(t)衰减至零,此时,h(t)满足绝对可积的条件,即,当h(t)满足绝对可积的条件时,系统就是稳定的,不满足,就是非稳定的.3用MATLAB对系统进行稳定性分析及建模仿真实例3.1二阶线性系统的系统函数已知二阶线性系统如图1所示,以iL(t)为响应对系统进行讨论.其中R=4Ω,L=2H,C=0.05F.对于图1所示的二阶线性系统,可列出其方程如下:联合上述各式有:将(7)式代入(6)式并求导一次的结果为:代入已知参数得:若系统的初态为零,对上式两边进行拉普拉斯变换得:则系统函数H(s)为:3.2利用MATLAB分析系统的稳定性根据系统的系统函数,利用MATLAB求出系统的极点分布图及冲击响应的响应模式图,由极点分布图及冲击响应的响应模式就可以判断系统是否稳定.求系统极点分布图及冲击响应的响应模式的MATLAB程序如下:在MATLAB中运行该程序后,得到系统的极点、极点分布图(见图2)、冲击响应模式图(见图3)如下:poles=-1.0000+3.0000i-1.0000-3.0000i从极点分布图可以看出,系统函数的极点全部分布在s平面的左半平面上.从冲击响应模式图可以看出,当t→∞时时,h(t)趋向于零,即系统的冲击响应会随着时间的推移慢慢消失掉.所以该系统是稳定的.3.3系统数学模型的建立及仿真3.3.1冲击函数模型的构建冲击响应是系统在冲击函数作用下系统产生的响应,由于单位冲击函数是一种理想函数,在SIMULINK库中没有现成的单位冲击函数标准模块,因此,要想以单位冲击函数为激励来求系统的冲击响应,必须先采用某种近拟方法构建一个单位冲击函数作为系统的激励信号.近拟构造的思路为:根据单位冲击函数的定义,用一个面积为1的“窄高”脉冲近拟单位冲击函数.近拟脉冲宽度的选择要考虑两方面的因素:一是脉冲宽度应远小于系统的最快动态模式.二是脉冲宽度不能太小,以免引起严重的圆整或截断误差.基于以上设想,在该数学模型中,单位冲击函数是用两个阶跃函数的组合来实现的.即:3.3.2系统模型的建立根据系统函数表达式,可以建立如图4所示的系统数学模型.3.3.3系统模型的SIMULINK仿真因系统特征根的实部绝对值为1.所以取脉冲宽度为0.01,幅度为100,在MATLAB中,step模块的阶跃时间steptime设置为0,(最)终(幅)值为100.step1模块的阶跃时间steptime设置为0.01,(最)终(幅)值为100来对系统的冲击响应进行仿真.仿真结果如图5所示.从图5中可以看出,当t→∞时,系统的单位冲击响应h(t)趋向于零,所以该系统是稳定的.4结束语系统稳定是系统实现预期目标的一个重要因素.因此,对系统进行稳定性判断是很有必要的,利用MATLAB软件对系统进行分析和建模仿真,获得系统的极点分布图和冲击响应,以此为依据进行判断,使判断过程更加方便、简单、快捷,避免繁琐的分析计算过程.同时,有输出图形的支持,使结论的科学性和真实性更加的清晰.参考文献:[1]邓华.MATLAB通信仿真及应用实例详解[M].北京:人民邮电出版社,2003.[2]管致中,夏恭恪.信号与线性系统[M].北京:高等教育出版社,1979.[3]燕庆明.信号与系统[M].北京:高等教育出版社,2007(4).[4]梁虹.信号与系统分析及MATLAB实现[M].北京:电子工业出版社,2004.[5]张志涌.MATLAB教程[M].北京:北京航空航天大学出版社,2001(4).