BQ系列阻抗跟踪电量计SOC最高能达到1%,功能强大,应用起来也比较复杂。不仅要配置好参数,匹配好化学ID,并且进行好Golden学习和相关测试。本文就讲述ID匹配,Golden学习和测试的终极方法流程。

配置参数主要是配置好容量数据,保护参数等,不在本文讨论之内。cnblogs.com/bmsdb 主要阐述一个科学准确的方法来尽量提高BQ电量计的准确度。

适用阻抗跟踪系列BQ芯片,主要包括:

BQ27Z561, BQ28Z610, BQ40Z80, BQ40Z50, BQ78Z100, BQ34Z100, BQ40Z60, BQ30Z554, BQ34Z950, BQ34Z110, BQ34Z653, BQ34Z651, BQ20Z655, BQ20Z75, BQ20Z65, BQ20Z60, BQ20Z70, BQ20Z90, BQ20Z80A。

Chemistry 化学 ID匹配

化学ID匹配的目的是,确定好电池所用电芯的数据模型。TI的电芯数据库中已经包含上千种电芯的模型,我们做好测试,用当前的测试数据匹配TI电芯数据库中的某一款或者几款电芯,确定好ID。

测试准备

  • 选择2-3个新量产电芯样品供测试;
  • 测试条件,室温(温度25±2℃),自然散热,空调风不能直接吹到电芯;
  • 电源和负载一套,也可以采用专门电池测试电源,电压记录精度1mV,电流记录精度1mA;
  • 如果保护板已经可以工作,需要EV2300 或 EV2400,用于通信获取电池数据。
  • 如果保护板暂时还不能工作,需要测试电源和负载数据记录,或者使用仪表;
  • bqStudio或者记录软件;
  • 温度传感器一定要和电芯接触好;

化学ID匹配测试过程

  1. 电池放电,用0.1C负载放空,放电截至电压2.8V;
  2. 静置2-5个小时;
  3. 根据电芯规格选择充电电压电流,准备充电。
  4. 设置数据采集间隔4秒,采集时间、电压、电流和温度,开始记录数据;
  5. CC-CV充电,推荐充电电流0.2~1C,截止电流0.01C;
  6. 静置2小时。尽量关闭BMS降低功耗;
  7. 0.1C恒流放电,放到截止电压2.8V;
  8. 静置5小时,尽量关闭BMS降低功耗;
  9. 停止记录数据。

整个测试流程曲线如下图:

测试数据提交

提交的测试数据包括两个文件:

Config.txt

roomtemp_rel_dis_rel.csv

1 config.txt 文件内容

ProcessingType=2

NumCellSeries=1

ElapsedTimeColumn=0

VoltageColumn=1

CurrentColumn=2

TemperatureColumn=3

2 记录的数据格式参考:

打包提交到TI网站生成报告,网址:https://www.ti.com/powercalculator/docs/gpc/gpcUpload.tsp

成功上传后约10分钟, 系统会自动发送邮件至myTI帐号的邮箱上, 计算成功会有⼀个<xxxx-report.zip>的压缩文件。

使用2-3个电芯测试得到多组数据,尽量找出一个符合所有电芯的化学ID,误差在2%以内。

Chemistry ID对于阻抗跟踪系列芯片很重要,如果误差都比较大,就要考虑测试新化学ID。

测试新化学ID的方法

如果测试的报告结果,误差比较大,在3%以上,说明数据库里面的模型没有匹配的电芯。此时首先要确认测试方法是不是有问题,如果温度、电压电流不正常的,要重新测试。

如果确认测试方法没有问题,或者电芯得确是新配方电芯,那么要与TI沟通送样测试出新ID,过程:

  1. 提供一些电芯供TI测试,样品数量根据需要而定;
  2. TI拿到电芯测试出新ID,更新ID数据库;
  3. 下载新的数据库,网址:https://www.ti.com/tool/download/GASGAUGECHEM-SW
  4. 更新到bqStudio中。

Golden学习

阻抗跟踪算法的特色就是能根据电池当前特性,自动更新容量和阻抗信息。电池Golden学习是用一套标准工况,来更新Qmax和R_a Table。Golden学习必须要用带保护板的Pack进行测试。这个学习过程不需要记录数据。

学习环境

  • 建议至少测试2pcs 电芯;
  • 充放电环境温度25°C为佳;
  • 配置好的bq系列保护板参数;
  • Chemical ID已经测试完成;

