本发明属于can报文通信的,特别是涉及一种can协议解析方法、系统、设备及介质。
背景技术:
1、目前车辆上一般can高速总线:速率500kb/s,主要面向实时性要求较高的控制单元。如发动机、自动变速器、防抱死制动系统(abs)/牵引力控制系统(tcs)、安全气囊、电控悬架、巡航控制、动力转向、电机控制、电池控制等。而低速总线——速率100kb/s,主要针对车身控制的。如灯光控制、雨刷洗涤、电动座椅、门锁防盗、电动机窗、喇叭、后视镜、气候控制、警告信号、仪表显示等信号的采集及反馈。车辆上高速总线信号和低速总线信号同时并存,报文协议格式定义不同,每种信号协议的收发,以及同各类电子控制单元(ecu)的通信,均需要解析can信号报文和对can信号报文按协议定义格式做封包处理,can信号报文的解析和封装的工作量巨大,不同的业务难以实现解析和封装的统一处理,导致解析和封装难以实现高效运行,难以高效实现与车机的握手工作和车辆信号的调试和验证,影响通信的效率和响应的延时。
技术实现思路
1、本发明提供一种can协议解析方法,该方法包括:获取can协议的身份标识号码值和传输的数据流的首字节值生成拆包标识,基于拆包标识对获取的车端can协议的数据流进行拆分处理生成若干数据段和第一配置表;基于存储字节的字节长度构建字段的解析规则,基于解析规则解析若干数据段中存储的字段,并获取若干数据段中相应字段的字节位对应的值,以及生成第二配置表;将字段的字节位对应的值进行转换配置,并获取对应该字节位的值的配置类型;基于字段的值的配置类型进行校验配置处理;将校验配置后的字段的值输出。
2、作为一种可选的实施方式,获取can协议的身份标识号码值和传输的数据流的首字节值生成拆包标识包括:获取can协议的身份标识号码值;获取传输的数据流中报文首字节格式和首字节值,以及首字节的数据长度、数据状态、数据帧类型生成拆包标识。
3、作为一种可选的实施方式,基于拆包标识对获取的车端can协议的数据流进行拆分处理生成若干数据段包括:将车端can协议的数据流中报文按首字节格式进行拆分处理,生成帧起始、仲裁段、控制段、数据段、循环冗余校验段、确认字符段和帧结束;基于报文中拆分的数据长度、数据状态、数据帧类型进行拆分处理生成若干数据段。
4、作为一种可选的实施方式,基于报文中拆分的数据长度、数据状态、数据帧类型进行拆分处理生成若干数据段和第一配置表还包括:将待解析的can指令名称按预定规则填入第一配置表;基于第一配置表对获取的车端can协议的数据流进行拆分处理。
5、作为一种可选的实施方式,基于存储字节的字节长度构建字段的解析规则包括:在数据段的字节为单字节时,构建该单字节的值的起始位置和字节位长度;在数据段的字节为多字节时,按序依次构建该多字节的值的起始位置和对应字节的字节位长度。
6、作为一种可选的实施方式,按序依次构建两个字节的值的起始位置和对应字节的长度包括:按两个字节的前后顺序依次构建第一个字节的起始位、第一个字节占用的字节位长度、第二个字节的起始位和第二个字节占用的字节位长度。
7、作为一种可选的实施方式,构建字段的解析规则还包括:将报文指令按can指令名称的解析规则配置入第二配置表;基于第二配置表对获取的车端can协议的数据流进行解析处理。
8、作为一种可选的实施方式,将字段的字节位对应的值进行转换配置包括:将字段的字节位对应的值进行最小值、最大值、放大因子、偏移量和初始值的转换配置,对字段的字节位对应的值配置类型,用于对字段值的配置类型进行校验配置。
9、作为一种可选的实施方式,将字段的字节位对应的值进行转换配置还包括:将报文指令按can指令名称的转换配置规则配置入第三配置表;基于第三配置表对获取的车端can协议的数据流进行转换配置和校验配置处理。
10、作为一种可选的实施方式,基于can指令名称关联第一配置表、第二配置表和第三配置表。
11、本发明还提供一种can协议解析系统,该can协议解析系统包括:拆分单元,用于获取can协议的身份标识号码值和传输的数据流的首字节值生成拆包标识,基于拆包标识对获取的车端can协议的数据流进行拆分处理生成若干数据段;解析单元,用于基于存储字节的字节长度构建字段的解析规则,基于解析规则解析若干数据段中存储的字段,并获取若干数据段中相应字段的字节位对应的值;配置校验单元,用于将字段的字节位对应的值进行转换配置,并获取对应该字节位的值的配置类型;基于字段的值的配置类型进行校验配置处理;输出单元,用于将校验配置后的字段的值输出。
12、本发明还提供一种电子设备,该电子设备包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行计算机可读指令,使得计算机可读指令被处理器执行时实现上述所述的can协议解析方法。
13、本发明还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当计算机指令在设备上运行时,使得所述设备执行上述所述的can协议解析方法。
14、本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明至少具有以下优点及有益效果之一:
15、一.本发明提供的一种can协议解析方法,该can协议解析方法包括:获取can协议的身份标识号码值和传输的数据流的首字节值生成拆包标识,基于拆包标识对获取的车端can协议的数据流进行拆分处理生成若干数据段和第一配置表;基于存储字节的字节长度构建字段的解析规则,基于解析规则解析若干数据段中存储的字段,并获取若干数据段中相应字段的字节位对应的值,以及生成第二配置表;将字段的字节位对应的值进行转换配置,并获取对应该字节位的值的配置类型;基于字段的值的配置类型进行校验配置处理;将校验配置后的字段的值输出。本发明的can协议解析方法通过构建多个配置表,并统一构建配置表信息,通过仅修改配置表的配置信息就能够实现所有can信号协议数据的解析和封装,报文的收发,避免了基于协议作定制开发的工作量和成本,提升了车机的握手工作的速度和车辆信号调试工作时信号指令的验证效率。
16、二.本发明还提供一种can协议解析系统,该can协议解析系统包括:拆分单元,用于获取can协议的身份标识号码值和传输的数据流的首字节值生成拆包标识,基于拆包标识对获取的车端can协议的数据流进行拆分处理生成若干数据段和第一配置表;解析单元,用于基于存储字节的字节长度构建字段的解析规则,基于解析规则解析若干数据段中存储的字段,并获取若干数据段中相应字段的字节位对应的值,以及生成第二配置表;配置校验单元,用于将字段的字节位对应的值进行转换配置,并获取对应该字节位的值的配置类型;基于字段的值的配置类型进行校验配置处理;输出单元,用于将校验配置后的字段的值输出。本发明的can协议解析系统通过构建多个配置表,并统一构建配置表信息,通过仅修改配置表的配置信息就能够实现所有can信号协议数据的解析和封装,报文的收发,避免了基于协议作定制开发的工作量和成本,提升了车机的握手工作的速度和车辆信号调试工作时信号指令的验证效率。
17、三.本发明还提供一种电子设备,该电子设备包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行计算机可读指令,使得计算机可读指令被处理器执行时实现上述所述的can协议解析方法。本发明的电子设备在运行时通过构建多个配置表,并统一构建配置表信息,通过仅修改配置表的配置信息就能够实现所有can信号协议数据的解析和封装,报文的收发,避免了基于协议作定制开发的工作量和成本,提升了车机的握手工作的速度和车辆信号调试工作时信号指令的验证效率。
18、四.本发明还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当计算机指令在设备上运行时,使得所述设备执行上述所述的can协议解析方法。本发明的计算机可读存储介质在运行时通过构建多个配置表,并统一构建配置表信息,通过仅修改配置表的配置信息就能够实现所有can信号协议数据的解析和封装,报文的收发,避免了基于协议作定制开发的工作量和成本,提升了车机的握手工作的速度和车辆信号调试工作时信号指令的验证效率。
19、上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
1.一种can协议解析方法,其特征在于,包括:
2.根据权利要求1所述的can协议解析方法,其特征在于,获取can协议的身份标识号码值和传输的数据流的首字节值生成拆包标识包括:
3.根据权利要求1所述的can协议解析方法,其特征在于,基于拆包标识对获取的车端can协议的数据流进行拆分处理生成若干数据段包括:
4.根据权利要求3所述的can协议解析方法,其特征在于,基于报文中拆分的数据长度、数据状态、数据帧类型进行拆分处理生成若干数据段和第一配置表包括:
5.根据权利要求1所述的can协议解析方法,其特征在于,基于存储字节的字节长度构建字段的解析规则包括:
6.根据权利要求5所述的can协议解析方法,其特征在于,按序依次构建两个字节的值的起始位置和对应字节的长度包括:
7.根据权利要求5所述的can协议解析方法,其特征在于,构建字段的解析规则还包括:
8.根据权利要求1所述的can协议解析方法,其特征在于,将字段的字节位对应的值进行转换配置包括:
9.根据权利要求8所述的can协议解析方法,其特征在于,将字段的字节位对应的值进行转换配置还包括:
10.根据权利要求1所述的can协议解析方法,其特征在于,基于can指令名称关联第一配置表、第二配置表和第三配置表。
11.一种can协议解析系统,其特征在于,包括:
12.一种电子设备,包括:
13.一种计算机可读存储介质,其特征在于,包括计算机指令,当计算机指令在设备上运行时,使得所述设备执行如权利要求1至10任一项所述的can协议解析方法。