行业标准要求见:QCT/897
1、电池管理系统基本原理
一、SOC估算(SOC Algorithm)
SOC(State Of Charge:电池当前的剩余电量相对总电量的百分数。准确估算电池组的荷电状态SOC(state of charge),保证SOC维持在合理的范围内,可以防止由于过充电或过放电对电池组的损伤,提高电池组寿命。
二、功率预测(Power Prediction)
电池管理系统中的功率控制是在不同的充放电状态下,通过设置最大充放电电流和最大充放电功率限制功率的输出。对功率的控制可以增加最大行驶里程,提高电池系统的使用寿命,是电池性能工作在最优状态。同时,为整车控制器的动力分配提供了重要讯息。
三、继电器控制(Contactor Control)
电池管理系统(BMS)中,使用了两个高压继电器,与电池包正极相连的正继电器和与电池包负极相连的负继电器,还有一个预充电回路中的预充电继电器。对继电器的有效控制直接影响到BMS系统正常功能的实现,所以,继电器控制模块也是BMS中一个重要组成部分。
四、绝缘检测
电动汽车工作条件比较恶劣,振动、温度及湿度的急剧变化,都有可能造成动力电缆及其他绝缘材料迅速老化甚至绝缘破损,使设备绝缘性能下降。这不仅会影响车辆的正常控制,还会危及人身安全。因此,准确、实时测量高压电气与车身之间的绝缘性能,对保证乘客和车辆安全、电气设备正常工作具有重要意义。
Vmodel流程
基于ASPICE的开发及测试流程
ENG02:系统需求分析
ENG03:系统架构设计阶段
对象: 电池管理系统。以电池管理系统作为整体,在ENG02中抽取和电池管理系统相关的需求,细化这些需求,并进行子系统功能划分。
ENG04 软件需求分析阶段
以CECU系统作为整体(ENG03中划分的其他系统也可以订立各自的ENG04文档并行开发),在ENG03中抽取和软件相关的CECU需求,并细化这些软件需求。
ENG05 软件设计阶段
应用层软件系统作为整体(ENG04中划分的其他软件层也可以订立各自的ENG05文档并行开发),在ENG04中抽取和软件相关的CECU需求,并细化这些软件需求。
ENG06:单元测试
单元测试(Unit Test)是对基本组成单元进行的测试。一个最小的单元应该具有明确的功能、性能定义、接口定义,而且可以和其它单元区分开来。不同规模的测试对象,单元的定义可以有所不同,对于复杂的系统,其子系统也可以视为单元。
DC( Decision coverage)
CC(Condition coverage)
MC/DC( Modified Condition/decision coverage)
ENG07:模块测试
ENG08:软件测试
ENG09:系统集成测试
ENG10:电池系统测试
一、注意事项
- SOX(SOC、SOP、SOE、SOH)
- 故障
- 通信
- 功率
- 充电
- 均衡
- 高压
二、现场问题
1、上下电策略需要注意哪些问题
2、继电器粘连
3、绝缘过低
4、子网通信故障
5、快充电流跳变
6、快充进入加热模式后烧保险丝
7、程序修改没有完全覆盖策略或技术协议
8、无法进入充电
9、充电电流需求不准(数据溢出)
10、SOC不准
11、快充通信没有严格按照国标
12、快充时有电压无电流
13、快充初期充电桩上报绝缘过低
14、UDS
三、CECU软件修改注意细节
1、电池类型、电池容量、串联单体个数
2、SOC
(1)不同电池类型的SOC-OCV
(2)不同容量对应的RefFactor/ShowFactor
3、Record.c
(1)电流安时积分系数
(2)容量衰减因子需根据客户提供的衰减速率进行修改
4、
(1)软硬件版本号需要变更
(2)根据LECU项目需求表修改相关
5、温感个数,电池包个数
6、LECU个数
7、根据整车网络拓扑,确认是主网、子网波特率是否需要修改
确认慢充通讯是在整车网络还是充电网络
8、主网报文增加时,需要修改保报文个数
9、数据溢出,导致数据不正确:例如定义一个8bit的数据,计算过程中超过255
10、引用数据时缺少数据类型,导致程序跑飞;
11、继电器引脚引用错误;
12、数组数据溢出,或引用时超过数组个数:例如INT8U Array[5];sflg = Array[5];
13、没有严格遵守通讯协议,导致无法通讯或数据处理不正确:例如J1939协议
14、.进入充电模式,却没有闭合充电继电器;
15、唤醒消失后无法进入休眠模式(此时有常电);
16、因没有开启检测CP,插入慢充充电枪后主控没有唤醒工作
17、soc_ocv表引用错误,导致SOC显示不正常
18、单体充电电压过高,由于设置条件问题,未进入单体保护
19、采集总压时的分压比不能错
20、进入诊断标定数值后一定要退出诊断模式,否则可能会出现一直标定,标定的值一直不变;如上述12更改软件可解决该问题。
21、采集电流时注意霍尔方向。
22、BatPackInfo2.SocRef与BatPackInfo2.SocShow差值大于50%时,做强制修正,否则不对BatPackInfo2.SocShow做初始化的强制赋值。
23、温度修正因子,需基于不同的电池做调整。
24、计算给快充充电桩的限制电流时,先考虑电池对电流的限制值,然后考虑桩的限制电流。
25、子网通讯超时故障增加到8s以上。目前从控发送周期较长,在干扰较大时,易出现误报超时故障。
26、主网同一周期的发送报文过多时,进行错峰发送。
27、极限保护条件保持不可去除,需在各工作模式下生效。
28、充满的充满标定区间,可基于具体的所需电流下的试验结果得到。
29、对于低压部分检测,采用INT16U或以上单位。勿用INT8U的类型,0.1V的FACTOR易造成溢出。
30、SOC表格,填充5%-0%的部分和95%和100%的部分。可显示出对应该段的SOC值。
31、慢充电流较大时,在充电末端,将电流线性减小至0.15C以下,否则不易充满。
32、快充完成后,延时5s后,再进行停止。可保证充满后,充电桩显示100%。
33、快充未充满时,充电桩不可显示100%,限制在99%。易造成充电桩自动停止充电。
34、增加快充温度故障或快充温度值至子网发送出来。
35、充电停止时,行车停止时等引用ErrCodePro.ErrByteN的地方,注意项目变更的变化,容易勿判断。
36、充电机刚启动时,给充电机的最小电流勿发0,会造成充电机停机。
37、内部LECU故障上报后,CECU处理做故障定义时,增加为5s的延时。
38、触发SOC上电重新标定时,注意非最低单体引起的标定。