一种实现遥测数据接收完整性的方法

文档序号:7897607阅读:256来源:国知局
专利名称:一种实现遥测数据接收完整性的方法
技术领域
本发明涉及一种实现遥测数据接收完整性的方法,尤其涉及一种航天器控制周期 与遥测周期不一致时实现遥测数据接收完整性的方法,属于航天控制领域。
背景技术
遥测数据的完整性要求是航天器在轨飞行过程中进行数据判读和分析的基础,为 航天器在轨飞行控制和运行维护提供了重要前提。目前在航天器控制系统任务中实现遥测 功能的方法主要有两种(1)采用查询方式进行遥测数据打包和发送。该方法实现简单,没 有中断冲突等问题,但如果在控制周期快、遥测周期慢时,并不能将每个控制周期的数据全 部都通过遥测传送到地面,可能会造成发送的同一帧数据不是在同一个控制周期内打包的 数据,不能保证遥测数据的完整性,会给数据判读带来困难;( 在中断里打包和发送遥测 数据。该方法虽然可以保证数据的实时性和完整性,但由于中断时间过长,可能会对部件通 讯造成影响;如果为避免对通讯造成影响可以在异步通讯过程和遥测数据打包时关闭遥测 中断,但是这种方法需要频繁开关中断,且关闭中断的时间受由通讯过程决定,从而增加了 软件时序分析的复杂性,可能对系统带来安全隐患。

发明内容
本发明的技术解决问题是克服现有技术的不足,提供一种实现遥测数据接收完 整性的方法,解决了快周期变化数据的异步慢遥测中保证遥测数据完整性的问题。本发明的技术解决方案是一种实现遥测数据接收完整性的方法,步骤如下(1)在SRAM中设置两个遥测数据临时缓冲区,临时缓冲区TMl用于存放本次打包 的遥测数据,临时缓冲区TM2用于存储上次打包的遥测数据;(2)在遥测帧中断服务程序中置遥测帧标志TM_INT ;(3)查询遥测帧标志,如果有遥测帧帧标志TM_INT,执行步骤(4),否则执行步骤 (5);(4)将遥测数据打包放至临时缓冲区TMl中,当遥测周期与控制周期的差值小于 50ms时,读取当前路计数nl,然后判断当前路计数nl是否小于遥测数据的长度n,如果前路 计数nl小于遥测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 (nl-1)地址空间,临时缓冲区TM2的遥测数据填充在双端口 RAM的nl η地址空间,如果 当前路计数nl大于遥测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM 的0 η地址空间,然后用临时缓冲区TMl中的遥测数据更新临时缓冲区ΤΜ2中的遥测数 据,清除遥测帧标志;当遥测周期与控制周期的差值大于50ms时,则读当前路计数nl,然后判断当前路 计数nl是否小于遥测数据的长度n,如果当前路计数nl小于遥测数据的长度n,则将临时 缓冲区TM2的遥测数据填充在双端口 RAM的nl η地址空间,如果当前路计数nl大于遥 测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 η地址空间,然后用临时缓冲区TMl中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;(5)将遥测数据打包放至临时缓冲区TMl中,读取当前路计数π2,将临时缓冲区 TMl的遥测数据填充在双端口 RAM的0 (π2-1)地址空间,清除遥测帧标志;(6)接收下一遥测帧数据,重复步骤C3)- 直至所有遥测数据接收完毕。本发明与现有技术相比的有益效果本发明在遥测中断服务程序中设立遥测帧标 志位TM_INT,这样可以使处理中断时间很短,在遥测中断服务程序中查询标志TM_INT并进 行遥测数据打包,相邻两次打包的遥测数据存放在SRAM中设置的两个临时缓冲区中,然后 根据遥测当前路计数ΤΜ_Ρ0ΙΝΤ,两个临时缓冲区临时存储的打包遥测数据向双端口 RAM中 填充,从而保证了数据的完整性,由于中断处理时间非常短,能够减少中断冲突问题和避免 对部件异步通讯造成影响;同时,相对关中断保护方式而言,该方法避免了频繁开关中断的 操作,从而降低了系统和软件时序的复杂性,解决了遥测数据的完整性问题。


