基于数据驱动的航空发动机状态变量模型建立方法

文档序号:26007237发布日期:2021-07-23 21:26阅读:254来源:国知局
基于数据驱动的航空发动机状态变量模型建立方法

本发明属于航空宇航推进理论与工程中的系统仿真与控制领域,具体涉及一种航空发动机状态变量模型建立方法。



背景技术:

状态变量模型作为线性化数学模型的一种,是采用现代控制理论的知识对航空发动机进行多变量性能分析和设计的基础。同时,在发动机模型预测控制、性能寻优控制、健康评估中,采用状态变量模型进行发动机性能在线预测,能够提高控制系统的实时性。鉴于发动机的非线性,能实时准确反映发动机性能的状态变量模型,则可以提高控制和评估的精度。

航空发动机状态变量模型主要有两种建模方法,即拟合法和偏导数法。两种方法本质上都属于小扰动法,通过在部件级模型的稳态工作点上对输入量或者控制量分别进行小扰动来获得模型参数。拟合法可以采用群智能算法、最小二乘算法等,通过最小化模型输出和仿真数据之间的偏差来确定模型参数。偏导数法则是在部件级模型上,对系统控制变量、状态变量分别做小扰动,通过差分近似偏导数,进而得出系统的状态变量模型。这两种方法都基于发动机的部件级数学模型展开,以便于在同一个工作点上,分别进行各个变量的扰动。

因此,上述两种方法的实施的前提是具有高精度的部件级模型,而建立高精度的部件级模型一直是航空发动机控制领域的难点问题。航空发动机部件级数学模型是由多个部件模型、共同工作方程以及方程求解过程组成的非常复杂的系统。由于建模中的假设,使得部件级数学模型的精度难以保证,且这种模型多基于额定状态的部件特性建立,不能反映发动机个体差异和性能退化,基于这样的部件模型建立的状态变量模型也不能反映发动机个体特性。同时这两种状态变量建模方法在参数拟合和偏导数计算过程中耗时较多,实时性较差,只能在有限的稳态工作点上进行建模。最新研究的基于精确偏导数的状态变量模型建模方法,本质上同样是一种小扰动法,同样基于发动机部件级模型展开,扰动控制量和状态量,这就增加了状态变量模型建模的前期工作,且状态变量建模过程需要部件级模型参与计算,计算量大,模型的精度也会受到部件级模型精度的影响。

由于发动机个体差异带来的控制性能差异,也要对发动机个体进行建模,分析控制器参数调整方法。通过状态变量模型能够方便计算发动机极点位置和静态增益,对于控制器参数调整具有非常重要的作用。如果在对发动机个体建立部件级模型之后再进行状态变量模型的建立,则要耗费大量的人力和时间。同时航空发动机模型预测控制、性能寻优控制、健康评估等技术也需要对发动机个体进行状态变量模型在线建立。而对发动机个体进行建模的最方便的方法就是基于数据驱动的方法,基于发动机输入和输出数据建立智能网络模型,但是一直以来,智能网络模型都用来建立非线性模型,实现某一特定用途,比如传感器故障诊断、推力估计等,不能满足线性化建模的需求。



技术实现要素:

本发明所要解决的技术问题在于克服现有技术不足,提供一种基于数据驱动的航空发动机状态变量模型建立方法,可以直接根据发动机输入和输出数据,实时获取发动机个体的高精度状态变量模型,避免了现有状态变量建模方法对发动机部件级数学模型的依赖,实现基于发动机个体数据的准确建模。

本发明具体采用以下技术方案解决上述技术问题:

基于数据驱动的航空发动机状态变量模型建立方法,包括:

步骤a、根据所要建立的航空发动机状态变量模型的结构,采集所述航空发动机状态变量模型的输入、输出、状态变量数据;

步骤b、对所采集的数据进行去噪后,以其作为训练数据对神经网络模型进行训练,得到航空发动机智能网络模型;所述航空发动机智能网络模型的输入为当前时刻的航空发动机状态变量模型的输入和状态变量,所述航空发动机智能网络模型的输出为下一时刻的航空发动机状态变量模型的状态变量以及当前时刻的航空发动机状态变量模型的输出;

步骤c、基于所建立的航空发动机智能网络模型,根据所要建立的航空发动机状态变量模型参数的偏导数表达,以链式求导法则进行输出量到输入量的偏导数计算,得到航空发动机状态变量模型的参数,从而建立基于数据驱动的航空发动机状态变量模型。

优选地,所述神经网络模型为在线训练极限学习机模型os-elm。

更进一步优选地,所述os-elm为三层前向神经网络结构,隐含层激活函数为sigmoid函数。

优选地,使用以下方法对所采集的数据进行去噪:先使用小波变换的残差直方图剔除数据中的野点,然后对剔除野点后的数据进行小波滤波。

