一种基于多维特征提取的遥控指令代码生成方法技术

技术编号:19176593 阅读:16 留言:0更新日期:2018-10-17 00:13
一种基于多维特征提取的遥控指令代码生成方法,首先读取XML配置文件包含的预定义信息以及各个根节点对应指令所需的配置文件信息,在内存中为XML配置文件中每个指令类型对应的各个变量开辟独立空间,然后创建指令子参数映射表、指令参数映射表、指令参数值映射表、指令映射表,最后根据外部指令选取需要载入的指令名称,并根据指令名称及对应的配置文件信息中参数类型生成指令码,完成指令生成。

A remote instruction code generation method based on multi-dimensional feature extraction

A remote command code generation method based on multi-dimensional feature extraction is proposed. First, the pre-defined information contained in the XML configuration file and the configuration file information required by the corresponding instructions of each root node are read. Then, the independent space is opened for each variable corresponding to each instruction type in the XML configuration file in memory, and the instruction sub-parameters are created. The number mapping table, instruction parameter mapping table, instruction parameter value mapping table and instruction mapping table are used to select the instruction name needed to be loaded according to the external instruction, and the instruction code is generated according to the instruction name and the parameter type in the corresponding configuration file information to complete the instruction generation.

【技术实现步骤摘要】
一种基于多维特征提取的遥控指令代码生成方法
本专利技术涉及航天器遥控指令数据组包处理领域,特别是一种基于多维特征提取的遥控指令代码生成方法。
技术介绍
目前我国航天器遥控技术主要采用PCM遥控体制,随着航天任务复杂度的增加,对星地闭合回路、地面站之间交互支持的需求在日益增长,传统的PCM遥控已不能适应复杂遥控的需求了,从PCM遥控过度到PCM与分包遥控兼容的体制是新一代航天器遥控分系统的迫切需求。国内航天器遥控技术的发展正在逐渐向国际标准靠拢,特别是复杂航天器,已经不仅需要常规数据系统的支持,还需要使用高级在轨系统AOS的标准实现数据的规范化管理,因此在遥控系统的实现中,常规系统COS和AOS的兼容是必经的一个阶段。要兼容AOS标准,就对指令生成软件提出了更高的要求,指令码上传之前要进行多层打包,增加了软件设计人员的工作量,同时也带来了兼容性问题。现有的遥控指令编写技术通过手工编写代码的方式处理遥控指令的生成,针对AOS标准复杂协议多为针对具体协议处理的定制开发方式,针对不同的协议涉及开发的时间较长,通用性较差,存在如下问题:(1)指令处理代码编写量大,实现一套遥控指令生成需要花费的时间长;(2)协议发生更改时,代码需要重新编或更改容易引入错误,调试需要占用大量时间。
技术实现思路
本专利技术解决的技术问题是:克服现有技术的不足,提供了一种基于多维特征提取的遥控指令代码生成方法,通过采用预定义XML文件的方式定义了指令的全部特征信息,能够有效地处理单条、多条枚举方式指令的生成,带多个子参数的数据解析处理生成指令的动态生成,具有操作简便通用性好的特点,与此同时对于系统读入的指令码具有反解能力,提升可读性。本专利技术的技术解决方案是:一种基于多维特征提取的遥控指令代码生成方法,包括如下步骤(1)读取XML配置文件包含的预定义信息;所述的预定义信息为当前XML配置文件需要配置的指令类型、根节点指令数目;(2)在内存中为XML配置文件中每个指令类型对应的各个变量开辟独立空间,存放当前变量保存的数据;(3)读取各个根节点对应指令所需的配置文件信息;所述的指令所需的配置文件信息包括指令特征码、指令长度、指令内容格式、及当前指令下的参数,其中,参数可包括多级子参数;(4)创建指令子参数映射表,键为指令子参数名称,将指令子参数名称、指令子参数长度、指令子参数高低字节顺序、指令子参数类型、指令子参数单位生成指令子参数结构体;其中,指令子参数类型包括枚举类型、需要进行数据解析处理的类型,解析处理包括补码处理、源码处理、按位解析处理、浮点数处理、偏移二进制码处理、有符号定点数处理;子参数可以根据预定义的顺序关系进行数据拼接,形成完整的指令序列;(5)创建指令参数映射表,键为指令参数名称,值为指令参数下指令子参数结构体的映射表;(6)创建指令参数值映射表,键为指令参数名称,值为指令参数下所有子参数结构体组合后的值;(7)创建指令映射表,键为指令名称,值为指令下每个指令参数对应的映射表,根据指令子参数映射表、指令参数映射表、指令参数值映射表、指令映射表生成一组默认的指令码;(8)根据外部指令选取需要载入的指令名称,并根据指令名称对应的指令子参数映射表、指令参数映射表、指令参数值映射表、指令映射表获取配置文件信息;(9)判断当前指令名称对应配置文件信息中参数类型,若为待解析处理类型,转入步骤(10),若为枚举类型或者固定码类型,转入步骤(14);(10)判断当前参数是否包含指令子参数,若不包括,转入步骤(11),若包括,转入步骤(12);(11)根据外部指令或者任务需求配置当前参数;(12)顺序获取指令参数映射表中的指令子参数,更新当前全部指令子参数值,转入步骤(13);(13)更新指令参数映射表、指令参数值映射表、指令映射表中参数名称中对应的参数值,生成指令码,转入步骤(17);(14)若为枚举类型,转入步骤(15),若为固定码类型,转入步骤(16);(15)完成枚举映射关系的对应,根据外部指令或者任务需求设置选择枚举类型取值,生成指令码,转入步骤(17);(16)根据外部指令或者任务需求选配当前固定指令码的内容,并生成指令码;(17)顺序取出实时值映射表中的指令识别码和指令参数组合,并判断指令长度是否符合指令信息中的长度,若指令长度不符合指令信息中长度,提示指令生成错误,若指令长度符合指令信息中长度,完成指令生成。本专利技术与现有技术相比的优点在于:本专利技术通过提升了软件设计人员的设计编码效率,增加了遥控指令生成软件系统的可重用、可扩展性,同时与现有技术相比生成的指令维护更加简洁高效。附图说明图1为本专利技术指令配置文件描述图;图2为本专利技术一种基于多维特征提取的遥控指令代码生成方法流程图;图3为本专利技术基于XML文件的遥控指令预定义及初始化流程图;图4为本专利技术指令生成数据操作;图5为本专利技术指令反解数据操作。具体实施方式一种基于多维特征提取的遥控指令代码生成方法,克服现有技术的不足,提供了一种基于多维特征提取的遥控指令代码生成方法,通过采用预定义XML文件的方式定义了指令的全部特征信息,能够有效地处理单条、多条枚举方式指令的生成,带多个子参数的数据解析处理生成指令的动态生成,具有操作简便通用性好的特点,与此同时对于系统读入的指令码具有反解能力,提升可读性。本专利技术主要通过遥控指令的预定义初始化,遥控指令生成和遥控数据包反解处理这三个主要工作实现基于预定义配置文件的遥控指令动态生成功能。如图1所示为本专利技术指令配置文件描述图,如图2所示为本专利技术一种基于多维特征提取的遥控指令代码生成方法流程图,如图3所示为本专利技术基于XML文件的遥控指令预定义及初始化流程图,本专利技术方法包括如下步骤:其中步骤(1)~步骤(7)为遥控指令的预定义初始化,步骤(8)~步骤(17)为遥控指令动态生成,如图4所示为本专利技术指令生成数据操作,其中步骤(18)~步骤(22)为遥控指令包数据反解处理,如图5所示为本专利技术指令反解数据操作。(1)读取XML配置文件包含的预定义信息;所述的预定义信息为当前XML配置文件需要配置的指令类型、根节点指令数目;(2)在内存中为XML配置文件中每个指令类型对应的各个变量开辟独立空间,存放当前变量保存的数据;(3)读取各个根节点对应指令所需的配置文件信息;所述的指令所需的配置文件信息包括指令特征码、指令长度、指令内容格式、及当前指令下的参数,其中,参数可包括多级子参数;(4)创建指令子参数映射表,键为指令子参数名称,将指令子参数名称、指令子参数长度、指令子参数高低字节顺序、指令子参数类型、指令子参数单位生成指令子参数结构体;其中,指令子参数类型包括枚举类型、需要进行数据解析处理的类型,解析处理包括补码处理、源码处理、按位解析处理、浮点数处理、偏移二进制码处理、有符号定点数处理;子参数可以根据预定义的顺序关系进行数据拼接,形成完整的指令序列;(5)创建指令参数映射表,键为指令参数名称,值为指令参数下指令子参数结构体的映射表;(6)创建指令参数值映射表,键为指令参数名称,值为指令参数下所有子参数结构体组合后的值;(7)创建指令映射表,键为指令名称,值为指令下每个指令参数对应的映射表,根据指令子参数映射表、指令参数映射表、指令参数值映射表、指令映射表生成一本文档来自技高网...

