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.

[参考译文] BQ25672:使用太阳能电池板为电池充电的问题

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1534009/bq25672-issue-charging-batteries-with-solar-panel

器件型号:BQ25672

工具/软件:

我们遇到了一个问题、即我们的某些太阳能供电设备即使在强阳光下也无法将电池充满电。

系统概述:

  • 充电器 IC: BQ25672

  • 太阳能电池板: 在阳光下输出 18V 至~23V

  • 电池: 两个 050mA 3.7V 至 4.2V 锂离子电池(并联)

观察到的行为

  • 在受影响的器件中、尽管电池处于~50%的充电状态、但充电器周期会在复位后很快终止。

  • 我们循环使用 CE PIN 每 5 分钟一次、这会重置充电器周期、但充电不会持续。

  • 当充电停止时:

    • PG (电源正常)寄存器读取0

    • VAC2 电压高于~21V。

  • 根据我们收集的数据、不会报告任何充电器故障情况。

数据和设置详细信息

  • 附录了电路设计和收集的数据。

  • 数据每 5 分钟记录一次(从早上到晚上)、没有时间戳、但行之间的间隔 大约为 5 分钟。

电流假设

我们怀疑 D11 (SMBJ20CA) 可能导致该问题:

  • 最小击穿电压: 22.22.

  • 工作关断电压: 20V

由于我们的太阳能电池板输出可以超过 20V、这可能会触发二极管并干扰正常充电。

请求协助

请您:

  1. 查看我们的电路设计和数据、以确定此问题的任何设计缺陷或其他潜在原因?

  2. 建议可能的固件操作。 目前、我们:

    • 请勿配置充电器 IC 寄存器。

    • 唯一下拉 CE 并每 5 分钟循环一次。

    • 提供了有关配置寄存器或改进 CE 引脚处理以解决此问题的建议。

感谢您的帮助!

 e2e.ti.com/.../BQ25672.pdf

