1.1.2 星载计算机发展历程
1)国外星载计算机
1977年,随着“旅行者”号(1号和2号)的成功发射,第一代数字星载计算机正式被用于卫星探测器中。由于相机的数据速率很高,因此“旅行者”号携带一台名为“飞行数据子系统”(flight data subsystem,FDS)的星载计算机,专门负责载荷数据处理和相机的控制。
集中式星载计算机最早是美国国家航空航天局(National Aeronautics and Space Administration,NASA)为满足其火星探测器任务需求提出并实现的。NASA最早在其火星探测器“索杰纳”(Sojouner)和地面原理样机“探路者”(Pathfinder)中使用了集中式星载计算机技术。“索杰纳”中仅用两块板实现了探测器所有的信息处理以及二次电源的能源分配;“探路者”采用集中式星载计算机系统,将姿轨控系统和数管系统合为一个系统,并集成了遥测、遥控和能源分配等功能。“探路者”中星载计算机的应用,为2003年发射的“机遇”(opportunity,MER-B)号和“勇气”(spirit,MER-A)号火星车星载计算机的成功应用奠定了良好的基础。集中式星载计算机使用RAD 6000作为核心处理器,完成遥控、遥测、路径规划、自主导航、电机控制、图像采集和载荷管理等任务。集中式星载计算机技术在“机遇”号和“勇气”号火星车上的成功应用及其巨大优势使得NASA大受鼓舞,NASA后续准备发射的火星采样返回探测器MSR、火星生物试验室巡视器AFL21都无一例外地采用了集中式星载计算机技术。
除了深空探测器外,NASA还在其他多颗卫星平台中推广应用了集中式星载计算机技术。新千年计划的首发星ST53使用了集中式电子系统,并于2006年成功发射。2009年发射的月球卫星LRO4也采用了高性能、模块化的集中式星载计算机系统,该系统主要负责上行指令的接收与处理、导航控制、载荷数据采集和遥测数据下传等任务。
2018年11月26日,经过6个月的火星之旅,由美国洛克希德·马丁(Lockheed Martin,简称“洛马”)公司与美国宇航局喷气推进实验室合作建造的“洞察”号火星探测器降落在火星上。“洞察”号火星着陆器将开展地震调查、大地测量学和热传输的勘探,其配备了BAE系统公司RAD 750单板计算机。这是第八次火星任务,由BAE系统公司的高可靠性辐射加固电子产品系列实现。
2019年3月,洛马公司公开了其开发多年的软件定义卫星技术架构——SmartSat,并表示正在研制采用该软件定义技术架构的微纳卫星,以改变传统卫星发射后就无法改变其能力的现状。
欧洲航天局(European Space Agency,ESA)近年来发射的多颗卫星中也大量使用了集中式星载计算机技术。2001年发射的PROBA系列小卫星首发星PROBA-1,实现了姿轨控分系统和数管分系统的综合;2005年发射的SpaceBUS40006,采用卫星管理单元,完成了姿轨控、能源、有效载荷、热控、遥控、遥测、展开机构、太阳帆板驱动机构等任务和设备的管理;2005年发射的ESA探月首发星SMART-1,由中心计算机实现星务管理、姿轨控、载荷管理,设置遥测遥控等远置单元实现遥控接收与指令、遥测下行以及接口数据采集;2006年发射的大气变化观测卫星Aeolus,采用由Saab Ericsson开发的卫星管理单元,集中实现星务、姿轨控、遥测遥控、二次配电、载荷数据采集与管理;2009年发射的PROBA系列小卫星第二发星PROBA-2,在PROBA-1的基础上通过采用ESA下一代空间处理器AT697,进一步实现了数管、控制、配电、载荷管理等电子线路的综合,电子线路质量由PROBA-1的15.8 kg降低到13.3 kg,功耗也从23.3 W减小到19.7 W,载荷比由30%提高到40%。
在嵌入式操作系统领域,国外已经进行了多年的研究与应用,有许多商业产品投入实际应用,如WindRiver公司的VxWorks、QNX软件系统公司的QNX、Bek Tek公司的SCOS(Spacecraft Operating System)、MicroSoft公司的Windows CE内核;同时,开源产品中也出现了较多优秀的嵌入式操作系统成果,如RTEMS、Thread X等。国外典型星载计算机发射汇总见表1-1。
表1-1 国外典型星载计算机发射汇总
续 表
2)国内星载计算机
国内星载计算机采用独立计算机架构的典型卫星为中国航天科技集团公司上海航天技术研究院风云一号C星、D星,它们也是国内最早应用具备抗辐射抗核性能的1750处理器的卫星。其中,风云一号C星设计寿命2年,由于采取了一系列有效的技术措施,其产品质量、对空间环境影响的适应性和系统可靠性都得到较大提高,稳定工作并超期服役了近5年。
国内集中式星载计算机技术起步较晚。2003年10月,由中国科学院小卫星工程部研制的创新一号小卫星作为我国第一颗自主研发的微小卫星顺利升空。星载计算机作为创新一号小卫星的重要组成部分,集数管遥测遥控与姿轨控于一体,是高性能、高功能集成、高可靠、长寿命的星载计算机。
2006年,为满足我国月球探测工程二期中月面巡视器的需要,中国空间技术研究院开始展开集中式星载计算机技术的预先研究工作。经过几年的攻关,该研究成果已成功应用于月面巡视器中,并随其于2013年成功发射入轨,各项指标满足型号任务需求。
为适应中国空间技术发展需求,北京控制工程研究所研制生产了长寿命、高性能、高可靠的32位星载控制计算机,其具备强大的容错能力和完善的可靠性设计,在2006年10月首飞成功。目前,32位星载控制计算机已成功应用于国产通信、导航、探月、遥感、空间站、载人飞船和各类小卫星等多种空间飞行器,应用该计算机的在轨卫星已达46颗。同时,为该计算机配套研制的SpaceOS,除应用到上述卫星控制计算机外,还应用到中国空间技术研究院西安分院,中国电子科技集团公司54所、27所等单位的有效载荷上。32位星载控制计算机控制神舟九号完成与天宫一号的交会对接,控制嫦娥一号实现首次绕月飞行,控制嫦娥二号实现对小行星的探测,控制北斗二号星座实现导航和授时服务,控制遥感卫星实现对地观测,控制小卫星星座实现卫星编队飞行。上述卫星中,控制计算机最长已在轨正常工作7年,创造了显著的社会效益和经济效益。
32位星载控制计算机的高可靠长寿命设计、高速控制计算机设计技术的突破、自主知识产权实时多任务操作系统和星载软件的可靠性保证技术是主要的技术进步点。该项研究探索出一条卫星星载计算机长寿命、高可靠设计的思路;研制出基于TSC695F的星载计算机系列产品,并在星载计算机设计上不断深入;实现了占用资源少、实时性好、适用于空间环境,并充分利用SPARC体系结构CPU的TRAP机制开发了自主知识产权的实时多任务操作系统;摸索出星载软件可靠性设计的另类途径,并具有很强的推广应用价值。通过32位星载控制计算机的研制,我国的星载计算机完成了从16位机到32位机的跨越,实现了长寿命、高精度和高稳定度控制,取得了长足的进步。
在星载计算机单机软件领域,受限于处理器的性能和早期编译器的限制,早期的星载计算机软件采用汇编语言编程,例如16位计算机指令集架构(instruction set architecture,ISA)的1750汇编、SPARC汇编;后期则逐渐采用高级语言编程,例如Ada语言、C语言、图形化自动编程。对部分处理性能要求高的功能代码,通常采用高级语言内嵌汇编语言的方式编程。
在嵌入式操作系统领域,虽然我国基础薄弱、起步较晚,但是在我国对于航天器嵌入式操作系统“自主可控、信息安全”要求逐渐深化的背景下以及“核高基”专项、预研课题及用户应用需求的推动下,国内航天领域涌现出了多个嵌入式操作系统产品。主要嵌入式操作系统厂商及产品包括翼辉信息Sylix OS、科银京成道系统、航空631所天脉1和天脉2、神舟软件神舟OS、航天706所天熠OS、中电32所锐华OS、航天12所战星和战旗、航天502所SpaceOS、航天771所九天OS、船舶716所JARIWorks、航空618所自研自用系统等。
我国星载计算机传统的设计方法主要是凭经验,先进的设计仿真和电子设计自动化(electronic design automation,EDA)技术刚刚起步不久,应用还不普及。传统的设计和实现方法难于进一步减小体积、重量,难于进一步提高可靠性和环境适应性。因此,我国星载计算机的可靠性设计亟待加强。国内典型星载计算机发射汇总见表1- 2。
表1-2 国内典型星载计算机发射汇总