报文解析方法和装置、电子设备与流程

文档序号:16199725发布日期:2018-12-08 06:29阅读:293来源:国知局
报文解析方法和装置、电子设备与流程

本发明涉及数据解析领域,尤其是涉及一种报文解析方法和装置、电子设备。

背景技术

随着计算机技术、网络通信技术、集成电路技术的飞速发展,以全数字式现场总线为代表的现场控制仪表、设备大量应用,使得繁琐的现场连线被单一简洁的现场总线网络所代替,为工业现场控制用户带来了巨大好处。计算机控制技术在汽车控制上的应用中,can协议用于汽车中各种不同设备之间的通信,以此取代了昂贵而笨重的配电线束,通过对车身各个零部件的网络化智能控制,提高了车辆的安全性能以及使用者的体验效果。车辆中can报文数据在can总线上传输的过程中可能引起can报文传输故障,造成对车辆的故障造成错误判断。



技术实现要素:

本发明实施例提供一种报文解析技术。

本发明实施例的一方面,提供一种报文解析方法,包括:

从网络总线中获得报文数据;

基于所述报文数据对应的可执行解析文件对所述报文数据进行解析,获得执行信号,并将所述执行信号发送给执行端;

基于所述执行信号控制所述执行端执行相应操作。

可选地,上述报文解析方法实施例中,所述基于所述报文数据对应的可执行解析文件对所述报文数据进行解析,获得执行信号之前,还包括:

基于协议信号格式化数据,获得所述可执行解析文件。

可选地,上述任一报文解析方法实施例中,所述执行信号包括与所述执行端匹配的地址信息;

所述将所述执行信号发送到执行端,包括:

基于所述地址信息从所述执行端确定所述执行信号对应的响应结构,将所述执行信号发送给所述响应结构;

所述基于所述执行信号控制所述执行端执行相应操作,包括:

通过所述响应结构执行所述执行信号相应的操作。

可选地,上述任一报文解析方法实施例中,所述基于协议信号格式化数据,获得所述可执行解析文件,包括:

对接收的协议信号格式化数据进行解析,得到所述格式化数据的详细信息;

对所述格式化数据的详细信息进行编译,获得第一中间解析文件;

基于所述第一中间解析文件,获得所述可执行解析文件。

可选地,上述任一报文解析方法实施例中,所述基于所述第一中间解析文件,获得所述可执行解析文件,包括:

将所述第一中间解析文件输入与其匹配的预设协议模板,得到所述预设协议模板对应文件格式的第二中间解析文件,每种所述预设协议模板对应一种所述文件格式;

基于所述第二中间解析文件,获得所述可执行解析文件。

可选地,上述任一报文解析方法实施例中,所述第一中间解析文件包括索引数据;

所述将所述第一中间解析文件输入与其匹配的预设协议模板,得到所述预设协议模板对应的格式的第二中间解析文件之前,还包括:

基于所述第一中间解析文件的所述索引数据与模板库中预存的所述预设协议模板对应的标识数据进行匹配,获得与所述索引数据匹配的至少一个所述标识数据,所述模板库中包括至少一个预设协议模板,每个所述预设协议模板对应一个标识数据;

基于所述匹配的标识数据获得与所述第一中间解析文件匹配的预设协议模板。

可选地,上述任一报文解析方法实施例中,所述第一中间解析文件还包括第一数据,所述预设协议模板的设定位置包括第二数据,

所述将所述第一中间解析文件输入与其匹配的预设协议模板,得到所述预设协议模板对应的格式的第二中间解析文件,包括:

将所述与第一中间解析文件匹配的预设协议模板中的所述第二数据替换为所述第一中间解析文件的所述第一数据,得到替换后的预设协议模板;

将所述替换后的预设协议模板作为所述第二中间解析文件。

可选地,上述任一报文解析方法实施例中,所述基于所述第二中间解析文件,获得所述可执行解析文件,包括:

将所述第二中间解析文件与对应的预设工具进行组合,得到第三中间解析文件;

基于编译器对所述第三中间解析文件进行编译,生成所述可执行解析文件。

可选地,上述任一报文解析方法实施例中,所述预设工具包括以下至少一种:

接收工具、分发工具、解析工具、通知工具。