图1是本发明的实现原理图;图2是本发明一种实施例的实现流程图。
具体实施例方式为了在快周期变化数据的异步慢遥测中实现遥测数据的完整性,本发明采用FPGA 提供遥测当前路计数的信息,利用双缓冲的处理逻辑实现遥测数据完整地传送。本发明的 设计原理是在遥测中断服务程序中设立遥测帧标志位TM_INT,这样可以使处理中断时间 很短,在遥测中断服务程序中查询标志TM_INT并进行遥测数据打包,相邻两次打包的遥测 数据存放在SRAM中设置的两个临时缓冲区中,然后根据遥测当前路计数ΤΜ_Ρ0ΙΝΤ,两个临 时缓冲区临时存储的打包遥测数据向双端口 RAM中填充,FPGA在监测到有效的遥测帧同步 信号后,等待N个码元周期后,清零遥测数据发送FIFO,然后开始从双端口 RAM中依次读取 前1字节本轮遥测数据写入遥测数据发送FIFO,遥测数据发送FIFO深度为8个字节,在首 次从双端口 MM读取1个字节数据写入遥测发送FIFO后,在每个有效的GNC遥测路同步信 号到达后,FPGA都将从遥测发送FIFO中顺序读取1个字节数据写入移位寄存器输出给测 控分系统,同时从双端口 RAM依次读取后一字节遥测数据补充入遥测发送FIFO。本发明利 用慢遥测帧周期与快控制周期之间的相位关系,采用一定的逻辑和策略,以实现数据的一 致性和完整性。如图2所示,一种实现遥测数据完整性的方法,步骤如下(1)在SRAM中设置两个遥测数据临时缓冲区,临时缓冲区TMl用于存放本次打包 的遥测数据,临时缓冲区TM2用于存储上次打包的遥测数据;(2)在遥测帧中断服务程序中置遥测帧标志TM_INT ;(3)查询遥测帧标志,如果有遥测帧帧标志TM_INT,执行步骤(4),否则执行步骤 (5);(4)将遥测数据打包放至临时缓冲区TMl中,当遥测周期与控制周期的差值小于 50ms时,读取当前路计数nl,然后判断当前路计数nl是否小于遥测数据的长度n,如果前路 计数nl小于遥测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 (nl-1)地址空间,临时缓冲区TM2的遥测数据填充在双端口 RAM的nl η地址空间,如果 当前路计数nl大于遥测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM 的0 η地址空间,然后用临时缓冲区TMl中的遥测数据更新临时缓冲区ΤΜ2中的遥测数 据,清除遥测帧标志;当遥测周期与控制周期的差值大于50ms时,则读当前路计数nl,然后判断当前路 计数nl是否小于遥测数据的长度n,如果当前路计数nl小于遥测数据的长度n,则将临时 缓冲区TM2的遥测数据填充在双端口 RAM的nl η地址空间,如果当前路计数nl大于遥 测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 η地址空间,然 后用临时缓冲区TMl中的遥测数据更新临时缓冲区ΤΜ2中的遥测数据,清除遥测帧标志;(5)将遥测数据打包放至临时缓冲区TMl中,读取当前路计数π2,将临时缓冲区 TMl的遥测数据填充在双端口 RAM的0 (π2-1)地址空间,清除遥测帧标志;(6)接收下一遥测帧数据,重复步骤C3)- 直至所有遥测数据接收完毕。例如,控制周期为500ms和200ms两种,遥测周期为51 ^is,遥测数据长度为485, 采用本发明的方法进行遥测数据存储。在SRAM中设置两个遥测数据临时缓冲区临时缓冲区TMl用于存放最新打包的遥 测数据,临时缓冲区TM2用于存储上次打包的遥测数据;在遥测帧中断服务程序中置遥测帧标志TM_INT ;当遥测任务开始时,首先查询遥 测帧标志,如果有遥测帧帧标志TM_INT 则将遥测数据打包,放至临时缓冲区TMl中,如果 是500ms控制周期,则读当前路计数nl,然后判断当前路计数nl是否小于485,如果小于 485,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 (nl_l)地址空间,临时缓冲 区TM2的遥测数据填充在双端口 RAM的nl 484地址空间,如果当前路计数nl大于485, 则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 484地址空间,然后用临时缓冲 区TMl中的遥测数据更新临时缓冲区TM2中的遥测数据,清除遥测帧标志;如果是200ms控制周期,则读当前路计数nl,然后判断当前路计数nl是否小于 485,如果小于485,则将临时缓冲区TM2的遥测数据填充在双端口 RAM的nl 484地址空 间,如果当前路计数nl大于485,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 484地址空间,然后用临时缓冲区TMl中的遥测数据更新临时缓冲区TM2中的遥测数据,清 除遥测帧标志;为下一遥测帧准备数据。如果无遥测帧标志,则读当前路计数n2,将临时缓冲区TMl的遥测数据填充在双 端口 RAM的0 (π2-1)地址空间,清除遥测帧标志,为下一遥测帧准备数据。本发明未详细描述内容为本领域技术人员公知技术。
权利要求
1. 一种实现遥测数据接收完整性的方法,其特征在于步骤如下(1)在SRAM中设置两个遥测数据临时缓冲区,临时缓冲区TMl用于存放本次打包的遥 测数据,临时缓冲区TM2用于存储上次打包的遥测数据;(2)在遥测帧中断服务程序中置遥测帧标志TM_INT;(3)查询遥测帧标志,如果有遥测帧帧标志TM_INT,执行步骤G),否则执行步骤(5);(4)将遥测数据打包放至临时缓冲区TMl中,当遥测周期与控制周期的差值小于50ms 时,读取当前路计数nl,然后判断当前路计数nl是否小于遥测数据的长度n,如果前路计数 nl小于遥测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 (nl_l) 地址空间,临时缓冲区TM2的遥测数据填充在双端口 RAM的nl η地址空间,如果当前路 计数nl大于遥测数据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 η地址空间,然后用临时缓冲区TMl中的遥测数据更新临时缓冲区ΤΜ2中的遥测数据,清除 遥测帧标志;当遥测周期与控制周期的差值大于50ms时,则读当前路计数nl,然后判断当前路计数 nl是否小于遥测数据的长度n,如果当前路计数nl小于遥测数据的长度n,则将临时缓冲 区TM2的遥测数据填充在双端口 RAM的nl η地址空间,如果当前路计数nl大于遥测数 据的长度n,则将临时缓冲区TMl的遥测数据填充在双端口 RAM的0 η地址空间,然后用 临时缓冲区TMl中的遥测数据更新临时缓冲区ΤΜ2中的遥测数据,清除遥测帧标志;(5)将遥测数据打包放至临时缓冲区TMl中,读取当前路计数π2,将临时缓冲区TMl的 遥测数据填充在双端口 RAM的0 (π2-1)地址空间,清除遥测帧标志;(6)接收下一遥测帧数据,重复步骤C3)- 直至所有遥测数据接收完毕。
全文摘要
本发明公开了一种实现遥测数据接收完整性的方法,在遥测中断服务程序中设立遥测帧标志位TM_INT,这样可以使处理中断时间很短,在遥测中断服务程序中查询标志TM_INT并进行遥测数据打包,相邻两次打包的遥测数据存放在SRAM中设置的两个临时缓冲区中,然后根据遥测当前路计数TM_POINT,两个临时缓冲区临时存储的打包遥测数据向双端口RAM中填充,从而保证了数据的完整性,由于中断处理时间非常短,能够减少中断冲突问题和避免对部件异步通讯造成影响;同时,相对关中断保护方式而言,该方法避免了频繁开关中断的操作,从而降低了系统和软件时序的复杂性,解决了遥测数据的完整性问题。
文档编号H04L12/56GK102075291SQ201010611669
公开日2011年5月25日 申请日期2010年12月17日 优先权日2010年12月17日
发明者刘波, 勾英杰, 尚葳蕤, 张威泰, 张锦江, 林宇, 王晶, 蔡彪, 谢琼, 赵性颂 申请人:北京控制工程研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1