一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种自动解析智能网联汽车CAN总线数据的方法及系统与流程

2022-05-21 02:34:20 来源:中国专利 TAG:

一种自动解析智能网联汽车can总线数据的方法及系统
技术领域
1.本发明涉及can总线数据解析技术领域,具体涉及一种自动解析智能网联汽车can总线数据的方法及系统。


背景技术:

2.近年来,随着经济的发展、社会的进步,环境污染问题、石油安全问题变得日益严重。为了减少环境污染,同时降低对于石油的依赖度;新能源汽车在国内得到了大力的发展,各种新能源客车在此背景下应运而生。新能源客车内部包括多个电子控制单元(electronic control unit,ecu),这些ecu与车内各种设备之间需要通信,而通信中应用最广泛的总线协议就是控制器局域网络(controller area network,can)总线协议。
3.新能源客车上的can总线协议,由于车厂的差异、车内硬件设备的不同,存在的非常大的差异;车载智能终端,作为车辆智能运营的关键部件,收集并解析can总线上的各种信息,以便于相关人员了解客车当前的工作状态。can总线协议的多样性,需要车载智能终端实现对不同设备不同的协议进行可兼容的解析。
4.can总线上传输的协议数据,是按照can id不同加以区分的,解析报文都是按照bit进行的;为了实现对于多种协议的解析,传统的模式是编写大量的解析代码,每个can id都执行一次解析。且对于不同的车型,can总线的协议都会不同,为了实现对不同车型can总线协议的兼容,必须对原有解析代码进行修改。can总线协议的内容是非常专业化的,在解析的过程中,需要依赖专有协议文档,使得协议的解析过程,耗费时间较长,解析的效率比较低。
5.车载智能终端安装在新能源客车上,负责车辆相关信息的汇总,也会下发部分控制指令至ecu;车载智能终端需要满足对于不同车型的兼容,即同一款控制器安装到不同的新能源客车上,都可以正常的工作。以上这些就要求,车载智能终端内的can总线协议解析,依据不同车辆进行调整,如果都是采用修改解析代码的模式,对于整体系统的稳定性是非常不利的。


技术实现要素:

6.针对现有技术中存在的上述问题,本发明提供一种自动解析智能网联汽车can总线数据的方法及系统,其在车载智能终端系统平台上,利用配置文件,实现对于can总线数据的自动解析。
7.本发明公开了一种自动解析智能网联汽车can总线数据的方法,包括:
8.步骤1、定义解析can协议的配置文件;其中,所述配置文件按多行多列的模式定义,且列包括:变量代号、编码方式、can id、起始byte、起始bit、bit长度、单位、偏移量、变量类型和注释;
9.步骤2、根据所选择待解析的车型协议文档,填写对应的配置文件;
10.步骤3、读取所述配置文件,对can数据进行解析。
11.作为本发明的进一步改进,列中各个字段的含义为:
12.变量代号:从1开始编号,依次增加;
13.编码方式:can数据的编码方式,为intel方式或motorola方式;
14.can id:待解析的can id值;
15.起始byte:待解析数据的起始字节数;
16.起始bit:在待解析数据byte中的起始bit;
17.bit长度:待解析数据的总bit数;
18.单位:待解析数据的精度;
19.偏移量:待解析数据调整偏移量;
20.变量类型:数据解析后的存储类型;
21.注释:待解析数据的注释说明。
22.作为本发明的进一步改进,所述步骤3,具体包括:
23.步骤31、读取所述配置文件,并存储至配置文件数组中;
24.步骤32、根据所述配置文件数组中的变量代号,确认本次需要解析的数据变量总数量;
25.步骤33、定义解析结果的指针数组;其中,所述指针数组中指针元素的类别为所述配置文件的变量类型,所述指针数组的大小根据变量总数量;
26.步骤34、根据所述配置文件数组中的can id设置can过滤器,确定要解析的can数据;
27.步骤35、接收到can数据,并基于配置文件数组中can id列表判断是否为待解析的数据,若是,则执行步骤36;
28.步骤36、根据所述配置文件数组中的编码方式,先调整数据的顺序;其中,intel方式是小端模式,motorola是大端模式;
29.步骤37、根据所述配置文件数组中的起始byte、起始bit、bit长度、单位、偏移量,对数据进行解析,解析后根据变量代号存储到解析结果的指针数组的具体位置;
30.步骤38、解析后,继续在配置文件数组中继续确认是否还有该can id的其他部分需要解析,若需要解析,按照返回步骤27继续解析过程;若无需解析,则执行步骤39;
31.步骤39、待配置文件数组轮询完毕后,确认当前的can数据解析完毕;
32.步骤310、重复步骤35~步骤39完成所有can数据的解析。
33.作为本发明的进一步改进,还包括:
34.步骤4、将解析的数据打包发送至服务器;
35.步骤5、服务器根据该车载智能终端所对应的车型,选择对应的配置文件;
36.步骤6、服务器根据can数据配置文件解析接收的can数据;
37.步骤7、存储解析出的各个字段。
38.本发明公开了一种自动解析智能网联汽车can总线数据的系统,包括:
39.车载智能终端,用于:
40.定义解析can协议的配置文件;其中,所述配置文件按多行多列的模式定义,且列包括:变量代号、编码方式、can id、起始byte、起始bit、bit长度、单位、偏移量、变量类型和注释;
41.根据所选择待解析的车型协议文档,填写对应的配置文件;
42.读取所述配置文件,对can数据进行解析;
43.将解析的数据打包发送至服务器;
44.服务器,用于:
45.根据该车载智能终端所对应的车型,选择对应的配置文件;
46.根据can数据配置文件解析接收的can数据;
47.存储解析出的各个字段。
48.作为本发明的进一步改进,列中各个字段的含义为:
49.变量代号:从1开始编号,依次增加;
50.编码方式:can数据的编码方式,为intel方式或motorola方式;
51.can id:待解析的can id值;
52.起始byte:待解析数据的起始字节数;
53.起始bit:在待解析数据byte中的起始bit;
54.bit长度:待解析数据的总bit数;
55.单位:待解析数据的精度;
56.偏移量:待解析数据调整偏移量;
57.变量类型:数据解析后的存储类型;
58.注释:待解析数据的注释说明。
59.作为本发明的进一步改进,所述读取所述配置文件,对can数据进行解析;具体包括:
60.步骤31、读取所述配置文件,并存储至配置文件数组中;
61.步骤32、根据所述配置文件数组中的变量代号,确认本次需要解析的数据变量总数量;
62.步骤33、定义解析结果的指针数组;其中,所述指针数组中指针元素的类别为所述配置文件的变量类型,所述指针数组的大小根据变量总数量;
63.步骤34、根据所述配置文件数组中的can id设置can过滤器,确定要解析的can数据;
64.步骤35、接收到can数据,并基于配置文件数组中can id列表判断是否为待解析的数据,若是,则执行步骤36;
65.步骤36、根据所述配置文件数组中的编码方式,先调整数据的顺序;其中,intel方式是小端模式,motorola是大端模式;
66.步骤37、根据所述配置文件数组中的起始byte、起始bit、bit长度、单位、偏移量,对数据进行解析,解析后根据变量代号存储到解析结果的指针数组的具体位置;
67.步骤38、解析后,继续在配置文件数组中继续确认是否还有该can id的其他部分需要解析,若需要解析,按照返回步骤27继续解析过程;若无需解析,则执行步骤39;
68.步骤39、待配置文件数组轮询完毕后,确认当前的can数据解析完毕;
69.步骤310、重复步骤35~步骤39完成所有can数据的解析。
70.与现有技术相比,本发明的有益效果为:
71.本发明的解析方法只要求数据解析人员,依照不同的can总线协议修改配置文件,
将各个can id下各相关字段具体含义写入配置文件,而不是去编写大量的解析代码;其降低can协议数据解析的复杂度,同时提升解析操作的直观性;
72.本发明的车载智能终端系统在启动后,会自动加载配置文件,依据配置文件设定can id的过滤规则,同时对后续收到的can总线数据,依据配置文件执行解析;因此,可实现同一套解析逻辑解析不同车型的can数据,保证车载智能终端系统的稳定性。
附图说明
73.图1为本发明一种实施例公开的自动解析智能网联汽车can总线数据的方法流程图;
74.图2为图1中数据解析的流程图。
具体实施方式
75.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
76.下面结合附图对本发明做进一步的详细描述:
77.如图1所示,本发明提供一种自动解析智能网联汽车can总线数据的方法,包括:
78.步骤1、定义解析can协议的配置文件,该文件需要按照多行多列的模式定义,如可以采用csv文件;其中,配置文件的列包括:变量代号、编码方式、can id、起始byte、起始bit、bit长度、单位、偏移量、变量类型和注释;
79.各个字段的含义为:
80.变量代号:从1开始编号,依次增加;
81.编码方式:can数据的编码方式,为intel方式或motorola方式;
82.can id:待解析的can id值;
83.起始byte:待解析数据的起始字节数;
84.起始bit:在待解析数据byte中的起始bit;
85.bit长度:待解析数据的总bit数;
86.单位:待解析数据的精度;
87.偏移量:待解析数据调整偏移量;
88.变量类型:数据解析后的存储类型;
89.注释:待解析数据的注释说明。
90.步骤2、基于上述配置文件中各字段定义,根据所选择待解析的车型协议文档,填写对应的配置文件;例如:
91.变量代号:1;
92.编码方式:intel方式;
93.can id:0
×
18ff61a2;
94.起始byte:1;
95.起始bit:4;
96.bit长度:2;
97.单位:1;
98.偏移量:0;
99.变量类型:tsint8u;
100.注释:车辆控制按钮状态。
101.步骤3、编写解析can数据的源码,在该源码中读取配置文件,对接收的can数据进行解析;
102.如图2所示,具体的解析步骤包括:
103.步骤31、读取配置文件,将读取到的配置文件的具体内容存储至配置文件数组中;
104.步骤32、根据配置文件数组中的变量代号,确认本次需要解析的数据变量总数量;例如,变量代号共编号至10,则本次需要解析的数据变量总数量为10;
105.步骤33、定义解析结果的指针数组;其中,指针数组中指针元素的类别为配置文件的变量类型,指针数组的大小根据变量总数量;
106.步骤34、根据配置文件数组中的can id设置can过滤器,确定要解析的can数据;
107.步骤35、接收到can数据后,基于配置文件数组中can id列表判断是否为待解析的数据,若是待解析的can id,则执行步骤36;
108.步骤36、根据配置文件数组中的编码方式,先调整数据的顺序;其中,intel方式是小端模式,motorola是大端模式;
109.步骤37、根据配置文件数组中的起始byte、起始bit、bit长度、单位、偏移量,对数据进行解析,解析后根据变量代号存储到解析结果的指针数组的具体位置,便于后续的使用;
110.步骤38、解析后,继续在配置文件数组中继续确认是否还有该can id的其他部分需要解析,若需要解析,按照返回步骤27继续解析过程;若无需解析,则执行步骤39;
111.步骤39、待配置文件数组轮询完毕后,确认当前的can数据解析完毕;
112.步骤310、重复步骤35~步骤39完成所有can数据的解析。
113.本发明在使用时,可将解析功能源码编译后放置到车载智能终端系统中,并将相对应的配置文件也加入到车载智能终端中,即可以对该车载智能终端can总线的数据按照配置文件执行数据解析;若远端服务器也需要相关的解析数据,则相应的配置文件也需要添加到服务器中。后续在更换车型时,只需要依据该车型的can协议,修改对应的配置文件;并将修改后的配置文件放置到车载智能终端中,即可实现对该车型can总线数据的解析,解析功能对应的代码并不需要修改。
114.步骤4、将解析的数据打包发送至服务器;
115.步骤5、服务器根据该车载智能终端所对应的车型,选择对应的配置文件;
116.步骤6、服务器根据can数据配置文件解析接收的can数据;
117.步骤7、存储解析出的各个字段。
118.本发明提供一种自动解析智能网联汽车can总线数据的系统,包括:
119.车载智能终端,用于实现上述步骤1~步骤4;
120.服务器,用于实现上述步骤5~步骤7。
121.以某车厂纯电动客车为例,配置文件的内容如下:
[0122][0123]
在本配置文件中,一共有15个待解析的变量,变量编号为1~15;编码方式都是intel的方式;can id、起始byte、起始bit、bit长度、单位、偏移量均是根据该客车的can数据协议而来;变量类型是根据bit长度、单位、偏移量定义的,需要满足该类型可以承载解析后的数据值;注释是便于相关人员对解析变量含义的查看,对can数据的解析并无实际作用。
[0124]
本发明的优点为:
[0125]
区别于传统的can数据解析方法,本发明不再需要依据不同的can id编写大量的解析代码,即可以适配不同车型的can数据的解析;同时大为降低can解析的复杂度,根据不同车型的can数据协议,将需要解析的can id具体信息,填写至配置文件中,即获得了该车型can数据的解析能力;通过读取该配置文件,即可以获得各字段的相关含义,不再需要查阅相关的can数据协议文档;提升车载智能终端部署到不同车型的效率,可以实现一个版本部署到不同车型上,后续服务器根据车型的不同,下发对应的配置文件,后续即可以实现对can数据的正常解析。
[0126]
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献