一种基于can总线的电池管理系统软件升级方法

文档序号:9435916阅读:370来源:国知局
一种基于can总线的电池管理系统软件升级方法
【技术领域】
[0001]本发明属于电池管理系统技术领域,具体涉及一种基于CAN总线的电池管理系统软件升级方法。
【背景技术】
[0002]电动汽车或其它电池储能系统的电池系统需要的电池较多,通常都由很多个电池模组组成,其中每个电池模组中都配有一个单独的从控管理单元,从控管理单元负责本电池模组的数据采集及与主控管理单元通讯。主控管理单元、从控管理单元、高压控制单元及相应线束构成电池管理系统。
[0003]其中,主控管理单元用于实现电池数据管理、S0C/S0H估算、异常管理、充放电控制策略实施及地址管理等;从控管理单元用于实现电池电压、温度采集、均衡管理及继电器控制及地址申请与释放等;高压控制单元用于实现电流检测、总电压检测、绝缘电阻计算、漏电检测等;线束用于实现主控管理单元、从控管理单元、高压采集单元间的连接。
[0004]在电池管理系统应用中,需要用到多个从控管理单元,不同的从控管理单元相互之间需要进行标识,一般情况下为从控管理单元分配不同的地址用于相互区分,这些单元模块一般被固定在电池箱或高压箱体内。在应用过程中,基于应用需求的变化,需要对这些单元的软件进行完善升级。现有技术中的电池管理系统软件升级方式是采用下载器方式对单元模块升级,升级过程中需要拆电池箱或高压箱体,实际操作复杂,而且升级效率较低。

【发明内容】

[0005]本发明的目的是提供一种基于CAN总线的电池管理系统软件升级方法,用以解决现有技术中的电池管理系统软件升级方法效率低的问题。
[0006]为实现上述目的,本发明的方案包括:
[0007]—种基于CAN总线的电池管理系统软件升级方法,包括以下步骤:
[0008](I)上位机选择待升级目标板、升级文件和升级方式,并向待升级目标板发送连接命令;待升级目标板接收到连接请求,若连接成功,向上位机发送确认帧;
[0009](2)若上位机收到确认帧,上位机逐行读取升级文件,成组CAN数据帧逐行发送;待升级目标板逐行接收升级文件,并向上位机发送确认帧;
[0010](3)若上位机收到确认帧,判断是否行结束;若行结束,则向待升级目标板发送行结束数据帧,若没有行结束,继续逐行发送升级文件。若待升级目标板收到行结束帧,将本行数据写入FLASH,并向上位机发送确认帧;若待升级目标版没有接收到行结束帧,继续逐行接收升级文件;
[0011](4)若上位机收到确认帧,上位机判断升级文件是否发送完成;若升级文件发送完成,则向待升级目标板发送文件结束数据帧并结束升级过程;若升级文件没有发送完成,则继续逐行发送升级文件。若待升级目标板收到结束数据帧,则向上位机发送确认帧并结束升级;若没有收带结束数据帧,则继续逐行接收升级文件。
[0012]所述升级文件格式为S19格式。
[0013]所述步骤(I)中升级方式为:上位机以类型为标识升级主控管理单元、从控管理单元、高压控制单元;上位机以地址为标识通过定点、定区间、广播方式升级从控管理单元。
[0014]所述步骤(4)中,若待升级目标板收到结束数据帧,则向上位机发送确认帧并运行应用程序。
[0015]对目标板的FLASH进行分区管理,划分出应用程序存储器和BootLoader程序存储区,通过BootLoader与上位机进行CAN数据帧交互和数据存储。
[0016]本发明的有益效果是:上位机与电池管理系统的主控管理单元、从控管理单元、高压控制单元之间通过CAN总线进行通信;上位机选择待升级目标板、升级文件和升级方式,并向待升级目标板发送连接命令。连接成功后,上位机逐行读取升级文件,成组CAN数据帧逐行发送;待升级目标板逐行接收升级文件。每行数据结束后,待升级目标板本行数据写入FLASH,一直循环上述过程直至升级文件发送完成结束升级。本发明的基于CAN总线的电池管理系统软件升级方法能够在无需拆箱的情况下进行升级,提高了工作效率;同时,还能够降低成本,方便操作。
【附图说明】
[0017]图1是本发明实施例的流程图。
【具体实施方式】
[0018]下面结合附图对本发明做进一步详细的说明。
[0019]本发明实施例的电池管理系统软件升级方法基于CAN总线通信协议,将基于主控管理单元、从控管理单元、高压控制单元的软件称为目标板软件,简称目标板;主控管理单元、从控管理单元、高压控制单元间采用CAN总线通信,上位机与目标板之间也采用CAN总线通信,以CAN协议应答机制进行数据传输,CAN总线速率支持1KBPS?1MBPS。上位机对主控管理单元、从控管理单元、高压控制单元进行各自独立升级。
[0020]如图1所示,本发明的基于CAN总线的电池管理系统软件升级方法包括以下步骤:
[0021](I)上位机选择待升级目标板、升级文件和升级方式,并向待升级目标板发送连接命令;待升级目标板接收到连接请求,若连接成功,向上位机发送确认帧。
[0022]上位机上电后,初始化CAN总线,选择需要升级的目标板和相应的升级文件,并选择一种升级方式。上位机能够以类型为标识升级主控管理单元、从控管理单元、高压控制单元;并且能够以地址为标识通过定点、定区间、广播方式升级从控管理单元。
[0023]目标板上电后,初始化MCU,将BootLoader程序拷贝到RAM中,然后在RAM中运行BootLoader程序。BootLoader负责CAN、Flash初始化,与上位机进行CAN数据帧交互和数据存储,以及负责升级文件的接收、格式解析、数据存储及与应用模块间的交互。
[0024]目标板检测上位机有无升级请求,若上位机有升级请求,目标板进入BootLoader模块,并向上位机发送确认帧,确认连接成功;若上位机无升级请求,目标板进入应用模块。而且,目标板支持应用程序运行过程中软件升级,采用看门狗方式复位目标板。
[0025](2)若上位机收
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1