可选地,上述任一报文解析方法实施例中,所述编译器包括如下中的一种:

c++编译器、ctc编译器、mm编译器、cec编译器、androidsleep编译器、eclipse编译器。

可选地,上述任一报文解析方法实施例中,所述格式化数据的详细信息包括以下至少一种:数据起始位、数据结束位、数据长度、数据精度、数据偏移量、数据地址、数据解析方式。

本发明实施例的另一方面,提供一种报文解析装置,包括:

第一获取单元,用于从网络总线中获得报文数据;

数据解析单元,用于基于所述报文数据对应的可执行解析文件对所述报文数据进行解析,获得执行信号,并将所述执行信号发送给执行端;

控制单元,用于基于所述执行信号控制所述执行端执行相应操作。

可选地,上述报文解析装置实施例中,还包括:

第二获取单元,用于基于协议信号格式化数据,获得所述可执行解析文件。

可选地,上述任一报文解析装置实施例中,所述执行信号包括与所述执行端匹配的地址信息;

所述数据解析单元包括:

确定模块,用于基于所述地址信息从所述执行端确定所述执行信号对应的响应结构;

发送模块,用于将所述执行信号发送给所述响应结构;

所述控制单元具体用于通过所述响应结构执行所述执行信号的相应操作。

可选地,上述任一报文解析装置实施例中,所述第二获取单元,具体用于对接收的协议信号格式化数据进行解析,得到所述格式化数据的详细信息;

对所述格式化数据的详细信息进行编译,获得第一中间解析文件;

基于所述第一中间解析文件,获得所述可执行解析文件。

可选地,上述任一报文解析装置实施例中,所述第二获取单元包括:

输入模块,用于将所述第一中间解析文件输入与其匹配的预设协议模板,得到所述预设协议模板对应文件格式的第二中间解析文件,每种所述预设协议模板对应一种所述文件格式;

解析模块,用于基于所述第二中间解析文件,获得所述可执行解析文件。

可选地,上述任一报文解析装置实施例中,所述第一中间解析文件包括索引数据;

所述第二获取单元还包括:

匹配模块,用于基于所述第一中间解析文件的所述索引数据与模板库中预存的所述预设协议模板对应的标识数据进行匹配,获得与所述索引数据匹配的至少一个所述标识数据,所述模板库中包括至少一个预设协议模板,每个所述预设协议模板对应一个标识数据;基于所述匹配的标识数据获得与所述第一中间解析文件匹配的预设协议模板。

可选地,上述任一报文解析装置实施例中,所述第一中间解析文件还包括第一数据,所述预设协议模板的设定位置包括第二数据;

所述输入模块用于将所述与第一中间解析文件匹配的预设协议模板中的所述第二数据替换为所述第一中间解析文件的所述第一数据,得到替换后的预设协议模板;将所述替换后的预设协议模板作为所述第二中间解析文件。

可选地,上述任一报文解析装置实施例中,所述解析模块,具体用于将所述第二中间解析文件与对应的预设工具进行组合,得到第三中间解析文件,对所述第三中间解析文件进行编译,生成所述可执行解析文件。

可选地,上述任一报文解析装置实施例中,所述预设工具包括以下至少一种:

接收工具、分发工具、解析工具、通知工具。

可选地,上述任一报文解析装置实施例中,所述编译器包括如下中的一种:

c++编译器、ctc编译器、mm编译器、cec编译器、androidsleep编译器、eclipse编译器。

可选地,上述任一报文解析装置实施例中,所述格式化数据的详细信息包括以下至少一种:数据起始位、数据结束位、数据长度、数据精度、数据偏移量、数据地址、数据解析方式。

本发明实施例的再一方面,提供一种电子设备,包括处理器,所述处理器包括上述实施例中涉及的所述的报文解析装置。

本发明实施例的再一方面,提供一种电子设备,包括:

存储器,用于存储可执行指令;以及处理器,用于与所述存储器通信以执行所述可执行指令从而完成上述本发明实施例所述的报文解析方法。

