控制器局域网络总线的数据解析方法、装置和计算机设备

专利2026-03-08  15


本技术涉及车联网,特别是涉及一种控制器局域网络总线的数据解析方法、装置和计算机设备。


背景技术:

1、can(controller area network,控制器局域网络)是一种能够实现分布式实时控制的串行通信网络,现在的汽车中通常包括上百个甚至几百个ecu(electronic controlunit,电子控制器单元)来控制汽车的各项功能,因此can总线在汽车领域中大量使用,ecu在can总线上收发数据时,需要根据规定的dbc(database can,can报文数据库)文件来对二进制数据进行解析,而dbc文件通常高度保密,车主无法获得,因此当车主对汽车状态进行的分析或对总线状态进行监测时,常常因无法对can总线二进制数据进行解析而难以进行。

2、相关技术中针对can总线数据的解析主要包括为暴力贪心算法,该暴力贪心算法为,因can数据部分一共包含64bit数据,因此不同的数据部分分割情况一共为2080种,对于每一种可能的情况,根据算法进行得分,从而进行数据分割并为数据部分打上标签,显然的,该方法的计算量较大,需要消耗的资源也较多,并且进一步地,由于实际的应用场景复杂多变,基于得分对数据打标签的方法也会导致正确率较低。

3、目前,针对现有技术中由于对数据的分割效率及正确率较低的问题,尚未提出有效地解决方案。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种控制器局域网络总线的数据解析方法、装置和计算机设备。

2、第一方面,本技术提供了一种控制器局域网络总线的数据解析方法。该方法包括:

3、获取待解析数据;

4、遍历待解析数据,确定每个比特位的数据对应的比特翻转率,得到每个比特位的比特翻转率;

5、基于相邻的两个比特位之间的比特翻转率之差,对待解析数据进行划分,得到至少两段待解析信号;

6、依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并基于第一待解析信号的最高比特位的比特翻转率,与第二待解析信号的最低位的比特翻转率,对第一待解析信号与第二待解析信号进行合并处理,得到目标待解析信号;

7、基于目标待解析信号得到针对待解析数据的数据解析结果。

8、在其中一个实施例中,基于相邻的两个比特位之间的比特翻转率之差,对待解析数据进行划分,得到至少两段待解析信号,包括:

9、将待解析数据中,由连续的至少两个比特翻转率为零的比特位组成的数据识别为目标初始数据,并确定待解析数据中除目标初始数据以外的目标待解析数据;

10、基于相邻的两个比特位之间的比特翻转率之差,对目标待解析数据进行划分,得到待解析信号。

11、在其中一个实施例中,基于相邻的两个比特位之间的比特翻转率之差,对待解析数据进行划分,得到至少两段待解析信号,包括:

12、将比特翻转率之差大于预设的翻转率阈值的两个相邻比特位,划分至不同段的待解析信号。

13、在其中一个实施例中,将比特翻转率之差大于预设的翻转率阈值的两个相邻比特位,划分至不同段的所述待解析信号,包括:

14、获取预设的增加参数和下降参数,其中,翻转率阈值包括增加参数和下降参数;

15、将翻转率增加值高于增加参数的两个相邻比特位,划分至不同段的待解析信号;其中,翻转率增加值为两个相邻比特位中,高比特位相对于低比特位的比特翻转率的增加值;

16、将翻转率减小值高于下降参数的两个相邻比特位,划分至不同段的待解析信号;其中,翻转率减小值为两个相邻比特位中,高比特位相对于低比特位的比特翻转率的减小值。

17、在其中一个实施例中,依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并基于第一待解析信号的最高比特位的比特翻转率,与第二待解析信号的最低位的比特翻转率,对第一待解析信号与第二待解析信号进行合并处理,得到目标待解析信号,包括:

18、依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并在检测到第一待解析信号的最高比特位的比特翻转率,与第二待解析信号的最低比特位的比特翻转率之差小于预设的翻转率阈值时,将第一待解析信号与第二待解析信号进行合并,并将第一待解析信号与第二待解析信号标记为小端模式;其中,第一待解析信号不等于第二待解析信号;

19、将所有段的所述待解析信号中,未被标记为小端模式的待解析信号标记为大端模式,得到针对待解析数据的数据解析结果;其中,标记为小端模式的信号的读取顺序,与标记为大端模式的信号的读取顺序相反。

20、在其中一个实施例中,基于目标待解析信号得到针对待解析数据的数据解析结果,包括:

21、确定数据解析结果中的待标记信号;

22、确定待标记信号中低比特位与高比特位之间的翻转倍率;其中,翻转倍率为,低比特位相较于高比特位的比特翻转率的倍数;

23、将翻转倍率为预设翻转倍率的待标记信号,标记为计数器;

24、将所有比特位的比特翻转率均大于预设的校验阈值,且所有比特位的比特翻转率满足正态分布的所述待标记信号,标记为校验码;

25、将所有比特位对应的取值种类,小于预设的选择阈值的待标记信号,标记为信号选择器;其中,已标记信号包括计数器、校验码以及信号选择器;取值种类为比特位对应的比特翻转率的取值种类;

26、基于对计数器、校验码以及信号选择器的解析得到数据解析结果。

27、在其中一个实施例中,基于目标待解析信号得到针对待解析数据的数据解析结果,包括:

