报文时间戳对齐方法、电子设备和车辆与流程

文档序号:33104130发布日期:2023-02-01 01:09阅读:27来源:国知局
报文时间戳对齐方法、电子设备和车辆与流程

1.本发明涉及车辆通信领域,尤其涉及一种报文时间戳对齐方法、电子设备和车辆。


背景技术:

2.can是控制器局域网络(controller area network,can)的简称,是国际上应用最广泛的现代总线之一,具有准确度高、速度快、信息量大等特点。目前的can报文可以通过不同ecu(electronic control unit,电子控制单元)之间相互通讯,ecu周期性地往can线总线上发送报文,常见周期为10ms、20ms、50ms、100ms等类型。而在实际通讯使用过程,需要获取的报文信息是不同周期发送的,例如:车辆速度10ms周期,车辆充电状态报文10ms周期,环境温度信息100ms周期,同一个时间段由于报文发送周期不同,会导致获取到不同的数据量(通常周期越长,数据量越少),容易导致数据错位。


技术实现要素:

3.本发明实施例的目的是提供一种报文时间戳对齐方法、电子设备和车辆,能保证不同发送周期的数据在相同时间轴上对齐,使得不同发送周期的报文具有相同的数据量,并且可以在同一时间轴上一一对应,保证得到的数据不会错位且有效。
4.为实现上述目的,本发明实施例提供了一种报文时间戳对齐方法,包括:
5.检测到在总线上传输有符合预设的解析条件的目标报文时,对所述目标报文进行解析以得到目标数据;
6.获取预设的目标周期;
7.当所述目标报文的发送周期和所述目标周期满足预设的对齐条件时,根据所述目标数据对所述目标报文进行数据补充。
8.作为上述方案的改进,所述对齐条件为:
9.所述目标报文的发送周期大于所述目标周期;或,
10.所述目标报文的发送周期小于所述目标周期,且所述目标周期为非所述目标报文的发送周期的倍数。
11.作为上述方案的改进,所述根据所述目标数据对所述目标报文进行数据补充前,还包括:
12.根据所述目标报文的发送周期对所有目标报文进行分类,以将具有相同周期的目标报文划分为同一类别;则,所述根据所述目标数据对所述目标报文进行数据补充,包括:
13.根据所述目标数据分别对不同周期类别的所述目标报文进行数据补充。
14.作为上述方案的改进,所述根据所述目标数据对所述目标报文进行数据补充,包括:
15.获取所述车载单元在前n次发送的目标数据作为所述车载单元在当前目标周期时发送的数据;其中,n为大于1的整数。
16.作为上述方案的改进,所述根据所述目标数据对所述目标报文进行数据补充,包
括:
17.获取前m次车载单元的发送的目标数据,以m个目标数据拟合得到m-1次多项式,根据所述m-1次多项式得到所述车载单元在当前目标周期时需要补充的数据;其中,m为大于2的整数。
18.作为上述方案的改进,所述根据所述目标数据对所述目标报文进行数据补充,包括:
19.获取所述车载单元连续两次的发送的目标数据,按照时间进行线性化构建线性函数,并根据所述线性函数得到所述车载单元在当前目标周期时需要补充的数据。
20.作为上述方案的改进,所述根据所述目标数据对所述目标报文进行数据补充后,还包括:
21.对补充后的数据进行校验,并在校验通过后保存所述补充后的数据。
22.作为上述方案的改进,所述对补充后的数据进行校验,包括以下至少一种校验方式:
23.根据所述目标周期校验所述补充后的数据的完整性;其中,每一所述目标周期均对应有一个补充后的数据;
24.将所述补充后的数据与预设的标准规则进行比较,以查找出不符合所述标准规则的数据;
25.计算连续的若干个补充后的数据的变化率,以查找出突变数据;
26.对所述补充后的数据进行字符串形式验证,以筛选出不符合设定格式的数据。
27.为实现上述目的,本发明实施例还提供了一种电子设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一实施例所述的报文时间戳对齐方法。
28.为实现上述目的,本发明实施例还提供了一种车辆,包括车辆本体和上述实施例所述的电子设备。
29.相比于现有技术,本发明实施例公开的报文时间戳对齐方法、电子设备和车辆,当检测到在总线上传输有符合预设的解析条件的目标报文时,对所述目标报文进行解析以得到目标数据;获取预设的目标周期;当所述目标报文的发送周期和所述目标周期满足预设的对齐条件时,根据所述目标数据对所述目标报文进行数据补充。能保证不同发送周期的数据在相同时间轴上对齐,使得不同发送周期的报文具有相同的数据量,并且可以在同一时间轴上一一对应,保证得到的数据不会错位且有效。
附图说明
30.图1是本发明实施例提供的一种报文时间戳对齐方法的流程图;
31.图2是本发明实施例提供的报文数据在填充前的示意图;
32.图3是本发明实施例提供的报文数据在填充后的示意图;
33.图4是本发明实施例提供的非线性自适应插值法的插值示意图;
34.图5是本发明实施例提供的线性插值法的插值示意图;
35.图6是本发明实施例提供的另一种报文时间戳对齐方法的流程图;
36.图7是本发明实施例提供的一种电子设备的结构框图。
具体实施方式
37.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
38.参见图1,图1是本发明实施例提供的一种报文时间戳对齐方法的流程图,所述报文时间戳对齐方法由电子设备执行实现,所述报文时间戳对齐方法包括:
39.s1、检测到在总线上传输有符合预设的解析条件的目标报文时,对所述目标报文进行解析以得到目标数据;
40.s2、获取预设的目标周期;
41.s3、当所述目标报文的发送周期和所述目标周期满足预设的对齐条件时,根据所述目标数据对所述目标报文进行数据补充。
42.具体地,在步骤s1中,所述总线为can总线,车载单元周期性的发送信号给所述电子设备,这一信号以报文的形式在所述can总线传输,比如所述车载单元为ecu。所述电子设备支持在线can数据输入、离线can数据回放以及其他如cavasers等时间数据类型,通常数据为在时间轴上成周期性的连续数据。
43.示例性的,所述解析条件为:某单个或者多个i d报文下面的某bite x~bite y的信号序列为目标报文。对所述目标报文进行解析可以得到目标数据,比如车载空调发送温度信号给电子设备,此时所述目标报文为车载空调发送的温度信息报文,则所述目标数据为车内温度值;又比如电池管理系统发送电量信号给所述电子设备,此时所述目标报文为电池管理系统发送的电池充电状态报文,则所述目标数据为电池的电量。
44.进一步地,在对所述目标报文进行解析的同时,可以一并解析出所述目标报文的发送周期,比如所述目标报文的发送周期为预知的周期性数值,此时所述电子设备预先知道这一目标报文的发送周期;或者所述目标报文的发送周期可通过连续两帧的时间间隔取整计算来确定周期。
45.具体地,在步骤s2中,所述目标周期为用于对齐不同车载单元发送的报文的时间戳,所述目标周期可以需要对齐的所述目标报文的发送周期中最大值或者最小值,或者是一设定值。比如此时需要对齐的目标报文有6个,如图2所示,6个目标报文分别为message1~6,message1和message2的发送周期为10ms,message3和message4的发送周期为20ms,message5和message6的发送周期为30ms,图2中黑点为车载单元发送的目标报文中解析出的目标数据。则所述目标周期可以为10ms、30ms、或者其余数值(比如5ms)。
46.具体地,在步骤s3中,所述对齐条件为:
47.所述目标报文的发送周期大于所述目标周期;或,
48.所述目标报文的发送周期小于所述目标周期,且所述目标周期为非所述目标报文的发送周期的倍数。
49.示例性的,在得到所述目标报文的发送周期后,将所述目标报文的发送周期与所述目标周期进行比对,当所述发送周期和所述目标周期满足预设的对齐条件时,表示车载单元在所述目标周期内是没有发送报文的,所述电子设备没办法在当前目标周期对应的时刻获取到这一车载单元的数据。比如所述目标周期为10ms时,message3~6的周期均大于所
述目标周期,则需要在所述目标周期对应的时刻补充数据,因message3~4的周期为20ms,需要在相邻两个目标数据中补充一个数据,因message5~6的周期为30ms,需要在相邻两个目标数据中补充两个数据,可参考图3示例,白点表示补充后的数据,此时针对每一个message,在目标周期为10ms时所述电子设备都能收集到对应的数据。又比如:所述目标周期为15ms时,message1~2的发送周期(10ms)小于所述目标周期,且所述发送周期为非所述目标周期的倍数,需要在相邻两个目标数据(10ms和20ms之间)中补充一个数据。
50.示例性的,当所述目标报文的发送周期与所述目标周期相等时,表示此时所述电子设备希望这一车载单元发送报文的周期正好是当前车载单元正在使用的发送报文的周期,则不需要对这一车载单元发送的报文进行数据补充,如message1~2。或者,所述目标报文的发送周期小于所述目标周期,且所述目标周期为所述发送周期的倍数;比如所述目标周期20ms时,此时目标周期是message1~2的周期(10ms)的倍数,则可以直接获取message1~2在20ms、40ms、60ms的数据,此时无需进行数据补充,保持原序列。
51.具体地,所述根据所述目标数据对所述目标报文进行数据补充前,还包括:
52.根据所述目标报文的发送周期对所有目标报文进行分类,以将具有相同周期的目标报文划分为同一类别;则,所述根据所述目标数据对所述目标报文进行数据补充,包括:
53.根据所述目标数据分别对不同周期类别的所述目标报文进行数据补充。
54.示例性的,在得到所述目标报文的发送周期后,根据所述目标报文的发送周期对所有目标报文进行分类,比如message1和message2的周期为10ms,归类为bag_3_10,message3和message4的周期为20ms,归类为bag_3_20,message5和message6的周期为30ms,归类为bag_3_30。在所述目标周期为10ms时,对于同一bag_3_20类别下的message3和message4,需要统一在10ms、30ms、50ms时刻补充数据。
55.在本发明实施例中,根据所述目标报文的发送周期对报文进行分类,在后续补充数据时,电子设备在得知一个信号需要补充数据的时刻后,可以得知与其属于相同周期类别的其余信号需要添加数据的时刻,无需针对每一个信号都一一计算其补充数据的时间,提高数据对齐的效率。
56.具体地,在本发明实施例中,所述根据所述目标数据对所述目标报文进行数据补充的方式包括三种,分别为延时插值、非线性自适应插值和线性插值。
57.①
延时插值:获取所述车载单元在前n次发送的目标数据作为所述车载单元在当前目标周期时发送的数据;其中,n为大于1的整数。
58.示例性的,比如目标周期为10ms时,message3在30ms时刻需要补充数据,可以采用前一次(20ms)获取到的目标数据进行补充,即目标插值的位置等于上一时刻数据;message3在50ms时刻需要补充数据,可以采用前一次(40ms)或者前两次(20ms)获取到的目标数据进行补充。
59.②
非线性自适应插值:获取前m次(连续)车载单元的发送的目标数据,以m个目标数据拟合得到m-1次多项式,根据所述m-1次多项式得到所述车载单元在当前目标周期时需要补充的数据;其中,m为大于2的整数。
60.示例性的,比如目标周期为10ms时,参见图4,图4中的a(x0,y0)、b(x1,y1)、c(x2,y2)三点分别表示获取的message3在20ms、40ms、60ms的目标数据,取a、b、c三点坐标可以构建构建一元二次多项式,如y=ax^2+bx+c,然后根据这一元二次多项式,分别代入a、b、c对
应的x坐标(分别为10ms、30ms、50ms),得到的y值即为10ms、30ms、50ms时对应需要补充的数据。可以理解的,当获取的目标数据为四个时,此时构建的是一元三次多项式。
61.③
线性插值:获取所述车载单元连续两次的发送的目标数据,按照时间进行线性化构建线性函数,并根据所述线性函数得到所述车载单元在当前目标周期时需要补充的数据。
62.示例性的,比如目标周期为10ms时,参见图5,图5中的d(x3,y3)、e(x4,y5)分别表示获取message3在20ms、40ms的目标数据,以这两个目标数据构建直线方程,比如直线方程为两点式直线方程:然后根据两点式直线方程,代入d点对应的x坐标(30ms),得到的y值即为30ms时对应需要补充的数据。
63.在本发明实施例,通过采用以上几种插值方式对车载单元发送的信号进行数据补充,能够保证不同发送周期的数据在相同时间轴上对齐,使得不同发送周期的报文具有相同的数据量,并且可以在同一时间轴上一一对应,保证得到的数据不会错位且有效。
64.具体地,所述根据所述目标数据对所述目标报文进行数据补充后,还包括:对补充后的数据进行校验,并在校验通过后保存所述补充后的数据。比如保存对齐数据到文本文档、*.mat,*.csv等其他格式的文档,或者将对齐数据存储到excel/csv/text等格式的文件并存储到指定地址。
65.具体地,所述对补充后的数据进行校验,包括以下至少一种校验方式:
66.a、根据所述目标周期校验所述补充后的数据的完整性;其中,每一所述目标周期均对应有一个补充后的数据。示例性的,数据的连续性需要按照实际的目标周期,数据不得出现空白或na字段(乱码),若遇到空白数据或者乱码,则重新进行插值计算得到补充数据。
67.b、将所述补充后的数据与预设的标准规则进行比较,以查找出不符合所述标准规则的数据。示例性的,根据不同数据的物理意义,不得出现非物理意义的数值,例如轮速脉冲不得出现小于0的数值,开关信号不得出现非0或1的数值,需要根据实际情况决定检查规则,若遇到不符合标准规则的数据,则重新进行插值计算得到补充数据。
68.c、计算连续的若干个补充后的数据的变化率,以查找出突变数据。示例性的,插值数据变化方面,正常连续的数据曲率通常连续,不会出现较大的变化,若遇到突变数据,则重新进行插值计算得到补充数据。
69.d、对所述补充后的数据进行字符串形式验证,以筛选出不符合设定格式的数据。示例性的,通常情况下对齐数据为float,int等数值形数据。
70.在本发明实施例中,在补充完数据后,对补充完数据的信号中的数据进行校验,以确保补充数据的完整性,以及提高补充数据的准确率。
71.进一步地,上述过程可参考图6。
72.相比于现有技术,本发明实施例公开的报文时间戳对齐方法,当检测到在总线上传输有符合预设的解析条件的目标报文时,对所述目标报文进行解析以得到目标数据;获取预设的目标周期;当所述目标报文的发送周期和所述目标周期满足预设的对齐条件时,根据所述目标数据对所述目标报文进行数据补充。能保证不同发送周期的数据在相同时间轴上对齐,使得不同发送周期的报文具有相同的数据量,并且可以在同一时间轴上一一对应,保证得到的数据不会错位且有效。
73.参见图7,图7是本发明实施例提供的一种电子设备10的结构框图,所述电子设备10包括处理器11、存储器12以及存储在所述存储器12中并可在所述处理器11上运行的计算机程序。所述处理器11执行所述计算机程序时实现上述各个报文时间戳对齐方法实施例中的步骤,比如步骤s1~s3。或者,所述处理器11执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能。
74.示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器11执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述电子设备10中的执行过程。
75.所述电子设备10可包括,但不仅限于,处理器11、存储器12。本领域技术人员可以理解,所述示意图仅仅是电子设备10的示例,并不构成对电子设备10的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备10还可以包括输入输出设备、网络接入设备、总线等。
76.所称处理器11可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器11是所述电子设备10的控制中心,利用各种接口和线路连接整个电子设备10的各个部分。
77.所述存储器12可用于存储所述计算机程序和/或模块,所述处理器11通过运行或执行存储在所述存储器12内的计算机程序和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备10的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器12可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
78.其中,所述电子设备10集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器11执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的
要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
79.相比于现有技术,本发明实施例公开的电子设备10,当检测到在总线上传输有符合预设的解析条件的目标报文时,对所述目标报文进行解析以得到目标数据;获取预设的目标周期;当所述目标报文的发送周期和所述目标周期满足预设的对齐条件时,根据所述目标数据对所述目标报文进行数据补充。能保证不同发送周期的数据在相同时间轴上对齐,使得不同发送周期的报文具有相同的数据量,并且可以在同一时间轴上一一对应,保证得到的数据不会错位且有效。
80.更进一步地,本发明实施例还提供了一种车辆,包括车辆本体和上述实施例所述的电子设备。
81.相比于现有技术,本发明实施例公开的车辆,当检测到在总线上传输有符合预设的解析条件的目标报文时,对所述目标报文进行解析以得到目标数据;获取预设的目标周期;当所述目标报文的发送周期和所述目标周期满足预设的对齐条件时,根据所述目标数据对所述目标报文进行数据补充。能保证不同发送周期的数据在相同时间轴上对齐,使得不同发送周期的报文具有相同的数据量,并且可以在同一时间轴上一一对应,保证得到的数据不会错位且有效。
82.以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1