基于本发明上述实施例提供的报文解析方法和装置、电子设备,通过从网络总线中获得报文数据;基于报文数据对应的可执行解析文件对报文数据进行解析,获得执行信号,并将执行信号发送给执行端;基于执行信号控制执行端执行相应操作,可实现对网络总线上的报文数据进行安全传输并能将该报文数据进行解析获得准确的执行信号,提高驾驶安全性及驾乘体验。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:

图1为本发明报文解析方法的一个实施例的流程示意图;

图2为应用本发明报文解析方法对can报文进行协议解析的一个示例的流程示意图;

图3为本发明报文解析方法一个示例中can报文协议解析代码生成的流程示意图;

图4为本发明报文解析装置的一个实施例的结构示意图。

具体实施方式

现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术和设备可能不作详细讨论,但在适当情况下,所述技术和设备应当被视为说明书的一部分。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

图1是本发明实施例报文解析方法的一个实施例的流程示意图,参照图1,本实施例的方法包括:

步骤110,从网络总线中获得报文数据。

本实施例中涉及的网络总线可以包括但不限于:可用于报文数据传输的网络总线,可选地,网络总线可以包括车身网总线(can总线)、现场总线(fieldbus)以及其他类型的网络总线。

本实施例中可用于实现上述步骤的主体必须能够与网络总线能够进行连接,能够读取并获得网络总线上的数据。与网络总线连接的方式可以有多种,可以是通过有线数据插口的连接实现与网络总线的连接,也可以是通过无线网络连接的方式实现与网络总线的连接,本发明实施例对网络总线的具体连接方式不做限定。

上述本实施例中所涉及的报文数据可以是从网络总线上直接获得的实时传输的报文数据,也可以是存储在网络总线上的报文数据,本实施例对报文数据的类型不做限定,只要是可从网络总线上获得的报文数据即可。并且,本实施例中对网络总线中的报文数据获取的方式不做限定,可以是上述的有线数据接口连接的方式,也可以是无线网络连接的方式,还可以是本领域技术人员可以想到的其他可实施的方式。

可选地,上述报文数据可以是电信号、数字信号、模拟信号等其他可以用数据线连接进行传输或者通过无线网络连接进行传输的信号。本实施例中报文数据还可以是代码文本,但在网络总线上传输的过程中是以电信号的形式进行传输的,这样既可以方便报文数据在网络总线上的传输,还可以适用于多种的报文数据形式的转换,例如,电信号转蓝牙信号、电信号转光信号、电信号转数字模拟信号等。

在一个可选的示例中,步骤110可通过第一获取单元实现。

步骤120,基于报文数据对应的可执行解析文件对报文数据进行解析,获得执行信号,并将执行信号发送给执行端。

在步骤110获得报文数据之后,步骤120基于报文数据对应的可执行解析文件对报文数据进行解析。本实施例中,对应于不同的报文数据都存储有相应的可执行解析文件,通过可执行解析文件可对对应的报文数据进行解析。同一可执行解析文件可以对同类的报文数据进行解析,如从同一地址获得的不同数值范围的报文数据;也可以对其他具有共同信息的报文数据进行解析,例如具有相同时间标识信息的报文数据等其他的本领域技术人员可以预知与可实施的报文数据。在对报文数据进行解析之后获得执行信号。实现某种操作时,网络总线会进行记录以及逻辑分析,基于上述操作在网络总线上形成报文数据以包括整个操作的数据记录。在执行端获得执行信号之后,将该执行信号发送给能够接收执行信息号且能够实现执行信号所包含动作的执行端进行执行。在汽车领域中,车身的各个零部件会把自身的状态实时反馈到can总线上并且也可以实时从总线上获取其他零部件的信息或控制命令,上述零部件的信息以can报文的形式在can总线上进行传输。通过对can报文的快速解析,可使零部件能够及时接收控制器的控制命令,使控制器能够及时收到车身零部件反馈的自身的状态的信息,在智能汽车的中控大屏上实时显示当前车门是否打开,当前哪个灯光是处于打开状态,哪一个零部件出现故障灯等,这些信息都是通过对can报文的解析获取到的。通过解析得到包括上述信息的车身零件信息,以方便车辆使用者能够及时作出应对措施,提高驾驶的安全性与舒适性。

在一个可选的实施例中,步骤120可通过解析单元与发送单元协同作用完成。

