一种星务信息流仿真系统及其方法与流程

文档序号:17183139发布日期:2019-03-22 21:05阅读:385来源:国知局
本发明涉及一种星务信息流仿真系统及其方法,属于航天星务管理领域。
背景技术
::卫星控制系统的系统试验是考核系统下各单机和部件性能指标和功能情况的一项试验。对于卫星研制过程而言,卫星的系统试验尤为重要,该试验的测试结果和系统的工作情况将直接影响到整星试验是否能够顺利进行。在控制系统的系统试验中要对联入系统中的各个单机产品的功能和性能进行详细考核,其中控制系统的外部接口测试至关重要。控制系统与外系统的数据流匹配性和时序的正确性,直接关系到整星在轨的安全问题。我国自主研发的新一代小卫星,其各系统间的时序关系越发的复杂和多样。此卫星首次要求使用整星高精度时间系统,该卫星以gps时间作为整星的时间标准。对于卫星两个最重要的系统控制和载荷,更是使用了gps秒脉冲和gps时间进行同步,来保证卫星控制系统的测量数据与载荷的定标数据能够高准确度的进行匹配。此时间系统是一个需要卫星多个系统之间相互配合的复杂过程。除时间系统以外与控制系统有数据交互的还有星务主机,控制系统通过can总线将遥测数据发送到星务主机,同时还接收星务主机的上行注入数据和遥控指令。由于之前卫星外部接口的硬件形式和对时间系统要求与新一代小卫星完全不同,为此需要在该卫星控制系统的系统试验开展之前,开发出一套全新的星务和gps星上信息流仿真系统,来模拟星务主机对控制计算机的上行指令和下行的遥测,以及gps下位机生成的gps秒脉冲和gps时间。并且需要在控制系统模拟飞行的过程中正确引入高精度gps校时。技术实现要素:为解决上述问题,本发明的目的在于提供一种星务信息流仿真系统及其方法,包括遥测模块、注入模块、遥控模块以及gps模块,遥测模块用于连接星务主机与控制分系统,并执行二者之间的遥测信息的交互处理;注入模块用于建立星务主机与控制系统之间的通信连接,并执行注入信息的交互;遥控模块用于模拟星务主机向控制分系统发送直接遥控指令;gps模块用于生成gps秒脉冲信号以及gps时间。本发明解决其问题所采用的技术方案一方面是:一种星务信息流仿真系统,包括遥测模块、注入模块、遥控模块以及gps模块,其特征在于:所述遥测模块用于模拟连接星务主机与控制分系统,并执行二者之间的遥测信息的交互处理;所述注入模块用于模拟建立星务主机与控制系统之间的通信连接,并执行注入信息的交互;所述遥控模块用于模拟星务主机向控制分系统发送直接遥控指令;所述gps模块用于生成gps秒脉冲信号以及gps时间;服务器,用于存储仿真测试数据。进一步的,所述遥测模块包括:发送模块,用于将接收到的遥测命令和gps定位数据并发送给控制分系统,并可进行遥测轮询,其中,所述发送模块还包括can总线控制器,用于按照can协议执行通信;接收模块,用于接收控制分系统发送的遥测命令;组包模块,用于将接收到的遥测命令进行遥测组包并发送到以太网。进一步的,所述注入模块包括:生成模块,用于生成注入数据;组包模块,用于将生成的注入数据进行组包;发送模块,用于发送注入信息;应答模块,用于对aocc端口发送的信号进行应答接收。进一步的,所述遥控模块包括任务创建模块,用于创建遥控任务。进一步的,所述任务创建模块还包括:遥控序列模块,用于建立遥控序列;指令模块,用于根据遥控序列生成指令代码并发送到对应端口。进一步的,所述gps模块包括:脉冲模块,用于向控制分系统发送gps秒脉冲;时间信息模块,用于向控制分系统发送gps高精度时间信息;轨道信息模块,用于向控制分系统发送gps轨道数据。本发明解决其问题所采用的技术方案另一方面是:一种星务信息流仿真方法,其特征在于,包括以下步骤:各变量初始化以及硬件板卡初始化;调用遥测模块,判断是否与控制分系统建立aocc通信;若是则执行快帧轮询步骤,否则调用altu遥测处理机制;进入遥测处理机制,判断遥测数据是否正确,若是则发送数据到服务器,否则累计错误次数并通过外置显示器显示;进入快帧轮询步骤,分别依次调用快帧处理机制、陀螺广播数据处理机制以及星敏广播数据处理机制,并调用计数器进行计数;分别依次判断计数器的值是否为8秒、32秒以及128秒的整数倍;将结果为是的判断步骤分别对应执行gps定位数据发送、慢帧处理机制以及重要数据处理机制,若结果为否则跳过对应的执行步骤;判断遥测数据是否正确,若是则发送数据到服务器,否则累计错误次数并通过外置显示器显示,以及返回调用快帧处理机制,重复执行上述步骤。进一步的,还包括遥测轮询步骤,包括:建立遥测轮询命令并发送至控制分系统的aocc端口;延时2ms后接收单帧数据;接收单帧数据是否超时,若是则读取错误信息并将can总线控制器初始化;累计超时次数,即通信失败次数,完成遥测轮询步骤;若接收单帧数据没有超时,则累计未超时次数,并判断未超时次数是否等于15,若是则执行数据转换,否则返回执行延时2ms后接收单帧数据步骤;对获得的数据进行累加和并判断是否正确,若是则将累加器清零并将获得的数据设为等待发送状态,否则重启can总线控制器并累计计算错误次数,随后累加器清零。进一步的,还包括遥控模块工作流程:初始化变量以及遥控模块中的板卡;加载遥控指令内容并判断是否加载成功,若是则进行触发操作,否则报告错误信息并结束工作;进行中断方式触发,并判断指令号是否正确,若是则发送指令并对下个指令进行遍历判断,重复执行本步骤,直到所有指令遍历完毕,否则报告错误内容,并结束工作。本发明的有益效果是:一套全新的星务和gps星上信息流仿真系统,来模拟星务主机对控制计算机的上行指令和下行的遥测,以及gps下位机生成的gps秒脉冲和gps时间,并且需要在控制系统模拟飞行的过程中正确引入高精度gps校时,满足了航天领域对模拟飞行中对信息通信的准确性和高精度等要求。附图说明图1所示为根据本发明较佳实施例的系统模块框;图2所示为根据本发明的方法的流程图;图3所示为根据本发明的方法的实施例一;图4所示为根据本发明的方法的实施例二;图5所示为根据本发明的方法的实施例三。具体实施方式以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,如无特殊说明,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本
技术领域
:的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本文所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。参照1所示为根据本发明较佳实施例的系统模块框,包括遥测模块、注入模块、遥控模块以及gps模块,所述遥测模块用于模拟连接星务主机与控制分系统,并执行二者之间的遥测信息的交互处理;所述注入模块用于模拟建立星务主机与控制系统之间的通信连接,并执行注入信息的交互;所述遥控模块用于模拟星务主机向控制分系统发送直接遥控指令;所述gps模块用于生成gps秒脉冲信号以及gps时间;服务器,用于存储仿真测试数据。遥测模块是主机与控制分系统进行遥测信息交互的处理模块。控制分系统的aocc或altu发送遥测命令后接收aocc返回的遥测信息,判断信息格式正确后进行分包处理发送给地面测试的服务器;注入模块是仿真系统模拟星务主机与控制分系统进行注入信息交互的处理模块。其可以根据测试人员的需要生成不同种类的注入代码,并向控制分系统的aocc进行发送;遥控模块是仿真系统模拟星务主机向控制分系统发送直接遥控指令的模块。其根据测试热源的需要向aocc发送遥控指令并且该模块首次模拟了gps接收机向控制分系统发送gps秒脉冲和高精度时间的功能。其通过向控制系统发送gps秒脉冲和gps时间,来达到模拟整星下高精度时间系统的功能。根据上述模块的功能,本仿真系统还具备模拟星务主机自动与控制分系统的aocc进行遥测轮询的功能,测试人员可以根据具体的实际需要对仿真系统进行操作,实现数据指令、程序注入、轨道参数注入等上行数据的生成和注入功能;模拟星务主机与应急控制器altu进行信息交互的能力;在模拟gps信息流方面,仿真系统应能够自动生成gps秒脉冲信号,测试人员可以择机发送gps高精度时间信息和gps轨道信息。并在生成秒脉冲信号时,仿真系统应具备改变秒脉冲相位差的功能,以实现操作人员对gps高精度时间相位的控制;具备对总线的监听和容错的能力,如果发生总线堵塞仿真系统可进行自动恢复;具备自动化测试的功能,能够将事先生成的上行数据块根据人为设定的时间进行依次发送,记录测试结果。并且能够具备保存操作信息的能力,将每一步操作进行存档记录;具备防止误操作的功能,在人机交互方面能够根据实际情况将某种条件下容易引起误操作的控键进行锁定,防止操作问题引起卫星异常;具备在卫星断电阶段,测试人员非常规操作时进行提示和指令的补发,最大限度的保证测试的安全性。仿真系统的外部接口有以太网,can总线,gps秒脉冲通道和i/o口。内部的can总线信息流主要由内部调度机制来控制相应的工作时序,在避免硬件资源和软件变量等冲突发生的同时兼顾系统实时性的要求。在模拟星务系统信息流方面仿真系统建立了严格的遥测轮询机制,自动轮询各种遥测命令并将获得的遥测量的格式进行校验,判断无误后进行打包处理发送到网络。如有问题则记录通信失败的次数和内容。在模拟gps功能方面仿真系统使用fpga对基准脉冲进行处理生成gpsa和gpsb脉冲,并以基准脉冲触发软件中断。仿真系统的gps高精度时间任务通过回调函数控制fpga对gpsa和gpsb进行调相处理,以达到任意更改gps秒脉冲相位设计目标。作为卫星控制系统地面测试系统的一个重要组成部分,星务和gps星上信息流仿真系统应当在关键环节中有容错机制和保护机制。这些机制的建立对测试的安全性和可靠性以及避免人为操作所带来的低层次错误是十分重要的。将注入任务和遥控任务中发送到控制系统的数据内容和相应时间进行记录保存就是一项机制,这对于出现问题的事后分析起着非常重要的作用。参照图2所示为根据本发明的方法的流程图,具体为遥测模块的流程设计,在主程序对板卡和变量初始化之后便开始进入遥测功能模块。该模块首先对仿真系统的遥测轮询对象进行选择,如果确定是与控制计算机aocc进行通信则首先开始进行快帧轮询,之后进行陀螺广播数据和星敏广播数据的轮询。如果计数器的值为8的倍数则发送gps轨道数据,此轨道数据的值为动力学仿真系统提供的定位数据,星务仿真系统将获得的定位数据按照协议的规定进行拆包和组包,并进行发送给控制计算机aocc。如果计数器的值为32的倍数则进行慢帧轮询,其工作流程与快帧轮询的机制是一样的。如果计数器的值为128的倍数则进行重要数据的轮询工作。仿真系统对重要数据进行保存,在控制机算计aocc复位或切机时为其提供之前保存的重要数据内容。遥测功能模块是由主任务启动的,是一个周期为1s的定时器函数:voidcmainframe::ontimer(uintnidevent)[11]。由于仿真系统的定时器一共有三个,故此主程序开启遥测功能模块的代码实现为:settimer(1,1000,null)。遥测功能模块不单包含对遥测的处理机制,还有累计星务仿真系统工作时间的功能,这样对于控制系统测试的时间就有了一个大概的统计,便于之后统计系统加电时间。参照图3所示为根据本发明的方法的实施例一,具体为遥测处理机制的流程图,以奇帧遥测处理为例,根据以上数据类型建立奇帧轮询命令的报文格式后向控制计算机aocc进行发送,延时2ms后进行单帧数据的接收。如果延时2ms后没有从can总线接收寄存器中读取到数据则仿真系统认为通信超时。如果仿真连续读取15次(快帧的长度为15帧)都没有超时则将这15帧的数据进行格式的转换,以获得所有15帧中can信息帧中的data[8]。在此之后仿真系统要对获得数据的累加和进行判断,如果累加和正确则对帧数累加计数器清零,并将数据区的内存拷贝到数据发送区等待最后的发送。如果接收超时则仿真系统首先读取错误信息,之后初始化can总线控制器,并累计通信失败次数。如果接收到的这15帧的数据累加和错误则首先重启can总线控制器,其次累计通信失败次数,最后对帧数累加计数器进行清零的操作。注入功能模块的详细设计:以cdialog类为父类建立corbparazrshow[13]的子类,以vci_can_obj为结构体建立以下11种注入数据的结构对象://轨道参数注入数据结构vci_can_objcanobjorbitzhurupara[19];//固定地址注入数据结构vci_can_objcanfixaddpara[10];//可变地址注入数据结构vci_can_objcanvaraddpara[3];//内存下卸注入指令结构vci_can_objcanmemdlform[3];//数据间接注入指令结构vci_can_objcandircmdzrform[1];//程序注入代码vci_can_objcanprogramcode[37];//程序载入代码vci_can_objcanprogramcodefile[37];//gps数据指令结构vci_can_objcangps1[6];vci_can_objcangps2[1];//整星对时数据指令结构vci_can_objcantime[1];//altu数据指令结构注入vci_can_objcandircmdzraltu[1];corbparazrshow的功能是对这11个数据结构所在的类进行调用,并将这些类生成的注入内容进行组包和发送,并对数据进行存档等工作。下面对该注入数据类的实现方式进行具体说明,重点介绍轨道参数注入,固定地址注入和gps定位数据。轨道参数注入由两个类完成轨道参数注入产生数据内容的功能,一个是以cformview为父类建立的子类,代码为classczhuruformview2:publiccformview,它的作用是建立一个初始化的表格,并且以用鼠标点击的操作作为消息调用另一个类:corbparasetdialog,代码为classcorbparasetdialog:publiccdialog,这个类的主要工作是将对话框中填入的数据回传回czhuruformview2类,以便它将测试人员输入的数据内容最终回传回corbparazrshow进行注入数据的发送和处理工作。固定地址注入为此在固定地址注入的实现上在它的类(cfixedaddparazrview)中的初始化部分(oninitialupdate)建立一个10行5列的表。用鼠标触发消息,对每个需要生成的参数进行映射。与轨道参数注入一样,固定地址注入也有第二个类用来显示对话框。发送gps定位数据的功能是建立在一个cgpsformview类上的。在这个类中建立了仿真系统的第三个定时器函数,此定时器的控制周期为1s。这个定时器函数的主要功能是每个周期生成gps定位数据,并在界面上进行显示。使用的函数名称为ongpspositionhandle和sendgpsvariousview。参照图4所示为根据本发明的方法的实施例二,具体为遥控模块工作流程图,模块是建立在一个类的基础上对操作响应。不同的是它进行命令相应后直接通过板卡向控制机算计aocc进行遥控令的发送。该模块以ccombobox建立一个m_cdircmdcomb的对象,然后首先对m_cdircmdcom类产生的列表进行清空,再对m_cdircmdcomb的对话框进行指令内容的填写。由于遥控功能的指令内容较少,因此本功能模块对指令内容的加载工作事先填写在了resources中的stringtable中,为每个指令添加一个id号。在模块的初始化部分(oninitialupdate)使用m_cdircmdcomb.addstring函数,将对话框进行遥控令的id号进行加载。在模块初始化的最后对指令内容进行填充。模块初始化的完成表明遥控指令的内容与指令所在ccombobox性对话框的行号已经连接完毕,一但点击指令的内容其对应的行号将可以被调用。在对其硬件操作过程中,使用m_cdircmdcomb.getcursel()函数确定操作人员点击遥控指令内容的行号,使用do_writeline函数点击的内容通过i/o板将所选用的遥控指令对应的集电极接通,使之变为低电平。在第一条do_writeline指令。发出去后的160ms,使用第二条do_writeline指令将对应指令的集电极断开,使其恢复成高电平,完成最后的选中遥控的发送工作。在模块的最后,对操作人员操作的内容和发送内容的时间进行记录存档。参照图5所示为根据本发明的方法的实施例三,是控制系统试验地面设备组成框图,控制系统系统级试验的设备由两个半物理仿真系统构成:卫星动力学仿真系统与星务和gps信息流仿真系统,各种模拟器、服务器和若干遥测显示计算机。以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1