基于CAN总线的镍氢电池管理系统设计
扫描二维码
随时随地手机看文章
1 前言
蓄电池剩余容量的准确测量在电动汽车的发展中一直是一个非常关键的问题。有效的电池管理系统有利于电池的寿命提高。所以对蓄电池SOC的准确估计成为电动车电池能量管理系统的中心问题。如果能够正确估计蓄电池的SOC,就能合理利用蓄电池提供的电能,延长电池组的使用寿命。
方案采用总线式方式组网,应用现场总线完成各个节点之间的数据交换。在分布式方案中,多能源控制器为主控ECU,它通过现场总线和多个下位ECU通信。工作过程中,每个控制器的通信子模块以定时器或者中断的方式在后台运行,完成数据的收发工作,节省主流程资源开支。如图1所示。
电池的SOC值是电池控制器通过CAN总线发送给多能源控制器,而整车的工作模式则是多能源控制器通过采集各个ECU的信息通过一定的逻辑算法来确定的。一旦确定了这些参数,那么我们就可以决定是启动发动机还是关闭发动机,也可以决定电机应该工作在哪个状态。例如,当电池的SOC值在50%与70%之间,这个时候多能源控制器算得整车工作模式是在起步模式,那么就表示当前系统的电能源充足,不需要开启发动机,而且,电机可以以驱动方式来工作。
2系统硬件组成
如图2所示,电池控制器可以与外部汽车中其他控制系统通过CAN总线网络进行通信。一个电池管理ECU(电子控制单元)和4个电池组信息检测ECU;我们所使用的单体电池被组合成24个电池组。我们对每6个电池组配置一个测量单元,即共有电池组ECU1~ECU4。4个电池组ECU与电池包ECU组成一个 CAN总线网络,一个CAN控制器与电池组ECU组成电池管理系统内部的CAN网络,另一个CAN控制器与汽车中其他控制系统组成整车光纤CAN总线网络。
图2 电池管理ECU的结构框图
如图3所示,电池组ECU所采用的嵌入式微控制器为P87C591单片机,它内部硬件集成了CAN控制器和A/D模数转换模块。每个电池组ECU管理6个电池组,完成的功能为测量6个电池组的电压和温度信息,将收集的信息通过CAN总线发送给电池管理ECU。6路电池组的电压分别经过电压调理电路后接至 P87C591的6路A/D输入口。6路温度传感器的信号线接至P87C591的同一路IO口。
图3电池组ECU的电路结构图
3 CAN接口的电路设计
在本设计中采用P87C591作为微控制器。其中,P87C591与CAN驱动芯片的接口电路设计如图4所示。主要由P87C591,光电隔离电路,CAN驱动等三部分组成。光电隔离电路:为了进一步抑制干扰,CAN总线接口中往往采用光电隔离电路,光电隔离器一般位于CAN控制器与收发器之间。
图4 CAN通信模块硬件设计电路图
系统总程序包括初始化程序和主循环程序,其流程图如图5所示:
图 5 主程序图
系统首先上电,接着对CAN和定时器进行初始化,系统等待中断,如果有中断,判断中断类型,如果是SJA1000控制器的中断,就读取SJA1000控制器的数据,并且释放缓冲区,操作完中断返回,如果是定时器50ms周期中断,对电压,电流数据进行AD转换,计算SOC值,并由CAN发送相关数据,操作完中断返回。
4结束语
基于CAN总线的数据通信技术具有较高的可靠性、实时性和灵活性。CAN总线在混合动力电动汽车镍氢电池管理系统的应用中具有广阔的应用前景和发展空间。