CN115291967B - 航天数据分析方法、装置和电子设备 - Google Patents

航天数据分析方法、装置和电子设备 Download PDF

Info

Publication number
CN115291967B
CN115291967B CN202210914922.8A CN202210914922A CN115291967B CN 115291967 B CN115291967 B CN 115291967B CN 202210914922 A CN202210914922 A CN 202210914922A CN 115291967 B CN115291967 B CN 115291967B
Authority
CN
China
Prior art keywords
data
command
file
framing
target command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210914922.8A
Other languages
English (en)
Other versions
CN115291967A (zh
Inventor
尹斌
仇梦跃
张铭
同兰娟
李婉钰
韩勇
高晓梅
裴胜男
李静艳
乔辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
32039 Unit Of Chinese Pla
Original Assignee
32039 Unit Of Chinese Pla
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 32039 Unit Of Chinese Pla filed Critical 32039 Unit Of Chinese Pla
Priority to CN202210914922.8A priority Critical patent/CN115291967B/zh
Publication of CN115291967A publication Critical patent/CN115291967A/zh
Application granted granted Critical
Publication of CN115291967B publication Critical patent/CN115291967B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种航天数据分析方法、装置和电子设备,涉及数据分析的技术领域,包括:确定待分析的数据文件和数据文件的数据分帧方式;接收对数据文件进行分析的目标命令;在确定目标命令属于预设命令集合且目标命令的格式正确的情况下,基于目标命令和数据分帧方式对数据文件进行读取并分析,得到目标命令的执行结果。该方法仅需确定待分析的数据文件和数据文件的数据分帧方式,即可通过交互的目标命令来分析数据文件,不需要将待分析的数据文件内容加载至内存,避免了软件加载数据文件的处理步骤,节省了数据分析的整体时长;预设命令集合可以为多样化的数据分析需求提供支撑,有效地缓解了航天数据分析方法存在的应用场景受限的技术问题。

Description

航天数据分析方法、装置和电子设备
技术领域
本发明涉及数据分析的技术领域,尤其是涉及一种航天数据分析方法、装置和电子设备。
背景技术
由于航天活动中太空环境的不确定性,航天器往往会出现一些未知的故障。而航天器又处于几百公里外的太空,故障定位就变得格外困难,必须通过航天器下传的数据来观察故障现象,定位故障点,进而解决故障。对于故障出现后的问题排查,需要对历史航天数据进行分析。
现有的航天数据分析软件可以分为通用化数据分析软件和专用数据分析软件。通用化数据分析软件一般会直接加载文件内容,并以十六进制方式显示,并提供数据字节查找的功能,但是,如果文件较大,那么软件加载数据文件的时间会比较长,甚至根本无法正常打开;专用数据分析软件一般仅支持特定领域下的数据分析,一旦数据格式发生变化,或者将此类软件更换使用场景,使用此类软件将很难开展数据分析工作,必须进行软件的针对性的修改才能够正常使用。也即,现有的航天数据分析方法存在应用场景受限的技术问题。
发明内容
本发明的目的在于提供一种航天数据分析方法、装置和电子设备,以避免了软件加载数据文件的处理步骤,节省了数据分析的整体时长,缓解了航天数据分析方法存在的应用场景受限的技术问题。
第一方面,本发明提供一种航天数据分析方法,包括:确定待分析的数据文件和所述数据文件的数据分帧方式;接收对所述数据文件进行分析的目标命令;在确定所述目标命令属于预设命令集合且所述目标命令的格式正确的情况下,基于所述目标命令和所述数据分帧方式对所述数据文件进行读取并分析,得到所述目标命令的执行结果。
在可选的实施方式中,所述目标命令至少包括:目标命令名称;在接收对所述数据文件进行分析的目标命令之后,还包括:基于所述目标命令名称在所述预设命令集合中进行命令索引,得到索引结果;在所述索引结果为存在与所述目标命令名称对应的目标命令动态库的情况下,基于所述目标命令动态库对所述目标命令进行格式检查,得到格式检查结果。
在可选的实施方式中,基于所述目标命令和所述数据分帧方式对所述数据文件进行读取并分析,包括:基于所述数据分帧方式对所述数据文件进行数据帧的读取,得到数据分帧后的文件数据流;对所述文件数据流执行所述目标命令,以对所述数据文件进行分析,得到所述目标命令的执行结果。
在可选的实施方式中,所述数据分帧方式包括:按照指定应用层协议进行数据分帧、按照指定字节内容进行数据分帧和按照指定字节长度进行数据分帧;其中,所述指定应用层协议中包含数据帧长度属性。
在可选的实施方式中,若所述数据分帧方式采用所述按照指定应用层协议进行数据分帧的方式,则基于所述数据分帧方式对所述数据文件进行数据帧的读取,包括:基于所述指定应用层协议的配置文件中length节点的起始字节和终止字节,确定每个数据帧中的length字段位置;获取所述数据文件中所述length字段位置的字段数值,并将所述字段数值作为data字段的数据帧长;基于所述指定应用层协议的配置文件中data节点的起始字节和所述data字段的数据帧长确定每个数据帧中的data字段位置;基于所述指定应用层协议的配置文件中剩余节点的起始字节和终止字节,确定每个数据帧中的剩余字段位置;其中,所述剩余节点表示所述length节点和所述data节点之外的节点;基于所述length字段位置、所述data字段位置和所述剩余字段位置对所述数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
在可选的实施方式中,所述目标命令包括:数据访问命令、数据查找命令和数据统计命令;其中,所述数据访问命令用于利用所述数据文件的文件读取指针point,获取指定位置的字节内容或者数据帧内容;所述数据查找命令用于从所述文件读取指针point指向的数据帧开始,查找符合第一条件的第一帧数据;所述数据统计命令用于利用所述文件读取指针point在所述数据文件的指定数据范围内统计符合第二条件的数值。
在可选的实施方式中,所述数据查找命令的命令参数包括以下其中一种:指定字节内容,正则表达式,二进制解析不等式;所述正则表达式用于检索符合指定模式或者指定规则的文本;所述二进制解析不等式用于对数据帧的指定字节,通过解析方法得到指定数据类型的数据内容,再判查所述数据内容是否符合不等式成立条件,从而找到符合不等式成立条件的指定数据帧。
第二方面,本发明提供一种航天数据分析装置,包括:确定模块,用于确定待分析的数据文件和所述数据文件的数据分帧方式;接收模块,用于接收对所述数据文件进行分析的目标命令;读取和分析模块,用于在确定所述目标命令属于预设命令集合且所述目标命令的格式正确的情况下,基于所述目标命令和所述数据分帧方式对所述数据文件进行读取并分析,得到所述目标命令的执行结果。
第三方面,本发明提供一种电子设备,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述实施方式中任一项所述的航天数据分析方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现前述实施方式中任一项所述的航天数据分析方法。
本发明提供的航天数据分析方法,包括:确定待分析的数据文件和数据文件的数据分帧方式;接收对数据文件进行分析的目标命令;在确定目标命令属于预设命令集合且目标命令的格式正确的情况下,基于目标命令和数据分帧方式对数据文件进行读取并分析,得到目标命令的执行结果。该方法仅需确定待分析的数据文件和数据文件的数据分帧方式,即可通过交互的目标命令来分析数据文件,不需要将待分析的数据文件内容加载至内存,因此,避免了软件加载数据文件的处理步骤,节省了数据分析的整体时长;另外,本发明方法设计了预设命令集合,因此,可以为多样化的数据分析需求提供支撑,有效地缓解了航天数据分析方法存在的应用场景受限的技术问题。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种航天数据分析方法的流程图;
图2为本发明实施例提供的一种交互式航天数据分析框架图;
图3为本发明实施例提供的一种交互式航天数据分析软件的软件架构设计图;
图4为本发明实施例提供的一种交互式航天数据分析软件的软件流程图;
图5为本发明实施例提供的一种航天数据分析装置的功能模块图;
图6为本发明实施例提供的一种电子设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
航天活动一般是指进入、开发、利用和探索太空以及地外天体的活动总和。通常情况下,要将航天器通过发射系统,送往太空,开展相关的数据收集和回传。由于航天活动中太空环境的不确定性,航天器往往会出现一些未知的故障。而航天器又处于几百公里外的太空,故障定位就变得格外困难,必须通过航天器下传的数据来观察故障现象,定位故障点,进而解决故障。
航天数据主要包括实时航天数据和历史航天数据。实时航天数据是以电文形式存在,通过专家系统推理进行航天器状态监视和报警,然而这种方式通常可以发现故障现象,难以找到故障的原因和故障点。对于故障出现后的问题排查,还需要对历史航天数据进行分析。历史航天数据是以文件形式存在,是对实时航天数据进行数据存盘后形成。在本申请中,航天数据具体是指历史航天数据。
航天数据主要有两个特点:一是数据量大,很多航天器的载荷数据下传速度能够达到每秒Gb数量级,多弧段下传所积累的历史航天数据数量甚至可达Pb级,大量的数据给数据分析带来了极大的困难,必须通过软件辅助来完成;二是数据格式多样,不同航天器下传的数据格式区别较大,且随着技术的不断进步而不断变化,因此很难通过一个软件来实现数据分析。
现有的航天数据分析软件可以分为通用化数据分析软件和专用数据分析软件。通用化数据分析软件,例如:QT、UltraEdit等。这些软件的主要功能并非用于分析二进制数据,它们一般会直接加载文件内容,并以十六进制方式显示,并提供数据字节查找的功能。专用化数据分析软件一般都应用于特定领域,例如航天器管理部门会研发航天器遥测、载荷数据的分析工具,依据数据特点进行软件设计,并根据问题排查策略提供相关的辅助排查功能。
但是,虽然通用化数据分析软件可以打开和分析任意数据格式的数据文件,但仍存在两个缺点:一是如果文件较大,例如上百GB的文件,软件加载数据文件的时间会比较长,甚至根本无法正常打开;二是此类工具只提供了基本的数据查看,字节查找等功能,无法根据数据格式提供有效支撑。
航天器的管理单位通常会研发相对应的专用数据分析软件,但是此类软件仅支持特定领域下的数据分析,一旦数据格式发生变化,或者将此类软件更换使用场景,使用此类软件将很难开展数据分析工作,必须进行软件的针对性的修改才能够正常使用。有鉴于此,本发明实施例提供了一种航天数据分析方法,用以缓解上文中所涉及的技术问题。
实施例一
图1为本发明实施例提供的一种航天数据分析方法的流程图,如图1所示,该方法具体包括如下步骤:
步骤S102,确定待分析的数据文件和数据文件的数据分帧方式。
本发明实施例提供的航天数据分析方法应用于交互式航天数据分析软件,该交互式航天数据分析软件在对航天数据文件进行分析时,不需要将待分析的数据文件内容加载至内存,并且该分析软件支持多样化的数据分析需求,也即,支持多种功能类型的命令交互,从而扩展了该分析软件的应用场景。
在本发明实施例中,在进行数据分析之前,交互式航天数据分析软件首先需要确定待分析的数据文件以及该数据文件的数据分帧方式,这是因为虽然航天数据的基本数据单元是数据帧,并依次存入数据文件中,但是由于数据帧之间没有间隔符号等附加标识信息,因此分析软件无法准确的识别出数据帧,进而无法展开数据分析工作,因此,为了后续数据分析工作的顺利开展,应确定一种对该数据文件中的内容进行数据分帧的方式,对待分析的数据文件中的数据内容进行分帧后所形成的数据帧是后续分析的基础。
需要说明的是,上述步骤S102仅仅是明确了对数据文件进行数据分帧的方式,但并没有对数据文件进行遍历,也即,未对数据文件执行分帧的操作,对数据帧的遍历可以使用后续接收到的目标命令来完成。
步骤S104,接收对数据文件进行分析的目标命令。
通用化数据分析软件只提供了基本的数据查看,字节查找等功能,为了支撑多样化的数据分析需求,本发明实施例中的目标命令包括:数据访问命令、数据查找命令和数据统计命令,每种类型的命令均可根据数据分析需求设置多种子命令。
步骤S106,在确定目标命令属于预设命令集合且目标命令的格式正确的情况下,基于目标命令和数据分帧方式对数据文件进行读取并分析,得到目标命令的执行结果。
本发明实施例中的交互式航天数据分析软件对外提供人机界面,用于向分析人员提供命令输入界面和显示命令反馈,且交互式航天数据分析软件中已经包含了大量可支持的命令,并存储于预设命令集合,集合中的大部分命令可以结合命令参数进行使用,从而扩展命令的使用场景。并且,如果当前预设命令集合中的命令无法满足特殊需求时,软件维护员还可以编写新的命令,并将其加入到预设命令集合中以解决上述问题。
因此,当交互式航天数据分析软件接收到目标命令之后,如果目标命令不属于预设命令集合,或者,虽然属于预设命令集合但目标命令的格式不正确,那么交互式航天数据分析软件则无法正确执行接收到的目标命令,此时,交互式航天数据分析软件可通过人机界面对外提供目标命令的执行结果,例如,命令执行失败,或者,命令无法执行等。
只有在交互式航天数据分析软件确定目标命令属于预设命令集合且目标命令的格式正确的情况下,才能根据目标命令和数据分帧方式对数据文件进行读取并分析,并得到命令的执行结果。
本发明提供的航天数据分析方法,包括:确定待分析的数据文件和数据文件的数据分帧方式;接收对数据文件进行分析的目标命令;在确定目标命令属于预设命令集合且目标命令的格式正确的情况下,基于目标命令和数据分帧方式对数据文件进行读取并分析,得到目标命令的执行结果。该方法仅需确定待分析的数据文件和数据文件的数据分帧方式,即可通过交互的目标命令来分析数据文件,不需要将待分析的数据文件内容加载至内存,因此,避免了软件加载数据文件的处理步骤,节省了数据分析的整体时长;另外,本发明方法设计了预设命令集合,因此,可以为多样化的数据分析需求提供支撑,有效地缓解了航天数据分析方法存在的应用场景受限的技术问题。
在一个可选的实施方式中,目标命令至少包括:目标命令名称。
一般地,交互式航天数据分析软件所接收到的目标命令从形式上来讲,至少需要包括目标命令名称,进一步的,为了拓展命令的功能以及使用场景,大部分目标命令除了目标命令名称之外,还包括相应的命令参数,命令参数用于调整命令的具体行为。
图2为本发明实施例提供的一种交互式航天数据分析框架图,如图2所示,交互式航天数据分析软件中命令与命令程序之间形成一一对应的关系,命令和命令程序之间通过命令名称进行关联。交互式航天数据分析软件的主要交互对象为数据分析员和软件维护员,数据分析员要开展数据分析工作时,首先输入命令,交互式航天数据分析软件收到命令后,查找预设命令集合中是否有该命令,若有该命令,则执行该命令的命令程序。交互式航天数据分析软件执行目标命令时,实质上是执行该命令对应的命令程序,命令程序的执行首先要读取数据文件的内容,然后再执行目标命令的内容,最后将命令的结果反馈至人机界面。命令程序的输出是根据其对应命令的目的制定的,命令程序的输出类型包括:数值型、二进制数组型、布尔型等。
在接收对数据文件进行分析的目标命令之后,本发明方法还包括如下步骤:
步骤S1051,基于目标命令名称在预设命令集合中进行命令索引,得到索引结果。
步骤S1052,在索引结果为存在与目标命令名称对应的目标命令动态库的情况下,基于目标命令动态库对目标命令进行格式检查,得到格式检查结果。
图3为本发明实施例提供的一种交互式航天数据分析软件的软件架构设计图,如图3所示,该交互式航天数据分析软件主要包括以下四个程序部件:人机界面、命令管理器、命令检查器、命令执行器,其中,命令检查器和命令执行器包含于命令的动态库中,并且航天数据分析软件中每一个命令对应一个动态库路径,这个对应关系包含于命令列表(也即,预设命令集合)中,命令列表是程序中的数据结构。
命令管理器负责命令的管理,为人机界面提供命令索引和动态库路径查询,同时还负责命令的增加和命令的删除,以及命令动态库的改动。命令检查器负责检查命令的格式是否符合要求,对于正确的命令,调用命令执行器执行。无论命令格式正确与否,都要给提供给人机界面反馈。命令执行器负责命令的最终执行,根据命令的情况修改文件读取指针point和/或文件数据流fs,并将命令的返回结果反馈给人机界面。
因此,在交互式航天数据分析软件接收对数据文件进行分析的目标命令之后,首先命令管理器基于目标命令名称在预设命令集合中进行命令索引,得到索引结果,索引结果包括以下其中一种:存在与目标命令名称对应的目标命令动态库,不存在与目标命令名称对应的目标命令动态库。
若索引结果为不存在与目标命令名称对应的目标命令动态库,则命令管理器向人机界面反馈上述索引结果;若索引结果为存在与目标命令名称对应的目标命令动态库,则根据预设命令集合反馈的动态库路径可直接确定出该路径下的目标命令动态库,进而根据目标命令动态库中的命令检查器对目标命令进行格式检查,得到格式检查结果。在本发明实施例中,命令的格式检查内容具体是目标命令的参数格式是否满足要求。交互式航天数据分析软件为每个目标命令均设有相应的参数格式要求。
若格式检查结果为格式错误,则命令检查器向人机界面反馈上述检查结果;若格式检查结果为格式正确,则命令检查器调用命令执行器执行目标命令,命令执行器执行命令之后,向人机界面反馈命令的执行结果。图4为本发明实施例提供的一种交互式航天数据分析软件的软件流程图。
在一个可选的实施方式中,上述步骤S106中,基于目标命令和数据分帧方式对数据文件进行读取并分析,具体包括如下步骤:
步骤S1061,基于数据分帧方式对数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
通过上文中的描述可知,对待分析的数据文件进行数据分帧是数据分析的基础,因此,在执行目标命令之前,首先需要按照步骤S102中确定的数据分帧方式对数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
在本发明实施例中,交互式航天数据分析软件确定待分析的数据文件和数据文件的数据分帧方式可以通过接收数据分帧命令的方法实现。也即,确定待分析的数据文件和数据文件的数据分帧方式包括:接收数据分帧命令。其中,数据分帧命令中包括待分析的数据文件的文件路径和待分析的数据文件的数据分帧方式。并且,交互式航天数据分析软件在接收到数据分帧命令之后,参考上文中对目标命令的检查流程,也需要核对数据分帧命令是否属于预设命令集合,以及在确定属于预设命令集合的情况下,数据分帧命令的格式是否正确,只有正确的情况下,才能实现对待分析的数据文件进行数据分帧。也就是说,数据分帧命令需要在接收到目标命令之后,且确定数据分帧命令和目标命令均属于预设命令集合且格式均正确的情况下才会执行。数据分帧命令执行完毕,即可得到数据分帧后的文件数据流(记做fs),同时文件读取指针point指向文件首字节。
步骤S1062,对文件数据流执行目标命令,以对数据文件进行分析,得到目标命令的执行结果。
在得到数据分帧之后的文件数据流之后,交互式航天数据分析软件即可对数据文件进行分析,具体为对文件数据流执行目标命令,从而得到目标命令的执行结果。例如,目标命令为返回当前文件读取指针point指向字节所在的数据帧,或者,从point指向位置的数据帧开始,查找数据文件中与指定数组的数据规则一致的字节所在的第一帧数据,或者,统计数据文件中指定数据范围内的数据内容中,符合指定条件的数据帧的数量等。
在一个可选的实施方式中,数据分帧方式包括:按照指定应用层协议进行数据分帧、按照指定字节内容进行数据分帧和按照指定字节长度进行数据分帧;其中,指定应用层协议中包含数据帧长度属性。
本发明实施例中,交互式航天数据分析软件可支持以上3种方式对待分析的数据文件进行数据分帧,用户可以根据实际需求选择其中一种方式。可选地,命令的使用方法是将命令名称和命令参数(如果有的话)依次输入,并以空格间隔。在命令描述时,方括号“[]”标记的参数为可选参数,圆括号“()”标记的参数为必选参数。
根据上文中对数据分帧命令的功能描述可知,数据分帧命令可表示为setFS(param)(fileName),也就是说,setFS命令必须包含两个命令参数,其中param表示数据分帧的依据,也即数据分帧方式;fileName表示数据文件的文件路径。setFS(param)(fileName)表示依据param的约定,对fileName路径下的数据文件进行数据分帧。需要注意的是:该命令执行成功之后,文件数据流fs将会更新,同时文件读取指针指向文件首字节。
鉴于数据分帧方式包括3种,因此,param相应的分类为三种类型,以上三种分帧方式可分别使用以下三种参数进行表示:参数p、参数f和参数l。下面分别介绍选择不同的数据分帧方式的情况下,如何对数据文件进行数据帧的读取。需要说明的是,若sefFS命令参数格式不对,或者fileName路径下的数据文件无法找到,则命令执行失败,且保持文件数据流fs不变。
在一个可选的实施方式中,若数据分帧方式采用按照指定应用层协议进行数据分帧的方式,则上述步骤S1061中,基于数据分帧方式对数据文件进行数据帧的读取,包括:
步骤S10611,基于指定应用层协议的配置文件中length节点的起始字节和终止字节,确定每个数据帧中的length字段位置。
步骤S10612,获取数据文件中length字段位置的字段数值,并将字段数值作为data字段的数据帧长。
步骤S10613,基于指定应用层协议的配置文件中data节点的起始字节和data字段的数据帧长确定每个数据帧中的data字段位置。
步骤S10614,基于指定应用层协议的配置文件中剩余节点的起始字节和终止字节,确定每个数据帧中的剩余字段位置。
其中,剩余节点表示length节点和data节点之外的节点。
步骤S10615,基于length字段位置、data字段位置和剩余字段位置对数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
具体的,当数据分帧方式为按照指定应用层协议进行数据分帧时,setFS命令表示为setFS(-p(protocol))(fileName),其中,参数p表示使用自分帧应用层协议进行数据分帧,protocol表示使用的应用层协议的名称,对应“protocol.xml”(也即,应用层协议的配置文件)中描述协议内容。一般地,Xml中包含三类节点,head节点、length节点和data节点,本发明实施例将length节点中描述的字节数组作为data节点的字节长度。
基于上述数据分帧方法,本发明实施例提供了按照指定应用层协议进行数据分帧时的一种可选的伪代码:
Figure BDA0003775274770000131
Figure BDA0003775274770000141
上述方法为依据配置文件进行数据帧的读取,配置文件(xml文件)中明确了数据帧的内容,其中必然包含length节点和data节点,返回数据帧的内容记为re。首先,对于length节点,根据length节点的s(也即,起始字节)和e(也即,终止字节)计算length字段的位置,并获取字段数值,记为length,并把s至e的二进制以添加的方式存入re中。接下来,对于data节点,读取length个二进制数据,以添加的方式存入re中。最后,对于剩余节点(例如head节点),根据剩余节点的s和e,以添加的方式将二进制存入re中。
为了便于理解,下面举例说明,若指定应用层协议的配置文件为下述内容:
Figure BDA0003775274770000142
根据上文中对按照指定应用层协议进行数据分帧的方式对数据文件进行数据帧的读取的方法描述可知,length节点中描述的字节数组为data节点的字节长度,也即,协议中的21和22两个字节代表数据区内容,若21和22两个字节转换为十进制是100,则data长度为从23字节开始至122字节(共100字节),因此,第一帧数据的数据帧长度为123字节(第0至第122字节)。
接下来,将数据文件的第123字节作为更新后的数据文件的第0字节,更新后的数据文件表示剔除已分帧数据的文件,以此类推,按照上述分帧方法确定下一数据帧中的data字段的数据帧长,也即,确定更新后的数据文件中第21和第22两个字节转换为十进制的数值,进而可确定出下一帧数据的字节范围。重复执行上述数据分帧方法,以完成对数据文件进行数据帧的读取,得到数据分帧后的文件数据流fs。
若数据分帧方式采用按照指定字节内容进行数据分帧,则setFS命令表示为setFS(-f[-s(startBytes)][-e(endBytes)])(fileName),其中,参数f表示使用指定字节内容进行数据分帧,-s startBytes表示数据帧开始的字节数组,-e endBytes表示数据帧结束的字节数组。-s和-e均为可选参数,只填-s时,表示数据帧头固定,直到找到下一帧数据帧头时任务数据帧结束;只填-e时,表示数据帧尾固定,数据文件开始处认为是数据帧开始,找到数据帧尾结束后,认为是下一帧的开始。如果-s和-e均不填,则认为该数据文件只包含一帧数据。
基于上述数据分帧方法,本发明实施例提供了按照指定字节内容进行数据分帧时的一种可选的伪代码:
Figure BDA0003775274770000151
/>
Figure BDA0003775274770000161
具体的,首先读取固定长度二进制作为缓存;然后在缓存中分别匹配帧头标识和帧尾标识;若帧头标识为空,则默认读取的第一个字节为帧头;若帧尾标识为空,则需要找到下一帧的帧头;若帧头标识和帧尾标识均为空,则返回最大值。
若数据分帧方式采用按照指定字节长度进行数据分帧,则setFS命令表示为setFS(-l(length))(fileName),其中,参数l表示按照指定字节长度进行数据分帧,length表示数据帧的长度。
基于上述数据分帧方法,本发明实施例提供了按照指定字节长度进行数据分帧时的一种可选的伪代码:
Byte[]nextFrame(File fs,int length)
Figure BDA0003775274770000171
/>
在本发明实施例中,setFS命令仅明确了对数据文件的数据分帧的方式,并未对数据文件进行遍历,对数据帧的遍历需要根据后续命令来完成。setFS命令是后续命令的基础,必须先执行setFS命令,才能够利用其他命令进行数据分析。
在一个可选的实施方式中,目标命令包括:数据访问命令、数据查找命令和数据统计命令。
其中,数据访问命令用于利用数据文件的文件读取指针point,获取指定位置的字节内容或者数据帧内容。
数据查找命令用于从文件读取指针point指向的数据帧开始,查找符合第一条件的第一帧数据。
数据统计命令用于利用文件读取指针point在数据文件的指定数据范围内统计符合第二条件的数值。
具体的,下述表1为交互式航天数据分析软件所支持的命令简介。
表1命令简介
Figure BDA0003775274770000172
Figure BDA0003775274770000181
上文中已经对setFS命令进行了详细介绍,具体可参考上文。setPoint命令表示为setPoint(location),也即,setPoint使用参数location,含义为将文件读取指针设为location。如果location小于0,或者location的大小超过文件大小,则命令报错,且保持Point不变。在数据分帧后未执行setPoint命令的情况下,默认文件读取指针指向文件首字节。
参考上述表1,数据访问命令包括:now,pre,next,nowByte,preBytes,nextBytes,需要说明的是,使用数据访问类的命令,命令执行完毕后,无论结果如何,均不改变point的位置。
具体的,now命令不带参数,表示返回当前point指向字节所在的数据帧,可选地,以十六进制显示。如果point指向的字节不在任何一个数据帧里,则返回空。Pre命令使用参数number,也即,Pre命令表示为pre[number],其含义为显示当前数据帧前的number个数据帧,不包含数据帧之间的字节内容。若不足number个数据帧,则显示全部数据帧。命令next和pre基本一致,next命令表示为next[number],其含义为返回point位置后number个数据帧的内容。
nowByte命令不带参数,表示返回当前point指向的字节内容,可选地,以十六进制显示。preBytes命令可选择使用参数number,也即,PreBytes命令表示为preBytes[number],其含义为返回point位置前number个字节的内容,可选地,以十六进制显示。可选地,参数number不填时可默认为数值1。命令nextBytes和preBytes基本一致,nextBytes命令表示为nextBytes[number],其含义返回point位置后number个字节的内容。
在一个可选的实施方式中,数据查找命令的命令参数包括以下其中一种:指定字节内容,正则表达式,二进制解析不等式。
正则表达式用于检索符合指定模式或者指定规则的文本。
二进制解析不等式用于对数据帧的指定字节,通过解析方法得到指定数据类型的数据内容,再判查数据内容是否符合不等式成立条件,从而找到符合不等式成立条件的指定数据帧。
参考上述表1,数据查找命令包括:findBytes,findFrame,数据查找是指从point指向位置的数据帧开始,查找满足某些要求的第一帧数据,其中,findBytes命令使用参数bytes,其格式为findBytes(bytes),表示查找指定字节内容。其含义为从文件读取指针point开始,向后寻找,直到找到文件中与bytes数组内容一致的字节为止。若找到,则point指向文件中bytes数组的终止位置,返回true;若没有找到,则point不变,返回false。找到指定bytes数组后,若point指向的位置位于数据帧内,则返回该数据帧。
而findFrame命令使用参数param,格式为findFrame(param),表示查找指定格式的数据帧。在本发明实施例中,findFrame可分为二进制正则表达式查找和二进制解析不等式查找两类,下面分别介绍这两类。
按照正则表达式查找时,findFrame命令的格式为:findFrame–ddescription,Description为正则表达式,正则表达式一般是指对有限自动机所接受的语言或时序开关电路的行为的形式描述,通常被用于做文本的检索,检索符合指定模式或者指定规则的文本。常用的程序设计语言均支持利用正则表达式进行字符串的检索。本发明实施例根据航天数据的特点,设计了下述多种二进制的正则表达式的表示方法,涉及的正则表达式见下述表2。
表2正则表达式描述
Figure BDA0003775274770000191
/>
Figure BDA0003775274770000201
为了便于理解,下面举例说明,例一:若数据查找命令中的正则表达式为T(0x40),则0x51可以匹配,0x81不能匹配;例二:若数据查找命令中的正则表达式为AND(0xF0,0x40),则0x41可以匹配,0x51不能匹配。例三:若数据查找命令中的正则表达式为(0xF0|0x0F),则0xF0可以匹配,0xFF不能匹配。例四:若数据查找命令中的正则表达式为(T(0x40)){2},则0x515150可以匹配,0x5150不能匹配。
二进制解析不等式查找是针对数据帧的某部分的字节,通过解析方法得到指定数据类型的数据内容,再判查数据内容是否符合条件,从而找到特定数据帧的过程。下述表3为本发明实施例提供的多种二进制解析函数。
表3二进制解析函数
Figure BDA0003775274770000202
Figure BDA0003775274770000211
按照二进制解析不等式查找时,findFrame命令的格式为:findFrame-o(-f|-r)function(<|>|=)n,或者,findFrame-t(-f|-r)function(<|>|=)n,其中,参数o表示仅在本帧判断,参数t表示在综合上下两帧进行判断,参数f表示以高字节在前的顺序解析,参数r表示以高字节在后的顺序解析。function描述了数据字节的解析方法,n表示一个具体的数,中间用小于、大于、等于连接。
例如:findFrame–o-f ui(20)>1024,表示查找每帧第20个字节开始的4个字节,以高字节在前的顺序解析为unsigned int,查找大于1024的第一帧。findFrame–t-f-ui(20)>1,表示每帧的第20个字节往后的4个字节,以unsigned int解析为数据a,找到符合以下条件的第一帧数据:帧内数据a减上一帧的数据a大于1。
继续参考上述表1,本发明实施例中的数据统计命令包括:count,max,min,average,其中,count命令用于统计数据帧数;max命令用于统计某一字段的最大值;min命令用于统计某一字段的最小值;average命令用于统计某一字段的平均值。
具体的,count命令表示为count(-t|-h)(param),参数h表示统计范围是从文件头到point的位置,参数t表示统计范围是从point位置到文件尾。count命令的param参数格式和上文中findFrame命令的param参数格式完全一致,区别在于findFrame命令是找到第一帧,count命令是统计帧数,count命令返回的是数据帧数。
max命令表示为max(-t|-h)(-f|-r)(function),参数h表示统计范围是从文件头到point的位置,参数t表示统计范围是从point位置到文件尾。参数f表示以高字节在前的顺序解析,参数r表示以高字节在后的顺序解析。Max命令的function参数写做上述表3中的二进制解析函数。Max命令返回的是最大值,还可以进一步配置为返回最大值对应的数据帧。
min命令和max命令的命令参数格式一致,min命令的含义为取最小值,也即,执行min命令返回的是最小值以及对应的数据帧。average命令和ma命令的命令参数格式一致,average命令的含义为取平均值,也即,执行average命令返回的是平均值。
根据上文中的描述可知,setFs命令实现机制为记录所使用的分帧方式,now、pre、next三个命令可以通过上述伪代码中的nextFrame函数,结合数据缓存技术实现。findFrame命令是在nextFrame的基础上,对数据帧的内容进行比判。正则表达式查找可以利用有限自动机的程序设计思路实现,二进制解析查找是将数据帧具体字节解析为数据再进行比判,主要涉及程序语言中的二进制与数据类型的转换函数和数值比较。count、max、min、average四个命令同样是在nextFrame的基础上,针对具体数据字节解析内容进行统计,包括计数、取最大值、取最小值和取平均值。
为了更显著的展示本发明实施例方法对航天数据文件进行分析的有效性,下面结合一种具体实例进行说明。待分析的数据文件采用的是数据帧格式中含有数据长度字段。数据字段列表如下表4所示。需要说明的是,表4所使用的数据帧格式并非真实航天数据使用的格式。
表4数据帧格式
帧头 长度 数据
40B 2B nB
如表4中所示,数据帧开始40个字节为帧头,随后2个字节是长度,后面的n个字节为数据内容,长度中2个字节按照十进制解析的值等于n。下面利用表5再详细说明一下数据区内容。
表5数据区格式
时间(天内毫秒) 帧质量 信号强度 其他数据
4B 1B 8B (n-13)B
表5中,时间:表示该帧数据产生的时间,由四个字节的unsigned int表示,为天内的毫秒数;帧质量:0x01表示该帧质量好,0x02表示该帧质量不好;信号强度:表示该时刻的信号强度,由八个字节的double表示。
待分析的数据文件(路径:test.dat)为某航天器下传的数据,从某个时刻开始无法正常进行数据解析,出现了数据丢帧、数据质量差,信号强度低等问题。分析要求:1.找到发生问题的时间;2.查看出现问题前后10帧数据;3.统计发生问题后帧质量为好的数据帧数量;4.统计发生问题后的信号平均强度。
根据上文中对本发明方法的描述可知,上述航天数据的分析流程如下,首先确定待分析的数据文件及其数据分帧方式,例如,使用数据分帧命令:setFs-l 1000test.dat,也即,将test.dat路径下的数据文件以每1000字节进行分帧。
接下来,为了找到发生问题的时间,从数据上来看,问题征兆是前后两帧数据的时间相差超过100ms,因此,可通过发送命令findFrame–t–r ui(42)>100解决上述第一个分析要求;针对第二个分析要求,可通过pre 10和next 10命令解决。针对第三个分析要求,可通过命令:count–t c(46)=1解决;针对第三个分析要求,可通过命令:average–t–r d(47)解决。
本发明提出了一种航天数据分析方法,用户通过预先设置的一系列命令,填入其命令参数,即可完成数据分帧、数据访问、数据查找、数据统计等工作,避免了软件加载数据文件的处理步骤,节省了数据分析的整体时长,同时还能缓解航天数据分析方法存在的应用场景受限的技术问题。
实施例二
本发明实施例还提供了一种航天数据分析装置,该航天数据分析装置主要用于执行上述实施例一所提供的航天数据分析方法,以下对本发明实施例提供的航天数据分析装置做具体介绍。
图5是本发明实施例提供的一种航天数据分析装置的功能模块图,如图5所示,该装置主要包括:确定模块10,接收模块20,读取和分析模块30,其中:
确定模块10,用于确定待分析的数据文件和数据文件的数据分帧方式。
接收模块20,用于接收对数据文件进行分析的目标命令。
读取和分析模块30,用于在确定目标命令属于预设命令集合且目标命令的格式正确的情况下,基于目标命令和数据分帧方式对数据文件进行读取并分析,得到目标命令的执行结果。
本发明提供的航天数据分析装置所执行的航天数据分析方法仅需确定待分析的数据文件和数据文件的数据分帧方式,即可通过交互的目标命令来分析数据文件,不需要将待分析的数据文件内容加载至内存,因此,避免了软件加载数据文件的处理步骤,节省了数据分析的整体时长;另外,本发明装置中设计了预设命令集合,因此,可以为多样化的数据分析需求提供支撑,有效地缓解了航天数据分析方法存在的应用场景受限的技术问题。
可选地,目标命令至少包括:目标命令名称;该装置还包括:
索引模块,用于基于目标命令名称在预设命令集合中进行命令索引,得到索引结果。
检查模块,用于在索引结果为存在与目标命令名称对应的目标命令动态库的情况下,基于目标命令动态库对目标命令进行格式检查,得到格式检查结果。
可选地,读取和分析模块30包括:
读取单元,用于基于数据分帧方式对数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
分析单元,用于对文件数据流执行目标命令,以对数据文件进行分析,得到目标命令的执行结果。
可选地,数据分帧方式包括:按照指定应用层协议进行数据分帧、按照指定字节内容进行数据分帧和按照指定字节长度进行数据分帧;其中,指定应用层协议中包含数据帧长度属性。
可选地,若数据分帧方式采用按照指定应用层协议进行数据分帧的方式,则读取单元具体用于:
基于指定应用层协议的配置文件中length节点的起始字节和终止字节,确定每个数据帧中的length字段位置。
获取数据文件中length字段位置的字段数值,并将字段数值作为data字段的数据帧长。
基于指定应用层协议的配置文件中data节点的起始字节和data字段的数据帧长确定每个数据帧中的data字段位置。
基于指定应用层协议的配置文件中剩余节点的起始字节和终止字节,确定每个数据帧中的剩余字段位置;其中,剩余节点表示length节点和data节点之外的节点。
基于length字段位置、data字段位置和剩余字段位置对数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
可选地,目标命令包括:数据访问命令、数据查找命令和数据统计命令。
其中,数据访问命令用于利用数据文件的文件读取指针point,获取指定位置的字节内容或者数据帧内容。
数据查找命令用于从文件读取指针point指向的数据帧开始,查找符合第一条件的第一帧数据。
数据统计命令用于利用文件读取指针point在数据文件的指定数据范围内统计符合第二条件的数值。
可选地,数据查找命令的命令参数包括以下其中一种:指定字节内容,正则表达式,二进制解析不等式。
正则表达式用于检索符合指定模式或者指定规则的文本。
二进制解析不等式用于对数据帧的指定字节,通过解析方法得到指定数据类型的数据内容,再判查数据内容是否符合不等式成立条件,从而找到符合不等式成立条件的指定数据帧。
实施例三
参见图6,本发明实施例提供了一种电子设备,该电子设备包括:处理器60,存储器61,总线62和通信接口63,所述处理器60、通信接口63和存储器61通过总线62连接;处理器60用于执行存储器61中存储的可执行模块,例如计算机程序。
其中,存储器61可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口63(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线62可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器61用于存储程序,所述处理器60在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的过程定义的装置所执行的方法可以应用于处理器60中,或者由处理器60实现。
处理器60可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器60中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器60可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器61,处理器60读取存储器61中的信息,结合其硬件完成上述方法的步骤。
本发明实施例所提供的一种航天数据分析方法、装置和电子设备的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,术语“水平”、“竖直”、“悬垂”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (7)

1.一种航天数据分析方法,其特征在于,包括:
确定待分析的数据文件和所述数据文件的数据分帧方式;
接收对所述数据文件进行分析的目标命令;
在确定所述目标命令属于预设命令集合且所述目标命令的格式正确的情况下,基于所述目标命令和所述数据分帧方式对所述数据文件进行读取并分析,得到所述目标命令的执行结果;
其中,基于所述目标命令和所述数据分帧方式对所述数据文件进行读取并分析,包括:
基于所述数据分帧方式对所述数据文件进行数据帧的读取,得到数据分帧后的文件数据流;
对所述文件数据流执行所述目标命令,以对所述数据文件进行分析,得到所述目标命令的执行结果;
其中,所述数据分帧方式包括:按照指定应用层协议进行数据分帧、按照指定字节内容进行数据分帧和按照指定字节长度进行数据分帧;其中,所述指定应用层协议中包含数据帧长度属性;
若所述数据分帧方式采用所述按照指定应用层协议进行数据分帧的方式,则基于所述数据分帧方式对所述数据文件进行数据帧的读取,包括:
基于所述指定应用层协议的配置文件中length节点的起始字节和终止字节,确定每个数据帧中的length字段位置;
获取所述数据文件中所述length字段位置的字段数值,并将所述字段数值作为data字段的数据帧长;
基于所述指定应用层协议的配置文件中data节点的起始字节和所述data字段的数据帧长确定每个数据帧中的data字段位置;
基于所述指定应用层协议的配置文件中剩余节点的起始字节和终止字节,确定每个数据帧中的剩余字段位置;其中,所述剩余节点表示所述length节点和所述data节点之外的节点;
基于所述length字段位置、所述data字段位置和所述剩余字段位置对所述数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
2.根据权利要求1所述的航天数据分析方法,其特征在于,所述目标命令至少包括:目标命令名称;
在接收对所述数据文件进行分析的目标命令之后,还包括:
基于所述目标命令名称在所述预设命令集合中进行命令索引,得到索引结果;
在所述索引结果为存在与所述目标命令名称对应的目标命令动态库的情况下,基于所述目标命令动态库对所述目标命令进行格式检查,得到格式检查结果。
3.根据权利要求1所述的航天数据分析方法,其特征在于,所述目标命令包括:数据访问命令、数据查找命令和数据统计命令;
其中,所述数据访问命令用于利用所述数据文件的文件读取指针point,获取指定位置的字节内容或者数据帧内容;
所述数据查找命令用于从所述文件读取指针point指向的数据帧开始,查找符合第一条件的第一帧数据;
所述数据统计命令用于利用所述文件读取指针point在所述数据文件的指定数据范围内统计符合第二条件的数值。
4.根据权利要求3所述的航天数据分析方法,其特征在于,所述数据查找命令的命令参数包括以下其中一种:指定字节内容,正则表达式,二进制解析不等式;
所述正则表达式用于检索符合指定模式或者指定规则的文本;
所述二进制解析不等式用于对数据帧的指定字节,通过解析方法得到指定数据类型的数据内容,再判查所述数据内容是否符合不等式成立条件,从而找到符合不等式成立条件的指定数据帧。
5.一种航天数据分析装置,其特征在于,包括:
确定模块,用于确定待分析的数据文件和所述数据文件的数据分帧方式;
接收模块,用于接收对所述数据文件进行分析的目标命令;
读取和分析模块,用于在确定所述目标命令属于预设命令集合且所述目标命令的格式正确的情况下,基于所述目标命令和所述数据分帧方式对所述数据文件进行读取并分析,得到所述目标命令的执行结果;
其中,所述读取和分析模块包括:
读取单元,用于基于所述数据分帧方式对所述数据文件进行数据帧的读取,得到数据分帧后的文件数据流;
分析单元,用于对所述文件数据流执行所述目标命令,以对所述数据文件进行分析,得到所述目标命令的执行结果;
其中,所述数据分帧方式包括:按照指定应用层协议进行数据分帧、按照指定字节内容进行数据分帧和按照指定字节长度进行数据分帧;其中,所述指定应用层协议中包含数据帧长度属性;
若所述数据分帧方式采用所述按照指定应用层协议进行数据分帧的方式,则所述读取单元具体用于:
基于所述指定应用层协议的配置文件中length节点的起始字节和终止字节,确定每个数据帧中的length字段位置;
获取所述数据文件中所述length字段位置的字段数值,并将所述字段数值作为data字段的数据帧长;
基于所述指定应用层协议的配置文件中data节点的起始字节和所述data字段的数据帧长确定每个数据帧中的data字段位置;
基于所述指定应用层协议的配置文件中剩余节点的起始字节和终止字节,确定每个数据帧中的剩余字段位置;其中,所述剩余节点表示所述length节点和所述data节点之外的节点;
基于所述length字段位置、所述data字段位置和所述剩余字段位置对所述数据文件进行数据帧的读取,得到数据分帧后的文件数据流。
6.一种电子设备,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至4中任一项所述的航天数据分析方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现上述权利要求1至4中任一项所述的航天数据分析方法。
CN202210914922.8A 2022-08-01 2022-08-01 航天数据分析方法、装置和电子设备 Active CN115291967B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210914922.8A CN115291967B (zh) 2022-08-01 2022-08-01 航天数据分析方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210914922.8A CN115291967B (zh) 2022-08-01 2022-08-01 航天数据分析方法、装置和电子设备

Publications (2)

Publication Number Publication Date
CN115291967A CN115291967A (zh) 2022-11-04
CN115291967B true CN115291967B (zh) 2023-05-23

Family

ID=83826852

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210914922.8A Active CN115291967B (zh) 2022-08-01 2022-08-01 航天数据分析方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN115291967B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115913462B (zh) * 2022-11-09 2023-08-08 中国人民解放军32039部队 一种基于事先规划的网络数据发送方法和数据发送模块
CN116483916B (zh) * 2023-02-14 2024-06-21 中国人民解放军63811部队 基于子段拆分的高频实时码流存储和数据同步检索系统
CN115855028B (zh) * 2023-02-22 2023-11-03 广州导远电子科技有限公司 导航数据解析方法、装置、电子设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2216033A1 (en) * 1997-11-19 1997-12-19 Amsc Subsidiary Corporation Satellite communication network system
CN106383811A (zh) * 2016-08-30 2017-02-08 中国人民解放军63636部队 基于xml描述的航天测控设备间命令翻译算法
CN110325929A (zh) * 2016-12-07 2019-10-11 阿瑞路资讯安全科技股份有限公司 用于检测有线网络变化的信号波形分析的系统和方法
CN110335609A (zh) * 2019-06-26 2019-10-15 四川大学 一种基于语音识别的地空通话数据分析方法及系统
CN111258819A (zh) * 2020-01-22 2020-06-09 山东新北洋信息技术股份有限公司 MySQL数据库备份文件的数据获取方法、装置和系统
CN111723727A (zh) * 2020-06-17 2020-09-29 平安科技(深圳)有限公司 基于边缘计算的云监控方法、装置、电子设备及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10191282A (ja) * 1996-12-27 1998-07-21 Hitachi Ltd データ伝送方法およびそれを用いた通信システム、送信装置、受信装置
US6654386B2 (en) * 2002-04-24 2003-11-25 Teledyne Technologies Incorporated Method, system, and apparatus for processing aircraft data files
CN1599344A (zh) * 2003-09-15 2005-03-23 电视电声研究所 一种家庭网络系统体系结构和实现方法
CN103633742B (zh) * 2013-12-10 2015-10-21 国家电网公司 实现故障录波数据传输时同步在线分析的通讯方法
CN104486019B (zh) * 2014-12-11 2017-04-12 南京新联电子股份有限公司 控制无线专网通信系统用的多载波多调制数字基站的方法
CN104820586B (zh) * 2015-04-09 2018-05-22 北京空间机电研究所 一种航天器嵌入式软件在轨维护方法
CN109213102B (zh) * 2018-09-11 2022-01-18 深圳众城卓越科技有限公司 多命令监测方法、装置、计算机设备及存储介质
CN112489175B (zh) * 2020-11-27 2023-04-11 四三九九网络股份有限公司 一种flash分帧解析大数据内容的方法
CN112631809B (zh) * 2020-12-30 2022-10-14 西安云维智联科技有限公司 一种基于fpga的周期消息接收缓存方法
CN113242254B (zh) * 2021-05-21 2023-01-24 广东电网有限责任公司 通信报文处理方法、装置、终端设备和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2216033A1 (en) * 1997-11-19 1997-12-19 Amsc Subsidiary Corporation Satellite communication network system
CN106383811A (zh) * 2016-08-30 2017-02-08 中国人民解放军63636部队 基于xml描述的航天测控设备间命令翻译算法
CN110325929A (zh) * 2016-12-07 2019-10-11 阿瑞路资讯安全科技股份有限公司 用于检测有线网络变化的信号波形分析的系统和方法
CN110335609A (zh) * 2019-06-26 2019-10-15 四川大学 一种基于语音识别的地空通话数据分析方法及系统
CN111258819A (zh) * 2020-01-22 2020-06-09 山东新北洋信息技术股份有限公司 MySQL数据库备份文件的数据获取方法、装置和系统
CN111723727A (zh) * 2020-06-17 2020-09-29 平安科技(深圳)有限公司 基于边缘计算的云监控方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN115291967A (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
CN115291967B (zh) 航天数据分析方法、装置和电子设备
CN106656536B (zh) 一种用于处理服务调用信息的方法与设备
US9589014B2 (en) Creating data in a data store using a dynamic ontology
US7508985B2 (en) Pattern-matching system
US20090249250A1 (en) Method and system for log file processing and generating a graphical user interface based thereon
US5303147A (en) Computer aided planning method and system
CN110990403A (zh) 业务数据的存储方法、系统、计算机设备及存储介质
CN114201615B (zh) 基于数据快照的科研数据变动回顾方法及服务器
CN113608955B (zh) 一种日志记录方法、装置、设备及存储介质
JP6244274B2 (ja) 相関ルール分析装置および相関ルール分析方法
US20180067837A1 (en) Framework for detecting source code anomalies
JP7022472B1 (ja) データ管理システム、データ管理方法及びデータ管理プログラム
US7844627B2 (en) Program analysis method and apparatus
CN113536762A (zh) Json文本的比对方法及装置
US10268730B2 (en) Focus-driven user interface
CN117875290B (zh) 面向成本价格超长公式计算链的组合配置器
CN115051904B (zh) 一种基于标记语言的单盘状态管理的方法和装置
JP4663526B2 (ja) 帳票作成支援装置、帳票作成支援方法、および帳票作成支援プログラム
JPH117308A (ja) Fa情報管理方法
CN116594917B (zh) Ui测试方法和装置、电子设备及机器可读存储介质
JPH042961B2 (zh)
CN115423431A (zh) 财务数据审核系统、方法、电子设备及存储介质
CN117194586A (zh) 一种合同要素表单变更识别和高亮显示方法、系统及设备
CN117236303A (zh) 一种基于数据的目标表格填充方法及装置
CN116225439A (zh) 业务数据处理方法、装置、设备、介质及产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant