一种飞行参数自适应的嵌入式软件内存数据动态加载方法技术

技术编号:21184082 阅读:59 留言:0更新日期:2019-05-22 14:54
本发明专利技术公开了一种飞行参数自适应的嵌入式软件内存数据动态加载方法,首先在飞行器嵌入式单机的FLASH存储器上存储基准程序与多个目标对象程序,飞行器嵌入式单机上电后,将基准程序加载到RAM存储器中运行;在实际飞行过程中,基准程序接收并解析注入的飞行参数;基准程序根据飞行参数与目标对象程序的匹配关系,为注入的飞行参数选择匹配的目标对象程序;最后将匹配的目标对象程序拷贝到内部存储器中,对匹配的目标对象程序进行加载运行。应用本发明专利技术方法,在飞行过程中能够进行软件功能的切换,并实现相应内存程序的动态切换与加载运行,利用较少的硬件设备实现较多的软件功能,提高了软件的可靠性和安全性。

A Dynamic Loading Method for Flight Parameters Adaptive Embedded Software Memory Data

The invention discloses a dynamic loading method of embedded software memory data with adaptive flight parameters. Firstly, the benchmark program and multiple object programs are stored in FLASH memory of the embedded single aircraft of the aircraft. After the embedded single aircraft of the aircraft is powered on, the benchmark program is loaded into RAM memory to run. In the actual flight process, the benchmark program receives and parses the injected flight. The benchmark program chooses the matching object program for the injected flight parameters according to the matching relationship between the flight parameters and the object program. Finally, the matching object program is copied into the internal memory to load and run the matching object program. By applying the method of the invention, the software function can be switched during flight, and the dynamic switching and loading operation of the corresponding memory program can be realized. With fewer hardware devices, more software functions can be realized, and the reliability and safety of the software can be improved.