步骤130,基于执行信号控制执行端执行相应操作。

执行端获得执行信号后,执行端解析执行信号所携带的动作指令信息,执行端进行逻辑分析,并在执行端实现执行信号所携带的动作指令信息。

在一个可选实施例中,步骤130可以通过控制单元实现。

上述本实施例提供的报文解析方法通过全自动化的方式进行,可实现对网络总线上的报文数据进行安全传输并能将该报文数据进行解析获得准确的执行信号,提高驾驶安全性及驾乘体验。

可选地,步骤120之前,还可以包括:基于协议信号格式化数据,获得可执行解析文件。

本实施例中在获得执行信号之前还需对协议信号格式化数据进行处理,获得与从网络总线上获得的报文数据相对应的可执行解析文件。其中,协议信号格式化数据是与从网络总线上获得的报文数据相对应的基本数据。由于与从网络总线上获得的报文数据相对应的可执行解析文件的种类繁多且占用空间较大,所以,为避免占用空间以及运行空间较大,在从网络总线获得某一报文数据之后,调取与报文数据相匹配的可执行解析文件。获得报文数据之后确定报文数据的类型,基于相应的协议信号格式化数据进而获得相应的可执行解析文件,即可执行解析文件的生成的种类是根据获取的报文数据的类型而确定的。通过该种方式生成可执行解析文件,对报文数据具有针对性,且占用空间以及运行空间小。

在一个或多个可选的实施例中,执行信号包括与执行端匹配的地址信息,执行信息通过该地址信息在执行端搜索该地址并在该地址所处的设备执行该执行信息。

上述步骤120中,将执行信号发送到执行端,包括:基于地址信息从执行端确定执行信号对应的响应结构,将执行信号发送给响应结构。执行端有多种结构构成,为使执行信号能够更加精细、准确地将其所携带的指令信息下达到准确的结构上,执行信号基于地址信息从执行端确定执行信号对应的响应结构,使每一执行信号具有针对性,提高执行信号动作指令实施的时效性以及准确性。

将执行信号发送给响应结构,避免了执行信号被发送到其他执行端的结构中,引起错误发送导致其他结构在接收到该执行指令后产生错误动作或者功能异常的现象。本实施例中将执行信号发送给响应结构的目的在于执行信号只发送至与其地址信息相匹配的响应结构。述基于执行信号控制执行端执行相应操作,包括:通过响应结构执行该执行信号相应的操作。

在一个可选的实施例中,参照图2,图2为本发明报文解析方法一个示例中can报文协议解析代码生成的流程示意图,具体包括如下步骤:

步骤s001:can总线接收各个零部件自身状态的can报文,各个零部件会把自身的状态实时反馈到can总线上并且也可以实时从can总线上获取其他零部件的信息或控制命令。本实施例中can报文是can报文的具体一帧数据,其格式包括id字节以及8个字节的数据。一个can报文可以包括多个can信号,每个信号占用8个字节中不同的位,以此来分割同一个can报文不同的信号,can信号代表的具体含义由can协议文档约束。

步骤s002:从总线上实时获取各种can报文。本实施例中,从can总线接收各个零部件自身状态的can报文这一动作是通过can报文接收工具类实现的,can报文接收工具类的主要功能是从汽车总线上获取需要的can报文。

步骤s003:获取从步骤s002获取的can报文,并根据can报文的id分发到不同的can信号解析模块上,如果找不到对应的解析模块则不处理。本实施例中该步骤是通过can报文分发工具类实现的,其中,can报文分发工具类主要功能是对获取的can报文根据can地址(id)分发到对应的can报文解析类。

步骤s004:对步骤s003获取的can报文数据进行解析,如果解析成功则通知步骤s005,如果解析失败则不做处理。本实施例中该步骤是通过can报文解析基础类实现的,该类主要提供根据传入的参数对can报文解析的基础工具。传入的参数主要包含can报文的数据:can信号的起始位,can信号的结束位,can信号的长度,can信号的精度,can信号的偏移量,can信号的解析方式及can信号的地址信息。