Golden学习过程

  1. 根据实际项目规格配置DF参数,选择正确的CHAM ID烧入;
  2. 对板子进行校正;
  3. 导出这个时候的senc/srec文件备用;
  4. 连接电芯到板子,发送reset命令,得到Golden Pack;
  5. 把电池放空到3.0V,然后静置5个小时;
  6. 发送命令使能IT算法;
  7. 把电池充到饱,确保有效的充电中止(100%,FC置位),然后停止充电;
  8. 静置两个小时;
  9. 把电池以C/5放空到终止电压,然后停止放电;
  10. 静置5个小时,检查update status和Ra flag;
  11. 重复7~10步骤一次。对于bq34Z100-G1:当update status的数值为0x06,Ra flag是0x0055时,说明学习成功。对于bq40z50平台芯片,update status为0x0E为学习成功;
  12. 导出gg文件,手动修改cycle count=0, lifetime, manufacture status=8000等。对于bq34Z100-G1,修改update status=02;
  13. 烧入第3步备份的senc/srec文件;
  14. 导入第12步修改好的文件,得到golden sample;
  15. 生成量产文件,比如senc/srec文件或者DFI文件。

注意事项

• 确保参数配置正确并严格按照指南进行充放电;

• 确保充电结束和放电结束的静置时间要足够;

• 充电停止之前确保FC标志位已经置位;

• 整个过程温度在10~40度范围内。

Golden Ra测试

Golden Ra测试主要是学习容量Qmax,Ra表和温度因数。在Golden学习后,Ra阻抗表是一般会自动更新,所以对于一般应用来说,Ra测试不是必需的。但在下面情况下,是要考虑做Ra测试:

• 个别电芯特性不符合阻抗跟踪学习条件,会导致Golden学习不成功;

• 某些比较老的化学ID,缺少Ra0_charge值,此时也会导致Golden学习不成功;

在这两种情况下为了提高准确度,可以主动测试Ra值。TI网站上提供了一套工具,帮助我们完成测试工作。

测试环境

  • 建议至少测试2pcs 电芯
  • 充放电环境温度25°C为佳
  • 时间纪录4秒钟⼀笔
  • bq系列保护板组成的电池包,Chemical ID已经烧录

测试步骤

  1. 在室温25°C对电池包进⾏充电,满充到FC置位;
  2. 静置2小时;
  3. 使用0.2C电流进⾏放电,建议放电至电芯电压2.8V;
  4. 静置5小时;
  5. 将测试数据整理成csv格式,准备好压缩包。

压缩包内容

Config.txt 文件内容

ProcessingType=3

ChemID=2002

NumCellSeries=1

ElapsedTimeColumn=0

VoltageColumn=1

CurrentColumn=2

TemperatureColumn=3

gg.csv内容

使用bqSTUDIO 读出参数

sysrate_rel_dis_rel.csv内容

需要包含时间/温度/电压/电流的纪录数值

⼀定要按照该文件名储存成CSV

提交计算

提交到TI网站计算Ra结果,网址https://www.ti.com/tool/GPCRA0

提交几分钟后,会收到邮件通知计算结果。

打开邮件中xxx-report.zip文件

找到gg_out.csv文件,可以发现Qmax/updatestatus/ Ra参数均已经更新。

后续需要将该gg_out.csv重新写入电池包的电量计中。

Golden Rb测试

同Ra测试一样,Rb测试也不是必需的。在以下应用场景才要考虑做Golden Rb测试:

  1. 一些电池经常工作在5℃以下的场景中;
  2. 某些比较老的ID不能自己学习,温度影响误差大;

在这些情况下,温度模型要有所调整才能达到比较好的效果。

测试环境

  • 建议至少测试2pcs 电芯
  • 充放电环境温度25°C为佳
  • 时间纪录4秒钟⼀笔
  • bq系列保护板组成的电池包,Chemical ID已经烧录

测试步骤

  1. 在室温25°C对电池包进⾏充电,满充到FC置位;
  2. 静置2小时;
  3. 使用0.2C电流进⾏放电,建议放电至电芯电压2.8V;
  4. 静置5小时;
  5. 在室温25°C对电池包进⾏充电,满充到FC置位;
  6. 放在0℃的温箱中,静置2小时;
  7. 使用0.2C电流进⾏放电,建议放电至电芯电压2.8V;
  8. 静置5小时;
  9. 整理数据。

测试完成的参数需要整成⼀个压缩文件

压缩文件(.zip)需要包含

Config.txt

gg.csv

lowtemp.csv

roomtemp.csv

Config.txt 文件内容

ProcessingType=4

ChemID=2002

NumCellSeries=1

ElapsedTimeColumn=0

VoltageColumn=1

TemperatureColumn=3

CurrentColumn=2

gg.csv

使用bqSTUDIO 读出参数

lowtemp.csv/roomtemp.csv内容

需要包含时间/温度/电压/电流的纪录数值

⼀定要按照该文件名储存成CSV格式

提交计算

提交到TI网站计算Rb结果,网址 https://www.ti.com/tool/GPCRB

