This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] BQ76PL455A-Q1:TI BD76PL455A-Q1参考设计

Guru**** 2541560 points
Other Parts Discussed in Thread: EMB1499Q, EMB1428Q, EM1402EVM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/820022/bq76pl455a-q1-ti-bd76pl455a-q1-reference-design

器件型号:BQ76PL455A-Q1
主题中讨论的其他器件:BQ76PL455AEMB1499QEM1428QEM1402EVM

您好!

我正在使用 EM1402评估模块(TI BD76PL455A-Q1参考设计)。

几天前、BMS 系统有3节电池、电压读数约为0.006至0.6伏。 现在有6个单元格的读数相同。 当我读取时、将电池从 BMS 链中取出并使用仪表读取电压时、各个电池的读数为2.2伏。

这些电池会导致欠压 警报。 当我强制平衡电池时、电压读数看起来会变得正确。 第二天读数再次偏低。 但是、使用仪表可以预期各个电池的读数。

当仪表告诉我正确的电压时、只需联系我、看看什么可能导致芯片/电路板读数如此低。 这是否是一个硬件问题、是否是一个导致时序问题的设置(参数)问题、从而导致错误的值? 尽管设置参数几乎没有变化。  

任何见解都值得赞赏。

Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Malcolm、

    "当我强制平衡电池时、电压读数看起来是正确的"

    您是在打开还是打开/关闭平衡后进行测量?

    可以为我执行此操作吗?

    1.向我展示每个电池的电池测量值。

    2.转至 PL455A 电池平衡寄存器并为我提供寄存器值。

    谢谢

    Roger

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好 Roger。

    我今天不在办公室、我回来后将为您获取这些测量值。

    另一个问题。 电压值在平衡后保持不变。

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好 Roger。

    我正在关注 TI 提供的示例源代码、但添加了#diacharge"。

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Roger、

    对于软件方框图:

    1) 1)读取电池的电压和温度  

    2) 2)确定 maxCell 和 MinCell 电压

    3)调用 EMB_Start (0、maxCell、discharger)(这使用对寄存器121的调用)

    4)延迟1到10秒

    5)延迟3秒

    6) 6)重复返回到步骤1)

    这是推荐的方法吗? 您还有其他示例吗?

    谢谢、

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Roger、

    以下是您的问题的答案:

    1) 1)电芯值:

    1) 2.234

    2) 2.136

    3) 2.287

    4) 2.258

    6) 2.2189

    7) 2.21134

    8) 2.231

    9) 2.331

    10) 2.134

    11) 2.2089

    12) 0.0061

    13) 0.0060

    14) 0、067

    15) 2.214

    16) 2.215

    *注意-在以前的测量中,12、13、14的电压是可以的,但电池 4、5、 6、7、8在0.006范围内。 因此、这些低电压似乎会移动。

    2) 2)寄存器值:

    寄存器13为0x10

    寄存器14 0x18

    我们非常感谢您的任何建议。

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Malcolm、

    感谢您提供信息。 以下是一些有关如何尝试调试此问题的建议:

    • 我想首先弄清楚这是否是板级问题。 您提到过您直接在电池上读取电压、它们的读数为2.2V、符合预期。 我建议在电路板上尽可能靠近 bq76PL455A 器件的 VSENSEx 引脚进行测量、以了解器件实际看到的电压。 在启动软件之前、请在加电时立即尝试、并在电池上和直接在 bq76PL455A 的 VSENSE 引脚上测量这两个电芯。 如果在板级发生了什么情况、您会在 bq75PL455A 引脚上看到0.6V、这就是器件报告0.6V 的原因。 如果您一直看到到 VC 引脚的2.2V 电压、那么我们可以开始看到更多有关器件本身或软件的信息。  
    • 您在电池上测量0.6V 的时间点是什么? (例如、在运行软件之前、平衡时、平衡停止后)?
    • 您是否读取了寄存器0x13和0x14 (十六进制)? 还是13和14 (十进制)? 请告诉我0x13、0x14以及0x15的值
    • 您提到您已将"放电"案例添加到您的软件中。 您是否尝试在未进行此修改的情况下运行代码、并查看问题是否仍然存在?

    此致、

    Leslie

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Leslie

    感谢您回来。

    我将获取您要求的测量结果并将其发送给您。 周五的大部分时间里、我都很忙、我发现很奇怪、低电压值似乎在变化。每次启动器件时。

    我提到的值是寄存器的十进制值、以及我读取以十六进制形式提供的内容。

    感谢你的帮助

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Malcolm、

    谢谢你。

    Leslie

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Leslie

    我进行了一些测量。 简而言之、当我使用示波器对特定电池进行测量时、它作为负电压进行测量。 我觉得这很奇怪、电压表的读数为2.2V。 我更换了该电池、此后所有测量结果都正确无误。

    您是否知道为什么会发生这种情况? 还是更好地将其作为问题单元进行检测?

    我仍然无法实现平衡。 我有一个电芯、电压为2.1伏、其他电芯的电压为2.2至2.3伏。 我使用的算法会将其检测为最低电压。 我正在使用示例代码 EMB_Start 和 EMB_Stop.I 似乎来获得到 U16的信号(SN74AHC595QPWRQ1)。  我还尝试了 TI 提供的 GUI、但我似乎也平衡了电池。

    如果您有任何建议、我们将不胜感激。

    感谢你的所有帮助。

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Malcolm、

    这很奇怪... 当您使用示波器和 DMM 从系统中自行测量该电池时、您对该电池测量的值是多少? 我唯一能想到的是、如果您连接了多个仪器、并将示波器连接到较高的电池(例如、测量电池6上的电压)、则需要使用差分探头、因为常规探头通常以示波器的接地端为基准。

    关于平衡例程、我们没有能够控制 EMB 器件(EMB1499Q 和 EMB1428Q)的 GUI。 您只能使用 BQ76PL455A-Q1 GUI 来监测电池电压、但不能在 EM1402 EVM 上执行主动平衡(GUI 中的平衡功能是使用 BQ76PL455A-Q1执行被动平衡、但 EM1402 EVM 仅用于主动电池平衡)。

    您能否详细介绍一下它不起作用的原因? 代码的哪一部分?  

    此致、

    Leslie

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Leslie

    谢谢。 我必须回顾测量结果、因为我了解地面需求。

    感谢您对 GUI 的更新。 是的。。。 我可以进行监控、但这说明了我无法实现平衡的原因。 我一直在引用该 GUI 来 与 我的值进行比较。

    我使用的代码来自 EM1402EVM 示例代码0.1。

    我的代码所做的是确定电压最低的电池。 然后调用:

       if (cellToBalance)//仅在 celToBalance 未设置为0时进行平衡

       {
        EMB_Start (1、CELLToBalance、CELLBalanceDir);
        delayms(1000);
        EMB_Stop (1、cellToBalance);
        delayms(3000);
       }

    大约20分钟后,显示的音量没有变化。

    我查看了位拆裂的 SPI 信号、这似乎是可以的。

    这是执行主动电池平衡的正确程序/功能吗?

      EMB_Vset (0、2)对于平衡功能是否重要?

    谢谢、

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Malcolm、

    EMB_Vset()函数负责设置平衡电流,因此如果您使用的是 EM1402板,则在您的例程中需要该电流。 "Vset"是 EMB1499Q 器件上的引脚。 用户在该引脚上设置一个电压来调节平衡电流。 您可以在 EMB1499Q 数据表 中阅读有关 VSET 功能的更多信息:http://www.ti.com/lit/ds/symlink/emb1499q.pdf

    您可以在 emb1428.c 文件中查看 EMB_Vset()函数及其参数。 第一个参数是 bq76PL455a 器件地址、第二个参数是平衡电流。 然后、此例程将计算您必须在 Vset 上具有的电压以产生所需的平衡电流、然后通过 EMB_SetCS()函数选择 DAC 器件(芯片选择)、然后将 SPI 命令发送到 DAC 以设置所需的电压。 DAC 输出连接到 EMB1499Q 上的 VSET 引脚。

    另外,在调用 EMB_Vset()或开始和停止平衡函数之前,请确保在开始时初始化 EM1428Interface。

    此致、

    Leslie

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Leslie、

    EMB14990Q 器件的 Vset 上没有电压。 这就是我在平衡期间看不到电压变化的原因。

     我假设我应该在 DAC081S101CIM 的引脚1 (DAC_OUT)上看到与 U17相同的电压。

    为了进行测试、我将代码放置在循环中、以使 EMB_Vset()成为峰值。 我开始通过评估板查看正在发生的情况、但尚未发现任何情况。 我在 U16 (SN74AHC595QPWRQ1)上注意 到、所有片选输出引脚1、2 3和15都是 toggling.no而不仅仅是 CS_DAC。

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Leslie

    我确实使 DAC_OUT 正常工作。 将 EMB1428_RST 设置为低电平会将器件配置为输出电压。

    我仍然没有看到电池的电压发生任何变化。 但是、EMB1499Q EN 引脚仅在10个非常快的脉冲持续大约10ms 时处于高电平。 是 位于使能顶部、底部和中间位置的 EMB1499Q EN 引脚控制器。 我正在尝试了解 EN 为什么不是恒高电平并且持续时间超过10ms。

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Leslie

    在平衡模式下、仍然难以看到电池电压变化的任何迹象。

    我已经连接了我在 EMB1499 EN 引脚的输出上看到的内容。  

    这是预期的输出吗?

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Malcolm、

    为了使 EMB1499开始充电或放电、EN 信号应该为高电平。 该引脚应为5V CMOS 输出电平。 在您显示的示波器图中、信号非常低、峰值约为1.5V、这表明您看到的可能只是噪声。 如果它是实际的 EN 信号、它将是0V 或5V。  

    以下是进一步调试此问题的一些提示:

    • 手动运行代码进入充电/放电序列
    • 同时、探测 SPI 接口以确保向 EMB1428 (nCS、CLK、SDI、SDO、FAULT_INT)发送正确的命令。 请参阅 EMB1428数据表第17页的"命令解码"部分以查看有效命令: http://www.ti.com/lit/ds/symlink/emb1428q.pdf 

    此致、

    Leslie

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    (由于某种原因、我在上一个答案中的第3个项目符号被删除。 请参阅下面我的答案中的其余部分)。

    • 如果从 MCU 到 EMB1428的 SPI 命令正确、则移动以探测 EMB1428和 EMB1499之间的信号(EN、DIR、DIR_RT、DONE、FAULT[2-0])。 有关这些引脚上的预期值的说明、请参阅数据表第18页的"正常控制排序"。

    总之:

    • EN 引脚是 EMB1428的输出、用于向 EMB1499器件指示何时开始或停止平衡(EN 为高电平启动、EN 为低电平时停止)。
    • DIR 引脚也是 EMB1428的输出、它向 EMB1499指示平衡时是对所选电池充电还是放电。
    • DIR_RT 是从 EMB1499进入 EMB1428的输出、它应该是 DIR 信号的补充(请参阅数据表中的时序)。
    • DONE 是 EMB1499的输出、用于在充电/放电周期完成时向 EMB1428指示(在当前充电/放电周期完成时为高电平、在进行中为低电平)。
    • FAULT[2-0]是 EMB1499的输出、用于向 EMB1428指示发生了故障。 有关每个故障代码的说明、请参阅 EMB1499数据表第13页的"故障检测和故障代码"。

    此致、

    Leslie

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Leslie、

    我进一步了解了 SPI。 我更改了代码以使用 J2。 我能够以1MHz 的频率获得时钟、而在此之前的时钟速度较慢、

    更改并验证信号后、可能需要对电路板上的电流消耗进行研究。

    现在、当平衡周期开始时、 bq76pl455a 附近的绿色 LED 熄灭、当平衡开始时、通常亮起的第二个 LED 指示灯变暗。这是否意味着我具有高电流消耗?

    深入了解这一点、我不确定这是否与12V 电源提供的电流不足相关、或者我是否应该在 J3上使用5V、而不是现在使用的3.3V。

    有什么建议吗?

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Leslie

    只是确认您收到了我的回复。

    谢谢、

    Malcolm

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Malcolm、

    您能不能告诉我原理图中的 LED 编号、以便找到它。 关于 J3的问题、您是否参考了 FTDI 连接器?

    此致、

    Leslie