本发明属航空航天领域,涉及一种基于循环神经网络的航天器控制系统故障预测方法。
背景技术:
1、目前,我国航天事业正以突飞猛进的速度向前发展,随着越来越多的航天器投入使用,如何保证这些航天器安全可靠运行成了至关重要的问题。航天器运行在未知的太空环境中,环境变化、性能耗损等原因都有可能使航天器出现故障,为在轨管理工作增加难度。当航天器发生故障时,需要耗费大量的人力、物力去诊断和处理故障,如果能在故障发生之前通过对航天器各方面性能、数据的观察推断出可能发生的故障并提前预警,采取预防措施就可以把故障发生概率降为最低,保证航天器运行的可靠性,因此故障预测在航天领域具有重要的现实意义。
2、航天器控制系统故障预测主要存在以下几个特点:
3、(1)航天器控制系统是典型的闭环系统,反馈环的存在导致某个故障发生后会有多处测点出现异常,故障影响较为复杂;
4、(2)航天器控制系统组成部件繁多,冗余关系复杂,故障原因与测点之间、测点与测点之间都具有强耦合性和强非线性。
5、针对上述特点,考虑到人工智能技术具备的强大数据融合、知识学习、模型辨识能力等优点,本发明基于循环神经网络,利用航天器控制系统的历史故障数据,通过深入挖掘潜在规律,实现航天器控制系统的故障预测。
技术实现思路
1、本发明解决的技术问题是:克服现有技术的不足,提供一种基于循环神经网络的航天器控制系统故障预测方法,通过设计系统标称模型和故障模式残差外推模型,在故障显现之前对其进行预测,以便及时处理,有效地降低故障发生概率,是故障诊断的有效补充和拓展。
2、本发明的技术方案是:一种基于循环神经网络的航天器控制系统故障预测方法,包括:
3、获得航天器控制系统正常情况下的输入数据与输出数据,并作为训练数据;
4、根据得到的训练数据,构建航天器控制系统标称模型;
5、计算故障残差;
6、根据得到的故障残差,构建不同故障模式残差外推模型;
7、利用得到的系统标称模型和故障模式残差外推模型,进行智能故障预测。
8、所述获得航天器控制系统正常情况下的输入数据与输出数据,包括:
9、获得航天器控制系统正常情况下的输入数据u(t:t+n)与输出数据y(t:t+n);其中输入数据为u(t:t+n)=[t1(t:t+n) t2(t:t+n) t3(t:t+n)],输出数据为y(t:t+n)=[y1(t:t+n) y2(t:t+n) … yn(t:t+n)];t1(t:t+n),t2(t:t+n)和t3(t:t+n)表示从t时刻到t+n得到的长度为n+1的三轴控制器输出,yi(t:t+n)表示从t时刻到t+n得到的长度为n+1的敏感器输出,i=1,2,…,n,n为敏感器个数,n为正整数。
10、所述根据得到的训练数据,构建航天器控制系统标称模型,包括:
11、利用得到的训练数据,取0.8倍样本量对循环神经网络进行训练,得到航天器控制系统标称模型,用剩余的样本对建立的循环神经网络进行完善与验证;
12、需要建立的循环神经网络包括输入层、隐藏层和输出层,各层由不同个数的神经元构成;
13、循环神经网络的训练分为前向传播与反向传播两个过程;在前向传播过程中,当前层按照网络连接及权值对输入数据进行计算并输出到下一层,t时刻隐藏层状态为:
14、
15、t时刻隐藏层输出为:
16、
17、其中,i为输入层节点数,h为隐藏层节点数,为t时刻输入节点i的值,对于第一层输入节点来说,即为步骤一中得到的u(t:t+n),wih为输入层到隐藏层的权值,wh'h为上一时刻隐藏层与当前隐藏层之间的权值,θh为隐藏层的激励函数,采用sigmoid函数;
18、循环神经网络在输出层t时刻的输入函数为:
19、
20、式中,whk为隐藏层到输出层的权值;
21、输出层t时刻的输出函数为:
22、
23、其中,θk为输出层的激励函数,采用sigmoid函数;
24、对于上述权值wih,wh'h和whk,需要对循环神经网络进行训练,利用梯度下降法不断的迭代更新得到最优值。
25、利用梯度下降法不断的迭代更新得到最优值,包括:
26、t时刻输出层误差函数定义如下:
27、
28、其中,为对应的yi(t),即为yi(t:t+n);
29、t时刻隐藏层误差函数定义如下:
30、
31、t时刻隐藏层状态的梯度函数定义如下:
32、
33、其中,l为误差函数,表示t时刻隐藏层中第j层的状态;
34、对各个梯度权重求偏导函数定义如下:
35、
36、至此,由梯度下降法求出权重的更新函数定义如下:
37、
38、其中,角标h,k分别表示隐藏层与输出层,i,j表示层间相连的两个节点的序号。
39、所述计算故障残差,包括:
40、对于考虑的各种故障模式fi,采用故障注入的方法,得到航天器控制系统的输入uf,i(t:t+n)=[t1,f,i(t:t+n) t2,f,i(t:t+n) tn,f,i(t:t+n)]与输出yf,i(t:t+n)=[y1,f,i(t:t+n) y2,f,i(t:t+n) … yn,f,i(t:t+n)],将uf,i(t:t+n)输入到步骤二构建的航天器控制系统标称模型,得到的输出为进而得到故障残差数据为将残差数据ef,i(t:t+n)分为输入数据ef,i,input和输出数据ef,i,output,其中t1,f,i(t:t+n),t2,f,i(t:t+n),tn,f,i(t:t+n)表示故障fi发生后得到的从t时刻到t+n的三轴控制器输出,y1,f,i(t:t+n),y2,f,i(t:t+n),yn,f,i(t:t+n)表示故障fi发生后得到的从t时刻到t+n的敏感器输出。
41、所述根据得到的故障残差,构建不同故障模式残差外推模型,包括:
42、将得到的输入数据ef,i,input和输出数据ef,i,output,通过对循环神经网络进行训练,得到各种权重矩阵,进而构建各故障模式的残差外推模型。
43、循环神经网络的训练分为前向传播与反向传播两个过程;在前向传播过程中,当前层按照网络连接及权值对输入数据进行计算并输出到下一层,t时刻隐藏层状态为:
44、
45、t时刻隐藏层输出为:
46、
47、其中,i为输入层节点数,h为隐藏层节点数,为t时刻输入节点i的值,对于第一层输入节点来说,即为步骤三中得到的ef,i,input,wih为输入层到隐藏层的权值,wh'h为上一时刻隐藏层与当前隐藏层之间的权值,θh为隐藏层的激励函数,采用sigmoid函数。
48、循环神经网络在输出层t时刻的输入函数为:
49、
50、式中,whk为隐藏层到输出层的权值;
51、输出层t时刻的输出函数为:
52、
53、其中,θk为输出层的激励函数,采用sigmoid函数;
54、对于上述权值wih,wh'h和whk,需要对循环神经网络进行训练,利用梯度下降法不断的迭代更新而得到最优值。
55、利用梯度下降法不断的迭代更新而得到最优值,包括:
56、t时刻输出层误差函数定义如下:
57、
58、其中,为对应的yi(t),即为ef,i,output;
59、t时刻隐藏层误差函数定义如下:
60、
61、t时刻隐藏层状态的梯度函数定义如下:
62、
63、其中,l为误差函数,表示t时刻隐藏层中第j层的状态;
64、对各个梯度权重求偏导函数定义如下:
65、
66、至此,由梯度下降法求出权重的更新函数定义如下:
67、
68、其中,角标h,k分别表示隐藏层与输出层,i,j表示层间相连的两个节点的序号。
69、所述利用得到的系统标称模型和故障模式残差外推模型,进行智能故障预测,包括:
70、选择某一种故障模式fi,将其注入航天器控制系统中,判断各故障模式的残差外推模型得到的输出ef,i,output是否大于阈值ethreshold,若大于则预测到故障发生,否则无故障发生;所述阈值ethreshold为在无故障的情况下,一段时间内ef,i,output的最大值。
71、本发明与现有技术相比的优点在于:
72、(1)目前,故障预测方法主要包括三类,基于物理模型的预测、基于知识的预测和基于数据驱动的预测。对于基于物理模型的预测,由于航天器组成部分繁多、在轨环境不确定和故障影响复杂,很难建立精确的物理模型。对于基于知识的预测,由于专家知识的主观性和知识描述的概括性,很难给出定量的预测结果。因此,本发明利用数据驱动方法从历史数据中挖掘蕴含的潜在知识进行故障预测。
73、(2)基于数据驱动的故障预测方法主要包括四类,即时间序列分析方法、可靠性法、随机过程方法和人工智能方法。其中,时间序列分析方法难以处理闭环和强耦合的数据,尤其无法处理长时序的情况,导致一方面故障初期的特征难以提取和发现,另一方面预测时长较短。可靠性法使用近似相同的设备历史数据来拟合设备的寿命分布曲线,对历史数据的数据量要求较高。随机过程方法需要建立随机过程模型来获取退化过程曲线,但航天器控制系统的退化过程较为复杂,很难得到较为准确的随机过程模型。因此,本发明采用人工智能技的数据驱动方法来实现航天器控制系统的故障预测。
74、(3)跟传统神经网络相比,循环神经网络最大的优势在于每次都会将前一次的输出结果带到下一次的隐藏层中一起训练。因此,利用循环神经网络进行航天器控制系统的故障预测时,能够将之前时刻的历史数据用于当前时刻的预测,保留历史“记忆”,克服了传统故障预测方法存在的当前输出只依据于该时刻输入的局限。