一种诸元文件的自动生成方法及系统与流程

文档序号:29963192发布日期:2022-05-11 09:39阅读:388来源:国知局
一种诸元文件的自动生成方法及系统与流程

1.本发明涉及航天发射技术领域,尤其涉及一种诸元文件的自动生成方法及系统。


背景技术:

2.航天发射的飞行控制模型算法中,存在一个关键的诸元文件,用以明确飞行试验中可供调整的参数。这些参数涉及了与飞控相关的包括动力、结构、制导和控制等各个专业的数值,在航天发射任务的设计、研发、测试等多个阶段会进行多轮修改,直至发射任务前才能最终确定其确切的表达精度和数值,然后通过地面测发控系统装载到飞控软件中,用于最终的飞行任务。
3.当前的航天领域采用的诸元文件生成方法,多数是根据总体设计部门,收集各个相关专业的诸元参数,合并形成文字文件发送给软件实现部门,软件工程师根据每个诸元参数的数值范围,表达精度,飞控计算机的芯片平台特征等因素,人工进行每个字节的编排,加入一定的校验字节,形成一个用于上传的诸元文件。
4.当前的诸元文件生成过程,全过程需要人工计算和设计,根据各个参数的类型、范围、精度要求等多个角度,按照字节的编排顺序确定诸元文件中的数据格式。由于航天发射任务在设计、研发、测试的各个阶段的变更,都会导致诸元内容的变化,在采用人工编排的文件内容的情况下,相应的飞控算法软件、地面测发控软件、遥测解析软件都需要进行相应的修改,经过多轮反复的修改,对文档和软件的版本维护,会极大的增加工作量,数据不一致性等风险发生。


技术实现要素:

