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.

bq34z100读出的SOC总是为0

Other Parts Discussed in Thread: BQ34Z100

我使用的是I2C与BQ34Z100进行通讯,读出的其他寄存器的默认数据正确,但SOC的值总是为0,SRN与SRP之间的电压为0V,不知影响SOC的软件配置参数与信号输入有哪些?谢谢

  • SRN和SRP是电流采样出的电压,即电流*采样电阻阻值。

    与SOC相关的参数很多,不过如果发送了 41 ,21命令之后报0%,有以下几点可以参考下

    1.采用了普通4.2V电芯的ID 但是实际用的是铁锂电池,需要从新选择合适的ID

    2.Gauge显示的电压比Dataflash里设置的Terminate voltage 小

    3.内阻表异常

    4.低温

    在确保硬件电路没有问题的情况下,建议按照正确的开发流程,选择合适ID,设置于系统匹配的参数,进行golden learning,然后再看下SOC是否还出现问题

  • 谢谢,我使用的就是磷酸铁锂电池,但是ChemID是默认的0107,主要是我使用0x61 、 0x3e 、0x3f等命令读出ChemID这个参数后,不知道怎么修改,写回去,一直没有成功更改这个参数,能否告知我具体的修改步骤与时序,不胜感激……

  • 建议你做learning cycle,让Qmax和Ra table表更新再看一下。

  • 谢谢,我是用单片机的I2C和该芯片进行通信的,从其他寄存器读出的默认值都是对的,但是一直不能成功修改寄存器的值,检测是处于Unsealed模式的,具体修改寄存器值的时序不知是怎样的?谢谢

  • 我也遇到相同的问题,也是通过单片机勇I2C进行通信,读出来的SOC总是0。

    你所说的Gauge显示的电压是什么?

    我情况是这样的,2节理电池串联,3组进行并联,每节电池的容量是800mAh,

     I2C_Write_DataFlash(48,21,2400,2);

     I2C_Write_DataFlash(48,23,17760,2);

     I2C_Write_DataFlash(64,0,0x0960,2);

     I2C_Write_DataFlash(64,4,0x43,1);

     I2C_Write_DataFlash(64,7,2,1);

     I2C_Write_DataFlash(104,14,7400,2);

     I2C_Write_DataFlash(80,67,3000,2);

     I2C_Write_DataFlash(83,0,0x0107,2);

    其他的全部用的是默认值,硬件电路的电压是7.4V(2节电池串联的),分压电阻是160K、20K;

    请帮忙分析下我的SOC是0的问题!!

    谢谢!!!