卫星在轨故障案例与人工智能故障诊断
2022-02-22王亚坤杨凯飞张婕郭莉芳韩笑冬邢川王睿
王亚坤,杨凯飞,张婕,郭莉芳,韩笑冬,邢川,王睿
中国空间技术研究院 通信与导航卫星总体部,北京 100094
1 引言
21世纪以来,全球范围卫星及应用产业发展迅速,呈现快速增长的态势。统计数据显示,2020年全球发射卫星总量高达1 212颗[1]。截止到2020年12月31日,在轨卫星数量达到3 372颗,其中美国1 897颗,中国紧随其后,拥有在轨卫星412颗,再次是俄罗斯176颗[2]。
现代社会对卫星的需求和依赖日益增长,因此,卫星系统的安全性和可靠性就变得极其重要。卫星发射后能否顺利完成任务主要取决于两个因素:一是卫星是否运行在预期的轨道上;二是卫星是否正常工作。而这两方面又取决于各分系统的在轨运行情况。在轨卫星一旦发生故障,其损失是不可低估的[3]。例如2016年1月27日发射的波音Intelsat-29E通信卫星,在发射3个月后由于推进剂泄露直接导致卫星发生爆炸而解体。又如,2017年11月28日俄罗斯发射的Meteor-M气象卫星由于坐标输入错误,导致卫星没有进入预定轨道坠落大西洋。由于主观或客观原因所导致的卫星故障或失败会造成巨大的经济损失,因此,对航天器各分系统的在轨故障分析与研究已经成为航天器总体设计人员最关注的重点之一[4]。
通过统计分析航天器的在轨故障,可以进一步了解故障的发生原因和规律,从而采取一定的措施,以减少或避免卫星出现重大损失[5-7]。当前航天器的故障诊断通常是基于预先设定阈值的方法,然而,现代航天器正变得越来越复杂,传感器的数量越来越多[8-10],传统基于阈值的方法需要对各种可能出现的异常设定阈值,这就需要大量的专家经验,且对每一种可能出现的故障都要通过编程实现。此外,基于阈值的方法无法检测未知故障模式,对不可预见的故障没有检测能力[12]。这就需要更加智能的方法对卫星故障进行检测。因此,本文最后对航天领域基于人工智能方法的故障诊断系统、故障诊断方法进行了综述,同时介绍了针对时间序列数据的故障诊断方法。
2 卫星典型故障案例
本章对2003~2021年公开的卫星典型故障案例进行研究,所有故障的信息如表1所示。
表1 故障卫星信息汇总Table 1 Information summary of satellite failures
续表1Table 1 Continued
续表1Table 1 Continued
续表1Table 1 Continued
下面对部分典型故障案例进行介绍。
1)Spaceway-1。2019年12月,波音公司的Spaceway-1卫星发生了一次重大故障,导致其电池产生不可逆转的热损坏。Spaceway-1进入地影期后,不得不使用电池进行供电。地影期于2020年2月25日开始时,出现故障的电池可能会在供电时爆炸,从而摧毁卫星并使附近的其他卫星处于危险之中。由于卫星的轨道位置较高,使卫星向地球方向飞行以使其最终在大气中燃烧的方案并不可行,因为卫星会经过其他卫星所在的轨道并有可能产生碰撞。2020年1月19日,Spaceway-1被转移到墓地轨道,该轨道比其当前路径高约300 km。
2)GOES-17。2019年8月1日,美国国家海洋和大气管理局的GOES-17气象卫星高级基线成像仪出现故障,原因是仪器冷却系统中发生堵塞。GOES-17卫星上的高级基线成像仪的散热器和环路热管系统出现故障,导致其无法对仪器进行冷却。环路热管系统原本可以承受390W的热负荷,但卫星发射之初仅剩60 W,后来降至10~20 W。由于仪器的数据有限,无法确定回路热管性能下降的根本原因。从可用数据来看,GOES-17仪器冷却系统失效的最可能的技术原因是工作流体中所含的微粒阻塞了环路热管组件。
3)Meteor-M No.2-1。2017年11月,Meteor-M气象卫星发射失败,原因是坐标输入错误。Meteor-M本来计划从哈萨克斯坦的拜科努尔发射,但最后选择的是俄罗斯东方港基地。后者是俄罗斯首个民用火箭发射场,2017年4月才第一次启用,且第一次发射任务也失败了。负责运载的联盟火箭却依然输入的是拜科努尔的发射坐标命令,导致卫星没有进入预定轨道,坠落大西洋。这次发射失败的不仅是Meteor-M一颗卫星,还有18颗其他卫星,分别用于科学研究、商业活动等,来自挪威、瑞典、美国、日本、加拿大和德国。
4)Galileo Navigation Satellites。2014年7月3日,欧洲空间局的Galileo卫星导航系统部分星上原子钟失效。原因是星上的铷钟有一个部件存在缺陷,会造成短路。Galileo系统迄今已有18颗卫星在轨,但部分卫星原子钟出现了故障。每颗Galileo卫星上设有4台超高精度的原子钟,其中2台为铷钟,另2台为氢脉泽钟。每颗卫星只需有1台时钟工作即可,另3台作为备份。目前该系统已有3台铷钟和6台氢脉泽钟不能工作,有1颗卫星已有2台时钟失效。
5)Intelsat-29E。2016年4月18日,国际通信卫星公司Intelsat-29E通信卫星发生在轨故障并解体。故障原因是卫星推进器贮箱外壁出现破损,卫星推进剂发生了泄漏,推进剂随即喷出。这样的反作用力直接导致卫星加速旋转,而卫星中的很多构件也由于离心力的作用被甩入太空当中。更为严重的是,这些泄漏的推进剂在遇到电火花时发生爆炸,直接导致卫星解体。至于Intelsat 29E卫星外壁破损的原因,美国专家给出的解释是,该卫星位于微陨石较为繁多的区域,极有可能是由微陨石撞击了该卫星,导致卫星推进剂贮箱被击穿。
6)Hitomi。2016年3月26日,日本的Hitomi(也称为Astro-H)卫星的姿轨控分系统出现问题导致卫星失去控制,并导致太阳能电池板发生脱落。Hitomi卫星的姿态控制系统利用反作用轮通过快速旋转来控制卫星的指向,以抵消旋转。反作用轮系统内部积聚了动量,卫星上的磁力矩器无法卸载这些动量,该动量已接近反作用轮的设计极限。Hitomi卫星的计算机识别出危险情况,并在数小时后将卫星置于安全模式。
7)DMSP-F13。2015年2月3日,美国空军气象卫星DMSP-F13在太空中解体,原因是电池充电器内部的线束损坏,且在轨的其他6颗DMSP卫星也可能发生相同的故障。专家称,电池线束退化导致的电气短路,其中的一个线束由于长时间的压缩而失去功能。线束受损,裸露的电线可能会导致电池电量不足,从而导致过度充电,并最终导致电池破裂。卫星解体产生了超过50 000片大于1 mm的碎片,其中许多碎片将在轨道上保留数十年。
3 故障统计与分析
3.1 故障卫星平台统计
卫星平台故障数统计如图1所示。其中美国休斯公司(Hughes)的HS-601系列存在推进系统故障,其发射的Galaxy 10R,JCSat 1b,Optus B1,Satmex 5卫星均出现推进系统故障。洛克希德·马丁空间系统公司(Lockheed Martin)的TIROS-N平台存在电池故障,其发射的NOAA 16,DMSP系列卫星均存在电池设计缺陷。
图1 故障卫星平台统计Fig.1 Statistics of satellite platforms
3.2 分系统故障统计
表2展示了卫星分系统故障数的统计结果。可以看到供配电分系统出现的故障在所有分系统中最高,达到了44%。其次是推进分系统和控制分系统,分别达到了26%和16%。在推进分系统中,LEROS系列、S400推进器多次发生故障。
表2 分系统故障统计Table 2 Statistics of sub-system failure
3.3 卫星故障时已在轨时长统计
图2展示了卫星故障时间的统计。可以看到,在卫星刚发射后就出现故障的案例最多,达到了26个。同时,卫星在轨前5年的故障率也明显高于5年之后的故障率。例如,第3年和第5年发生故障的卫星数量分别是7和8,而在5年后出现卫星故障最多的一年(第8年)也只有6颗卫星。由此可知,发射初期的卫星故障率最高,应对发射初期的卫星进行重点检查和监视。
图2 卫星故障时已在轨时长Fig.2 Duration in orbit when a failure occurs
3.4 分系统与卫星故障发生时间的相关性分析
表3~表6对不同分系统故障发生时间进行了统计分析。从表中可以得出以下结论:
表3 卫星在轨1年内的分系统故障统计Table 3 Sub-system failure statistics of satellite within 1 year in orbit
表4 卫星发射1~5年分系统故障统计Table 4 Sub-system failure statistics of satellite within 1 to 5 years in orbit
表5 卫星发射5~10年分系统故障统计Table 5 Sub-system failure statistics of satellite within 5 to 10 years in orbit
表6 卫星在轨超过10年分系统故障统计Table 6 Sub-system failure statistics of satellite for more than 10 years in orbit
1)卫星在发射初期,供配电和推进分系统故障最多,均达到了36%。
2)供配电分系统的故障贯穿于卫星寿命的整个阶段。
3)推进分系统故障贯穿于卫星寿命的整个阶段,特别的,推进分系统故障在卫星发射的初期和寿命末期尤为严重。在卫星发射的初期,一些卫星由于推进分系统故障,导致在星箭分离后无法到达预定轨道。例如2016年美国发射的MUOS 5卫星和2010年美国发射的AEHF-1卫星,均因推进系统故障未到达预定轨道。
4)热控、载荷和综合电子分系统故障总体较少,且卫星在工作5年以上出现这4个分系统故障的概率小于前5年。
3.5 人为因素、空间环境因素和卫星设备故障统计
表7按照故障发生的原因进行了分类,其中由于设备引发的故障占了绝大多数,有86%;人为操作失误,比如误发指令等占到了3%;由于空间环境因素等影响引发的故障占到了11%,其中空间因素包括陨石或空间碎片撞击、太阳活动(太阳耀斑、太阳粒子等),如表8所示。空间环境因素中,太阳活动占到67%,陨石或空间碎片撞击占到33%。
表7 人为因素、空间环境因素和卫星设备故障统计Table 7 Statistics of failures caused by space environment, human and equipment
表8 不同空间因素在卫星故障中的占比Table 8 Proportion of different space environmental factors for satellite failures
3.6 机械、电子、软件和其他故障类型统计
卫星故障类型可分为机械、电子、软件和未知类别。电路短路、电池阵损耗等均视为电子类故障,将推进剂贮箱泄漏、翼板驱动机构堵转等视为机械类故障,将星载计算机软件设计缺陷、错误的遥控指令等视为软件类故障,其它一些不易分类的故障视为“其他”。表9对卫星故障类型进行了统计。可以看到,机械类的故障最多,占到40%,其次是电子类的故障,占到32%。
表9 机械、电子、软件和其他故障类型统计Table 9 Statistics of mechanical, electronic, software and other failure types
3.7 小结
通过上述统计分析,得出如下结论:
1)卫星平台的设计缺陷,会导致相关卫星出现相同的故障;
2)供配电分系统出现的故障在所有分系统中最高;
3)卫星在发射初期的故障率最高,也就是说卫星的故障隐患在发射初期就会暴露;
4)卫星在发射初期,供配电和推进分系统故障最多,且供配电和推进分系统的故障会贯穿卫星寿命的整个阶段;
5)卫星设备本身的故障、机械类的故障出现几率最高。
卫星在设计阶段可参考上述统计结论,对易发生故障的分系统和故障类型进行重点排查,在卫星发射初期进行重点跟踪监视,尽早排查故障隐患。当前的卫星系统已经建立了故障诊断、隔离与恢复系统(fault detection, isolation and recovery, FDIR),该系统针对关键参数,利用设置上下限阈值的方法来检测故障。该方法的不足在于,一方面仅检测部分参数的部分故障,另一方面只能检测已知的故障类型,对未知的故障类型没有检测能力。而人工智能的方法为解决这些不足提供了可能,下一节将对航天器的故障诊断方法,特别是基于人工智能的故障诊断方法进行详细介绍。
4 航天器故障诊断
故障诊断方法可以分为知识驱动的方法和数据驱动的方法[37]。常见的知识驱动的方法如专家系统,该方法利用丰富的领域知识,形成一系列准确的规则,如定义参数的正常上限和下限阈值来检测故障。该方法计算效率高,易于理解,因此是当前航天器常用的故障诊断方法。不同于知识驱动的方法,数据驱动的故障诊断方法利用各种机器学习模型从数据中学习知识,如利用概率模型学习以往数据所服从的分布,然后利用学习到的模型分析新生成的数据。相比于知识驱动的方法,数据驱动的方法不需要专家知识,且可以同时检测已知和未知的故障,因此,具有更广阔的应用前景[43]。但数据驱动的方法也存在计算复杂、可解释性差等问题,因此需要进一步的研究。下面对航天器常用的知识驱动的故障诊断方法和基于人工智能的故障诊断方法进行介绍。
4.1 传统的航天器故障诊断方法
故障诊断、隔离与恢复技术(FDIR)是在各国航天器中广泛应用的健康状态管理方法,其目的是将飞行器的健康状态通过卫星自主管理,实现故障检测、隔离和恢复的自动化与智能化,从而提高飞行器的安全性、可靠性、经济性、可测试性和可维修性,提高地面支持任务的准备和完成效率,降低飞行器的后勤保障和维护成本。常用的方法是专家系统。专家系统是基于规则的,这些规则是从专家的经验中总结出来,用来描述故障和征兆的关系。该方法的优点是知识表示简单、直观、形象、方便,使用直接的知识表示和相对简单的启发式知识,诊断推理速度快;要求数据的存储空间相对较小;易于编程和易于开发出快速原型系统。缺点是知识库覆盖的故障模式有限,对未出现过的和经验不足的故障诊断就显得无能为力;当知识库中没有相应的与征兆匹配的规则时,易造成误诊或诊断失败[12]。
人工智能的方法从数据中获取知识,无需预设故障类型,可以检测任意遥测参数,可有效解决专家系统在航天器故障诊断方面的不足。下面对基于人工智能的航天器故障诊断进行综述。
4.2 基于人工智能的航天器故障诊断系统
感应监视系统(inductive monitoring system, IMS)是由NASA-Ames研究中心开发的基于聚类的故障诊断系统,该系统通过对正常遥测数据进行聚类生成数据模型。对于每个时间片,将d个遥测参数值组合在一起来创建d维向量,然后通过聚类算法将不同的向量聚类到不同的空间。当新的遥测数据到达时,计算其与最近的类之间的距离。该距离提供了相对于正常区域的“异常值”点的度量。自从IMS系统建立以来,其异常检测软件已经改进了多次,例如异常监视感应软件系统(AMISS),该版本软件是由约翰逊航天中心(隶属于NASA)和Ames共同合作开发的,用于国际空间站的运行[13]。
此外,NASA还实现了其他异常检测系统[14-15],包括基于距离算法的Orca系统[16]、Ames研究中心开发的基于支持向量机的Mariana系统[17]、喷气推进实验室提出的动态不变异常检测系统[18]。
欧洲航天局(ESA)开发了新颖性检测系统[19]。在该系统中,遥测数据首先被分解为连续的时间间隔。对于每个时间间隔,将计算一个4维特征向量,并将其与预先标记的一组正常数据点进行比较。通过基于密度的局部离群值概率(local outlier probability,LoOP)算法[20]与正常数据簇进行比较,得到每个数据点在不同时间间隔的新颖度概率。作为这项技术的应用,位于GSOC-DLR的哥伦布控制中心团队实现了一个名为Sibyl[21]的框架,该框架使用DBSCAN[22]算法对每个时间片的4维特征向量进行处理。在得到正常数据类之后,将其输入到新颖性检测系统并对新生成的数据进行新颖度检测。
ATHMoS[23]与上述系统类似,它对每个时间片的遥测数据算一个特征向量(维度大于4),并使用基于密度的谱聚类算法[24]过滤没有异常值的训练数据,并建立3类分类数据库:历史标注数据、近期标注数据和异常数据,利用三类数据和新数据进行对比来检测异常。对比算法为德国太空作战中心(GSOC)提出的基于本征维度的异常概率算法(outlier probability via intrinsic dimension)[25]。对于每个时间片的数据向量,OPVID通过本征维的统计量,得到一个概率值以表征其异常程度。此外,它允许同时分析多个遥测参数,类似于IMS和AMISS系统,而不会显著降低准确性。
目前,中国尚未有已在轨运行的基于人工智能的航天器故障诊断系统研究报告。相比于美国、欧洲的航天器故障诊断技术应用,中国的航天器故障诊断技术研究还有一定的差距。原因在于:一方面真实的航天器故障数据不容易获取,导致理论研究与型号需求不匹配;另一方面,实际应用的技术相对比较保守,人工智能方法在可靠性方面还需要进一步的验证。
4.3 基于人工智能的航天器故障诊断方法
基于知识的方法最早用于航天器故障诊断,如专家系统。专家系统通常利用专家知识,对重要的卫星参数设置上下限阈值,当某个参数的遥测值超限时,则会触发报警[26-28]。考虑到航天器遥测数据具有高维特征,降维方法[29-30]被用于航天器故障诊断,如文献[31]利用概率主成分分析混合模型(mixtures of probabilistic PCA)[32]同时对正常的卫星遥测数据进行降维和聚类,然后利用重建误差进行故障诊断。基于聚类方法[33]的故障诊断的原理是,将正常遥测数据中的每一种系统状态模式聚为一个类,若新的遥测数据不属于任何一个系统状态或类时(通常与一个阈值进行比较),则可以认为该数据是故障数据。文献[34]提出动态故障树的方法,采用马尔可夫链和二元决策图相结合的分析方法,建立了卫星的电源、姿轨控和推进3个分系统的动态故障树模型。文献[35]利用基于距离的方法,如最近邻方法[36],进行航天器故障诊断。此外,还有支持向量机方法(OC-SVM)[37-38]。
近些年,基于深度学习的航天器的故障诊断研究越来越多[39-40]。基于深度学习的方法可分为两类,基于预测的方法和基于重建的方法。基于预测的方法通常是时间序列模型,如长短期记忆网络(long short-term memory networks, LSTM)[41]。此类模型假设如果新数据点距离预测值很远,则认为该数据为异常数据。文献[42]提出基于LSTM和动态阈值的故障诊断方法,该方法首先利用LSTM进行时间序列遥测参数预测,然后利用一种非参数无监督的动态阈值方法进行遥测参数的故障诊断,并将上述方法应用到NASA火星科学实验室的火星探测器好奇号和NASA的SMAP卫星。文献[43]提出LSTM模型和混合概率主成分分析模型结合的方法,并将该方法应用于韩国KOMPSAT-2卫星。基于重建的方法有自编码器(autoencoder)[44]。该方法假设只有正常数据可以从压缩后的低维空间中还原,因此,在模型训练中用正常数据来训练编码器(encoder)和解码器(decoder)。编码器是一个降维过程,用于把数据压缩到低维空间,解码器则进行相反操作将压缩后的数据还原。当新数据压缩后再还原时误差较大,则认为该数据为异常数据[45]。相比于传统机器学习方法,深度学习方法对复杂的非线性数据有更好的学习能力,能更好地发现数据中的规律。然而,深度学习也存在一些缺点,如深度学习的可解释性较差,当模型出现问题时很难给出合理的解释。另外,深度学习方法训练耗时,部署也需要更多的软硬件支持。
4.4 时间序列数据故障诊断方法
在众多工业应用中,时间序列数据是最常见的数据类型之一,如典型的航天器遥测数据。时间序列数据异常可分为点时间序列数据异常和时间子序列数据异常[46]。
点时间序列数据的常用故障诊断方法有基于统计的方法[47-48],该方法通过对时间序列数据进行统计分析,如中值绝对偏差,再通过设定阈值来进行故障诊断[49]。基于估计的方法旨在识别正常数据拟合的模型或分布不可能生成的数据点,即异常点[50],如移动平均值方法[51]、高斯混合模型[52]。基于预测的方法通过对未来数据的预测值与真实值进行对比来发现故障。如文献[53]通常基于卷积神经网络的深度学习方法,文献[54]提出多尺度长短期记忆网络的深度学习方法,文献[55]提出变分长短期记忆网络的深度学习方法。此外,文献[56]提出周期分解的统计学习方法,文献[57]提出基于线性回归的故障诊断方法,文献[58]提出基于神经网络的方法。
时间子序列异常旨在检测一组同时表现出异常的数据点。为此,子序列故障诊断方法需要考虑一些更关键的因素。此类问题中最典型的是检测固定长度的异常序列[59-60],这需要事先指定时间序列的长度(或叫步长),通过指定长度的滑动窗口来获取序列数据。相应地,一些研究提出变长时间子序列故障诊断,这些方法可以检测不同长度的异常子序列[61-62]。相比于点数据,序列数据间的比较,如计算相似度,时间复杂度较高。因此,一些研究提出使用表示方法(representation)而不是原始数据进行序列数据间的比较。离散化方法是最常用的表示方法,如等频合并法[63]、等宽合并法等[64]。时间子序列异常的另一个问题是异常的周期性特征,异常的子序列重复地出现在数据中[65]。
5 启发与建议
发展我国基于人工智能健康管理的自主航天器是未来的必然趋势,但将人工智能方法应用于在轨航天器仍有很多需要解决的问题,如当前航天器存在的计算能力、存储资源不足的问题,人工智能方法存在的不确定性及不可解释性问题。本文给出如下几点建议。
1)设计针对卫星遥测数据特点的人工智能故障诊断算法。卫星生成的数据及应用场景具有鲜明的领域特征。首先,卫星的遥测数据具有周期性、时间序列、存在野值和缺失值、异构等特点。其次,卫星在不同生命周期生成的遥测数据有所区别,特别的,由于卫星在寿命末期各分系统性能下降或损坏,导致生成的遥测会明显区别于卫星早期生成的遥测数据。再次,卫星遥测数据中的正常数据和故障数据非常不平衡,导致数据中的故障数据极其稀疏。此外,卫星的状态存在不确定性,由于空间环境变化或人工干预如发送指令,会导致卫星状态发生变化,这种非预期的变化会导致人工智能模型的虚警率。因此,需要设计针对卫星遥测数据特点的智能故障诊断方法。
2)利用更多的卫星系统数据进行人工智能模型的训练和故障诊断。受限于卫星遥测参数的数量及采集频率,卫星遥测数据不能全面、实时地反应卫星的状态。此外,卫星各分系统、各部组件存在耦合关系。因此,需要采集更能反映卫星健康状态的遥测参数,并利用卫星的实时数据进行人工智能的模型训练和故障诊断,充分利用海量的传感器观测信息,准确地发现系统的异常,避免漏报和误报,提高诊断结果的准确性和实时性。
3)提升卫星的计算能力。运行人工智能算法需要强大的计算能力,当前人工智能的快速发展得益于地面处理能力的提升,而目前我国卫星的处理能力较弱,不足以支撑人工智能应用,无论和国外的卫星系统还是地面计算机系统相比,都有很大的提升空间。因此,亟需提升我国卫星的星上处理能力,一方面采用高性能的宇航级芯片,提升星上的计算能力,另一方面升级星上的信息系统架构,提升星上的数据传输能力,为人工智能算法在卫星上的应用夯实基础。
6 结论
首先对2003~2021年的卫星在轨故障案例进行了研究总结,然后对在轨卫星故障案例从不同维度进行统计分析,最后对基于人工智能的航天故障诊断系统、故障诊断方法以及时间序列数据故障诊断方法进行了介绍。综合上述研究内容,发展我国基于人工智能方法健康管理的自主航天器是未来的必然趋势。将人工智能方法应用于在轨航天器仍有很多需要解决的问题,如当前航天器存在的计算能力、存储资源不足的问题,人工智能方法存在的不确定性及不可解释性问题。此外,当前人工智能方法仅可以解决故障诊断问题,在检测的基础上如何进行故障恢复和故障隔离,也是未来需要解决的关键问题。