对动力电池包BMS报文简单快速的翻译与解析方法技术

技术编号:18975086 阅读:154 留言:0更新日期:2018-09-19 04:40
本发明专利技术涉及一种对动力电池包BMS报文简单快速的翻译与解析方法,包括:步骤S1:接受报文,提取报文中帧ID信息;步骤S2:根据报文的帧ID信息在报文描述表中查找得到该报文的分组截断信息和对每一分组的操作信息;步骤S3:根据查找到的分组截断信息对报文的内容部分进行截断成多个分组,并根据对每一分组的操作信息对每个分组的内容进行操作以实现对内容的解析。与现有技术相比,本发明专利技术快速准确地对动力电池包BMS的协议做出判断,另一方面很够稳定高效地对动力电池BMS的报文进行翻译与解析;操作成本低廉,也有利于电动汽车的推广应用。

【技术实现步骤摘要】
对动力电池包BMS报文简单快速的翻译与解析方法
本专利技术涉及通信领域,尤其是涉及一种对动力电池包BMS报文简单快速的翻译与解析方法。
技术介绍
随着世界能源紧缺与环境污染问题的加剧,纯电动汽由于对环境影响相对传统汽车较小,其前景被广泛看好,国家为了推动其发展,在2016年颁布GB/T27930-2105。BMS在电动汽车中起着非常重要的作用,它记录电池包的基本参数,这些参数是判断其安全的重要信息,这些信息都是以CAN通信的方式进行传递。现在大多数解析方法相对复杂,重复工作量大,工作效率低,系统兼容性较差,给企业和用户带来诸多不便。
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种对动力电池包BMS报文简单快速的翻译与解析方法。本专利技术的目的可以通过以下技术方案来实现:一种对动力电池包BMS报文简单快速的翻译与解析方法,包括:步骤S1:接受报文,提取报文中帧ID信息;步骤S2:根据报文的帧ID信息在报文描述表中查找得到该报文的分组截断信息和对每一分组的操作信息;步骤S3:根据查找到的分组截断信息对报文的内容部分进行截断成多个分组,并根据所述对每一分组的操作信息对每个分组的内容进行操作以实现对内容的解析。所述步骤S3具体包括:步骤S31:根据分组截断信息判断分组是否需要进行二次分组,若为是,则执行步骤S32,若为否,则执行步骤S33步骤S32:在根据分组截断信息,结合分组子表和解析表对报文的内容进行分组和二次分组并找到每一个二次分组的内容对应的解析;步骤S33:根据查找到的分组截断信息对报文的内容部分进行截断成多个分组,并根据所述对每一分组的操作信息对每个分组的内容进行操作以实现对内容的解析。所述操作信息的类型包括比较,若分组对应的操作信息为比较,则根据该分组的内容在比较操作解析表中找到对应的解析。所述报文包括帧信息、帧ID信息和内容。所述帧信息的长度为一个字节。所述帧ID信息的长度为4个字节。所述报文的内容的长度为8个字节。与现有技术相比,本专利技术具有以下有益效果:1)快速准确地对动力电池包BMS的协议做出判断,另一方面很够稳定高效地对动力电池BMS的报文进行翻译与解析;操作成本低廉,也有利于电动汽车的推广应用。2)提供二次分组机制,可以对于复杂的问题描述信息缩短报文的长度,提高效率。3)设置了比较这一操作方式,可以提高报文含义的丰富程度。附图说明图1为本专利技术方法的主要步骤流程示意图;图2为本专利技术实施例的执行流程示意图;图3为本专利技术实施例中CAN报文分组截断,数据操作和描述表的节选示意图;图4为本专利技术实施例中比较操作时的解析表的节选示意图;图5为本专利技术实施例中分组子表及解析表的节选示意图;图6为本专利技术实施例中程序运行结果示意图;图7为本专利技术实施例中程序运行结果示意图;图8为本专利技术实施例中程序运行结果示意图。具体实施方式下面结合附图和具体实施例对本专利技术进行详细说明。本实施例以本专利技术技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本专利技术的保护范围不限于下述的实施例。一种对动力电池包BMS报文简单快速的翻译与解析方法,本方法在应用时,优选可以根据国家相关标准,对其进行分析处理,建立程序自动翻译解析时所需要检索的数据库表格,通过数据库和软件编程相结合的方法,快速实现对动力电池BMS通信协议的识别,实现对报文简单,安全,可靠地翻译与解析。数据库表格主要有三张,分组截断,数据操作和描述表,比较操作解析表,分组子表及解析表;分组截断,数据操作和描述表,包含了报文中所要进行的分组截断信息,数据操作信息和描述信息;比较操作解析表包含了报文中所有要进行比较操作的解析信息;分组子表及解析表包含了报文中所有需要进行二次分组的信息及对应的解析信息。根据GB/T27930-2105相关标准,对其进行分析处理,建立程序所需自动翻译解析时所需要检索的数据库表格。数据库表格主要有三张:分组截断,数据操作和描述表,比较操作解析表,分组子表及解析表。分组截断,数据操作和描述表包含了报文中所要进行的分组截断信息,数据操作信息和描述信息,包括报文的PGN,帧ID,多包信息,分组信息,每组对应的字节数,每组对应的SPN,每一组对应的描述信息,每一组对应的操作信息,每一组对应的数值类型。比较操作解析表包含了报文分组中每一组需要进行比较操作的,对应的比较操作的解析信息,包括:报文的PGN,对应的组数,每组对应的SPN,每组对应的数值,每组对应的解析。分组子表及解析表包含了报文中所有需要进行二次分组的信息及对应的解析信息,包括:报文的PGN,帧ID,对应的分组数,对应的分组数下的二次分组的组数,二次分组下对应每组的位数,二次分组下对应每组的描述信息,二次分组下对应每组的数值。具体的,如图1和图2所示,包括:步骤S1:接受报文,提取报文中帧ID信息;步骤S2:根据报文的帧ID信息在报文描述表中查找得到该报文的分组截断信息和对每一分组的操作信息;步骤S3:根据查找到的分组截断信息对报文的内容部分进行截断成多个分组,并根据对每一分组的操作信息对每个分组的内容进行操作以实现对内容的解析,具体包括:步骤S31:根据分组截断信息判断分组是否需要进行二次分组,若为是,则执行步骤S32,若为否,则执行步骤S33步骤S32:在根据分组截断信息,结合分组子表和解析表对报文的内容进行分组和二次分组并找到每一个二次分组的内容对应的解析;步骤S33:根据查找到的分组截断信息对报文的内容部分进行截断成多个分组,并根据对每一分组的操作信息对每个分组的内容进行操作以实现对内容的解析,其中,操作信息的类型包括比较,若分组对应的操作信息为比较,则根据该分组的内容在比较操作解析表中找到对应的解析。报文包括帧信息、帧ID信息和内容,其中,帧信息的长度为一个字节,帧ID信息的长度为4个字节,报文的内容的长度为8个字节。下面以三个实际的报文对本专利技术的具体细节进行阐述。实施例1:假设收到一条CAN的报文如下:0x88181C56F45A36016D01555FFF该报文分组字节对应信息具有唯一性,不涉及比较操作,根据CAN报文分组截断,数据操作和描述表,通过相关程序可进行相应的翻译与解析。1)88:表示帧信息2)181C56F4:表示帧的ID信息3)5A36016D01555FFF:表示数据报文相应字节对应的实际物理量:字节“5A”:BMS中止荷电状态为0x5A=90%。字节“3601”:为动力蓄电池单体最低电压为0x0136=3.10V(带两位小数)。字节“6D01”:动力蓄电池单体最高电压为0x016D=3.65V(带两位小数)。字节“55”:动力蓄电池最低温度为0x55=85度(带50的偏移量,实际为85-50=35度)。字节“5F”:动力蓄电池最高温度为0x5F=95度(带50的偏移量,实际为95-50=45度)。最后一个字节:为填充的数据内容(无效的数据)。1、报文:0x88181C56F45A36016D01555FFF的分组截断,数据操作和描述表对应的分组截断信息,数据操作信息和描述部分信息(参考图3的表格)如下:分组数:5第一组字节数:1,第一组数值类型:byte,第一组操作:十进制;第二组字节数:2,第二组数值类型:byte,第二组操作:本文档来自技高网...

