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.

[参考译文] BQ40Z80:BMS 不会对电池进行充电或放电、甚至无法通过 I2C 进行访问

Guru**** 2595805 points
Other Parts Discussed in Thread: BQ25792, BQ40Z80, BQSTUDIO, EV2400

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1021609/bq40z80-the-bms-is-not-charging-or-discharging-the-battery-and-can-t-even-access-through-i2c

器件型号:BQ40Z80
主题中讨论的其他器件:BQ25792BQSTUDIOEV2400

我使用 BQ40Z80RSMT IC 设计了一个串联配置为4节电池的 BMS 系统。 我已经验证了原理图和尺寸以及与 IC 的连接。 我无法通过 I2C 访问 BMS 模块的内部寄存器器器器件不响应地址0x16。 此外、DSG 引脚为低电平、电池电压仅上升至 VCC 引脚。 您能帮我确定问题吗?

BMS 连接到电池充电器 IC BQ25792进行充电和放电。 当我在没有 BMS 的情况下从外部连接电池时、会进行充电。 在放电条件下、VPACK 上的电池电压为零。 请使用随附的原理图

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

    您好 Dileep、

    SMBus 上是否有上拉电阻器? 这些是正确通信所必需的。 如果这无法解决您的问题、您可能需要尝试通过 EVM 进行通信-这可以告诉您问题是否与监测计有关。 您可能还需要再次检查消息是否与 SMBus 兼容。 放电引脚可能会关断、因为 FET 已禁用、我相信除非您与器件进行通信、否则您无法更改该引脚。

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

    I2C 总线上有一个10K 上拉电阻器、同一 I2C 总线连接到 PCA9548APW、118、我们可以以100KHz 的速度与该器件通信。 即使电池输入电压正确、DSG 引脚也处于低电平是否有任何原因?

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

    Dileep、

    由于 FET 已禁用、放电引脚可能处于低电平、您需要进行通信以更改这些设置。 确保 I2C 消息与 SMBus 兼容、因为 BQ40Z80正式支持 SMBus、而不是 I2C。 提供逻辑分析仪波形也可能会有所帮助。

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

    感谢你的答复。 当我们使用 SMBus 协议时、通信问题已得到解决。

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

    现在、我们能够通过 SMBus 与 IC 通信。 我们尝试按预期(4节串联模式电池)读取一些寄存器(0x09 -电压= 15235mV 和0x0A -电流= 81mA)
    但是、我们无法读取任何32字节寄存器或任何大于10字节的寄存器、当我们尝试 读取0x71寄存器(DA STATUS1)时、在中只有20字节
    响应(当我们在 SMBus 中为0x71寄存器发送块读取命令时、回读的第一个字节本身为20 -表示响应中的字节数)。
    IC 未放电、放电 FET 处于关断状态。 我们尝试通过发送命令(0x00 0x00 0x20)和(0x40 0x02 0x20 0x00)来切换放电。
    这没什么帮助。

    然后我们尝试读取操作状态寄存器- 0x54,我们得到的输出为 (00 6D 81 --格式从小端字节序转换)。 我们已解码该代码、并发现以下内容、

    1.充电和放电被禁用- 激活
    2.通过低电池组电压触发关断-激活
    3.预放电、预充电、CHG 和 DCHG FET -未激活
    4.系统存在低电平-激活

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

    Dileep、

    0x20为32、因此这是监测计的正确响应。

    您是否手动启用了 FET? 放电功能将不起作用、除非您启用了 FET、并且运行状态指示它们已禁用。 您可以通过设置 FET 控制命令(制造访问中的0x0022)并检查 ManufacturingStatus 寄存器中的 FET_EN 位来启用它们、以查看是否已启用。 或者、您可以在数据存储器的 MfgStatusInit 中设置使能位、并复位监测计以使寄存器更新。

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

    我们已经尝试过相同的方法、但 BMS CHG 和 DSG 引脚没有响应。  

    我们尝试发送命令(0x0022)、重新启动监测计 并检查  ManufacturingStatus 寄存器中的 FET_EN 位。 即使已启用、我们也看不到 IC 有任何充电或放电。 仅禁用运行状态下的充电和放电 FET 状态。

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

    Dileep、

    您能否提供.gg.csv 文件和充放电日志?

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

    电池既不充电也不放电。 您能告诉我您想要在 csv 文件中查看哪些详细信息吗

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

    您是否正在使用 BQStudio? 如果是这样、您可以在"数据存储器"选项卡下导出 csv 文件、并且应该有一个按钮可供导出。 在"Registers"选项卡下、您还可以开始记录。

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

    否、我没有 ev2400。 我正在使用 smbus 手动检查寄存器状态

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

    如果没有日志可以更清楚地了解正在发生的情况、则很难对该问题进行调试、但我想可能是因为已激活了一些保护功能。 您可以检查安全状态寄存器或操作状态寄存器中的 SS 位、以查看是否有任何保护开启。 如果没有、您可能需要检查是否使用 PF 状态寄存器激活了任何永久性故障。

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

    我们已读取的寄存器值(全部为十六进制)如下所示:

    0x54 (运行状态寄存器)= 00 00 6D 81

    0x51 (安全状态寄存器)= 00 40 01

    0x16 (电池状态寄存器)= 235

    0x53 (永久故障寄存器)= 00 00 00 00
    由于启用了 SS 位、我们已经读取了安全状态寄存器、它将 CUV 和 CUVC 位显示为已启用、这意味着电池欠压保护已开启。
    所有4节电池的电压都大于3.2V、CUV、CUVC 热分流值(位于0x4BC2和0x4BC7中)分别为默认值2500mV 和2400mV。

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

    关闭此线程、因为这里有一个重复的线程: https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1021609/bq40z80-the-bms-is-not-charging-or-discharging-the-battery-and-can-t-even-access-through-i2c/3785650#3785650