e2e.ti.com/.../log_2D00_from_2D00_morning_2D00_to_2D00_evening.csv

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

    尊敬的 Johann:

    关于 1、我没有看到原理图有任何明显的问题。  太阳能输入端的齐纳钳位可能正常、因为电池板的输出阻抗较高。

    关于 2、虽然此充电器可以在默认模式下运行、无需写入 I2C 寄存器。当由“低 Z“源供电时、由于以下原因、它无法与没有 I2C 写入或其他电路的太阳能电池板配合使用。  充电器在每次上电时自动设置 VINDPM 阈值(转换器运行的最小输入电压)。  如果电池板输出电压开始为高电平、则 VINDPM 设置为略低于该高电压。 如果云端经过以降低电池板输出电压、充电器的转换器将停止。  在 VACx 上检测到的电压降至 UVLO (3.6V) 以下并再次上升之前、VINDPM 不会复位。  必须通过 I2C 写入 EN_MPPT 位来开启充电器用于定期自动复位 VINDPM 阈值的 MPPT 功能。  如果电池电压降至 MINSYS 设置以下、则该位会自动复位为零、因此建议将 MINSYS 设置为最低设置。  

    此外、在电池放电的情况下、如果转换器停止且 SYS 电压崩溃、充电器会自动进入高阻态。  此外、如果电池板输出无法通过不良源检测(高压电池板不太可能)、充电器将进入高阻态 10 分钟、然后重试。 随附的应用手册添加了一个外部电路以实现 VINDPM 自动复位。  不过、您的电压太高、您必须修改(更多齐纳钳位)、以防止损坏额外 FET 的栅极。

    此致、

    Jeff

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

    谢谢 Jeff。 我想您描述的是充电器以高 VINDPM 阈值启动、然后太阳能电池板的输出降至该阈值以下、导致充电停止。 在这种情况下、并不能完全解释为什么要充电 重新启动 将电池板电压降至 21V 以下。

    根据我们收集的数据:

    • 最大 VINDPM 阈值 为 22V。

    • 我们会观察到充电器检测到大于 22V 的输入电压但电池未在充电的情况。

    如果源极电压低于 VINDPM 阈值、充电器是否应该尝试调节输入(或报告 VINDPM 条件)?
    即使充电器接收到的电压高于阈值、我也能预料到 VINDPM_STAT 从更0改为1(如果 VINDPM 确实是限制因素)。

    您能帮助澄清一下这种行为吗?

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

    加上我以前的评论:如果我定期重置 EN_HIZ 、充电器不应再受到影响 VINDPM IINDPM 阈值、对吗?

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

    尊敬的 Johann:

    在输入电压降至 21V 后、状态和故障寄存器以及 VINDPM 寄存器在充电重新启动前后报告什么?  VINDPM 设计用于在输入电压在电压降至阈值以下之前下降时钳制转换器占空比。  如果电压下降得过快、模拟 VINDPM 反馈环路无法足够快地响应。  如果触发 VINDPM、则会出现故障标志。  读取后故障标志会清除。   

    关于切换 EN_HIZ、EN_HIZ 仅关闭转换器(以及其他一些操作以降低 IQ)。  VINDPM 和 IINDPM 不会复位。  仅当 VBUS 升至高于 UVLO~=3.5V 时、才会设置 D+/D-检测中的 VINDPM 和 IINDPM。   

    对于太阳能应用、EN_MPPT=1 会定期将 VINDPM 复位为 VOC x MPPT%、但如果 V (BAT) 降至低于 MINSYS、则会自动复位为 0。

    此致、

    Jeff

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

    我们的数据中没有记录任何故障。

    我随机选取了两个数据点:

    当电池未充电时:
    在循环触发 CE 引脚之前:

    Ibat_ma 0
    IBus_Ma 12
    VSYS_MV 3582.
    VBAT_MV 3567
    VBUS_MV 21936
    VAC1_MV 2.
    VAC2_MV 21904.
    temp_c 42
    CE_pin 0
    EN_CHG 1.
    VBUS_PRESENT 1.
    AC1_PRESENT 0
    AC2_Present 1.
    PG 0
    WD_STAT 0
    vindpm_stat 0
    IINDPM_STAT 0
    BC_1_2_DONE 0
    VBUS_STAT 8.
    CHG_STAT 0
    VBAT_PRESENT 1.
    dpdm_stat 0
    TREG_STAT 0
    ICO_STAT 0
    PRECHG_tmr_stat 0
    trichg_tmr_stat 0
    CHG_tmr_stat 0
    VSYS_STAT 0
    ADC_DONE_STAT 1.
    acrb1_stat 1.
    acrb2_stat 1.
    VAC1_OVP_STAT 0
    VAC2_OVP_STAT 0
    CONV_OCP_STAT 0
    IBT_OCP_STAT 0
    IBus_OCP_STAT 0
    VBAT_OVP_STAT 0
    VBUS_OVP_STAT 0
    ibat_reg_stat 0
    tSHUT_STAT 0
    OTG_UVP_STAT 0
    OTG_OVP_STAT 0
    VSYS_OVP_STAT 0
    VSYS_SHORT_STAT 0


    循环遍历 CE 引脚后:

    Ibat_ma 65532
    IBus_Ma 10.
    VSYS_MV 3618
    VBAT_MV 3567
    VBUS_MV 21936
    VAC1_MV 16
    VAC2_MV 21892
    temp_c 41.
    CE_pin 0
    EN_CHG 1.
    VBUS_PRESENT 1.
    AC1_PRESENT 0
    AC2_Present 1.
    PG 0
    WD_STAT 0
    vindpm_stat 0
    IINDPM_STAT 0
    BC_1_2_DONE 0
    VBUS_STAT 8.
    CHG_STAT 0
    VBAT_PRESENT 1.
    dpdm_stat 0
    TREG_STAT 0
    ICO_STAT 0
    PRECHG_tmr_stat 0
    trichg_tmr_stat 0
    CHG_tmr_stat 0
    VSYS_STAT 0
    ADC_DONE_STAT 1.
    acrb1_stat 1.
    acrb2_stat 1.
    VAC1_OVP_STAT 0
    VAC2_OVP_STAT 0
    CONV_OCP_STAT 0
    IBT_OCP_STAT 0
    IBus_OCP_STAT 0
    VBAT_OVP_STAT 0
    VBUS_OVP_STAT 0
    ibat_reg_stat 0
    tSHUT_STAT 0
    OTG_UVP_STAT 0
    OTG_OVP_STAT 0
    VSYS_OVP_STAT 0
    VSYS_SHORT_STAT 0



    电池充电时:
    在循环触发 CE 引脚之前:

    Ibat_ma 1038
    IBus_Ma 251.
    VSYS_MV 3736
    VBAT_MV 3682
    VBUS_MV 20174.
    VAC1_MV 16
    VAC2_MV 20148.
    temp_c 71.5
    CE_pin 0
    EN_CHG 1.
    VBUS_PRESENT 1.
    AC1_PRESENT 0
    AC2_Present 1.
    PG 1.
    WD_STAT 0
    vindpm_stat 0
    IINDPM_STAT 0
    BC_1_2_DONE 0
    VBUS_STAT 8.
    CHG_STAT 3.
    VBAT_PRESENT 1.
    dpdm_stat 0
    TREG_STAT 0
    ICO_STAT 0
    PRECHG_tmr_stat 0
    trichg_tmr_stat 0
    CHG_tmr_stat 0
    VSYS_STAT 0
    ADC_DONE_STAT 1.
    acrb1_stat 1.
    acrb2_stat 1.
    VAC1_OVP_STAT 0
    VAC2_OVP_STAT 0
    CONV_OCP_STAT 0
    IBT_OCP_STAT 0
    IBus_OCP_STAT 0
    VBAT_OVP_STAT 0
    VBUS_OVP_STAT 0
    ibat_reg_stat 0
    tSHUT_STAT 0
    OTG_UVP_STAT 0
    OTG_OVP_STAT 0
    VSYS_OVP_STAT 0
    VSYS_SHORT_STAT 0


    循环遍历 CE 引脚后:

    Ibat_ma 1041.
    IBus_Ma 267.
    VSYS_MV 3738
    VBAT_MV 3671.
    VBUS_MV 19982.
    VAC1_MV 20
    VAC2_MV 19984
    temp_c 71.
    CE_pin 0
    EN_CHG 1.
    VBUS_PRESENT 1.
    AC1_PRESENT 0
    AC2_Present 1.
    PG 1.
    WD_STAT 0
    vindpm_stat 0
    IINDPM_STAT 0
    BC_1_2_DONE 0
    VBUS_STAT 8.
    CHG_STAT 3.
    VBAT_PRESENT 1.
    dpdm_stat 0
    TREG_STAT 0
    ICO_STAT 0
    PRECHG_tmr_stat 0
    trichg_tmr_stat 0
    CHG_tmr_stat 0
    VSYS_STAT 0
    ADC_DONE_STAT 1.
    acrb1_stat 1.
    acrb2_stat 1.
    VAC1_OVP_STAT 0
    VAC2_OVP_STAT 0
    CONV_OCP_STAT 0
    IBT_OCP_STAT 0
    IBus_OCP_STAT 0
    VBAT_OVP_STAT 0
    VBUS_OVP_STAT 0
    ibat_reg_stat 0
    tSHUT_STAT 0
    OTG_UVP_STAT 0
    OTG_OVP_STAT 0
    VSYS_OVP_STAT 0
    VSYS_SHORT_STAT 0



    完整数据: https://docs.google.com/spreadsheets/d/1vmOhVwyYWDAc1PNYEkW2ARH2HUN6CS0doWSMz3z3CLo/edit?gid=0#gid=0 (与第一个帖子中附加的 CSV 相同。)

    主要差异如下:

    1.不充电时 VBUS 较高。

    2、不充电时模具温度较低。

    3、PG 在不充电时被标记为不好。

    如果您想查看更多寄存器值、敬请告知。 我将修改固件并记录新数据点。

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

    您好:Johannm

    我无法从我的工作 PC 访问 Google 文档文件。  

    我无法解释什么停止充电以及切换 CE 重新启动充电的原因。 我只见过客户在充电安全计时器到期时必须这样做。 故障标志寄存器为 REG0x22-0x27。  您能否提取它们以及 REG0x0F?

    此致、

    Jeff   

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

    谢谢 Jeff。 我现在还记录了 REG0F。

    我记录了所有故障状态寄存器。 我想对于我来说、记录故障状态和故障标志之间没有太大区别、因为当充电器在阳光充足的情况下未充电时、它应该处于故障状态、所以还应设置相应的故障状态寄存器、您是否同意?

    现在、我们将在启用 MPPT 的情况下进行更多测试、并调整其他配置。 如果有问题、我会在新帖中发布。 非常感谢!