一种航天器点火控制模块的设计
2020-06-12刘成明
刘成明
(贵州航天电器股份有限公司,贵州 贵阳 550009)
0 引言
目前在航天器火工品点火控制中,一般都需要有箭地电源转换功能(即转电功能)[1],同时又需要点火时序可编程(如以通信方式装订时序)[2],传统的时序控制模块基本是使用一个微控制器实现[3]。然而由于微控制器都具有特定的失效模式,比如单片机、DSP(数字信号处理器)存在程序跑飞、受干扰可能发生复位的风险,这些风险在地面可控,但是一旦微控制器在航天器飞行过程中发生复位,将无法继续执行复位之前的点火控制流程,并且微控制器复位将直接导致转电控制复位即控制器断电,造成无法控制点火的严重影响。为克服上述缺陷,设计了一种采用两种类型微控制器的点火控制模块,同时通过软件设计,保证单片机异常复位时也不会复位当前的转电状态。
1 系统方案
为增加点火可靠性,使用两种不同类型的微控制器进行主、备份点火控制,主备点火信号经过或门后输出。由于单片机(或DSP)能够集成非易失性数据存储器和串行通信模块等众多外设[4-5],因此采用一片单片机作为主处理芯片,实现较复杂的地面指令通信、转电控制、时序装订、主点火控制等功能。采用一片CPLD(或FPGA)作为备处理芯片,只用于实现简单的时序读取和备点火控制功能。单片机和CPLD均能实现0 ~2N(N 为单片机和CPLD 内部计数器的位数)秒可编程、毫秒级精度的计时[6]。
系统的工作流程如下:(1)地面上电,单片机自动控制转电继电器复位,系统由地面电源供电;(2)单片机通过串行通信接收外部指令进行时序装订,将时序值存储在单片机内部的非易失性数据存储器中,实现掉电时序不丢失;(3)单片机通过串行通信接收外部指令进行转电,控制转电继电器转换,系统的供电由地面电源切换到航天器内部电池;(4)发射前单片机对CPLD 使能发射允许信号,CPLD 只在发射允许信号有效时通过I/O 口读取单片机提供的时序值,之后CPLD 不再读取时序值,直到输出点火信号;(5)在收到发射允许指令且电气分离信号有效后,单片机和CPLD 同时开始计时,不再接收通信指令和电气分离信号,直到输出点火信号。
2 电路设计
点火控制模块主要由单片机电路、CPLD 电路和或门、达林顿驱动芯片组成。系统原理框图如图1 所示。
2.1 单片机电路
点火控制模块的控制核心是单片机。本次设计选用的ATmega128 是ATMEL 公司的8 位低功耗CMOS 微处理器,其外设包括2 个16 位的计数器/定时器,2个可编程的串行USART,4K 字节的EEPROM 非易失性数据存储器等。设计中使用单片机的UART 进行串行数据的收发,EEPROM 用于存储点火时序,定时器控制点火时序的输出。单片机内嵌的外设部件及其特点足以满足点火控制模块的功能需求,减少了电路的分立元件,增加了系统的可靠性。单片机电路的功能框图如图2 所示。
单片机的软件功能模块包括:(1)转电复位控制模块,用于识别单片机复位原因并进行航天器供电的转电复位控制;(2)转电控制模块,用于根据通信输入指令进行航天器供电的转电控制;(3)时序装订模块,用于根据通信输入指令进行航天器点火时序存储;(4)发射允许控制模块,用于根据通信输入指令进行航天器发射前准备工作(解锁电气分离信号检测、向CPLD 转发发射允许信号和点火时序值);(5)主点火信号输出模块,用于根据航天器发射时产生的电气分离信号开始计时,当到达时序装订时间输出主点火信号。
单片机程序中启用了看门狗功能,并设计了复位原因识别功能:单片机复位后首先检查自身的复位状态寄存器,若存在复位标识(如看门狗复位、外部引脚电平复位、掉电检测复位等)则不进行转电复位,否则在每次正常上电后执行转电复位控制模块进行转电复位;之后单片机通过串行通信接收外部指令,收到转电指令后执行转电控制模块输出转电信号给达林顿驱动芯片,收到时序装订指令后执行时序装订模块保存收到的时序值到自身的非易失存储器,收到发射允许指令后执行发射允许控制模块将发射允许信号和点火时序值发送给CPLD 同时启动主点火信号输出模块,当主点火信号输出模块接收到有效的电气分离信号后开始计时并停止接收电气分离信号和串行通信,到达时序装订时间输出主点火信号给或门芯片,重新启动接收电气分离信号和串行通信。
2.2 CPLD 电路
CPLD 是点火控制模块的备份点火控制器。本次设计选用的XC95144XL 是XILINX 公司的高性能的CPLD,具有144 个宏单元、3200 可用门,多达133个用户I/O 引脚,系统频率高达178MHz[7]。设计中使用CPLD 的I/O 读取点火时序值,计数器控制点火时序的输出。CPLD 仅用于点火时序的定时输出,功能简单,可靠性高。CPLD 电路的功能框图如图3 所示。
CPLD 的软件功能模块包括:(1)时序读取模块,用于根据输入的发射允许信号开始读取点火时序值;(2)备点火信号输出模块,用于根据航天器发射时产生的电气分离信号开始计时,当到达点火时序时间输出备点火信号。
当CPLD 收到有效的发射允许信号后,执行时序读取模块只读一次取点火时序值同时启动备点火信号输出模块,当备点火信号输出模块接收到有效的电气分离信号后开始计时并停止接收电气分离信号,到达时序装订时间输出备点火信号给或门芯片,重新启动接收电气分离信号。主、备点火信号经过或门后送给达林顿驱动芯片,最终输出有驱动能力的控制信号。
3 可靠性设计
在该点火控制模块的设计中,可靠性方面具有以下创新点:(1)使用的两种微控制器有不同的失效模式,且CPLD 是可编程硬件电路,不存在像单片机程序跑飞的情况;在飞行过程中两种微控制器互不影响,也不受外部信号和指令的影响,独立完成点火控制,可靠性大大提高。两个控制器互有分工,只在点火控制上进行双冗余设计,兼顾了低成本的要求。(2)单片机软件设置了复位模式识别功能,保证飞行中单片机因干扰发生复位时不会进行转电复位,确保CPLD 可以继续控制点火,而在地面正常上电时能够控制转电复位。为点火控制产品针对飞行中复位的问题提出了简洁、有效的处理方案[8]。
4 结论
经过产品实物测试,点火时间设定为300s 时单片机和CPLD 的时序输出误差在10ms 以内,点火脉宽设定为200ms 时输出误差在1ms 以内,满足任务需要。为模拟飞行中单片机发生复位的情况,在电气分离信号有效即点火控制模块开始计时后,人为对单片机进行外部复位,测试产品供电正常,未发生转电复位,到达点火时刻单片机点火时序未发出,CPLD 点火时序正常发出,证明产品功能完整实现。
本设计采用较少的硬件电路实现高可靠的点火控制,两种类型的微控制器不会因同一种问题失效,通过软件方式解决微控制器受干扰复位后会导致产品断电的问题,实现成本较低。