更进一步优选地,所述小波变换和小波滤波均使用尺度为7的‘db8’小波。

优选地,所要建立的航空发动机状态变量模型的结构按照以下方法确定:

先将发动机离散形式的非线性工作特性表示为:

式中,x(k)、u(k)、y(k)分别为航空发动机状态变量模型的状态变量、输入量、输出量;

然后将发动机在k时刻工作点(xk,0,uk,0,yk,0)处增量形式的线性化数学模型表示为:

其中,δ为增量符号,δx(k)=x(k)-xk,0,δu(k)=u(k)-uk,0,δy(k)=y(k)-yk,0。

相比现有技术,本发明技术方案具有以下有益效果:

(1)具有准确描述发动机非线性变参数特征的能力:传统的拟合法基于一组动态响应数据,只能建立一个定常的状态变量模型,忽略了不同转速下发动机的非线性变参数特性。本发明采用基于数据驱动的方法,不同转速下的智能网络模型参数不同,依据智能网络模型参数建立的状态变量模型不同,充分体现发动机的非线性变参数特性。

(2)具有不依赖于部件级模型的特点:本发明实现了脱离部件级数学模型的状态变量建模,利用智能网络模型进行偏导数计算,避免了复杂的部件级模型建立过程,避免了部件级模型精度对状态变量模型的影响;

(3)具有建模效率高的特点:本发明基于数据驱动方法进行建模,无需进行任何扰动,在每一个仿真步长均能实时获得当前时刻的状态变量模型,

(4)具有精度高可移植性强的特点:本发明基于在线训练的方法建立发动机智能模型,模型完全依赖于对象的输入输出数据,不受发动机制造安装公差和性能退化的影响,模型精度高,状态变量模型参数计算过程不受工作机理约束,适用于各类复杂的非线性系统。

附图说明

图1为原始燃油信号小波变换残差直方图;

图2为剔除野点后燃油信号小波变换残差直方图;

图3(a)为小波滤波前的部分燃油数据;

图3(b)为小波滤波后的部分燃油数据;

图4为基于数据驱动的航空发动机数学模型结构图;

图5(a)为elm网络n1输出及其误差的对比图;

图5(b)为elm网络t6输出及其误差的对比图;

图5(c)为elm网络f输出及其误差的对比图;

图6(a)为2步预测时状态变量模型n1输出及其误差的对比图;

图6(b)为2步预测时状态变量模型n2输出及其误差的对比图;

图6(c)为2步预测时状态变量模型p3输出及其误差的对比图;

图6(d)为2步预测时状态变量模型p6输出及其误差的对比图;

图6(e)为2步预测时状态变量模型t6输出及其误差的对比图;

图6(f)为2步预测时状态变量模型f输出及其误差的对比图;

图7(a)为5步预测时状态变量模型n1输出及其误差的对比图;

图7(b)为5步预测时状态变量模型n2输出及其误差的对比图;

图7(c)为5步预测时状态变量模型p3输出及其误差的对比图;

图7(d)为5步预测时状态变量模型p6输出及其误差的对比图;

图7(e)为5步预测时状态变量模型t6输出及其误差的对比图;

图7(f)为5步预测时状态变量模型f输出及其误差的对比图。

具体实施方式

针对传统航空发动机状态变量建模依赖于部件级模型及难以在线实时建模的问题,本发明根据控制系统需求,基于人工神经网络建立航空发动机的智能模型,基于建立的智能模型采取偏导数法进行状态变量模型参数计算,实现基于数据的发动机状态变量参数辨识。

具体地,本发明基于数据驱动的航空发动机状态变量模型建立方法,包括:

步骤a、根据所要建立的航空发动机状态变量模型的结构,采集所述航空发动机状态变量模型的输入、输出、状态变量数据;

步骤b、对所采集的数据进行去噪后,以其作为训练数据对神经网络模型进行训练,得到航空发动机智能网络模型;所述航空发动机智能网络模型的输入为当前时刻的航空发动机状态变量模型的输入和状态变量,所述航空发动机智能网络模型的输出为下一时刻的航空发动机状态变量模型的状态变量以及当前时刻的航空发动机状态变量模型的输出;

步骤c、基于所建立的航空发动机智能网络模型,根据所要建立的航空发动机状态变量模型参数的偏导数表达,以链式求导法则进行输出量到输入量的偏导数计算,得到航空发动机状态变量模型的参数,从而建立基于数据驱动的航空发动机状态变量模型。

为了便于公众理解,下面以某型双转子混合排气加力式涡扇发动机状态变量建模为例,并结合附图来对本发明的技术方案进行详细说明:

首先将发动机的非线性模型表示成离散状态空间形式:

