卫星系统自主分级引导过程控制方法

文档序号:4147390阅读:249来源:国知局

专利名称::卫星系统自主分级引导过程控制方法
技术领域
:本发明涉及一种通过卫星星务管理系统主机自4企遥测和遥控指令共同实现的卫星系统自主引导过程的控制方法,属于卫星控制领域。技术背景目前,国内外传统的卫星设计都是采用卫星上电直接运行程序,没有采用专门的自主引导程序控制方法,当星上设备加电出现故障时,卫星星务管理系统无法采用有效措施对卫星系统进行控制,同时也不能对部分故障进行隔离处理,因此只能对整个星上设备进行隔离,这样卫星系统设计时必须采用全备4分冗余措施,使得设计和制造成本很高,形成较高的代价。
发明内容本发明的技术解决问题是克服现有技术的不足,提供一种卫星系统的自主分级引导过程控制方法,该方法简化了卫星系统的设计,提高了卫星的可控性和安全性;同时提高了卫星系统的灵活性。本发明的4支术解决方案卫星系统自主分级引导过程控制方法,卫星上的星务管理系统的主机和备机参与控制,其特点在于步骤如下(1)卫星加电,卫星上的星务管理系统主机进行全面自检,然后判断全面自检是否成功,如果全面自检成功,则执行步骤(2);如果全面自检不成功,则进行降级自检;如果降级自检成功,则执行步骤(2);如果降级自检不成功,则进行核心自检;如果核心自检成功,则执行步骤(2);如果核心自检不成功,则认为星务管理系统主机有故障,自主切换到星务管理系统备机;(2)主机判断是否有从地面测控系统发送的运行装载程序的遥控指令,如果没有运行装载程序的遥控指令,则执行步骤(4);如果有运行装载程序的遥控指令,则执行步骤(3);(3)主机等待地面测控系统发送的与装载程序相关的遥控命令,判断所述的遥控命令是否为遥控上注代码指令、遥控组装代码指令和遥控上注代码执行指令三种之一;如果是遥控上注代码指令,则将遥控上注代码存储到指定的RAM中;如果不是遥控上注代码指令,则判断是否为遥控组装代码指令,如果是遥控组装代码指令,则将指定的RAM代码存储到指定FLASH/EEPROM中;如果不是遥控组装代码指令,则判断是否为遥控上注代码执行指令,如果是遥控上注代码执行指令,则执行步骤(4),如果不是遥控上注代码执行指令,则从步骤(3)继续循环,直至为遥控上注代码执行指令;(4)读取指定FLASH/EEPROM程序到指定RAM中,并执行该RAM中程序,从而完成装载程序的运行,以更新星上应用程序,满足星上新的任务需求,或者替换以前设计不完善的程序,实现控制代码在轨重新设置和修改。所述步骤(3)中在地面测控系统发送遥控命令过程中,星上主机通过遥测不停的将卫星上信息发送到地面,由地面测控系统判断其正确性,实现卫星运行状态可控,其中信息包括上注的数据区数据,FLASH/EEPROM中数据区数据及星上状态信息。所述步骤(4)中的在轨重新设置和修改后的控制代码通过遥测下传,由地面测控系统判断其正确性,实现卫星运行状态可控。所述的遥控上注代码指令包括;包头HEAD1,釆用两个字节;类型TYPE1,采用一个字节;数据块序号BLKNUM1,采用两个字节,该字节代表遥控上注数据的数据块顺序;数据包内容CONTENT1,包含N个字节,N为可变的数据,根据需要进行设置;遥控上注代码的属性ATTR旧1,包括非压缩数据、压缩数据、代码段、只读数据段、数据段及其他的为用户自定义段;数据包累加和CHECKSUM1为一个字节。所述的遥控组装代码指令包头HEAD2,采用两个字节,类型TYPE2采用一个字节作为遥控组装代码指令类型;开始地址FADD,采用4个字节;组装数据块长度LEN用N个字节;遥控组装代码指令的属性ATTR旧2,包括非压缩数据、压缩数据、代码段、只读数据段、数据段及其他的为用户自定义段;数据包累加和CHECKSUM2为一个字节;数据包累加和CHECKSUM为一个字节。所述的遥控上注代码执行指令包括包头HEAD3,采用两个字节,类型TYPE3,采用一个字节作为遥控上注代码执行指令类型;应用程序入口地址PADDR,采用4个字节,用于指定入口程序;数据包累加和CHECKSUM3为一个字节。本发明与现有技术相比的优点在于(1)本发明利用卫星星务管理系统启动自检,判断和排除卫星系统的故障,当出现故障时,由地面遥控指令进行干预,使其激活星上设置的相应程序或可重新设置相应程序,使卫星自主控制更具有灵活性,完善对卫星控制的方式,提高了卫星生存能力,改变了过去的卫星系统出现故障时,不能对故障进行分离,只能进行硬件备份的切换,减少了设计中釆用全备份模式,大大简化了卫星系统的设计,降低了设计和制造成本,提高了卫星系统自我故障隔离和修复功能,使得卫星星上自我管理和自我组装的能力增强,,提高了卫星的可控性和安全性。(2)本发明通过卫星星务管理系统,对卫星运行进行管理控制,利用该控制器内部PROM,上电复位自动运行在遥控指定的地址;自动执行必要的硬件检测,分全部自检、降级自检和核心自检三个级别的自检过程;检测结果可知,结果可控;通过遥控指令运行指定区域的程序;通过遥测检测状态发送给地面;通过上行遥控数据块可在轨修改运行程序,通过在自主分级引导程序中引入遥测/遥控功能,即增强引导的性能,又提高引导的灵活性。(3)另外,当卫星部分故障时,可以利用引导过程,带故障正常运行或降级工作,进一步提高了系统的灵活性。(4)另夕卜,本发明由遥测实现故障检测,在地面测控系统上传数据过程中,星上主机通过遥测不停的将卫星上信息发送到地面,实现星地人机交互的星地专家系统接口;而且在轨重新设置和修改后的控制代码通过遥测下传,由地面测控系统判断其正确性,实现了卫星运行状态可控。图1为通常的星务系统功能原理框图;图2为本发明的实现流程图。具体实施方式一、在详细叙述本发明前,先对一些基本概念进行一下阐述。(1)星务管理系统为了提高可靠性,一般卫星上的星务管理系统由星务管理系统主机和星务管理系统备机构成及其下位机组成,主机和备机结构执行的功能相同。星务系统主机主要完成卫星遥控命令接收,解调、分析、传送和分配;卫星遥测数据收集,格式化,视频调制,卫星星箭分离信号接收和星地422接口,星上控制总线(例如CAN总线),星上信息总线(例如USB总线和以太网)等功能如图1所示。此星务管理系统不属于本发明的部分,但为了叙述清楚,将此内容进行一下简要介绍。通常的星务管理系统、对本领域技术人员是知晓的。(2)全面自检、降级自检和核心自检全面自检是指对星务管理系统的各个外设的功能状态进行全面检查,其中包括星务管理系统的PROM、EEPROM、RAM、星地422接口、遥测接口、遥控接口、USB接口、以太网接口和CAN总线接口功能模块检查,即将星务系统的所有的外部设备功能模块均要进行检测。降级自检是指只检查部分外部设备的功能状态,即可确保卫星星务管理系统主要功能正常工作的外部设备的功能状态。本发明中的降级自检主要包括星务管理系统的PROM、EEPROM、RAM、遥测接口、遥控接口、CAN总线接口的自检。核心自检是指核心关键部件的功能状态,即确保卫星星务管理系统基本功能正常工作的外部设备。本发明中的核心自检包括星务管理系统的PROM、EEPROM、RAM、遥测接口、遥控接口。(3)装载程序装载程序是指将地面编译好的程序通过遥控指令发送到在轨道上运行的星栽计算机的程序。上注装载程序的目的,是更新星上应用程序,满足星上新的任务需求,或者替换设计不完善的程序,实现控制代码在轨重新设置和修改,实现卫星系统的灵活性。(4)遥控上注代码指令、遥控组装代码指令和遥控上注代码执行指令遥控上注代码指令是通过地面将卫星上应用的程序分块执行的遥控指令才各式;遥控组装代码指令是指将上注指定的RAM中代码存储到指定的FLASH或/EEPROM的遥控指令;遥控上注代码执行指令是将FLASH或/EEPROM中的程序读取到指定的RAM中,并执行在该RAM中的程序。(5)地面测控系统由地面测控网进行卫星的遥测功能监视,及遥控数据发送的地面测控系统。地面测控系统不属于本发明的部分,但为了叙述清楚,进行了一下简要的介绍。通常的地面测控系统、对本领域技术人员是知晓的。二、结合图2对本发明的实施步骤进行详细阐述。如图2所示,本发明的具体实施步骤为(1)卫星加电,卫星上的星务管理系统主机进行全面自;^,然后判断全面自检是否成功,如果全面自检成功,则执行步骤(2);如果全面自检不成功,则进行降级自检;如果降级自检成功,则执行步骤(2);如果降级自检不成功,则进行核心自检;如果核心自检成功,则执行步骤(2);如果核心自检不成功,则认为星务管理系统主机有故障,自主切换到星务管理系统备机;(2)主机判断是否有从地面测控系统发送的运行装载程序的遥控指令,如果没有运行装载程序的遥控指令,则执行步骤(4);如果有运行装载程序的遥控指令,则执行步骤(3);(3)主机等待地面测控系统发送的与装载程序相关的遥控命令,判断所述的遥控命令是否为遥控上注代码指令、遥控组装代码指令和遥控上注代码执行指令三种之一;如果是遥控上注代码指令,则将遥控上注代码存储到指定的RAM中;如果不是遥控上注代码指令,则判断是否为遥控组装代码指令,如果是遥控组装代码指令,则将指定的RAM代码存储到指定FLASH/EEPROM中;如果不是遥控组装代码指令,则判断是否为遥控上注代码执行指令,如果是遥控上注代码执行指令,则执行步骤(4),如果不是遥控上注代码执行指令,则从步骤(3)继续循环,直至为遥控上注代码执行指令;(4)读取指定FLASH/EEPROM程序到指定RAM中,并执行该RAM中程序,从而完成装载程序的运行,以更新星上应用程序,满足星上新的任务需求,或者替换以前设计不完善的程序,实现控制代码在轨重新设置和》务改。在步骤(3)中的在地面测控系统上传数据过程中,星上主机通过遥测不停的将卫星上信息发送到地面,由地面测控系统判断其正确性,实现卫星运行状态可控,其中信息包括上注的数据区数据,FLASH/EEPROM中数据区数据及星上状态信息。步骤(4)中的在轨重新设置和修改后的控制代码通过遥测下传,由地面测控系统判断其正确性,实现卫星运^f亍状态可控。上述步骤(3)和步骤(4)中具体的可控过程为地面测控系统通过将卫星上的遥测数据进行分析,比对地面发送的上注数据块和遥测接收到的卫星上返回的上注数据块,判断是否一致,如果一致,则认为接收的上注数据正确,否则认为错误,地面重新发送上注数据,在地面比对,直到数据正确为止,这样实现了卫星运行状态的可知、可管和可控。如表1所示,本发明的遥控代码上注指令,HEAD包头采用两个字节,例如采用0xEB90作为包头;TYPE类型釆用一个字节,例如采用0x11作为遥控代码上注指令类型;BLKNUM数据块序号釆用两个字节,该字节代表上注数据的数据块顺序,例如可以为10时,代表第10个数据块;下面是数据包内容CONTENT,可包含N个字节,N为可变的数据,根据需要进行设置;再下面是遥控上注代码的属性ATTR旧1,例如用位01为代表压缩和非压缩数据,用位2~3代表数据块在程序中的段标示。最后一个字节为数据包累加和CHECKSUM。本遥控代码上注指令协议是将数据上传到RAM緩存区。表1遥控代码上注指令表<table>tableseeoriginaldocumentpage10</column></row><table>ATTR旧11个字节例如定义为位0~1:"11":表示为非压缩数据"00":表示为压缩数据位23:"00":表示为代码段"01":表示为只读数据賴"11":表示为数据段"10":其他的为用户自定义段CHECKSUM11字节累加和,不包括包头、类型如表2所示,遥控组装代码指令,HEAD包头釆用两个字节,例如采用0xEB90作为包头;TYPE类型采用一个字节,例如采用0x22作为遥控组装4、码指令类型;FADD开始地址,采用4个字节,开始烧写到EEPROM或FLASH中的地址,例如范围为0x100000000x1FFFFFFFF;LEN组装数据块长度用N个字节,例如用2个字节,则烧写数据长度不超过64K;再下面是该遥控组装代码指令的属性ATTR旧1,例如用位01为压缩和非压缩数据,用位23代表数据块在程序中的段标示。最后一个字节为数据包累加和CHECKSUM。本发明的遥控组装代码指令协议是将其中一个RAM緩存区中LEN个数据根据指令属性进行解压或非解压烧入到FLASH/EEPROM中。表2遥控组装代码指令表<table>tableseeoriginaldocumentpage10</column></row><table><table>tableseeoriginaldocumentpage11</column></row><table>如表3所示,遥控上注代码执行指令,HEAD包头采用两个字节,例如采用0xEB90作为包头;TYPE类型采用一个字节,例如釆用0x33作为遥控上注代码执行指令类型;PADDR应用程序入口地址,釆用4个字节,用于指定入口程序;最后一个字节为数据包累加和CHECKSUM。本发明遥控上注代码执行指令是接受到该命令,立即将存储器EEPROM/FLASH中该应用程序入口的程序加载到RAM中,并在RAM中运行。表3遥控上注代码执行指令<table>tableseeoriginaldocumentpage11</column></row><table>本发明说明书中未作详细描述的内容属于本领域专业技术人员/>知的现有技术。尽管为说明目的公开了本发明的最佳实施例和附图,但是本领域的技术人员可以理解在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例和附图所公开的内容。权利要求1、卫星系统自主分级引导过程控制方法,其特征在于步骤如下(1)卫星上的星务管理系统主机进行全面自检,如果全面自检成功,则执行步骤(2);如果全面自检不成功,则进行降级自检;如果降级自检成功,则执行步骤(2);如果降级自检不成功,则进行核心自检;如果核心自检成功,则执行步骤(2);如果核心自检不成功,则认为星务管理系统主机有故障,自主切换到星务管理系统备机;(2)主机判断是否有从地面测控系统发送的运行装载程序的遥控指令,如果没有运行装载程序的遥控指令,则执行步骤(4);如果有运行装载程序的遥控指令,则执行步骤(3);(3)主机等待地面测控系统发送的与装载程序相关的遥控命令,判断所述的遥控命令是否为遥控上注代码指令、遥控组装代码指令和遥控上注代码执行指令三种之一;如果是遥控上注代码指令,则将遥控上注代码存储到指定的RAM中;如果不是遥控上注代码指令,则判断是否为遥控组装代码指令,如果是遥控组装代码指令,则将指定的RAM中的代码存储到指定FLASH/EEPROM中;如果不是遥控组装代码指令,则判断是否为遥控上注代码执行指令,如果是遥控上注代码执行指令,则执行步骤(4),如果不是遥控上注代码执行指令,则从步骤(3)继续循环,直至为遥控上注代码执行指令;(4)读取指定FLASH/EEPROM程序到指定RAM中,并执行该RAM中程序,从而完成装载程序的运行,以更新星上程序,满足星上新的任务需求,或者替换设计不完善的程序,实现控制代码,即是星上程序在轨重新设置和修改。2、根据权利要求1所述的卫星系统自主分级引导过程控制方法,其特征在于所述步骤(3)中在地面测控系统发送遥控命令过程中,星上主机通过遥测不停的将卫星上信息发送到地面,由地面测控系统判断其正确性,实现卫星运行状态可控,其中信息包括上注的数据区数据,FLASH/EEPROM中数据区数据及星上状态信息。3、根据权利要求1所述的卫星系统自主分级引导过程控制方法,其特征在于所述步骤(4)中的在轨重新设置和修改后的控制代码通过遥测下传,由地面测控系统判断其正确性,实现卫星运行状态可控。4、根据权利要求1所述的卫星系统自主分级引导过程控制方法,其特征在于所述的遥控上注代码指令包括;包头HEAD1,采用两个字节;类型TYPE1,采用一个字节;数据块序号BLKNUM1,采用两个字节,该字节代表遥控上注数据的数据块顺序;数据包内容CONTENT1,包含N个字节,N为可变的数据,根据需要进行设置;遥控上注代码的属性ATTR旧1,包括非压缩数据、压缩数据、代码段、只读数据段、数据段及其他的为用户自定义段;数据包累加和CHECKSUM1为一个字节。5、根据权利要求1所述的卫星系统自主分级引导过程控制方法,其特征在于所述的遥控组装代码指令包头HEAD2,采用两个字节,类型TYPE2采用一个字节作为遥控组装代码指令类型;开始地址FADD,采用4个字节;组装数据块长度LEN采用N个字节;遥控组装代码指令的属性ATTR旧2,包括非压缩数据、压缩数据、代码段、只读数据段、数据段及其他的为用户自定义段;数据包累加和CHECKSUM2为一个字节;数据包累加和CHECKSUM为一个字节。6、根据权利要求1所述的卫星系统自主分级引导过程控制方法,其特征在于所述的遥控上注代码执行指令包括包头HEAD3,采用两个字节,类型TYPE3,采用一个字节作为遥控上注代码执行指令类型;应用程序入口地址PADDR,采用4个字节,用于指定入口程序;数据包累加和CHECKSUM3为一个字节。全文摘要卫星系统自主分级引导过程控制方法,首先主机依次进行全面自检、降级自检和核心自检;如果自检均不成功,主机有故障,自主切换到备机;如果自检成功,判断是否有装载程序的遥控指令,如果没有则读取指定FLASH/EEPROM程序到指定RAM中;如果有,等待并判断遥控命令是否为遥控上注代码指令、遥控组装代码指令和遥控上注代码执行指令,分别将遥控上注代码存储到指定的RAM中、将指定的RAM代码存储到指定FLASH/EEPROM中和读取指定FLASH/EEPROM程序到指定RAM中,并执行该RAM中程序。本发明降低了卫星星务系统的风险,提高了卫星星务系统的可靠性、实时性和安全性,解决了卫星在轨时系统出现故障时通过可控制、可编程的手段实现卫星在轨功能修改和增强的实际问题。文档编号B64G1/24GK101332874SQ200810118039公开日2008年12月31日申请日期2008年8月7日优先权日2008年8月7日发明者施思寒,李孝同申请人:航天东方红卫星有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1