卫星仿真系统及卫星仿真方法技术方案

技术编号:38493020 阅读:13 留言:0更新日期:2023-08-15 17:05
本发明专利技术涉及卫星仿真系统及卫星仿真方法,该卫星仿真系统包括卫星星务模型模块、虚拟卫星外设接口模块、调度接口模块、虚拟卫星单机模型模块和空间环境模型模块,卫星星务模型模块的构建方法包括:去除卫星星务软件中的操作系统和虚拟化映射卫星星务软件中的硬件读写接口;虚拟卫星外设接口模块包括用于交换卫星星务模型模块和虚拟卫星单机模型模块之间数据的虚拟卫星外设接口数据结构体;调度接口模块用于获取并转发卫星星务模型模块和虚拟卫星单机模型模块之间的数据;空间环境模型模块用于模拟卫星所在的空间环境,虚拟卫星单机模型模块用于模拟卫星单机和/或分系统在空间环境下的功能和内部逻辑。本发明专利技术可以提升卫星仿真系统的仿真速率。真系统的仿真速率。真系统的仿真速率。

【技术实现步骤摘要】
卫星仿真系统及卫星仿真方法


[0001]本专利技术主要涉及卫星仿真
,具体地涉及一种卫星仿真系统及卫星仿真方法。

技术介绍

[0002]卫星的数字化仿真技术正在不断发展,可以使用卫星仿真系统来模拟卫星任务的准备阶段和执行阶段等。随着卫星的任务种类越来越复杂,卫星进入任务前的准备时间以及执行任务流程的时间可能越来越长,通常需要数小时甚至更长时间,若卫星仿真系统采用1倍速的仿真速率来模拟卫星的工作情况,会导致卫星仿真系统的使用者需要等待较长时间才能完成整个卫星仿真任务,严重影响卫星研究人员的工作效率,因此在实际使用卫星仿真系统的过程中,希望卫星仿真系统能有较快的仿真速率。
[0003]现有的卫星仿真系统主要基于虚拟CPU的方式实现,在虚拟CPU内加载卫星星务软件以模拟真实的卫星状态。但是基于虚拟CPU的卫星仿真系统,其仿真速率基本为1至2倍速,卫星仿真系统的使用者在完整的卫星仿真任务中仍然要花费大量时间,存在卫星仿真系统的仿真速率过于低下,影响卫星研究人员工作效率的问题。

技术实现思路