步骤s005:其他应用收到解析后的can信号后根据具体的业务逻辑,做出对应的响应。本实施例中该步骤是通过can信号数值通知类实现的,该类的主要功能是把解析获取的can报文的数据和can信号id通知到对应的使用者,便于使用者进行业务逻辑的处理。该使用者可以是控制器也可以是通过直观看到经转换的can信号的直观信息的驾乘人员。

可选地,基于协议信号格式化数据,获得可执行解析文件,包括:对接收的协议信号格式化数据进行解析,得到格式化数据的详细信息;对格式化数据的详细信息进行编译,获得第一中间解析文件;基于第一中间解析文件,获得可执行解析文件。替代了现有技术中以人工手动操作的形式,降低了人工操作的工作量,以及人工手动操作的出错率,进而降低了人工进行维护的成本。

本实施例是由协议信号格式化数据生成可执行解析文件的中间过程,该过程中主要对协议信号格式化数据,提取协议信号格式化数据中的详细信息,该详细信息中包括上述地址信息。并对该详细信息进行编译获得第一中间解析文件,该第一中间解析文件并非是可执行解析文件。通过对获得的第一中间解析文件再进行处理才可获得可执行解析文件。通过多次处理后的协议信号格式化数据获得可执行解析文件,可提高可执行解析文件的准确性以及功能的完整性,并且确保了可执行解析文件生成的安全性。

可选地,基于第一中间解析文件,获得可执行解析文件,包括:将第一中间解析文件输入与其匹配的预设协议模板,得到预设协议模板对应文件格式的第二中间解析文件,每种预设协议模板对应一种文件格式;基于第二中间解析文件,获得可执行解析文件。该过程在生成第一中间解析文件之后对第一中间解析文件进行再处理,输入与其匹配的预设协议模板,得到预设协议模板对应文件格式的第二中间解析文件。预设协议模板中包括构成所有类型可执行解析文件的共用的数据,将这些共用的数据作为预设协议模板,可节省人工手动对第一中间解析文件添加这些共用的数据造成的人工消耗量大以及出错率高的缺陷。既可以节约人工成本,还可以提高可执行解析文件的准确性。

在一个或多个可选的实施例中,第一中间解析文件包括索引数据;将第一中间解析文件输入与其匹配的预设协议模板,得到预设协议模板对应的格式的第二中间解析文件之前,还包括:基于第一中间解析文件的索引数据与模板库中预存的预设协议模板对应的标识数据进行匹配,获得与索引数据匹配的至少一个标识数据,模板库中包括至少一个预设协议模板,每个预设协议模板对应一个标识数据;基于匹配的标识数据获得与第一中间解析文件匹配的预设协议模板。

通过在第一中间解析文件中设置索引数据,可通过该索引数据对模板库中预存的预设协议模板进行匹配,不必需要将第一中间解析文件以及预设协议模板中携带的所有数据信息进行匹配才能确定某一第一中间解析文件对应的预设协议模板,提高了可执行解析文件生成的效率。

可选地,将第一中间解析文件的索引信息与模板库中预设协议模板对应的标识数据进行匹配,获得与索引数据匹配的至少一个标识数据。由于模板库中的预设协议模板较多,所以,对应的与索引数据匹配的标识数据可能不止一个,进而与第一中间解析文件对应的预设协议模板的数量也可能不止一个。在出现上述状况时,还可以通过增加第一中间解析文件索引数据的数量对预设协议模板进行进一步筛选,最终确定与第一中间解析文件相匹配的唯一的预设协议模板。进而进行第一中间解析文件第一中间解析文件输入与其匹配的预设协议模板,得到预设协议模板对应的格式的第二中间解析文件。

在一个或多个可选的实施例中,第一中间解析文件还包括第一数据,预设协议模板的设定位置包括第二数据,将第一中间解析文件输入与其匹配的预设协议模板,得到预设协议模板对应的格式的第二中间解析文件,包括:将与第一中间解析文件匹配的预设协议模板中的第二数据替换为第一中间解析文件的第一数据,得到替换后的预设协议模板;将替换后的预设协议模板作为第二中间解析文件。通过将第一中间解析文件中的第一数据替换预设协议解析模板中的第二数据,得到第二中间解析文件,省去了人工将第二数据删除并重新写入第一数据过程的时间,并通过自动化生成的方式避免了人工手动操作容易出错的缺陷。提高了效率以及第二中间解析文件生成的准确性。