打开邮件中xxx-report.zip文件,可以找到gg_out.csv和chemdat12_IDxxxx文件,打开csv文件可以发现Qmax/ TRise/ Ra参数均已经更新。后续需要将该gg_out.csv和chemdat12_IDxxxx重新写入电池包的电量计中。

GG文件配置就不多说了。写Rb文件chemdat12_IDxxxx在下面位置:

总结

本文完整介绍了BQ阻抗跟踪系列电量计的所有学习过程。在大多数应用中,只需要执行化学ID匹配和Golden学习过程。作者在很多项目中使用,也是这样就能达到比较好的结果。

BQ各款芯片会有一点差异,应用时需要理解+发挥,不可死守教条。如果对BQ芯片内部结构有兴趣,可以查看cnblogs.com/bmsdb我的历史文章。

全面!总结BQ系列阻抗跟踪电量计化学Chemical ID配置和Golden学习方法的更多相关文章

  1. BQ40Z50固件怎么升级?告诉你BQ系列芯片内部结构和升级方法

    一 BQ芯片初步认识 包括BQ40Z50在内,BQ系列电池管理芯片看起来是一个芯片,其实芯片里面封装了两个die.一个是MCU部分负责计算和控制,其采用的是bqBMP内核的16位处理器:另外一个die ...

  2. 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap

    上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...

  3. RDLC报表系列(一) 简单的动态数据绑定和配置

    RDLC系列链接 RDLC报表系列(一) 简单的动态数据绑定和配置  RDLC报表系列(二) 行分组 RDLC报表系列(三) 总计和折叠 RDLC报表系列(四) 矩阵 RDLC报表系列(五) 简单的图 ...

  4. 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap good

    上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...

  5. 10.翻译系列:EF 6中的Fluent API配置【EF 6 Code-First系列】

    原文链接:https://www.entityframeworktutorial.net/code-first/fluent-api-in-code-first.aspx EF 6 Code-Firs ...

  6. Mybatis 系列6-结合源码解析节点配置:objectFactory、databaseIdProvider、plugins、mappers

    [Mybatis 系列10-结合源码解析mybatis 执行流程] [Mybatis 系列9-强大的动态sql 语句] [Mybatis 系列8-结合源码解析select.resultMap的用法] ...

  7. Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05

    注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...

  8. 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap[转]

    上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...

  9. 痞子衡嵌入式:原来i.MXRT1xxx系列里也暗藏了Product ID寄存器

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1xxx系列里暗藏的Product ID寄存器. MCU 厂商在定义一个产品系列时,通常是会预先规划产品发展路线的(即会有一 ...

随机推荐

  1. C# Redis学习系列二:Redis基本设置

    上一篇:C# Redis学习系列一:Redis的认识.下载.安装.使用 一.redis 设置密码 使用下载好的 redis-cli.exe 指令: 1.设置密码: config set require ...

  2. Linux系列(39) - nohup

    nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行. nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的 ...

  3. GUI自动化测试遇到的问题

    学习接口自动化测试框架或工具,UI自动化测试框架或工具,有时会觉得知识似乎比较零散,死记硬背不是一个好方法.一个学习的思路是思考使用这些框架或工具的时候,可能会遇到什么问题,遇到这些问题可以通过什么方 ...

  4. 超详细unittest单元测试框架总结

    unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果.今天笔者 ...

  5. Lucene基础入门

    1. 数据的分类 结构化数据: 查询方法     数据库 非结构化数据: 查询方法  : (1)顺序扫描法   : 一行一行的看,从头看到尾 (2)全文检索 : 将一部分信息提取出来,重新组织将其变得 ...

  6. SQL-关联查询【转】

    T_A A表 T_B B标,id为表与表相关联的字段`创建相关表结构 CREATE TABLE Table_B( id INT(2), serNum VARCHAR(10) ); CREATE TAB ...

  7. ElasticSearch&kibana安装

    目录 ElasticSearch ElasticSearch 简介 ElasticSearch 概念 ElasticSearch quick start docker安装ElasticSearch K ...

  8. 踩坑系列《十二》解决连接云服务器的redis失败

    在本地连接服务器redis的时候,发现连接失败,这是因为服务器上的redis开启保护模式运行,该模式下是无法进行远程连接的.只需要修改redis目录下的redis.conf文件,找到 protecte ...

  9. T-SQL——数据透视和逆透视

    目录 0. 测试数据集及说明 0.1 准备测试数据 0.2 对一维表和二维表理解 1. 透视转换 1.1 使用标准SQL进行数据透视 1.2 使用T-SQL中pivot函数进行数据透视 1.3 关于 ...

  10. NOI 2016 Day1 题解

    今天写了NOI2016Day1的题,来写一发题解. T2 网格 题目传送门 Description \(T\) 次询问,每次给出一个 \(n\times m\) 的传送门,上面有 \(c\) 个位置是 ...