一种自动解析智能网联汽车CAN总线数据的方法及系统技术方案

技术编号:33542634 阅读:12 留言:0更新日期:2022-05-21 09:54
本发明专利技术公开了一种自动解析智能网联汽车CAN总线数据的方法及系统,包括:定义解析CAN协议的配置文件;其中,配置文件按多行多列的模式定义,且列包括:变量代号、编码方式、CAN ID、起始byte、起始bit、bit长度、单位、偏移量、变量类型和注释;根据所选择待解析的车型协议文档,填写对应的配置文件;读取配置文件,对CAN数据进行解析。本发明专利技术降低CAN数据解析的复杂度,基于配置文件的CAN数据解析,根据CAN协议修改配置文件即可;同一套解析逻辑可以解析不同车型的CAN数据,保证车载智能终端系统的稳定性;保证服务器端与车载智能终端对CAN数据解析的一致性,二者都通过相同的配置文件进行解析。行解析。行解析。

【技术实现步骤摘要】
一种自动解析智能网联汽车CAN总线数据的方法及系统


[0001]本专利技术涉及CAN总线数据解析
,具体涉及一种自动解析智能网联汽车CAN总线数据的方法及系统。

技术介绍

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

技术实现思路

[0006]针对现有技术中存在的上述问题,本专利技术提供一种自动解析智能网联汽车CAN总线数据的方法及系统,其在车载智能终端系统平台上,利用配置文件,实现对于CAN总线数据的自动解析。
[0007]本专利技术公开了一种自动解析智能网联汽车CAN总线数据的方法,包括:
[0008]步骤1、定义解析CAN协议的配置文件;其中,所述配置文件按多行多列的模式定义,且列包括:变量代号、编码方式、CAN ID、起始byte、起始bit、bit长度、单位、偏移量、变量类型和注释;
[0009]步骤2、根据所选择待解析的车型协议文档,填写对应的配置文件;
[0010]步骤3、读取所述配置文件,对CAN数据进行解析。
[0011]作为本专利技术的进一步改进,列中各个字段的含义为:
[0012]变量代号:从1开始编号,依次增加;
[0013]编码方式:CAN数据的编码方式,为Intel方式或Motorola方式;
[0014]CAN ID:待解析的CAN ID值;
[0015]起始byte:待解析数据的起始字节数;
[0016]起始bit:在待解析数据byte中的起始bit;
[0017]bit长度:待解析数据的总bit数;
[0018]单位:待解析数据的精度;
[0019]偏移量:待解析数据调整偏移量;
[0020]变量类型:数据解析后的存储类型;
[0021]注释:待解析数据的注释说明。
[0022]作为本专利技术的进一步改进,所述步骤3,具体包括:
[0023]步骤31、读取所述配置文件,并存储至配置文件数组中;
[0024]步骤32、根据所述配置文件数组中的变量代号,确认本次需要解析的数据变量总数量;
[0025]步骤33、定义解析结果的指针数组;其中,所述指针数组中指针元素的类别为所述配置文件的变量类型,所述指针数组的大小根据变量总数量;
[0026]步骤34、根据所述配置文件数组中的CAN ID设置CAN过滤器,确定要解析的CAN数据;
[0027]步骤35、接收到CAN数据,并基于配置文件数组中CAN ID列表判断是否为待解析的数据,若是,则执行步骤36;
[0028]步骤36、根据所述配置文件数组中的编码方式,先调整数据的顺序;其中,Intel方式是小端模式,Motorola是大端模式;
[0029]步骤37、根据所述配置文件数组中的起始byte、起始bit、bit长度、单位、偏移量,对数据进行解析,解析后根据变量代号存储到解析结果的指针数组的具体位置;
[0030]步骤38、解析后,继续在配置文件数组中继续确认是否还有该CAN ID的其他部分需要解析,若需要解析,按照返回步骤27继续解析过程;若无需解析,则执行步骤39;
[0031]步骤39、待配置文件数组轮询完毕后,确认当前的CAN数据解析完毕;
[0032]步骤310、重复步骤35~步骤39完成所有CAN数据的解析。
[0033]作为本专利技术的进一步改进,还包括:
[0034]步骤4、将解析的数据打包发送至服务器;
[0035]步骤5、服务器根据该车载智能终端所对应的车型,选择对应的配置文件;
[0036]步骤6、服务器根据CAN数据配置文件解析接收的CAN数据;
[0037]步骤7、存储解析出的各个字段。
[0038]本专利技术公开了一种自动解析智能网联汽车CAN总线数据的系统,包括:
[0039]车载智能终端,用于:
[0040]定义解析CAN协议的配置文件;其中,所述配置文件按多行多列的模式定义,且列包括:变量代号、编码方式、CAN ID、起始byte、起始bit、bit长度、单位、偏移量、变量类型和注释;
[0041]根据所选择待解析的车型协议文档,填写对应的配置文件;
[0042]读取所述配置文件,对CAN数据进行解析;
[0043]将解析的数据打包发送至服务器;
[0044]服务器,用于:
[0045]根据该车载智能终端所对应的车型,选择对应的配置文件;
[0046]根据CAN数据配置文件解析接收的CAN数据;
[0047]存储解析出的各个字段。
[0048]作为本专利技术的进一步改进,列中各个字段的含义为:
[0049]变量代号:从1开始编号,依次增加;
[0050]编码方式:CAN数据的编码方式,为Intel方式或Motorola方式;
[0051]CAN ID:待解析的CAN ID值;
[0052]起始byte:待解析数据的起始字节数;
[0053]起始bit:在待解析数据byte中的起始bit;
[0054]bit长度:待解析数据的总bit数;
[0055]单位:待解析数据的精度;
[0056]偏本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动解析智能网联汽车CAN总线数据的方法,其特征在于,包括:步骤1、定义解析CAN协议的配置文件;其中,所述配置文件按多行多列的模式定义,且列包括:变量代号、编码方式、CAN ID、起始byte、起始bit、bit长度、单位、偏移量、变量类型和注释;步骤2、根据所选择待解析的车型协议文档,填写对应的配置文件;步骤3、读取所述配置文件,对CAN数据进行解析;具体包括:步骤31、读取所述配置文件,并存储至配置文件数组中;步骤32、根据所述配置文件数组中的变量代号,确认本次需要解析的数据变量总数量;步骤33、定义解析结果的指针数组;其中,所述指针数组中指针元素的类别为所述配置文件的变量类型,所述指针数组的大小根据变量总数量;步骤34、根据所述配置文件数组中的CAN ID设置CAN过滤器,确定要解析的CAN数据;步骤35、接收到CAN数据,并基于配置文件数组中CAN ID列表判断是否为待解析的数据,若是,则执行步骤36;步骤36、根据所述配置文件数组中的编码方式,先调整数据的顺序;其中,Intel方式是小端模式,Motorola是大端模式;步骤37、根据所述配置文件数组中的起始byte、起始bit、bit长度、单位、偏移量,对数据进行解析,解析后根据变量代号存储到解析结果的指针数组的具体位置;步骤38、解析后,继续在配置文件数组中继续确认是否还有该CAN ID的其他部分需要解析,若需要解析,按照返回步骤27继续解析过程;若无需解析,则执行步骤39;步骤39、待配置文件数组轮询完毕后,确认当前的CAN数据解析完毕;步骤310、重复步骤35~步骤39完成所有CAN数据的解析。2.如权利要求1所述的方法,其特征在于,列中各个字段的含义为:变量代号:从1开始编号,依次增加;编码方式:CAN数据的编码方式,为Intel方式或Motorola方式;CAN ID:待解析的CAN ID值;起始byte:待解析数据的起始字节数;起始bit:在待解析数据byte中的起始bit;bit长度:待解析数据的总bit数;单位:待解析数据的精度;偏移量:待解析数据调整偏移量;变量类型:数据解析后的存储类型;注释:待解析数据的注释说明。3.如权利要求1所述的方法,其特征在于,还包括:步骤4、将解析的数据打包发送至服务器;步骤5、服务器根据该车载智能终端所对应的车型,选择对应的配置文件;步骤6、服务器根据CAN数据配置文件解析接收的CAN数据;步骤7、存储解析出的各个字段。4.一种自动解...

【专利技术属性】
技术研发人员:许学全赵伟
申请(专利权)人:北京清研宏达信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1