可选地,基于第二中间解析文件,获得可执行解析文件,包括:将第二中间解析文件与对应的预设工具进行组合,得到第三中间解析文件;基于编译器对第三中间解析文件进行编译,生成可执行解析文件。

上述实施例中得到的第二中间解析文件仍不能成为可执行文件,在设备中无法运行对报文数据进行解析,所以,在获得第二中间解析文件之后还需与预设的工具进行组合,得到第三中间解析文件,通过对第三中间解析文件进行编译即可生成可执行解析文件对报文数据进行解析的操作。

通过上述协议信号格式化数据到可执行解析文件的生成过程,提高了数据的安全性,该过程全部自动化处理,节约了人工操作的成本,降低了人工操作容易出错的缺陷。

在一个或多个可选的实施例中,预设工具包括以下至少一种:接收工具、分发工具、解析工具、通知工具。上述预设工具为动作指令数据,通过将上述预设工具与第二中间解析文件组合后可使第二中间解析文件具备执行多种动作的条件,使第二中间解析文件更完善,具备一定的动作执行条件。

可选地,编译器包括如下中的一种:c++编译器、ctc编译器、mm编译器、cec编译器、androidsleep编译器、eclipse编译器。第三解析文件可以是c语言编码生成的文件,也可以是java语言编码生成的文件或者其他语言编码生成的文件,对应地,将第三中间解析文件编译成可执行解析文件所采用的编译器可以包括但不限于上述几种编译器,提高了可执行解析文件生成的多样性,以适用于不同的执行端。其中,c++是c语言的继承,它既可以进行c语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。c++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计.c++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。ctc同样为c语言编程的一个分类。androidsleep、eclipse为基于java编程开发过程中的语言。

可选地,格式化数据的详细信息包括以下至少一种:数据起始位、数据结束位、数据长度、数据精度、数据偏移量、数据地址、数据解析方式。通过对上述多种详细信息进行编译后获得的第一中间解析文件,可使第一中间解析文件的索引数据种类较多,能够更精确地匹配模板库中的预设协议模板。

图3为本发明报文解析方法一个示例中can报文协议解析代码生成的流程示意图,参照图3,可包括如下步骤:

步骤s001:接收用户传入的can协议格式化文档,调用can协议文档解析工具,获取can信号的详细信息,例如:can报文id,can信号名,can信号起始位,can信号结束位,can信号长度,can信号精度,can信号偏移量,can信号id等信息,如果解析失败则提醒用户对应的错误原因。

步骤s002:根据步骤s001获取的can信号信息,生成对应的can解析代码,即第一中间解析文件。并读取提供的代码模板与can协议解析代码组合成完整的can报文解析类,即第二中间解析文件,如果代码生成失败则提示用户。

步骤s003:把步骤s002生成的代码和提供的基础工具包合并生成完整的can协议解析工程,即第三中间解析文件。

步骤s004:调用编译系统,编译步骤s003生成的can协议解析工程,生成可执行文件。

上述步骤中can报文解析类同样为代码文件,can协议解析工程为can协议解析类(代码)与上述预设工具共同构成的第三中间解析文件。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

本发明实施例的另一方面在于提供一种报文解析装置,图4为本发明报文解析装置一个实施例的结构示意图。该实施例的装置可用于实现本发明上述各方法实施例。如图4所示,该实施例的装置包括:

第一获取单元,用于从网络总线中获得报文数据。

数据解析单元,用于基于报文数据对应的可执行解析文件对报文数据进行解析,获得执行信号,将执行信号发送给执行端。

控制单元,用于基于执行信号控制执行端执行相应操作。

上述本实施例提供的报文解析装置通过全自动化的方式进行,可实现对网络总线上的报文数据进行安全传输并能将该报文数据进行解析获得准确的执行信号,提高驾驶安全性及驾乘体验。

在一个或多个可选的实施例中,本实施例装置还可以包括第二获取单元,该第二获取单元用于基于协议信号格式化数据,获得可执行解析文件。本实施例提供的报文解析装置通过第二获取单元得到可执行解析文件后,通过可执行解析文件对报文数据进行解析,报文数据与可执行解析文件对应,某一可执行解析文件只能解析某一个或者某一类的报文数据。

