(航空工业飞机强度研究所,陕西 西安 710065)
在现代控制理论系统辨识的研究领域里,线性系统建模是控制学科的重要课题[1]。阶跃响应法是几个比较常用的经典辨识方法之一,它是通过实验来测取系统的阶跃响应曲线,再由得到的阶跃响应曲线算出被辨识系统的传递函数[2-4]。常用的利用阶跃响应曲线来确定传递函数的方法很多,常用的方法是图表法和积分法[5-7]。切线法是图表法中的一种典型算法,但其局限性在于对有自平衡能力的对象,要在阶跃响应曲线上找出拐点,在其拐点处作切线,由于拐点位置不易选准,且切线的方向斜率也难于确定,以致传递函数的特征参量不能准确确定。同样,数值积分法虽是一种从阶跃响应曲线求出传递函数的通用数学方法,适用于各种形式的传递函数,但是由于数值计算的误差,实际上只能有效地定出少量的参数[8-9]。
基于这种问题,本文提出了基于阶跃响应曲线特征的建模方法,研究思路是利用高阶传递函数可以分解为一阶和二阶典型环节的并联原理,根据阶跃响应曲线的特征,假设估计模型的结构和阶次后,调节典型环节并联模型中的参数值,用拟合曲线逼近实际的阶跃响应曲线,从而得到系统的传递函数。研究时利用Matlab强大的编程功能针对不同阶次的模型编写相应算法,利用Matlab图形用户界面GUI设计系统辨识软件,根据阶跃响应曲线自动实现模型和相关参数的求取。仿真实例表明,该辨识算法可在一定精度内获得系统的传递函数。
一般情况下,闭环系统传递函数分子分母都是s的多项式,可以写为
(1)
式(1)可表示为如下因式的乘积形式:
(2)
实际控制系统中,所有的闭环极点通常都不相同。因此在输入为单位阶跃函数时,输出量的可表示为
(3)
式中,q和r满足关系式
q+2r=n
(4)
式中,q为实数极点的个数;r为共轭复数极点的对数。设0<ζk<1,将式(3)展成部分分式
(5)
设初始条件全部为零,将式(5)进行拉氏反变换,可得高阶系统的单位阶跃响应
(6)
式(6)表明,高阶系统的时间响应,是由一阶系统和二阶系统的时间响应函数项组成的。
同时,式(1)可以写成如下形式:
m (7) 根据该式,高阶线性系统可以分解为图1所示。 综上所述,通过并联若干个一阶和二阶典型环节可得到高阶系统的估计模型,以并联模型阶跃响应曲线逼近实际系统的阶跃响应曲线,从而得到实际系统的数学模型。更进一步,通过一阶及二阶典型环节组合出三阶及三阶以下的估计模型,通过调节参数改变曲线形状,不断地逼近高阶系统的阶跃响应曲线,只要估计模型与原高阶系统的阶跃响应相比误差小,按照输入输出特性,它能够反映原系统的整体特性[10],即可用三阶及三阶以下的线性系统去等效高阶线性系统从而求出传递函数。 控制系统性能的评价分为动态性能指标和稳态性能指标,前者可反映系统的响应速度与阻尼程度,后者则反映了系统的控制精度与抗扰动能力。在实际应用中,常用的动态性能指标多为上升时间、调节时间、和超调量。上升时间tr是系统响应速度的一种度量,超调量δ%评价系统的阻尼程度,调节时间ts是同时反映响应速度和阻尼程度的综合性指标[11]。 传递函数中参数取不同值对系统的动态性能和稳态性能有着直接的影响,各参数的取值情况直接决定系统的阶跃响应曲线特征。同样,估计模型中各典型环节的各参数也直接影响着系统的阶跃响应曲线特征,因此有必要研究各典型环节或它们的组合中参数对曲线形状的影响规律。三阶及三阶以下线性时不变系统的时域分析如下。 典型的一阶系统可表示为 G(s)=K/(Ts+1) (8) 增益K决定稳态响应值,且稳态值为K。时间常数T决定阶跃响应速度,T越大响应越慢,上升时间越长。 二阶系统可分解为两种结构: 第一种是标准形式二阶系统,可表示为 (9) K越大稳态值越大,且稳态值为K。T越大,曲线峰值时间和调节时间越大。阻尼比ζ决定超调量,ζ越小,超调量越大。 第二种结构的二阶系统可表示为 (10) 阶跃响应的曲线形状与一阶系统的阶跃曲线相似。阶跃响应稳态值为各增益值K1、K2之和。响应速度和时间常数T1、T2成正比,如果两者之一变小则响应速度变快。 一个三阶系统可能由3个一阶典型环节并联组成,也可能由1个一阶典型环节和1个二阶典型环节并联组成,下面分别讨论两种结构的阶跃响应曲线特征。 (1) 3个一阶环节并联的三阶系统。 该结构的三阶系统可以表示为 (11) 阶跃响应稳态值为各一阶环节增益值相加,且3个增益值总和相同时,3个增益的数值越接近响应越快。时间常数影响系统响应速度:当两个时间常数不变时,第3个时间常数越大,响应速度越慢;当一个时间常数不变时,另两个时间常数中小者影响上升阶段的初期(曲线形状较陡)、大者影响上升阶段后期(曲线形状平缓)。 (2) 一二阶环节并联的三阶系统。 该结构的三阶系统可以表示为 (12) 系统阶跃响应稳态值为各环节增益值之和。T1、T2由小变大时,峰值时间与调节时间变大,这是因为一阶环节响应速度变慢;同时,T2相对于T1会使响应的速度变慢的更快。阻尼比ζ增大时,超调减小,振荡次数减少。 峰值时间tp由其中的二阶系统决定,根据二阶系统tp的计算方法,T2与ζ满足关系式 (13) 另外,如果只利用上述比较直观的规律,对结构由一、二阶典型环节并联的三阶系统进行分解还存在着困难。因此将各参数对其阶跃响应曲线形状的影响作了更深入的研究,按照T1、T2的比例关系将该结构的三阶系统分为3类:T1≥5T2、T2 ①T1≥5T2:阶跃响应曲线的第一个波峰值要小于稳态值。二阶系统在阶跃响应曲线前期产生作用,一阶系统在后期产生作用。 ②T2 ③T1 本节对三阶以下各种结构的线性系统的辨识算法进行研究。根据已知阶跃响应曲线的曲线特征,结合上一节总结的典型环节中各参数值对曲线形状影响的规律,分析参数辨识算法,使拟合曲线逼近实际阶跃响应曲线,从而确定系统的传递函数。 式(8)给出了一阶系统的传递函数。辨识算法如下。 ① 增益值K。 K=y(∞)-y(0) (14) 式中,y(∞)表示阶跃响应稳态值,即阶跃响应曲线的稳态值,y(0)表示初始值[13]。 ② 时间常数T。 在阶跃响应曲线上找到输出量变化至终值95%时的坐标点,它所对应的时刻为调节时间ts,根据一阶系统的动态性能指标知ts是T的3倍,故 T=ts/3 (15) (1) 标准形式的二阶系统。 式(9)给出了标准二阶系统的传递函数。辨识算法如下。 ① 增益值K。 增益值K可通过式(14)计算出。 ② 阻尼比ζ。 系统的超调量可表示为 (16) 由式(16)可将阻尼比表示为 (17) 根据阶跃响应曲线可计算出超调量,将超调量的值带入式(17)即可计算出阻尼比。 ③ 时间常数T。 在阶跃响应曲线上找出峰值时间tp,则时间常数T为 (18) (2) 两个一阶系统并联的二阶系统。 式(10)给出了该结构的表达式。阶跃响应稳态值由增益值K1、K2之和决定;假设T1 ① 增益值。 求出阶跃响应曲线的稳态值y(∞),可令增益值K1、K2为稳态值的1/2。 K1=K2=y(∞)/2 (19) ② 时间常数。 该结构的二阶系统的调节时间是由时间常数中的大者决定,在阶跃响应曲线上找到输出量变化至终值95%时的坐标点,它所对应的时刻为调节时间ts,由于其为两个一阶系统并联,所以ts为3倍的T2。 为了求取T1,定义拟合曲线与实际阶跃响应曲线的同一时刻的误差值为 d=(y阶跃-y拟合)/y阶跃×100% (20) 由于假设了T1 3.3.1 3个一阶环节并联的三阶系统 式(11)给出了3个一阶环节并联的三阶系统的传递函数形式。 (1) 增益值K。 阶跃响应稳态值由K1、K2、K3之和决定,求出阶跃响应曲线的稳态值y(∞),可令增益值K1、K2、K3为稳态值的1/3。 K1=K2=K3=y(∞)/3 (21) (2) 时间常数。 该结构的三阶系统的稳定时间是由时间常数中的大者决定,在阶跃响应曲线上找到输出量变化至终值95%时的坐标点,它所对应的时刻调节时间ts应等于3倍的T3。 假设T2 由式(20)计算误差值d,令T1=T3、T2=T3/2,计算当前参数值下的误差d。若d<0.05,各参数即为当前值;若d>0.05,则: ①d>0,即估计模型的响应速度慢,应该减小时间常数T2,每次减小0.01并重新计算误差d;若有d>0.05继续减小T2,反之则停止循环。若T2减小至接近零时仍有误差d>0.05,令T1=T1-0.01、T2=T3/2,重新搜索参数T1、T2,直至d<0.05。 ②d<0,即估计模型的响应速度快,应该增大时间常数T2,每次增大0.01并重新计算误差d;若有d>0.05继续增大T2,反之则停止循环。若T2增大至接近T3时仍有误差d>0.05,令T1=T1-0.01、T2=T3/2重新搜索参数T1、T2,直至d<0.05。 参数辨识流程图见图2。 图2 3个一阶系统并联的三阶系统参数辨识流程图 3.3.2 一二阶环节并联的三阶系统 阶跃响应稳态值由K1、K2之和决定;T1、T2决定曲线的响应速度,阻尼比决定曲线的超调。按照T1、T2的比例关系对阶跃响应曲线特征的影响将该结构的三阶系统分为3类:T1≥5T2、T1 (1)T1≥5T2。 这种情况下,一阶环节的时间常数比二阶环节时间常数大得多,因此一阶环节发生作用比二阶环节晚。此时,阶跃响应曲线的第一个波峰值要小于稳态值,该特征可用来判断此系统属于T1≥5T2这一类。 具体参数辨识算法如下。 ① 一阶时间常数T1:由于一阶环节发生作用要比二阶环节要晚,曲线会先发生振荡,然后曲线会平缓上升直到达到稳态值,因此可利用一阶系统求时间常数的方法求出T1,即在阶跃响应曲线上找到输出量变化至终值95%时的坐标点,它所对应的时刻为调节时间ts,则T1=ts/3。 参数辨识流程图见图3。 图3 T1≥5T2的三阶系统参数辨识流程图 (2)T1 这种情况下,一阶环节的时间常数比二阶环节时间常数小,因此一阶环节发生作用比二阶环节早。此时,阶跃响应曲线的第一个波峰值大于稳态值,该特征可用来判断此系统不属于T1≥5T2类。 在T1 对于T1 ①ζ、T2:这两个参数由最外层循环搜索确定。由于该三阶系统内含一个一阶环节,该环节会减缓系统的振荡,因此由假设的二阶系统求出的阻尼比ζ是偏大的,因此要向下调整,T2则由式(13)计算得出。 ③ 当T1减小至接近0.1时,若误差仍然有d>0.05,则另阻尼比ζ减小0.05,重新计算,然后再进入第二步,如此循环搜索直至d<0.05。 参数辨识流程图见图4。 图4 T1 (3)T2 这种情况与T1 对于T2 ①ζ、T2:同T1 ③ 当T1调整到使估计模型的峰值与稳态值大约相等时,说明T1已足够大,此时若仍有动态误差d>0.05、|bg|>0.15,则进入第一步重新开始搜索。 参数辨识流程图见图5。 图5 T2 为了验证辨识算法的可行性与正确性,利用Matlab图形用户界面GUI来设计辨识软件[14-15],将辨识算法嵌入到软件操作界面中,易于操作。软件设计思路是:对于模型未知的高阶系统,利用第2节中总结的三阶及三阶以下各种结构和阶次的模型参数对曲线形状的影响规律,分析该高阶系统的阶跃响应曲线特征,判断该系统可用三阶及三阶以下中哪种结构的模型去等效该高阶系统,再使用该模型结构的参数辨识算法计算出传递函数。首先导入已知阶跃响应曲线的数据(将已知曲线数据保存为excel格式),根据曲线形状选择模型的结构,分别编程实现不同结构模型的辨识算法,然后自动计算出模型中的参数。该辨识软件的界面如图6所示。 辨识软件包括以下3个部分。 ① 导入阶跃响应数据模块:导入实际系统的单位阶跃响应数据,这些数据存在excel格式的文件中。阶跃响应曲线将显示在第3模块的axes1轴对象中。 图6 气候环境试验数据管理系统功能模块 ② 选择模型结构模块:根据阶跃响应曲线的曲线特征来选择估计模型的结构。在选择模型结构后,估计模型会显示在“模型传递函数”下面的文本框里;该模块右下角的“建模”按钮是开始辨识的控制按钮。 ③ 辨识结果模块:该模块用来显示辨识结果;其中axes1轴对象显示已知的阶跃响应曲线,axes2轴对象辨识模型的阶跃响应曲线,然后再将两条曲线在axes3轴中显示进行对比,并显示出误差曲线。 由于典型一阶,二阶系统根据曲线特征辨识参数的方法是被广泛认可的,这里只给出三阶系统辨识算法的仿真结果。 (1) 3个一阶环节并联的三阶系统。 取该结构的三阶系统传递函数 (22) 将该传递函数的阶跃响应曲线保存为excel文件,导入到辨识软件中,根据曲线特征选择模型结构为3个一阶环节并联的三阶系统,辨识结果如图7所示。 图7 3个一阶环节并联的三阶系统的辨识结果 由图7可知,由该软件得到的参数为K1=K2=K3=1.66217,T1=0.123762,T2=0.610099,T3=1.9802,动态部分误差为4.86%,静态部分误差为0.21%,满足误差要求。由于增益系数是用“三分法”得到的,辨识出的增益值没有可比性;而T1、T2、T3则接近实际值,因此辨识结果可认为是满意的。 (2) 一二阶环节并联的三阶系统。 ①T1≥5T2。 取该结构的三阶系统传递函数 (23) 将阶跃响应曲线保存为excel文件并导入辨识软件,根据曲线特征选择模型结构为一个一阶环节和一个二阶环节并联的三阶系统,辨识结果如图8所示。 图8 T1≥5T2时一二阶环节并联的三阶系统的辨识结果 由图8可知,由该软件得到的参数为K1=1.9975,K2=0.9975,T1=1,T2=0.104503,ζ=0.24,动态部分误差为1.08%,静态部分误差为0.16%。将辨识结果与式(23)对比可知,辨识结果基本正确。 ②T1 取该结构的三阶系统传递函数 (24) 将该传递函数的阶跃响应曲线保存为excel文件,导入到辨识软件中,根据曲线特征选择模型结构为一个一阶环节和一个二阶环节并联的三阶系统,辨识结果如图9所示。 图9 T1 由图9可知,由该软件得到的参数为K1=1.8013,K2=1.2013,T1=0.072103,T2=0.472103,ζ=0.531996,动态部分误差为2.06%,静态部分误差为0.04%。将辨识结果与式(24)对比可知,辨识结果基本正确。 ③T2 取该结构的三阶系统传递函数 (25) 将该传递函数的阶跃响应曲线保存为excel文件,导入到辨识软件中,根据曲线特征选择模型结构为一个一阶环节和一个二阶环节并联的三阶系统,辨识结果如图10所示。 图10 T2 由图10可知,由该软件得到的参数为K1=1.099,K2=1.899,T1=0.843181,T2=0.503181,ζ=0.521539,动态部分误差为4.41%,静态部分误差为0.02%。将辨识结果与式(25)对比可知,辨识结果基本正确。 典型的一阶系统与二阶系统的参数与系统阶跃响应有明确的对应关系,根据高阶系统可以分解为典型一、二阶系统并联的原理,通过研究典型环节及互相组合时参数变化对阶跃曲线形状的影响,总结出规律作为系统反向分解、编写辨识算法的依据,从而达到根据系统阶跃曲线特征完成系统建模的目的。这种降阶建模的方法思路简单,模型精度较高,可以一定程度地解决设计或改进生产过程控制系统要建立被控对象模型的难题,为进一步分析系统性能或是设计控制器节省了时间。当然,同一条待辨识曲线可能存在多解问题,且算法中的搜索步长也会影响辨识精度和软件搜索时间,以上讨论的方法还有待发展和完善。2 线性系统时域分析
2.1 一阶系统
2.2 二阶系统
2.3 三阶系统
3 辨识算法
3.1 一阶系统
3.2 二阶系统
3.3 三阶系统
4 辨识软件开发与仿真
4.1 辨识软件界面设计
4.2 仿真实例
5 结束语