【技术保护点】
1.一种基于多维特征提取的遥控指令代码生成方法,其特征在于包括如下步骤(1)读取XML配置文件包含的预定义信息;所述的预定义信息为当前XML配置文件需要配置的指令类型、根节点指令数目;(2)在内存中为XML配置文件中每个指令类型对应的各个变量开辟独立空间,存放当前变量保存的数据;(3)读取各个根节点对应指令所需的配置文件信息;所述的指令所需的配置文件信息包括指令特征码、指令长度、指令内容格式、及当前指令下的参数,其中,参数可包括多级子参数;(4)创建指令子参数映射表,键为指令子参数名称,将指令子参数名称、指令子参数长度、指令子参数高低字节顺序、指令子参数类型、指令子参数单位生成指令子参数结构体;其中,指令子参数类型包括枚举类型、需要进行数据解析处理的类型,解析处理包括补码处理、源码处理、按位解析处理、浮点数处理、偏移二进制码处理、有符号定点数处理;子参数可以根据预定义的顺序关系进行数据拼接,形成完整的指令序列;(5)创建指令参数映射表,键为指令参数名称,值为指令参数下指令子参数结构体的映射表;(6)创建指令参数值映射表,键为指令参数名称,值为指令参数下所有子参数结构体组合后的值;(7)创建指令映射表,键为指令名称,值为指令下每个指令参数对应的映射表,根据指令子参数映射表、指令参数映射表、指令参数值映射表、指令映射表生成一组默认的指令码;(8)根据外部指令选取需要载入的指令名称,并根据指令名称对应的指令子参数映射表、指令参数映射表、指令参数值映射表、指令映射表获取配置文件信息;(9)判断当前指令名称对应配置文件信息中参数类型,若为待解析处理类型,转入步骤(10),若为枚举类型或者固定码类型,转入步骤(14);(10)判断当前参数是否包含指令子参数,若不包括,转入步骤(11),若包括,转入步骤(12);(11)根据外部指令或者任务需求配置当前参数;(12)顺序获取指令参数映射表中的指令子参数,更新当前全部指令子参数值,转入步骤(13);(13)更新指令参数映射表、指令参数值映射表、指令映射表中参数名称中对应的参数值,生成指令码,生成指令码并结束;(14)若为枚举类型,转入步骤(15),若为固定码类型,转入步骤(16);(15)完成枚举映射关系的对应,根据外部指令或者任务需求设置选择枚举类型取值,生成指令码,生成指令码并结束;(16)根据外部指令或者任务需求选配当前固定指令码的内容,并生成指令码。...