式中,输入量u(k)=[wf(k),a8(k)]t为主燃油流量和尾喷口喉道面积,输出量y(k)=[p3(k),t6(k),p6(k),f(k)]t,依次为压气机出口总压、低压涡轮出口总温、低压涡轮出口总压和推力,状态量x(k)=[n1(k),n2(k)]t为低压转速、高压转速,上标t为转置运算符号。

将发动机在k时刻工作点(xk,0,uk,0,yk,0)处增量形式的线性化数学模型表示为:

其中,δ为增量符号,δx(k)=x(k)-xk,0,δu(k)=u(k)-uk,0,δy(k)=y(k)-yk,0。

对采集到的状态变量模型输入、输出、状态变量数据进行检查,处理无效数据:

本次建模所用数据来源于某型涡扇发动机的试车数据,为避免数据中野点对建模产生影响,利用小波的局部奇异性估算能力,采用小波变换的残差直方图来确定野点判别的残差阈值。

记原始信号s经过l层小波分解后的残差为

re=s-a(3)

其中,a为经过l层分解后的低频重构信号。

当残差较小时,低频重构信号趋近于原始信号,当残差较大时,则两者之间有高频噪声信号,当残差过大时,则可能是野点。以某次试车的燃油数据为例,采用尺度为7的‘db8’小波对信号进行变换,得到分解后的残差直方图如图1所示,其横坐标为残差,纵坐标为对应区间数据的个数。本次测试共采集数据111406组。如图1可见,绝大部分残差都处于直方图区域中间位置,具体残差分布见表1。如表1可见,处于残差[-0.721%,1.39%]区间的数据占总数据的98.54%,处于残差区间[-2.83%,3.49%]区间的数据占总数据的99.94%,在残差大于3.49%和小于-2.83%区间数据分布不具有随残差增大而减小的趋势,为此将野点判别残差阈值设定为-2.83%与3.49%,超出此范围的则认为是野点,将其用左右两侧数据的平均值来取代,对于连续的野点,则通过前后合理范围数据插值替代。可以得到剔除野点后数据小波分解后的残差直方图如图2所示,超过残差阈值范围的数据点仅剩下两个,表明有效剔除了大部分的野点。对应剩余野点,可再次进行剔除。

表1燃油信号小波变换残差分布统计

对剔除无效数据后的数据后进行滤波,消除噪声。同样采用尺度为7的‘db8’小波对信号滤波,同样以燃油为例,滤波前后部分数据对比结果如图3(a)和图3(b)。由图3可见,经过滤波后,数据中的噪声明显降低,有助于采用基于数据驱动的方法建立模型。

本实施例将滤波后的数据归一化到0.5到1.5之间。

数据归一化方法如下:

其中,xmax为变量x的最大可能测量值、xmin为变量x的最小可能测量值,为归一化后的数据。

本实施例中的智能网络模型采用在线训练极限学习机(os-elm),智能网络模型的输入为状态变量模型k时刻的输入量和状态量,智能网络模型的输出为状态变量模型k+1时刻的状态量和k时刻的输出量。设计基于os-elm的发动机数学模型结构如图4所示,采用三层前向神经网络结构,模型输入记为xelm(k)=[wf(k)a8(k)n1(k)n2(k)]t,为k时刻发动机的主燃油流量wf(k)、尾喷口喉道面积a8(k)、低压转速n1(k)、高压转速n2(k),输出记为yelm(k)=[n1(k+1),n2(k+2),p3(k),t6(k),p6(k),f(k)]t,为k+1时刻的低压转速n1(k+1)、高压转速n2(k+1)和k时刻的压气机出口总压p3(k)、涡轮出口总温t6(k)、涡轮出口总压p6(k)和推力f(k),隐含层节点数取为85个,隐含层激活函数取为sigmoid函数。

上述智能网络模型的具体训练过程如下:

随机生成os-elm输入层到隐含层的连接权值,基于第1组输入计算隐含层的输出o(1),则有

其中,o(1)∈r85×1,welm∈r85×4为输入层到隐含层的连接权值,belm∈r85×1为隐含层偏置,f()为隐含层激励函数。

记os-elm网络隐含层到输出层的连接权值为β,则网络输出

其中,β(1)∈r85×6,β(1)=[β1(1)β2(1)β3(1)β4(1)β5(1)β6(1)]t

记t为目标输出,则tt(1)=[n1(2),n2(2),p3(1),t6(1),p6(1),f(1)],则隐含层到输出层的连接权值

β(1)=(o(1)o(1)t)-1o(1)tt(1)(7)

基于递推最小二乘算法更新os-elm网络隐含层权值。