5.针对现有技术中存在的问题,本发明提供一种诸元文件的自动生成方法及系统,根据诸元描述文档自动生成诸元文件,诸元源码文件以及诸元验证辅助文件,传递给地面上传软件开发人员、验证软件开发人员和箭上诸元接收软件开发人员,减少了三方人员的重复劳动,降低错误风险。
6.为达到上述目的,本发明提供了一种诸元文件的自动生成方法,包括:
7.读取诸元描述文件,诸元描述文件中每个参数的描述包括的名称、数值、范围、类型和精度;
8.由诸元描述文件逐一提取各个参数的数值,表征为二进制数据,形成诸元文件;诸元文件中每10个参数增加crc校验值,并且诸元文件的结尾增加全文crc校验值;
9.由诸元描述文件顺序提取各个参数的名称、范围、类型和精度,采用结构体表征,形成多种语言的头文件或类描述文件作为诸元源码文件,诸元源码文件是编程时读取和解析诸元文件的模板,诸元源码文件中加入crc字段;
10.由诸元描述文件顺序提取各个参数的名称、范围、类型和精度,生成对应的文字描述,形成多种文件格式的诸元说明文件,诸元说明文件是第三方工具或人工解析诸元文件的模板;
11.将所述诸元文件、诸元源码文件以及诸元说明文件提供给地面上传软件软件开发人员、验证软件软件开发人员、箭上接收诸元软件开发人员以及诸元人工审核人员。
12.进一步地,由诸元描述文件逐一提取各个参数的数值,表征为二进制数据,形成诸元文件,具体包括:
13.形成多种格式的诸元文件模板,模板输出为各种编程语言或描述性语言的版本;
14.读取诸元描述文件每一行中的参数,采用模板中解析形成的参数类型、数值范围、参数精度、参数数值,将诸元描述文件的参数,依次写入诸元文件;形成dat格式的诸元文件,诸元说明文件决定诸元文件模板,诸元文件模板决定诸元文件。
15.进一步地,诸元描述文件包括word、txt或者pdf文件,采用任一类型文件提取各个参数。
16.进一步地,由诸元描述文件顺序提取各个参数的名称、范围、类型和精度,采用结构体或类的形式表征,形成多种语言的头文件或类描述文件作为诸元源码文件,具体包括:
17.提取诸元描述文件中每一行的名称和范围生成c、c++、python和java语言的结构体或类中的一个命名变量,同时提取该行的类型和精度生成c、c++、python和java语言的另一个结构体或类中的一个命名变量,分别形成c语言的头文件、c++语言的头文件、python语言的类描述文件和java语言的类描述文件作为诸元源码文件,该诸元源码文件作为开发人员读取和解析诸元文件的模板,也是验证通过网络或总线接收到的诸元内容的模板。
18.进一步地,多种文件格式的诸元说明文件,包括ini、yaml以及xml格式的诸元说明文件。
19.另一方面提供一种诸元文件的自动生成系统,包括:
20.信息提取模块,读取诸元描述文件中每个参数的描述,提取每个参数的名称、数值、范围、类型和精度;
21.诸元文件形成模块,将由诸元描述文件提取的各个参数的数值表征为二进制数据,形成诸元文件;诸元文件中每10个参数增加crc校验值,并且诸元文件的结尾增加全文crc校验值;
22.诸元源码文件形成模块,将由诸元描述文件顺序提取的各个参数的名称、范围、类型和精度采用结构体表征,形成多种语言的头文件或类描述文件作为诸元源码文件;诸元源码文件是编程时读取和解析诸元文件的模板,诸元源码文件中加入crc字段;
23.诸元说明文件形成模块,将由诸元描述文件顺序提取各个参数的名称、范围、类型和精度生成对应的文字描述,形成多种文件格式的诸元说明文件,诸元说明文件是第三方工具或人工解析诸元文件的模板;
24.输出模块,将所述诸元文件、诸元源码文件以及诸元说明文件,以源代码或工程文件打包的方式,分发给地面上传软件系统、验证软件系统以及箭上接收诸元软件系统。
25.进一步地,所述诸元文件形成模块将诸元描述文件每一行中的参数数值,依照模板顺序存入诸元文件,如果为二进制数据则直接存入诸元文件,如果为十进制/十六进制数据则转换为二级制数据后存入诸元文件;形成dat格式的诸元文件。
26.进一步地,诸元描述文件包括word、txt或者pdf文件,所述信息提取模块采用任一类型文件提取各个参数,提取结果以gui可视化方式展现给诸元制作人员,用以确认诸元提取的正确性。
27.进一步地,所述诸元源码文件形成模块,提取诸元描述文件中每一行的名称和范围生成c、c++、python和java语言的结构体或类中的一个命名变量,同时提取该行的类型和精度生成c、c++、python和java语言的另一个结构体或类中的一个命名变量,分别形成c语言的头文件、c++语言的头文件、python语言的类描述文件和java语言的类描述文件作为诸元源码文件,该诸元源码文件作为开发人员读取和解析诸元文件的模板,也是验证通过网络或总线接收到的诸元内容的模板。
28.进一步地,诸元说明文件形成模块,形成多种文件格式的诸元说明文件,包括ini、yaml以及xml格式的诸元说明文件。
29.本发明的上述技术方案具有如下有益的技术效果:
30.现行的开发流程是地面和箭上软件开发人员分别独立开发各自的软件系统,根据诸元描述文件编排诸元格式并手写代码,通过实验方法进行参数校核,以保证系统开发的正确性。本发明基于诸元描述文件自动生成的诸元文件,在自动生成诸元文件的同时,自动生成相应的诸元源代码文件和配套辅助说明文件,诸元源代码文件可以以源码的方式给其他软件直接使用,自动生成配套辅助文件作为诸元文件的文字辅助说明文档,供软件开发人员判读诸元文件使用。该方法的优点在于,减少了系统开发的工作量,降低了诸元内容变化导致的修改成本,提供了诸元内容分段校验机制,降低地面和箭上多个系统之间由于需求变化导致的数据不一致性风险。
附图说明
31.图1是诸元装订工作流程示意图;
32.图2为诸元文件的自动生成流程图;
33.图3为诸元文件使用过程示意图;
34.图4为诸元文件的自动生成系统组成示意图。
具体实施方式
35.为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
36.结合图1,诸元装订系统,包括了地面诸元上传软件、箭上诸元接收软件,同时辅助以诸元校验工具软件。现行的诸元装订系统包括了三个软件开发人员、三个软件系统,其工作流程如下:
37.1.根据航天发射任务,总体设计人员指定统一的诸元描述文件,同时分发给地面上传软件开发人员、诸元验证软件开发人员和箭上接收诸元软件开发人员。
38.2.地面软件开发人员根据自己对诸元描述文件的理解开发上传软件。
39.3.诸元验证软件开发人员根据诸元描述文件开发验证软件。
40.4.箭上接收诸元软件开发人员根据诸元描述文件开发诸元接收软件。
41.5.地面上传诸元软件将诸元内容发送给箭上诸元接收软件,诸元数据在传输过程,经过诸元验证软件的校验,确保诸元格式和内容的正确性。
42.可以看出,工作流程复杂,当需要进行参数更改时,需要执行大量的重复劳动。
43.本发明提出的诸元文件的自动生成方法,是通过自动化生成诸元和相关源代码,提高原有系统和方法的效率,降低错误风险。
44.一种诸元文件的自动生成方法,具体包括如下步骤:
45.(1)读取诸元描述文件,诸元描述文件中每个参数的描述包括的名称、数值、范围、类型和精度。如图2所示,本发明首先读取当前诸元描述文件,文件格式是约定格式包括但不限于word、txt或者pdf文件。诸元描述文件采用设定模板,采用表格形式,每行为一个参数,按照名称、数值、范围、类型和精度的顺序描述。
46.(2)由诸元描述文件逐一提取各个参数的数值,表征为二进制数据,形成诸元文件;由诸元描述文件顺序提取各个参数的名称、范围、类型和精度,采用结构体表征,形成多种语言的头文件或类描述文件作为诸元源码文件;由诸元描述文件顺序提取各个参数的名称、范围、类型和精度,生成对应的文字描述,形成多种文件格式的诸元说明文件。
47.读取诸元描述文件,逐行获取每个参数的信息,同时写入三类文件。
48.形成诸元文件,具体包括:形成源代码形式的诸元文件模板;读取诸元描述文件每一行中的参数数值,自动采集参数数值对应位置数值顺序存入诸元文件模板,。
49.诸元文件中每10个参数增加crc校验值,并且诸元文件的结尾增加全文crc校验值,每个crc值占用16位(2字节),用于保证数据在传输和存储时的正确性。
50.形成多种格式的诸元文件模板,模板可以输出为各种编程语言或描述性语言的版本,例如但不限于c、c++,python,java,yaml,ini,xml格式等。
51.诸元说明文件决定诸元文件模板,诸元文件模板决定诸元文件,最终的二进制的诸元文件的字节对齐方式、数据分界、参数精度都能保证其正确性和唯一性,本系统采用的方法,能有效杜绝人工手动生成诸元或解析诸元的过程造成的错误情况。
52.系统默认采用c语言模板,读取诸元描述文件每一行中的参数数值,采用模板中解析形成的参数类型、数值范围、参数精度、参数数值,将诸元描述文件的参数,依次写入诸元文件。
53.地面诸元文件读取源程序:负责将诸元文件转为ascii码文件,方便人工监控。箭上诸元文件读取源程序:负责将诸元文件中的数值赋给特定的变量。两个源程序不是同一个平台和语言,导致需要不同类的开发人员开发,是人工出错高发区。本发明将生成的诸元文件提供给三方,避免了分别形成诸元文件带来的错误。
54.自动生成的诸元文件用于箭地交换的诸元文件,用于替换现有技术中人工编排生成的文件。
55.本发明在生成诸元文件的同时,可生成多种语言诸元的源码,源码文件是编程时读取和解析诸元文件的模板,系统在生成的模板中自动加入crc字段。c/c++、python、java等,源码中包括了诸元的名称、范围、类型和精度,便于使用这些文件进行其他工具、模型、算法的编程。
56.诸元源码文件的形成具体包括:提取诸元描述文件中每一行的名称和范围生成c、c++、python和java语言的结构体或类中的一个命名变量,同时提取该行的类型和精度生成c、c++、python和java语言的另一个结构体或类中的一个命名变量,分别形成c语言的头文件、c++语言的头文件、python语言的类描述文件和java语言的类描述文件作为诸元源码文
件,该源文件可以作为开发人员读取和解析诸元文件的模板,同时也是验证通过网络或总线接收到的诸元内容的模板。
57.三方的软件开发人员可以直接使用诸元源码文件进行开发,加载诸元源码文件,进行诸元文件使用和解析。
58.本发明在生成诸元和诸元源代码的同时,还可输出多种诸元说明文件,ini、yaml、xml等格式的说明文件,便于各种诸元验证工具读取该说明文件。诸元说明文件是第三方工具或人工解析诸元文件的模板。软件开发人员可以使用该说明文件,对dat文件进行内容的验证和解读。
59.诸元说明文件内容包括:诸元文件中各个诸元的名称、类型、精度和范围,共四个字节,采用文字表述,便于阅读。
60.(3)将所述诸元文件、诸元源码文件以及诸元说明文件提供给地面上传软件软件开发人员、验证软件软件开发人员、箭上接收诸元软件开发人员以及诸元人工审核人员。
61.生成的源码文件,可以直接提供给相关的软件和算法的开发人员,不用进行修改直接合并到软件的源码中,这种组合方式可以保证诸元文件在传输、解析、校验等环节的内容一致性。由于地面、箭上、校验三方拿到的源码文件与最原始输入“诸元描述文件”是相同的,所以就可以排除人为的错误导致的诸元数据在系统之间流通时出险的内容错误。
62.进一步地,参见图3,地面软件开发人员根据接收到的诸元文件、诸元源码文件以及诸元说明文件的开发上传软件。
63.诸元验证软件开发人员根据诸元文件、诸元源码文件以及诸元说明文件开发验证软件。
64.箭上接收诸元软件开发人员根据诸元文件、诸元源码文件以及诸元说明文件开发诸元接收软件。
65.地面上传诸元软件将诸元文件发送给箭上诸元接收软件,诸元数据在传输过程,经过诸元验证软件的校验,确保诸元格式和内容的正确性。
66.诸元源码文件提供给校验工具开发人员(图3中的3),校验工具开发人员也可以通过第三方工具(支持yaml、xml、ini格式的工具或库)读取诸元验证辅助文件,解析诸元文件,用以验证诸元文件的正确性。
67.本发明生成的诸元文件,可以提交给地面上传诸元软件(图3中的4),进行验证,通过验证后,即可上传给箭上接收诸元软件。
68.诸元验证算法采用的源码或者辅助文件也是本发明中的方法自动生成的,这个算法可以融合到地面系统或箭上系统,也可以是独立的第三方工具,在数据传输或解析的时候,验证诸元数据的正确性,相比其他验证算法只能验证诸元文件内容的字节数是否超过边界的简单验证,本发明采用的诸元数据的验证,支持分段crc校验,全文crc校验结合的验证方法,增加了验证的有效性。
69.地面系统和箭上系统在进行诸元数据传输时,采用的诸元源码文件都是自动生成的,大大的降低了开发时间,同时减少了由于诸元说明文件的改动,导致的整套系统的修改复杂性。
70.另一方面提供一种诸元文件的自动生成系统,结合图4,包括信息提取模块、诸元文件形成模块、诸元源码文件形成模块、诸元说明文件形成模块以及输出模块。
71.信息提取模块,读取诸元描述文件中每个参数的描述,提取每个参数的名称、数值、范围、类型和精度。
72.诸元文件形成模块,将由诸元描述文件提取的各个参数的数值表征为二进制数据,形成诸元文件。
73.诸元源码文件形成模块,将由诸元描述文件顺序提取的各个参数的名称、范围、类型和精度采用结构体表征,形成多种语言的头文件或类描述文件作为诸元源码文件。
74.诸元说明文件形成模块,将由诸元描述文件顺序提取各个参数的名称、范围、类型和精度生成对应的文字描述,形成多种文件格式的诸元说明文件。
75.输出模块,将所述诸元文件、诸元源码文件以及诸元说明文件以源代码或工程文件打包的方式,分发给地面上传软件系统、验证软件系统以及箭上接收诸元软件系统,分发方式支持人工手动覆盖旧文件,也可以通过第三方系统(git、svn、oa等)自动更新。
76.进一步地,所述诸元文件形成模块,将诸元描述文件每一行中的参数数值,依照模板顺序存入诸元文件,如果为二级制数据则直接存入诸元文件模板,如果为十进制数据则转换为二进制数据后存入诸元文件;,如果为十进制/十六进制数据则转换为二级制数据后存入诸元文件,形成dat格式的诸元文件。
77.进一步地,诸元文件中每间隔10个参数会有一个crc校验值,验证此10个参数的内容的正确性,在诸元文件的结尾,有一个全文crc校验值,用于验证所有参数的正确性。
78.进一步地,诸元描述文件包括但不限于word、txt或者pdf文件,所述信息提取模块采用任一类型文件提取各个参数。,提取结果以gui可视化方式展现给诸元制作人员,用以确认诸元提取的正确性。
79.进一步地,所述诸元源码文件形成模块,提取诸元描述文件中每一行的名称和范围生成c、c++、python和java语言的结构体或类中的一个命名变量,同时提取该行的类型和精度生成c、c++、python和java语言的另一个结构体或类中的一个命名变量,分别形成c语言的头文件、c++语言的头文件、python语言的类描述文件和java语言的类描述文件作为诸元源码文件,该源文件可以作为开发人员读取和解析诸元文件的模板,同时也是验证通过网络或总线接收到的诸元内容的模板。
80.进一步地,诸元说明文件形成模块,形成多种文件格式的诸元说明文件,包括ini、yaml以及xml格式的诸元说明文件。
81.综上所述,本发明涉及一种诸元文件的自动生成方法及系统,由诸元描述文件逐一提取各个参数,基于诸元描述文件自动生成的诸元文件,同时自动生成相应的诸元源代码文件和配套辅助说明文件,诸元源代码文件以源码的方式给其他软件直接使用,自动生成配套辅助说明文件作为诸元文件的文字辅助说明文档,供软件开发人员判读诸元文件使用。该方法的优点在于,减少了系统开发的工作量,提供了诸元内容分段校验机制,降低了诸元内容变化导致的修改成本,降低地面和箭上多个系统之间由于需求变化导致的数据不一致性风险。
82.应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修
改例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1