【技术特征摘要】
1.一种基于多维特征提取的遥控指令代码生成方法,其特征在于包括如下步骤(1)读取XML配置文件包含的预定义信息;所述的预定义信息为当前XML配置文件需要配置的指令类型、根节点指令数目;(2)在内存中为XML配置文件中每个指令类型对应的各个变量开辟独立空间,存放当前变量保存的数据;(3)读取各个根节点对应指令所需的配置文件信息;所述的指令所需的配置文件信息包括指令特征码、指令长度、指令内容格式、及当前指令下的参数,其中,参数可包括多级子参数;(4)创建指令子参数映射表,键为指令子参数名称,将指令子参数名称、指令子参数长度、指令子参数高低字节顺序、指令子参数类型、指令子参数单位生成指令子参数结构体;其中,指令子参数类型包括枚举类型、需要进行数据解析处理的类型,解析处理包括补码处理、源码处理、按位解析处理、浮点数处理、偏移二进制码处理、有符号定点数处理;子参数可以根据预定义的顺序关系进行数据拼接,形成完整的指令序列;(5)创建指令参数映射表,键为指令参数名称,值为指令参数下指令子参数结构体的映射表;(6)创建指令参数值映射表,键为指令参数名称,值为指令参数下所有子参数结构体组合后的值;(7)创建指令映射表,键为指令名称,值为指令下每个指令参数对应的映射表,根据指令子参数映射表、指令参数映射表、指令参数值映射表、指令映射表生成一组默认的指...

【专利技术属性】
技术研发人员:王振华曹志威杨春河董晓刚党纪红王玉峰王健蓉万丽景胡海霞于海心杜伟
申请(专利权)人:北京控制工程研究所
类型:发明
国别省市:北京,11

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

1