若os-elm网络的第k+1组输出数据某一变量与发动机输出数据相比误差处于0.15%<|ei|<4%,i=1,2,…,6,则网络权值需要调整。0.15%到4%为预设的权值更新阈值,小于0.15%则认为输出精度满足要求,大于4%则认为数据处于非正常误差范围,为避免错误数据对网络造成影响,不对权值进行调整。在权值更新范围内,依据递推最小二乘算法,有

其中β(k)=[β1(k)β2(k)β3(k)β4(k)β5(k)β6(k)],βi(k)∈r85×1,i=1,2…,6。

以低压转速、涡轮出口温度和推力为例,在图5(a)~图5(c)中给出了os-elm输出与发动机输出之间的对比,图中下标“elm”代表os-elm神经网络输出,下标“engine”代表滤波后的发动机输出,下标“error”代表相对误差。图5(a)为n1转速输出及其误差的对比图,图5(b)为涡轮出口总温t6输出及其误差的对比图,图5(c)为推力f输出及其误差的对比图,图中n1、t6和f均为相对于设计点的百分比数据,误差为相对发动机输出的百分比误差。可以看出,网络对低压转速的建模效果最好,最大动态误差小于0.12%,对涡轮出口总温和推力的建模效果相近,最大误差均在3%左右,所有数据的相对误差大部分时刻可以控制在0.5%以内,相比于部件级模型,取得了较高的建模精度。

确定状态变量模型参数的偏导数表达方法。

对于所研究的涡扇发动机,其状态变量模型中的矩阵可记为

其中

基于所建立的os-elm网络,以链式求导法则进行偏导数计算。

os-elm网络采用线性输出节点,网络输出为:

n1(k+1)=ot(k)β1(k),n2(k+1)=ot(k)β2(k),p3(k)=ot(k)β3(k),

t6(k)=ot(k)β4(k),p6(k)=ot(k)β5(k),f(k)=ot(k)β6(k)(10)

则有

其中,welm1j为输入到隐含层连接权值welm中第1列的第j个元素,welm第1列对应第一个输入的连接权。

按照a11的计算过程,完成k时刻所有状态变量矩阵参数的计算,构建出k时刻的状态变量模型。

为了验证本发明的有效性,选择不同时刻建立的状态变量模型进行仿真,对比状态变量模型在未来时刻输出与神经网络模型输出之间的误差。

对k时刻建立的发动机状态变量模型,在未来m时刻的输出

其中,um为从k时刻起,未来m个时刻的发动机输入,xm为从k时刻起,未来m个时刻的状态变量,ym为从k时刻起,未来m个时刻的状态变量模型输出。

以m=2和m=5为例,对比状态变量模型输出和滤波后的发动机输出之间的误差,m=2时结果如图6(a)~图6(f)所示,m=5时结果如图7(a)~图7(f)所示,图中下标“svm”代表状态变量模型输出,下标“elm”,代表os-elm网络输出。图6(a)为2步预测时状态变量模型n1输出及其误差的对比图,图6(b)为2步预测时状态变量模型n2输出及其误差的对比图,图6(c)为2步预测时状态变量模型p3输出及其误差的对比图,图6(d)为2步预测时状态变量模型p6输出及其误差的对比图,图6(e)为2步预测时状态变量模型t6输出及其误差的对比图,图6(f)为2步预测时状态变量模型f输出及其误差的对比图。图7(a)为5步预测时状态变量模型n1输出及其误差的对比图,图7(b)为5步预测时状态变量模型n2输出及其误差的对比图,图7(c)为5步预测时状态变量模型p3输出及其误差的对比图,图7(d)为5步预测时状态变量模型p6输出及其误差的对比图,图7(e)为5步预测时状态变量模型t6输出及其误差的对比图,图7(f)为5步预测时状态变量模型f输出及其误差的对比图。

由图6(a)~图6(f)可以看出,在状态变量模型两步预测中,转速的预测误差最小,低压转速最大预测误差小于0.04%,高压转速最大预测误差小于0.01%,压气机出口总压、涡轮出口总温和总压的最大误差也都小于1%,推力的预测误差偏低,但最大误差也可以控制在2%以内,稳态预测误差均趋近于零。由图7(a)~图7(f)可以看出,预测五步时,转速的最大预测误差仍然可以控制在0.1%以内,压气机出口总压、涡轮出口总温和总压的最大误差也都小于2.5%,推力的预测误差偏低,最大动态预测误差在5%以内,且稳态时误差趋近于0。可见基于数据驱动的状态变量模型取得了较好的建模效果。

为了验证本发明建立状态变量模型过程的实时性,对os-elm建模过程和偏导数建模过程进行统一计时,仿真运行在cpu为intel(r)xeon(r)e5-1620v33.5ghz,内存16g的平台。经验证,基于111406组数据建立的111405组状态变量模型共耗时300.7935s,每个状态变量模型平均耗时2.7ms,低于20ms的采样步长,满足实时性的需求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1