[0004]本申请所要解决的技术问题是提供一种卫星仿真系统及卫星仿真方法,可以提升卫星仿真系统的仿真速率。
[0005]本申请为解决上述技术问题而采用的技术方案是一种卫星仿真系统,包括卫星星务模型模块、虚拟卫星外设接口模块、调度接口模块、虚拟卫星单机模型模块以及空间环境模型模块,其中,卫星星务模型模块的构建方法包括:去除卫星星务软件中的操作系统以及虚拟化映射卫星星务软件中的硬件读写接口;虚拟卫星外设接口模块包括虚拟卫星外设接口数据结构体,虚拟卫星外设接口数据结构体用于交换卫星星务模型模块和虚拟卫星单机模型模块之间的数据;调度接口模块用于获取并转发卫星星务模型模块和虚拟卫星单机模型模块之间的数据;空间环境模型模块用于模拟卫星所在的空间环境,虚拟卫星单机模型模块用于模拟卫星单机和/或分系统在空间环境下的功能和内部逻辑。
[0006]在本申请的一实施例中,卫星星务模型模块包括虚拟内部寄存器单元和虚拟星务时钟单元,卫星星务模型模块的构建方法还包括:将卫星星务软件的内部寄存器地址设置为数组,并生成虚拟内部寄存器单元;将卫星星务软件中每个分系统的线程设置为函数,每个分系统的初始化函数仅执行一次;将卫星星务软件中读写数据的方式设置为从虚拟卫星外设接口模块读写;将卫星星务软件中通过中断触发的数据读写操作重新设置为当数据准备完成时直接触发数据读写操作;构建用于维护星上时的虚拟星务时钟,并生成虚拟星务时钟单元;将卫星星务软件的存储模式设置为小端模式;以及将修改后的卫星星务软件编译为动态链接库以生成卫星星务模型模块。
[0007]在本申请的一实施例中,虚拟卫星外设接口数据结构体包括是否已更新标志、数
据指针地址以及数据有效长度字段,根据虚拟卫星外设接口数据结构体交换卫星星务模型模块和虚拟卫星单机模型模块之间的数据的过程包括:当卫星星务模型模块向虚拟卫星单机模型模块发送命令时,虚拟卫星外设接口模块执行以下步骤:根据命令的实际长度为虚拟卫星外设接口数据结构体中的数据指针申请相应大小的内存,并将命令的实际长度赋值给数据有效长度字段;将命令的内容拷贝至数据指针指向的内存中;将是否已更新标志设置为已更新。
[0008]在本申请的一实施例中,根据虚拟卫星外设接口数据结构体交换卫星星务模型模块和虚拟卫星单机模型模块之间的数据的过程还包括:当卫星星务模型模块从虚拟卫星单机模型模块接收数据时,虚拟卫星外设接口模块执行以下步骤:判断是否有虚拟卫星单机数据更新;若有虚拟卫星单机数据更新,则将更新后的虚拟卫星单机数据拷贝至卫星星务模型模块中对应的虚拟卫星单机数据存储地址;若没有虚拟卫星单机数据更新,则跳过拷贝虚拟卫星单机数据的操作。
[0009]在本申请的一实施例中,卫星星务模型模块和虚拟卫星单机模型模块之间交换的数据包括:单机遥测请求命令、单机遥测数据、上注的遥控指令码、卫星遥测数据帧以及单机遥控命令中的一种或多种。
[0010]在本申请的一实施例中,卫星星务模型模块包括至少一个运行周期,卫星星务模型模块顺序执行当前运行周期中的每个分系统功能。
[0011]在本申请的一实施例中,调度接口模块包括单机遥测数据结构体,单机遥测数据结构体包括是否已更新标志、数据指针地址以及数据有效长度字段,调度接口模块获取并转发卫星星务模型模块和虚拟卫星单机模型模块之间的数据的过程包括:当调度接口模块收到虚拟卫星单机模型模块传输的单机遥测包后,调度接口模块执行以下步骤:根据单机遥测包的长度申请内存,将数据指针地址指向内存的首地址;拷贝单机遥测包的数据至数据指针地址指向的内存中;更新数据有效长度字段为单机遥测包的长度;将是否已更新标志设置为已更新。
[0012]在本申请的一实施例中,卫星星务模型模块从单机遥测数据结构体中获取数据的步骤包括:判断是否已更新标志为已更新还是未更新,若为已更新,则从数据指针地址中取走单机遥测包的数据,若为未更新,则不作处理。
[0013]在本申请的一实施例中,虚拟卫星外设接口模块包括通用异步收发传输器单元、控制器局域网络单元、同步串口单元以及卫星轨道指令单元中的一个或多个。
[0014]在本申请的一实施例中,虚拟卫星单机模型模块包括全球导航卫星系统单元、光纤陀螺单元、星敏感器单元、反作用轮单元中的一个或多个。
[0015]在本申请的一实施例中,空间环境模型模块包括动力学模型单元、能源模型单元以及热控模型单元中的一个或多个。
[0016]在本申请的一实施例中,虚拟卫星单机模型模块和空间环境模型模块基于编程语言C++中类和对象的概念构建。
[0017]本申请为解决上述技术问题还提出一种卫星仿真方法,使用如上的卫星仿真系统,卫星仿真方法用于在卫星星务模型模块、调度接口模块和虚拟卫星单机模型模块之间交换数据,调度接口模块执行以下步骤:判断是否有来自卫星星务模型模块的单机遥测请求命令,若有,则转发单机遥测请求命令至虚拟卫星单机模型模块;获取虚拟卫星单机模型
模块反馈的单机遥测数据并转发至卫星星务模型模块;判断是否有上注的遥控指令,若有,则获取相应上注的遥控指令码并转发至卫星星务模型模块;根据上注的遥控指令码调度卫星星务模型模块并获取卫星星务模型模块反馈的调度结果;从卫星星务模型模块获取卫星遥测数据帧并转发至地面解析软件的测控前端;从卫星星务模型模块获取单机遥控命令并转发至虚拟卫星单机模型模块;从卫星星务模型模块获取当前星务周期的单机遥测请求命令并转发至虚拟卫星单机模型模块;判断是否有退出仿真指令,若有,则结束卫星仿真方法;卫星星务模型模块执行以下步骤:从调度接口模块获取上注的遥控指令码并更新星上时以及更新星务周期;从调度接口模块获取最新的单机遥测数据;输出卫星遥测数据帧至调度接口模块;输出单机遥控命令至调度接口模块;输出当前星务周期的单机遥测请求命令并反馈调度结果至调度接口模块。
[0018]本申请的技术方案在构建卫星星务模型模块的过程中,通过去除卫星星务软件中的操作本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种卫星仿真系统,其特征在于,包括卫星星务模型模块、虚拟卫星外设接口模块、调度接口模块、虚拟卫星单机模型模块以及空间环境模型模块,其中,所述卫星星务模型模块的构建方法包括:去除卫星星务软件中的操作系统以及虚拟化映射所述卫星星务软件中的硬件读写接口;所述虚拟卫星外设接口模块包括虚拟卫星外设接口数据结构体,所述虚拟卫星外设接口数据结构体用于交换所述卫星星务模型模块和所述虚拟卫星单机模型模块之间的数据;所述调度接口模块用于获取并转发所述卫星星务模型模块和所述虚拟卫星单机模型模块之间的数据;所述空间环境模型模块用于模拟卫星所在的空间环境,所述虚拟卫星单机模型模块用于模拟卫星单机和/或分系统在所述空间环境下的功能和内部逻辑。2.如权利要求1所述的卫星仿真系统,其特征在于,所述卫星星务模型模块包括虚拟内部寄存器单元和虚拟星务时钟单元,所述卫星星务模型模块的构建方法还包括:将所述卫星星务软件的内部寄存器地址设置为数组,并生成所述虚拟内部寄存器单元;将所述卫星星务软件中每个分系统的线程设置为函数,所述每个分系统的初始化函数仅执行一次;将所述卫星星务软件中读写数据的方式设置为从所述虚拟卫星外设接口模块读写;将所述卫星星务软件中通过中断触发的数据读写操作重新设置为当数据准备完成时直接触发数据读写操作;构建用于维护星上时的虚拟星务时钟,并生成所述虚拟星务时钟单元;将所述卫星星务软件的存储模式设置为小端模式;以及将修改后的所述卫星星务软件编译为动态链接库以生成所述卫星星务模型模块。3.如权利要求1所述的卫星仿真系统,其特征在于,所述虚拟卫星外设接口数据结构体包括是否已更新标志、数据指针地址以及数据有效长度字段,根据所述虚拟卫星外设接口数据结构体交换所述卫星星务模型模块和所述虚拟卫星单机模型模块之间的数据的过程包括:当所述卫星星务模型模块向所述虚拟卫星单机模型模块发送命令时,所述虚拟卫星外设接口模块执行以下步骤:根据所述命令的实际长度为所述虚拟卫星外设接口数据结构体中的数据指针申请相应大小的内存,并将所述命令的实际长度赋值给所述数据有效长度字段;将所述命令的内容拷贝至所述数据指针指向的所述内存中;将所述是否已更新标志设置为已更新。4.如权利要求3所述的卫星仿真系统,其特征在于,根据所述虚拟卫星外设接口数据结构体交换所述卫星星务模型模块和所述虚拟卫星单机模型模块之间的数据的过程还包括:当所述卫星星务模型模块从所述虚拟卫星单机模型模块接收数据时,所述虚拟卫星外设接口模块执行以下步骤:判断是否有虚拟卫星单机数据更新;若有虚拟卫星单机数据更新,则将更新后的虚拟卫星单机数据拷贝至所述卫星星务模型模块中对应的虚拟卫星单机数据存储地址;若没有虚拟卫星单机数据更新,则跳过拷贝虚拟卫星单机数据的操作。
5.如权利要求1所述的卫星仿真系统,其特征在于,所述卫星星务模型模块和所述虚拟卫星单机模型模块之间交换的数据包括:单机遥测请求命令、单机遥测数据、上注的遥控指令码、卫星遥测数据帧以及单机遥控命令中的一种或多种。6.如权利要求1所述的卫星仿真系统,其特征在于,所述卫星星务模型模块包括至少一个运行周期,所述卫星星务模型模块顺序执行当前...

【专利技术属性】
技术研发人员:刘虎郑倩云虞业泺李立俞天佑郑柯李畅然李梦蕾
申请(专利权)人:上海微小卫星工程中心
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1