【技术实现步骤摘要】
一种飞行参数自适应的嵌入式软件内存数据动态加载方法
本专利技术涉及一种飞行参数自适应的嵌入式软件内存数据动态加载方法,属于航空航天嵌入式软件信息处理领域。
技术介绍
航天飞行器、卫星以及火箭在飞行过程中需要通过软件实现信息采集、制导控制和姿态控制等飞行控制指令的计算以及遥测数据的发送功能,此类软件多为嵌入式软件,运行在嵌入式芯片上,可扩展性较差,且在飞行过程中无法手动进行程序的启动与关闭。因为运行环境及使用场景的特点,此类软件对软件的可靠性和安全性要求极高,要求软件运行过程中保持功能和性能的稳定性。同时,飞行器上的载荷成本较为昂贵,空间较为有限,如何利用较少的硬件设备实现较多的软件功能,并且提供软件运行过程中的容错手段,保证软件运行的可靠性,成为飞行器软件系统设计中的重要问题。
技术实现思路
本专利技术的技术解决问题是:克服现有技术的不足,提供一种飞行参数自适应的嵌入式软件内存数据动态加载方法,飞行过程中能够进行软件功能的切换,并实现相应内存程序的动态切换与加载运行,利用较少的硬件设备实现较多的软件功能,提高了软件的可靠性和安全性。本专利技术的技术解决方案是:一种飞行参数自适应的嵌入式软件内存数据动态加载方法,包括如下步骤:(1)飞行器嵌入式单机的FLASH存储器上存储有基准程序与多个目标对象程序,所述目标对象程序负责实现特定的功能逻辑,基准程序实现飞行参数的接收、处理以及目标对象程序的动态加载与运行,且基准程序中事先定义了飞行参数与目标对象程序的匹配关系;(2)飞行器嵌入式单机上电后,将基准程序加载到RAM存储器中运行;(3)在实际飞行过程中,基准程序接收并解析注入的飞行参数;(4)基准程序根据飞行参数与目标对象程序的匹配关系,为注入的飞行参数选择匹配的目标对象程序,判断匹配的目标对象程序是否完整和正确,如果完整且正确,则进入步骤(5),否则继续运行当前基准程序,并将判断结果反馈给地面配套软件;(5)将匹配的目标对象程序拷贝到内部存储器中,对匹配的目标对象程序进行加载运行。所述步骤(2)中,基准程序运行的过程如下:(2.1)基准程序进行飞行器嵌入式单机对应硬件接口驱动程序的初始化;(2.2)基准程序进行数据接收和解析功能的初始化;(2.3)基准程序进行与地面配套软件交互功能的初始化;(2.4)基准程序开始运行。所述步骤(3)中,飞行参数的来源有以下两种:1)在实际飞行过程中,飞行器根据传感器采集的信息解算得到飞行参数,包括飞行高度、飞行速度、攻角和侧滑角;2)在实际飞行过程中,地面配套软件根据飞行器基准程序反馈的遥测结果确定是否需要将基准程序切换为目标对象程序,如果需要,则发送与目标对象程序匹配的飞行参数。所述步骤(4)中,按照如下流程判断匹配的目标对象程序是否完整和正确:(4.1)确定目标对象程序在FLASH存储器中的起始地址及长度;(4.2)对从起始地址到结束地址中的数据进行CRC校验,根据CRC校验结果判断目标对象程序是否完整和正确。所述步骤(4.2)中,根据CRC校验结果判断目标对象程序是否完整和正确的方式如下:将CRC校验结果反馈至地面配套软件,由地面操作人员根据CRC校验结果判断目标对象程序是否完整和正确,如果完整且正确,地面配套软件发送确认指令,否则,地面配套软件发送切换停止指令。所述步骤(4.2)中,根据CRC校验结果判断目标对象程序是否完整和正确的方式如下:将CRC校验结果与FLASH存储器中预先存储的校验结果进行比对,当两者一致时,认为目标对象程序完整且正确。步骤(5)的实现方法如下:(7.1)基准程序从FLASH存储器找到要加载的目标对象程序存储地址,确定加载的目的RAM存储器内存地址;(7.2)基准程序从FLASH存储器的相应存储地址拷贝数据到对应的目的RAM存储器内存地址;(7.3)当数据拷贝完成时,由基准程序调用目标对象程序运行。当数据拷贝完成时,在目标对象程序运行之前,需要对拷贝后的目的RAM存储器中的数据与拷贝前的FLASH存储器对应存储地址的数据进行逐字节比对与校验,当两者一致时,校验通过,由基准程序调用目标对象程序运行;否则校验不通过,由基准程序将错误结果写入指定FLASH存储器的存储地址,退出切换过程。所述步骤(7.3)中,基准程序调用目标对象程序运行的实现方式如下:(9.1)由基准程序关闭硬件外部中断,避免切换过程中程序发生非法跳转;(9.2)对基准程序中的全局变量重置;(9.3)调用目标对象程序的入口函数;(9.4)目标对象程序进行初始化,向地面配套软件发送切换成功标志;(9.5)目标对象程序完成初始化,打开硬件外部中断,执行预定逻辑。所述步骤(9.2)中,所述全局变量包括飞行器计时时间和飞行器软件状态,重置时,将飞行器计时时间置为0,将飞行器软件状态置为初始状态。本专利技术提供了一种飞行器嵌入式软件根据飞行过程中的飞行参数进行内存动态加载的方法,从而实现飞行过程中软件功能的切换,并实现相应内存程序的动态切换与加载运行。主要优点在于:(1)本专利技术可用于实现飞行器上不同功能软件的运行状态切换,即使用一种硬件设备即可在不同飞行参数下实现多种软件功能,有效节约飞行器的设备舱空间和载荷成本,根据飞行参数实现有效功能的运行与对无用功能的有效屏蔽。(2)通过本专利技术提供的内存数据加载方法,在飞行器飞行过程中发生软件部分故障时,通过监测地面软件发送的飞行参数,实现备份软件的可靠切换与自动运行,从而实现飞行过程中的软件热备份与故障冗余设计,提高飞行器软件的可靠性与安全性。附图说明图1为本专利技术流程图;图2为基准程序运行流程图。具体实施方式如图1所示,本专利技术提出了一种飞行参数自适应的嵌入式软件内存数据动态加载方法,包括如下步骤:(1)飞行器嵌入式单机的FLASH存储器上存储有基准程序与多个目标对象程序,所述目标对象程序负责实现特定的功能逻辑,基准程序实现飞行参数的接收、处理以及目标对象程序的动态加载与运行,且基准程序中事先定义了飞行参数与目标对象程序的匹配关系。如飞行参数a对应目标对象程序A,飞行参数b对应目标对象程序B,飞行参数c对应目标对象程序C。(2)飞行器嵌入式单机上电后,将基准程序加载到RAM存储器中运行。基准程序运行的过程如下:(2.1)基准程序进行飞行器嵌入式单机对应硬件接口驱动程序的初始化;(2.2)基准程序进行数据接收和解析功能的初始化;(2.3)基准程序进行与地面配套软件交互功能的初始化;(2.4)基准程序开始运行。(3)在实际飞行过程中,基准程序接收并解析注入的飞行参数,行参数的来源有以下两种:1)在实际飞行过程中,飞行器根据传感器采集的信息(压力、温度等)解算得到飞行参数,包括飞行高度、飞行速度、攻角和侧滑角;2)在实际飞行过程中,地面配套软件根据飞行器基准程序反馈的遥测结果确定是否需要将基准程序切换为目标对象程序(如认为基准程序发生错误,切换的目标对象程序为当前基准程序的备份程序,或者遥测结果满足预定状态,需要进行功能切换,切换的目标对象程序为实现特定功能的预制程序),如果需要,则发送与目标对象程序匹配的飞行参数。(4)基准程序根据飞行参数与目标对象程序的匹配关系,为注入的飞行参数选择匹配的目标对象程序,判断匹配的目标对象程序是否完整和正确,如果完整且正确,则本文档来自技高网...

