CN115657521A - 解析can报文数据的方法、装置、车辆及存储介质 - Google Patents
解析can报文数据的方法、装置、车辆及存储介质 Download PDFInfo
- Publication number
- CN115657521A CN115657521A CN202211191696.1A CN202211191696A CN115657521A CN 115657521 A CN115657521 A CN 115657521A CN 202211191696 A CN202211191696 A CN 202211191696A CN 115657521 A CN115657521 A CN 115657521A
- Authority
- CN
- China
- Prior art keywords
- signal
- target
- file
- parsing
- analyzing
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种解析CAN报文数据的方法、装置、车辆及存储介质,其中,方法包括:解析输入相关配置后的配置文件,并根据第一解析结果判断配置是否满足预设规范条件;如果满足预设规范条件,则解析DBC文件,并根据第二解析结果筛选目标报文;基于目标报文解析对应的目标信号,并将解析完成的目标信号输入至预设表格中。本申请实施例可以在判断配置满足预设规范条件的前提下,从DBC文件中获取所需信号的相关信息,实现高效、精准地从大量的CAN报文中筛选出目标信号,从而提高排查问题的效率。
Description
技术领域
本申请涉及汽车电子技术领域,特别涉及一种解析CAN报文数据的方法、装置、车辆及存储介质。
背景技术
CAN(Controller Area Network,控制器局域网络)是国际上应用最广泛的现场总线之一,CAN报文是指发送端向接收端传输数据的帧,其中,一帧报文可以理解为一组十六进制数据,这些数据包含了各个控制器之间需要传输的信息。随着汽车电子技术的飞速发展,汽车上的功能越来越多,各个控制器之间传输的数据量也越来越大。在项目开发的前期阶段,可以通过分析整车的报文对问题进行排查。然而,当得到的报文数据量特别庞大时,需要消耗大量时间进行问题排查。
相关技术中,可以基于Matlab工具,实现CAN报文处理,然而Matlab处理文件效率较低,不适用于报文数据量大的情况;相关技术中,还有基于针对DBC(DataBaseCommander,数据管理软件)文件库的检索,实现CAN报文逐条解析的方法,但在查询相关信息的过程中,无法进行指定信号查询,以致于在进行信号查询时,相关技术需要查询所有信号并进行打印,从而影响效率。
综上,相关技术中,难以应用于CAN报文数据量较大,且CAN报文文件数较多的情况,有待改进。
发明内容
本申请提供一种解析CAN报文数据的方法、装置、车辆及存储介质,以解决相关技术中,在面对CAN报文数据量较大,且CAN报文文件数较多的情况时,解析效率低下的技术问题。
本申请第一方面实施例提供一种解析CAN报文数据的方法,包括以下步骤:解析输入相关配置后的配置文件,并根据第一解析结果判断配置是否满足预设规范条件;如果满足所述预设规范条件,则解析DBC文件,并根据第二解析结果筛选目标报文;以及基于所述目标报文解析对应的目标信号,并将解析完成的目标信号输入至预设表格中。
根据上述技术手段,本申请实施例可以在判断配置满足预设规范条件的前提下,从DBC文件中获取所需信号的相关信息,并可以通过配置指定筛选一个或多个目标信号,实现高效、精准地从大量的CAN报文中筛选出目标信号,从而提高排查问题的效率。
可选地,在本申请的一个实施例中,所述相关配置包括所述目标报文的起始序号和结束序号、解析报文的通道、解析信号的名称,写入excel文件的周期与所述DBC文件的名称中的至少一项。
根据上述技术手段,本申请实施例可以通过配置相应的参数,从而便于后续进行指定目标信号的筛选,操作简单,且能提高后续指定目标信号的筛选效率。
可选地,在本申请的一个实施例中,所述第二解析结果包括信号的所属结点ID,信号的周期,信号的起始位,信号的长度,信号的分辨率和信号的偏移量中的至少一项。
根据上述技术手段,本申请实施例可以由第二解析结果获取目标信号相关信息。
可选地,在本申请的一个实施例中,所述根据第二解析结果筛选出目标报文,包括:利用由Perl语言编写的筛选脚本从待解析的目标文件中获取所述目标报文。
根据上述技术手段,本申请实施例可以利用Perl语言编写脚本,进行文件数据处理,以提高处理文本数据的效率。
可选地,在本申请的一个实施例中,所述目标信号信号名与所述DBC文件的信号名命名一致。
根据上述技术手段,本申请实施例可以基于保证目标信号信号名与DBC文件中定义的信号名保持一致,实现后续目标信号的高效获取。
本申请第二方面实施例提供一种解析CAN报文数据的装置,包括:第一解析模块,用于解析输入相关配置后的配置文件,并根据第一解析结果判断配置是否满足预设规范条件;第二解析模块,用于在满足所述预设规范条件时,解析DBC文件,并根据第二解析结果筛选目标报文;以及第三解析模块,用于基于所述目标报文解析对应的目标信号,并将解析完成的目标信号输入至预设表格中。
可选地,在本申请的一个实施例中,所述相关配置包括所述目标报文的起始序号和结束序号、解析报文的通道、解析信号的名称,写入excel文件的周期与所述DBC文件的名称中的至少一项。
可选地,在本申请的一个实施例中,所述第二解析结果包括信号的所属结点ID,信号的周期,信号的起始位,信号的长度,信号的分辨率和信号的偏移量中的至少一项。
可选地,在本申请的一个实施例中,所述第二解析模块包括:获取单元,用于利用由Perl语言编写的筛选脚本从待解析的目标文件中获取所述目标报文。
可选地,在本申请的一个实施例中,所述目标信号信号名与所述DBC文件的信号名命名一致。
本申请第三方面实施例提供一种车辆,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的解析CAN报文数据的方法。
本申请第四方面实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,该程序被处理器执行时实现如上的解析CAN报文数据的方法。
本申请实施例的有益效果:
(1)本申请实施例可以通过保证目标信号的信号明与DBC文件中的信号名一直,实现基于DBC文件的信号相关信息的获取,便于进行指定信号的筛选;
(2)本申请实施例可以在处理文件数据时通过使用Perl语言编写脚本,提高文本数据的处理效率;
(3)本申请实施例可以通过配置相应的参数,即可筛选指定的目标信号,然后写入到excel中,操作简单,效率较高。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的一种解析CAN报文数据的方法的流程图;
图2为根据本申请一个实施例的解析CAN报文数据的方法的解析配置文件的流程图;
图3为根据本申请一个实施例的解析CAN报文数据的方法的解析DBC文件流程图;
图4为根据本申请一个实施例的解析CAN报文数据的方法的筛选目标报文的流程图;
图5为根据本申请一个实施例的解析CAN报文数据的方法的解析目标信号的流程图;
图6为根据本申请一个实施例的解析CAN报文数据的方法的流程图;
图7为根据本申请实施例提供的一种解析CAN报文数据的装置的结构示意图;
图8为根据本申请实施例提供的车辆的结构示意图。
其中,10-解析CAN报文数据的装置;100-第一解析模块、200-第二解析模块、300-第三解析模块。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的解析CAN报文数据的方法、装置、车辆及存储介质。针对上述背景技术中心提到的相关技术中,在面对CAN报文数据量较大,且CAN报文文件数较多的情况时,解析效率低下的技术问题,本申请提供了一种解析CAN报文数据的方法,在该方法中,可以在判断配置满足预设规范条件的前提下,从DBC文件中获取所需信号的相关信息,进而可以通过配置指定筛选一个或多个目标信号,并输入至预设表格中,实现高效、精准地从大量的CAN报文中筛选出目标信号,从而提高排查问题的效率,可应用范围较广,实用性高。由此,解决了相关技术中,在面对CAN报文数据量较大,且CAN报文文件数较多的情况时,解析效率低下的技术问题。
具体而言,图1为本申请实施例所提供的一种解析CAN报文数据的方法的流程示意图。
如图1所示,该解析CAN报文数据的方法包括以下步骤:
在步骤S101中,解析输入相关配置后的配置文件,并根据第一解析结果判断配置是否满足预设规范条件。
在实际执行过程中,本申请实施例可以在配置文件中输入相关配置之后,对配置文件进行解析,并基于解析获得的第一解析结果,判断配置是否满足预设的规范条件,从而便于后续对目标报文进行解析。
具体地,如图2所示,本申请实施例对于配置文件的解析过程可以包括以下步骤:
步骤S201:基于Fopen()打开输入相关配置后的配置文件;
步骤S202:读取并记录配置文件中的配置;
步骤S203:判断配置是否读完,若完成则进入下一步骤,若未完成则回到上一步骤;
步骤S204:Fclose()关闭配置文件。
本申请实施例可以在配置文件解析完毕后,判断其配置是否符合预设规范条件,若不符合,则可以进行报错,提醒技术人员重新输入相关配置。
需要注意的是,预设规范条件可以由本领域技术人员根据实际情况进行相应设置,在此不做具体限制。
可选地,在本申请的一个实施例中,相关配置包括目标报文的起始序号和结束序号、解析报文的通道、解析信号的名称,写入excel文件的周期与DBC文件的名称中的至少一项。
也就是说,配置文件可以包含实现本申请实施例所需要的相关配置,如目标报文的起始序号及结束序号、解析报文的通道、解析信号的名称、写入excel文件的周期、DBC文件的名称等。
在步骤S102中,如果满足预设规范条件,则解析DBC文件,并根据第二解析结果筛选目标报文。
其中,DBC文件可以包含本申请实施例所查询目标信号的所有信号,本申请实施例可以在判断输入配置后的配置文件满足预设规范条件后,输入DBC文件,并对其进行解析,获取第二解析结果,即目标信号相关信息,从而基于第二解析结果筛选目标报文。
具体地,如图3所示,DBC文件的解析过程可以包括以下步骤:
步骤S301:基于Fopen()打开DBC文件;
步骤S302:查询第N个信号,其中N的初始值为1,每次查询完当前信号后,可以自动加1;
步骤S303:通过特定DBC文件中特定的标识符找到所需的信息;
步骤S304:判断所有信号是否查询完毕,若未查询完毕,则返回查询下一个信号;若查询完毕,则进入下一步骤;
步骤S305:Fclose()关闭DBC文件。
可选地,在本申请的一个实施例中,第二解析结果包括信号的所属结点ID,信号的周期,信号的起始位,信号的长度,信号的分辨率和信号的偏移量中的至少一项。
在一些实施例中,DBC文件的第二解析结果,即目标信号的相关信息可以包括信号的所属结点ID、信号的周期、信号的起始位、信号的长度、信号的分辨率和信号的偏移量等,本申请实施例在后续逐条解析CAN报文时,即从目标报文中获取信号的所属结点ID再返回DBC文件查询目标信号的相关信息的过程中,可以实现对指定信号的查询,从而提高查询效率。
可选地,在本申请的一个实施例中,根据第二解析结果筛选出目标报文,包括:利用由Perl语言编写的筛选脚本从待解析的目标文件中获取目标报文。
在实际执行过程中,如图4所示,筛选目标报文的过程可以包括以下步骤:
步骤S401:基于Fopen()打开第N个报文文件,其中,N的初始值为1,每次筛选完当前文件后,可以自动加1;
步骤S402:读取第M行报文对比,筛选出目标报文,其中,M的初始值为1,每次筛选完当前行后,可以自动加1;
步骤S403:判断当前筛选进度是否到达当前筛选报文的行末,若未到达,则返回读取下一行;若到达,则进入下一步骤;
步骤S404:Fclose()关闭第N个报文文件;
步骤S405:判断当前筛选的报文文件是否为最后一个文件,若不是最后一个文件,则返回打开下一个文件;若是最后一个文件,则筛选结束。
本申请实施例可以筛选保留需要的目标报文,从而进一步提高解析信号的效率。
在步骤S103中,基于目标报文解析对应的目标信号,并将解析完成的目标信号输入至预设表格中。
可以理解的是,目标报文即为本申请实施例中用于解析的目标文件,目标报文可以一个或多个文件,本申请实施例可以从筛选后的目标报文中,提取目标信号并写入至预设表格中,其中,预设表格可以为excel表格,以实现简洁、高效、实用的CAN报文数据解析。
具体地,如图5所示,目标信号的解析过程可以包括以下步骤:
步骤S501:基于Fopen()打开筛选后的报文文件;
步骤S502:判断当前报文文件是否读取完毕,若读取完毕,则进入最后步骤,关闭当前报文文件;若未读取完毕,则进入下一步骤;
步骤S503:读取第N行报文,其中,N的初始值为1,每次查询完当前行后,可以自动加1;
步骤S504:判断当前报文文件的所有目标信号是否对比完毕,若对比完毕,则返回判断当前报文文件是否读取完毕;若尚未对比完毕,则进入下一步骤;
步骤S505:选择第M个目标信号的ID与该行报文的ID进行对比,其中,M的初始值为1,每次查询完当前目标后,可以自动加1;
步骤S506:判断上述ID是否一致,若不一致,则返回检查是否所有目标信号对比完毕;若一致,则进入下一步骤;
步骤S507:通过获取的该目标信号的起始位、长度、分辨率、精度等信息,计算出目标信号的值;
步骤S508:Fclose()关闭当前报文文件。
在解析完毕后,本申请实施例可以将解析完成的目标信号输入至excel表格中。
可选地,在本申请的一个实施例中,目标信号信号名与DBC文件的信号名命名一致。
根据上述技术手段,本申请实施例可以基于保证目标信号信号名与DBC文件中定义的信号名保持一致,实现后续目标信号的高效获取。
结合图2至图6所示,以一个实施例对本申请实施例的解析CAN报文数据的方法的工作原理进行详细阐述。
如图6所示,本申请实施例可以包括以下步骤:
S1:在配置文件中输入本申请实施例相关配置,然后进入S2。
其中,所需配置包括但不仅限于:目标报文的起始以及结束序号、解析报文的通道、解析信号的名称、写入excel文件的周期和DBC文件的名称等。
S2:解析配置文件,解析成功进入S3。
如图2所示,本申请实施例对于配置文件的解析过程可以包括以下步骤:
步骤S201:基于Fopen()打开输入相关配置后的配置文件;
步骤S202:读取并记录配置文件中的配置;
步骤S203:判断配置是否读完,若完成则进入下一步骤,若未完成则回到上一步骤;
步骤S204:Fclose()关闭配置文件。
S3:输入DBC文件,然后进入S4。
其中,查询的信号名必须跟DBC里面的信号名命名一致。
S4:解析DBC文件,解析成功进入S5。
其中,解析DBC文件获取的信息可以包括但不限于:信号的所属结点ID、信号的周期、信号的起始位、信号的长度、信号的分辨率和信号的偏移量等。
如图3所示,DBC文件的解析过程可以包括以下步骤:
步骤S301:基于Fopen()打开DBC文件;
步骤S302:查询第N个信号,其中N的初始值为1,每次查询完当前信号后,可以自动加1;
步骤S303:通过特定DBC文件中特定的标识符找到所需的信息;
步骤S304:判断所有信号是否查询完毕,若未查询完毕,则返回查询下一个信号;若查询完毕,则进入下一步骤;
步骤S305:Fclose()关闭DBC文件。
S5:用Perl语言编写的脚本筛选目标报文,以过滤掉绝大多数无用的报文,提高效率。
如图4所示,筛选目标报文的过程可以包括以下步骤:
步骤S401:基于Fopen()打开第N个报文文件,其中,N的初始值为1,每次筛选完当前文件后,可以自动加1;
步骤S402:读取第M行报文对比,筛选出目标报文,其中,M的初始值为1,每次筛选完当前行后,可以自动加1;
步骤S403:判断当前筛选进度是否到达当前筛选报文的行末,若未到达,则返回读取下一行;若到达,则进入下一步骤;
步骤S404:Fclose()关闭第N个报文文件;
步骤S405:判断当前筛选的报文文件是否为最后一个文件,若不是最后一个文件,则返回打开下一个文件;若是最后一个文件,则筛选结束。
S6:解析目标信号。
如图5所示,目标信号的解析过程可以包括以下步骤:
步骤S501:基于Fopen()打开筛选后的报文文件;
步骤S502:判断当前报文文件是否读取完毕,若读取完毕,则进入最后步骤,关闭当前报文文件;若未读取完毕,则进入下一步骤;
步骤S503:读取第N行报文,其中,N的初始值为1,每次查询完当前行后,可以自动加1;
步骤S504:判断当前报文文件的所有目标信号是否对比完毕,若对比完毕,则返回判断当前报文文件是否读取完毕;若尚未对比完毕,则进入下一步骤;
步骤S505:选择第M个目标信号的ID与该行报文的ID进行对比,其中,M的初始值为1,每次查询完当前目标后,可以自动加1;
步骤S506:判断上述ID是否一致,若不一致,则返回检查是否所有目标信号对比完毕;若一致,则进入下一步骤;
步骤S507:通过获取的该目标信号的起始位、长度、分辨率、精度等信息,计算出目标信号的值;
步骤S508:Fclose()关闭当前报文文件。
S7:把解析完成的目标信号输入到excel表格中。
根据本申请实施例提出的解析CAN报文数据的方法,可以在判断配置满足预设规范条件的前提下,从DBC文件中获取所需信号的相关信息,进而可以通过配置指定筛选一个或多个目标信号,并输入至预设表格中,实现高效、精准地从大量的CAN报文中筛选出目标信号,从而提高排查问题的效率,可应用范围较广,实用性高。由此,解决了相关技术中,在面对CAN报文数据量较大,且CAN报文文件数较多的情况时,解析效率低下的技术问题。
其次参照附图描述根据本申请实施例提出的解析CAN报文数据的装置。
图7是本申请实施例的解析CAN报文数据的装置的方框示意图。
如图7所示,该解析CAN报文数据的装置10包括:第一解析模块100、第二解析模块200和第三解析模块300。
具体地,第一解析模块100,用于解析输入相关配置后的配置文件,并根据第一解析结果判断配置是否满足预设规范条件。
第二解析模块200,用于在满足预设规范条件时,解析DBC文件,并根据第二解析结果筛选目标报文。
第三解析模块300,用于基于目标报文解析对应的目标信号,并将解析完成的目标信号输入至预设表格中。
可选地,在本申请的一个实施例中,相关配置包括配置文件的起始序号和结束序号、解析报文的通道、解析信号的名称,写入excel文件的周期与DBC文件的名称中的至少一项。
可选地,在本申请的一个实施例中,第二解析结果包括信号的所属结点ID,信号的周期,信号的起始位,信号的长度,信号的分辨率和信号的偏移量中的至少一项。
可选地,在本申请的一个实施例中,第二解析模块200包括:获取单元。
其中,获取单元,用于利用由Perl语言编写的筛选脚本从待解析的目标文件中获取目标报文。
可选地,在本申请的一个实施例中,目标信号信号名与DBC文件的信号名命名一致。
需要说明的是,前述对解析CAN报文数据的方法实施例的解释说明也适用于该实施例的解析CAN报文数据的装置,此处不再赘述。
根据本申请实施例提出的解析CAN报文数据的装置,可以在判断配置满足预设规范条件的前提下,从DBC文件中获取所需信号的相关信息,进而可以通过配置指定筛选一个或多个目标信号,并输入至预设表格中,实现高效、精准地从大量的CAN报文中筛选出目标信号,从而提高排查问题的效率,可应用范围较广,实用性高。由此,解决了相关技术中,在面对CAN报文数据量较大,且CAN报文文件数较多的情况时,解析效率低下的技术问题。
图8为本申请实施例提供的车辆的结构示意图。该车辆可以包括:
存储器801、处理器802及存储在存储器801上并可在处理器802上运行的计算机程序。
处理器802执行程序时实现上述实施例中提供的解析CAN报文数据的方法。
进一步地,车辆还包括:
通信接口803,用于存储器801和处理器802之间的通信。
存储器801,用于存放可在处理器802上运行的计算机程序。
存储器801可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
如果存储器801、处理器802和通信接口803独立实现,则通信接口803、存储器801和处理器802可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选地,在具体实现上,如果存储器801、处理器802及通信接口803,集成在一块芯片上实现,则存储器801、处理器802及通信接口803可以通过内部接口完成相互间的通信。
处理器802可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的解析CAN报文数据的方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或N个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,N个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种解析CAN报文数据的方法,其特征在于,包括以下步骤:
解析输入相关配置后的配置文件,并根据第一解析结果判断配置是否满足预设规范条件;
如果满足所述预设规范条件,则解析DBC文件,并根据第二解析结果筛选目标报文;以及
基于所述目标报文解析对应的目标信号,并将解析完成的目标信号输入至预设表格中。
2.根据权利要求1所述的方法,其特征在于,所述相关配置包括所述目标报文的起始序号和结束序号、解析报文的通道、解析信号的名称,写入excel文件的周期与所述DBC文件的名称中的至少一项。
3.根据权利要求1所述的方法,其特征在于,所述第二解析结果包括信号的所属结点ID,信号的周期,信号的起始位,信号的长度,信号的分辨率和信号的偏移量中的至少一项。
4.根据权利要求1所述的方法,其特征在于,所述根据第二解析结果筛选出目标报文,包括:
利用由Perl语言编写的筛选脚本从待解析的目标文件中获取所述目标报文。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述目标信号信号名与所述DBC文件的信号名命名一致。
6.一种解析CAN报文数据的装置,其特征在于,包括:
第一解析模块,用于解析输入相关配置后的配置文件,并根据第一解析结果判断配置是否满足预设规范条件;
第二解析模块,用于在满足所述预设规范条件时,解析DBC文件,并根据第二解析结果筛选目标报文;以及
第三解析模块,用于基于所述目标报文解析对应的目标信号,并将解析完成的目标信号输入至预设表格中。
7.根据权利要求6所述的装置,其特征在于,所述相关配置包括所述目标报文的起始序号和结束序号、解析报文的通道、解析信号的名称,写入excel文件的周期与所述DBC文件的名称中的至少一项。
8.根据权利要求6所述的装置,其特征在于,所述第二解析结果包括信号的所属结点ID,信号的周期,信号的起始位,信号的长度,信号的分辨率和信号的偏移量中的至少一项。
9.一种车辆,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-5任一项所述的解析CAN报文数据的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-5任一项所述的解析CAN报文数据的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211191696.1A CN115657521A (zh) | 2022-09-28 | 2022-09-28 | 解析can报文数据的方法、装置、车辆及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211191696.1A CN115657521A (zh) | 2022-09-28 | 2022-09-28 | 解析can报文数据的方法、装置、车辆及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115657521A true CN115657521A (zh) | 2023-01-31 |
Family
ID=84986149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211191696.1A Pending CN115657521A (zh) | 2022-09-28 | 2022-09-28 | 解析can报文数据的方法、装置、车辆及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115657521A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116132558A (zh) * | 2023-02-03 | 2023-05-16 | 重庆赛力斯新能源汽车设计院有限公司 | 一种数据解析方法、装置、电子设备和存储介质 |
CN117319529A (zh) * | 2023-11-29 | 2023-12-29 | 成都赛力斯科技有限公司 | 应用于车端的报文解析方法、装置、电子设备及存储介质 |
-
2022
- 2022-09-28 CN CN202211191696.1A patent/CN115657521A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116132558A (zh) * | 2023-02-03 | 2023-05-16 | 重庆赛力斯新能源汽车设计院有限公司 | 一种数据解析方法、装置、电子设备和存储介质 |
CN117319529A (zh) * | 2023-11-29 | 2023-12-29 | 成都赛力斯科技有限公司 | 应用于车端的报文解析方法、装置、电子设备及存储介质 |
CN117319529B (zh) * | 2023-11-29 | 2024-02-02 | 成都赛力斯科技有限公司 | 应用于车端的报文解析方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115657521A (zh) | 解析can报文数据的方法、装置、车辆及存储介质 | |
CN108803577B (zh) | 一种诊断方法、上位机及下位机 | |
CN109815141B (zh) | 一种测试方法和装置 | |
CN112543129B (zh) | 队列深度的确认方法、系统及报文模拟器 | |
CN113608518A (zh) | 数据生成方法、装置、终端设备及介质 | |
CN112214366A (zh) | 测试方法、装置、系统、设备及介质 | |
CN110888804A (zh) | 接口测试方法以及接口测试平台 | |
CN108733674A (zh) | 一种a2l文件合并方法及装置 | |
CN111857103B (zh) | 一种车辆诊断方法、装置、设备及存储介质 | |
CN115617819B (zh) | 数据存储方法、系统、计算机设备及存储介质 | |
CN115225572B (zh) | 路由信息的处理方法、装置、电子设备和存储介质 | |
CN116126937A (zh) | 作业调度方法、装置、电子设备及存储介质 | |
CN112462727A (zh) | 一种车载零部件测试方法和装置 | |
CN111414299B (zh) | 基于hdparm的SSD扩展信息获取方法和装置 | |
CN115470108A (zh) | 车辆的网关路由测试方法、装置、电子设备及存储介质 | |
CN115755867A (zh) | 一种车辆诊断方法及相关装置 | |
CN113050589B (zh) | 一种车辆ecu参数的标定方法、装置及设备 | |
CN112783683A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN111008113B (zh) | 一种SAS-Expander测试方法和工具 | |
CN114327981A (zh) | 一种功能安全机制的安全校验系统、方法及装置 | |
CN112559470A (zh) | 文件格式转换的方法、装置、存储介质及电子设备 | |
US7818646B1 (en) | Expectation based event verification | |
CN117955828A (zh) | 一种控制器局域网络通信方法、装置、控制器及存储介质 | |
CN116125946A (zh) | 车辆故障诊断方法、系统、电子设备以及存储介质 | |
CN117033855A (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 |