为避免占用的空间以及占用的运行空间较大,在从网络总线获得某一报文数据之后,数据解析单元调取与报文数据相匹配的可执行解析文件。获得报文数据之后确定报文数据的类型,基于相应的协议信号格式化数据进而获得相应的可执行解析文件,即可执行解析文件的生成的种类是根据获取的报文数据的类型而确定的。

本实施例通过设置第二获取单元,可针对报文数据具进行调取与报文数据相匹配的可执行解析文件,避免了对某一报文数据进行解析时轮询每一可执行解析文件过程所占用空间较大的缺陷。

可选地,执行信号包括与执行端匹配的地址信息;本实施例中数据解析单元还包括确定模块与发送模块,其中,确定模块用于基于地址信息从执行端确定执行信号对应的响应结构;发送模块将执行信号发送给响应结构;控制单元可用于通过响应结构执行上述执行信号的相应操作。

在一个或多个实施例中,第二获取单元具体用于对接收的协议信号格式化数据进行解析,得到格式化数据的详细信息;对格式化数据的详细信息进行编译,获得第一中间解析文件;基于第一中间解析文件,获得可执行解析文件。

通过在本实施例的报文解析装置中设置第二单元获取可执行解析文件,降低了人工操作的工作量,以及人工手动操作的出错率,进而降低了人工进行维护的成本。

可选地,本实施例的第二获取单元还包括输入模块与解析模块,其中,输入模块可用于将第一中间解析文件输入与其匹配的预设协议模板,得到预设协议模板对应文件格式的第二中间解析文件;每种预设协议模板对应一种文件格式;解析模块可用于基于第二中间解析文件,获得可执行解析文件。

通过设置输入模块可避免人工操作输入造成的成本高、准确率低的缺陷,设置解析模块提高可执行解析文件的准确性。

可选地,第一中间解析文件包括索引数据;第二获取单元还包括:匹配模块,该匹配模块可用于基于第一中间解析文件的索引数据与模板库中预存的预设协议模板对应的标识数据进行匹配,获得与索引数据匹配的至少一个标识数据;模板库中包括至少一个预设协议模板,每个预设协议模板对应一个标识数据;匹配单元还可用于基于匹配的标识数据获得与第一中间解析文件匹配的预设协议模板。

通过匹配模块将第一中间解析文件的索引数据与预设模板中的标识数据进行匹配,避免将第一中间解析文件与预设模板中的所有数据进行匹配,提高了可执行解析文件生成的效率

在一个或多个实施例中,第一中间解析文件还包括第一数据,预设协议模板的设定位置包括第二数据;输入模块可用于将与第一中间解析文件匹配的预设协议模板中的第二数据替换为第一中间解析文件的第一数据,得到替换后的预设协议模板;将替换后的预设协议模板作为第二中间解析文件。

输入模块的设置省去了人工将第二数据删除并重新写入第一数据过程的时间,并通过自动化生成的方式避免了人工手动操作容易出错的缺陷。

可选地,本实施例的解析模块可用于将第二中间解析文件与对应的预设工具进行组合,得到第三中间解析文件,对第三中间解析文件进行编译,生成可执行解析文件。

解析模块提高了效率以及第二中间解析文件生成的准确性。提高了数据的安全性,自动化处理节约了人工操作的成本,降低了人工操作容易出错的缺陷。

在一个或多个实施例中,预设工具包括以下至少一种:接收工具、分发工具、解析工具、通知工具。

可选地,编译器包括如下中的一种:c++编译器、ctc编译器、mm编译器、cec编译器、androidsleep编译器、eclipse编译器。

可选地,格式化数据的详细信息包括以下至少一种:数据起始位、数据结束位、数据长度、数据精度、数据偏移量、数据地址、数据解析方式。

根据本申请实施例的再一个方面,提供的一种电子设备,设置有上述实施例所涉及的报文解析装置。

根据本申请实施例的又一个方面,提供的一种电子设备,包括:存储器,用于存储可执行指令;以及处理器,用于与存储器通信以执行上述可执行指令从而完成上述实施例中涉及的报文解析方法的操作。

本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。

本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1