【技术保护点】
1.一种飞行参数自适应的嵌入式软件内存数据动态加载方法,其特征在于包括如下步骤:(1)飞行器嵌入式单机的FLASH存储器上存储有基准程序与多个目标对象程序,所述目标对象程序负责实现特定的功能逻辑,基准程序实现飞行参数的接收、处理以及目标对象程序的动态加载与运行,且基准程序中事先定义了飞行参数与目标对象程序的匹配关系;(2)飞行器嵌入式单机上电后,将基准程序加载到RAM存储器中运行;(3)在实际飞行过程中,基准程序接收并解析注入的飞行参数;(4)基准程序根据飞行参数与目标对象程序的匹配关系,为注入的飞行参数选择匹配的目标对象程序,判断匹配的目标对象程序是否完整和正确,如果完整且正确,则进入步骤(5),否则继续运行当前基准程序,并将判断结果反馈给地面配套软件;(5)将匹配的目标对象程序拷贝到内部存储器中,对匹配的目标对象程序进行加载运行。

【技术特征摘要】
1.一种飞行参数自适应的嵌入式软件内存数据动态加载方法,其特征在于包括如下步骤:(1)飞行器嵌入式单机的FLASH存储器上存储有基准程序与多个目标对象程序,所述目标对象程序负责实现特定的功能逻辑,基准程序实现飞行参数的接收、处理以及目标对象程序的动态加载与运行,且基准程序中事先定义了飞行参数与目标对象程序的匹配关系;(2)飞行器嵌入式单机上电后,将基准程序加载到RAM存储器中运行;(3)在实际飞行过程中,基准程序接收并解析注入的飞行参数;(4)基准程序根据飞行参数与目标对象程序的匹配关系,为注入的飞行参数选择匹配的目标对象程序,判断匹配的目标对象程序是否完整和正确,如果完整且正确,则进入步骤(5),否则继续运行当前基准程序,并将判断结果反馈给地面配套软件;(5)将匹配的目标对象程序拷贝到内部存储器中,对匹配的目标对象程序进行加载运行。2.根据权利要求1所述的一种飞行参数自适应的嵌入式软件内存数据动态加载方法,其特征在于:所述步骤(2)中,基准程序运行的过程如下:(2.1)基准程序进行飞行器嵌入式单机对应硬件接口驱动程序的初始化;(2.2)基准程序进行数据接收和解析功能的初始化;(2.3)基准程序进行与地面配套软件交互功能的初始化;(2.4)基准程序开始运行。3.根据权利要求1所述的一种飞行参数自适应的嵌入式软件内存数据动态加载方法,其特征在于:所述步骤(3)中,飞行参数的来源有以下两种:1)在实际飞行过程中,飞行器根据传感器采集的信息解算得到飞行参数,包括飞行高度、飞行速度、攻角和侧滑角;2)在实际飞行过程中,地面配套软件根据飞行器基准程序反馈的遥测结果确定是否需要将基准程序切换为目标对象程序,如果需要,则发送与目标对象程序匹配的飞行参数。4.根据权利要求1所述的一种飞行参数自适应的嵌入式软件内存数据动态加载方法,其特征在于:所述步骤(4)中,按照如下流程判断匹配的目标对象程序是否完整和正确:(4.1)确定目标对象程序在FLASH存储器中的起始地址及长度;(4.2)对从起始地址到结束地址中的数据进行CRC校验,根据CRC校验结果判断目标对象程序是否完整和正确。5.根据权利要求4所述的一种飞行参数自适应的嵌入式软件内存数据动态加载方法,其特征在于:所述步骤(4.2)中,根据CR...

【专利技术属性】
技术研发人员:陈超魏珂于喜红纪祖赑周伟杜贵轩赵佳媚杨飞薛凯窦小明莫文骥苏丙未
申请(专利权)人:北京临近空间飞行器系统工程研究所中国运载火箭技术研究院
类型:发明
国别省市:北京,11

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

1