TI中文支持网
TI专业的中文技术问题搜集分享网站

BQ76925主控模拟前端使用上的问题

拟用bq76925模拟前端做4串锂电池保护系统。

初步看了一下芯片的datasheet,有点疑问:

当电路产生过流(Overcurrent)时,比较器会在alert引脚上输出。这个比较过程是芯片自主控制的吗?不需要I2C发送采集电流的指令才开始比较吧?

另外,当系统产生过流后,拟用alert引脚输出来控制FET,当产生过流时,关闭FET。当过流解除后,alert引脚的电平会自动切换吗?不会一直处于锁定状态而需要MCU发送指令来解锁吧?

还有,LM3S系列的MCU的ADC只有10位,通过MCU的ADC进行采样精度如何呢?

TI CHEN:

我提点不成熟的看法:

1、电流采样是通过检流电阻上的压降产生的,需要读电流值必须有MCU。电流值检测(VIOUT)送到MCU的AD脚。但芯片提供了一个过流预警(ALERT)这个脚接到了MCU的中断。目的是获得最快的响应时间。

2、BQ76925没有控制MOSFET的引脚,它只是一个模拟前端。MOSFET也需要MCU的端口去控制,别忘了MCU端口是不能可靠地驱动MOSFET,需要加MOSFET驱动器,TI有这样的产品,也可以用别家更便宜的。至于何时驱动,何时“闭锁”取决于你的程序对功能的要求。与BQ76925无关。

3、AD的精度与AD的参考电压有关。BQ76925有一路Vref输出,目的就是提高AD的精度。10位的AD有千分之一得精度。对电芯来讲已经足够。完全可以满足一般的要求。如你觉得精度不够,可选更高的芯片。最后说一点,BQ76925是一个性价比很好的芯片,因此,要求不能过高。

flora:

回复 TI CHEN:

非常感谢TI CHEN回复。

我现在正在使用BQ76925,还有一些问题请教:

1。测得BQ76925我自己的板子上的Vref输出电压只有2.985V,而非datasheet上说的3.0V。通过设置寄存器CELL_CTL->VCOUT_SEL,选择Vref * 0.5和Vref * 0.85,对应的VCOUT输出电压也不是1.5V和2.55V。

这个可能是由于什么原因造成的呢?

2。我现在用来测量4串电池,按照datasheet上的说明配置为4-cell :其中cell4:VC6 – VC5; cell3:VC3 – VC2; cell2:VC2 – VC1; cell1:VC1 – VC0;未使用的cell输入:Short VC5 to VC4 to VC3

切换寄存器,第一二三串电池电压都能够测量到。但是第四串电池电压没有输出。尝试切换寄存器得值为第4,5,6串,均没有输出。

这个是怎么回事呢?正常使用中,按照这种配置,如果要测量第四串电池的电压,CELL_CTL->CELL_SEL应该设置为什么值呢?

Steven Yao:

回复 flora:

Vref上实际的电压须要跟据公式计算得到,如果设定电压是3伏,在Vref引脚上的电压应为:

3xGCVREF

GCVref的计算请参考数据手册 第十四页公式2。

在VCOUT上输出的电压是实际的Vref电压乘以相应的系数。

第二个问题,测量第四节电池的电压,CELL_CTL = 101, VCOUT_CTL = 01

 

flora:

回复 Steven Yao:

谢谢楼上的解答。我这里Vref的实际电压和3*GCVREF还是有很大的偏差,不知道什么原因。供电电路应该没有什么问题,且用示波器测过,纹波很小……

第四节电压的问题已经解决了,是PCB上的一个电阻坏了,导致电压不能检测。不过此处衍生出来一个问题:按照数据手册上,如果四串电池的话,短接VC3。VC4。VC5,第四串电池电压通过采集VC5和VC6之间电压获得,那么驱动程序上必须判定是四串电池,还是五串电池或者是六串电池。

四串电池的话,能不能短接VC6.VC5和VC4,这样第四串电池电压通过采集VC3和VC4获得,在程序上可以循环增加电池编号获取每串电池电压?

还有一个问题就是BQ76925通过测量充放电电流的问题:通过检测检流电阻SENSEN和SENSEP两端的压差来计算系统的充放电电流,这个精度能够达到多少呢?为什么我这边测试精度很低?可能是什么原因造成的呢?

azhiking:

1.通过I2C设置好过流比较寄存器后,只要检流电阻上的电流大于设定值,Alert脚就会有输出。可以利用这个输出做一个自锁电路,产生过流后关闭FET,通过MCU解锁

2.过流的值不能任意设置,只能设定为离散的几个值

3.我目前用的电流检测效果不好。可能是布线的原因,但是很难解决。

赞(0)
未经允许不得转载:TI中文支持网 » BQ76925主控模拟前端使用上的问题
分享到: 更多 (0)