28、计算每个物理信号中非最高比特位为1的比例,得到每个物理信号的目标比例;其中,物理信号包括计数器、校验码以及信号选择器;

29、将最高比特位为1,且目标比例大于预设的比例阈值的物理信号,标记为有符号数,基于对有符号数的解析得到数据解析结果。

30、第二方面,本技术还提供了一种控制器局域网络总线的数据解析装置。该装置包括:

31、获取模块,用于获取待解析数据;

32、计算模块,用于遍历待解析数据,确定每个比特位的数据对应的比特翻转率,得到每个比特位的比特翻转率;基于相邻的两个比特位之间的比特翻转率之差,对待解析数据进行划分,得到至少两段待解析信号;

33、生成模块,用于依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并基于第一待解析信号的最高比特位的比特翻转率,与第二待解析信号的最低位的比特翻转率,对第一待解析信号与第二待解析信号进行合并处理,得到目标待解析信号;基于目标待解析信号得到针对待解析数据的数据解析结果。

34、第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

35、获取待解析数据;

36、遍历待解析数据,确定每个比特位的数据对应的比特翻转率,得到每个比特位的比特翻转率;

37、基于相邻的两个比特位之间的比特翻转率之差,对待解析数据进行划分,得到至少两段待解析信号;

38、依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并基于第一待解析信号的最高比特位的比特翻转率,与第二待解析信号的最低位的比特翻转率,对第一待解析信号与第二待解析信号进行合并处理,得到目标待解析信号;

39、基于目标待解析信号得到针对待解析数据的数据解析结果。

40、第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

41、获取待解析数据;

42、遍历待解析数据,确定每个比特位的数据对应的比特翻转率,得到每个比特位的比特翻转率;

43、基于相邻的两个比特位之间的比特翻转率之差,对待解析数据进行划分,得到至少两段待解析信号;

44、依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并基于第一待解析信号的最高比特位的比特翻转率,与第二待解析信号的最低位的比特翻转率,对第一待解析信号与第二待解析信号进行合并处理,得到目标待解析信号;

45、基于目标待解析信号得到针对待解析数据的数据解析结果。

46、上述控制器局域网络总线的数据解析方法、装置和计算机设备,首先确定待解析数据中每个比特位数据对应的比特翻转率,而后基于两个比特位之间的比特翻转率之差对待解析数据进行划分,得到至少两段待解析信号,再依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并基于第一待解析信号的最高比特位的比特翻转率与第二待解析信号的最低位的比特翻转率,对第一待解析信号与第二待解析信号进行合并处理,得到目标待解析信号,最后基于目标待解析信号得到针对待解析数据的数据解析结果。通过上述方法,可以基于第一待解析信号的最高比特位的比特翻转率与第二待解析信号最低位的比特翻转率,对待解析信号进行二次划分,提高了信号划分的准确率,进一步地,本技术中基于比特位对应的比特翻转率对信号进行划分,大幅提高了信号划分的效率,从而为后续数据的解析打下基础,即进一步提高了数据解析的准确率和效率。


技术特征:

1.一种控制器局域网络总线的数据解析方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述基于相邻的两个比特位之间的比特翻转率之差,对所述待解析数据进行划分,得到至少两段待解析信号,包括:

3.根据权利要求1所述的方法,其特征在于,所述基于相邻的两个比特位之间的比特翻转率之差,对所述待解析数据进行划分,得到至少两段待解析信号,包括:

4.根据权利要求3所述的方法,其特征在于,所述将比特翻转率之差大于预设的翻转率阈值的两个相邻比特位,划分至不同段的所述待解析信号,包括:

5.根据权利要求1所述的方法,其特征在于,所述依次以每两段所述待解析信号分别作为第一待解析信号和第二待解析信号,并基于所述第一待解析信号的最高比特位的比特翻转率,与所述第二待解析信号的最低位的比特翻转率,对所述第一待解析信号与所述第二待解析信号进行合并处理,得到目标待解析信号,包括:

6.根据权利要求1所述的方法,其特征在于,所述基于所述目标待解析信号得到针对所述待解析数据的数据解析结果,包括:

7.根据权利要求6所述的方法,其特征在于,所述基于所述目标待解析信号得到针对所述待解析数据的数据解析结果,包括:

8.一种控制器局域网络总线的数据解析装置,其特征在于,所述装置包括:

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。


技术总结
本申请涉及一种控制器局域网络总线的数据解析方法、装置和计算机设备。所述方法包括:获取待解析数据;遍历待解析数据,确定每个比特位的数据对应的比特翻转率,得到每个比特位的比特翻转率;基于相邻的两个比特位之间的比特翻转率之差,对待解析数据进行划分,得到至少两段待解析信号;依次以每两段待解析信号分别作为第一待解析信号和第二待解析信号,并基于第一待解析信号的最高比特位的比特翻转率,与第二待解析信号的最低位的比特翻转率,对第一待解析信号与第二待解析信号进行合并处理,得到目标待解析信号;基于目标待解析信号得到针对待解析数据的数据解析结果。采用本方法能够解决提高数据分割的效率及准确率。

技术研发人员:杨坤,陈祉源,任奎
受保护的技术使用者:浙江大学
技术研发日:
技术公布日:2024/6/26
转载请注明原文地址:https://doc.8miu.com/read-1828646.html

最新回复(0)