【技术保护点】
1.一种对动力电池包BMS报文简单快速的翻译与解析方法,其特征在于,包括:步骤S1:接受报文,提取报文中帧ID信息;步骤S2:根据报文的帧ID信息在报文描述表中查找得到该报文的分组截断信息和对每一分组的操作信息;步骤S3:根据查找到的分组截断信息对报文的内容部分进行截断成多个分组,并根据所述对每一分组的操作信息对每个分组的内容进行操作以实现对内容的解析。

【技术特征摘要】
1.一种对动力电池包BMS报文简单快速的翻译与解析方法,其特征在于,包括:步骤S1:接受报文,提取报文中帧ID信息;步骤S2:根据报文的帧ID信息在报文描述表中查找得到该报文的分组截断信息和对每一分组的操作信息;步骤S3:根据查找到的分组截断信息对报文的内容部分进行截断成多个分组,并根据所述对每一分组的操作信息对每个分组的内容进行操作以实现对内容的解析。2.根据权利要求1所述的一种对动力电池包BMS报文简单快速的翻译与解析方法,其特征在于,所述步骤S3具体包括:步骤S31:根据分组截断信息判断分组是否需要进行二次分组,若为是,则执行步骤S32,若为否,则执行步骤S33步骤S32:在根据分组截断信息,结合分组子表和解析表对报文的内容进行分组和二次分组并找到每一个二次分组的内容对应的解析;步骤S33:根据查找到的分组截断信息对报文的内容部分进行截断成多个...

【专利技术属性】
技术研发人员:张宇严晓黄碧雄王影黄赛杰王东征
申请(专利权)人:上海工程技术大学
类型:发明
国别省市:上海,31

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

1