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.

BQ76952: INDIVIDUAL CELL IMPEDANCE USING DA STATUS 1-4

Part Number: BQ76952

Hi,

As mentioned in user manual/Datasheet DASTATUS1-4 can be used to get sync voltage & current of individual cells. But let me know how to calculate cell impedance using these 32 bit data. 

How to convert these value in voltage as well as current so that impedance can be calculated. 

Thanks for providing Vref1 & Vref2 values but in datasheet  Vref is mentioned as (Vref1 = 1.25) many times along with 1.215. 

  • Hi Dileep,

    In order to get the cell impedance you will want to take the change in the voltage and divide it by the change in current. In order to get the initial and final values for the voltages and currents, you will need to perform a test.

    For this test you will first want to attach a load to the system. Then, let the system reach steady state. Next, Read DASTATUS1-4 ( you will need to record all of these values). Keep in mind, you will want to read this data right before you stop the current so the cell state of charge is basically the same.

    After this, remove the load (open discharge FET). Wait until the system settles, then read DASTATUS1-4 (record values).

    Now you will need to convert your recorded values since DASTATUS only gives the raw adc counts. LSB conversions can be found in TRM section 4.5 Subcommands 0x0071- 0x0074. For the current count in order to convert to current, the number found in the DASTATUS1-4 registers is the voltage across the sense resistor so you will need to first convert the current count number, then divide this by your sense resistor value and then this will be the current you will want to use. 

    Yes, unfortunately, the Vref accuracy checks were overlooked. Thank you for pointing this out and we will update this. But, as mentioned in my previous response Vref1 ~ 1.212 and Vref2 ~ 1.24. There will be marginal error when operating at different temperatures. This can be found in Figure 7-11 in the datasheet.

    Best regards,

    Andrew

  • 1.  In that case, can i use this feature to track cell impedance in live project ?

    2. As it is given

     full scale range = +- 5xVref1 for cell voltage

    is it means  0x7FFFFF = 5xVer1.....................................?

    similarly for the current 

                     0x7FFFFF = Verf2/5 ....................................?

    Please clear all above points.

  • Hi Dileep,

    It is possible to use this in a live project, but keep in mind it is optimal to take initial readings right before load is disconnected and then final readings after the system settles. This may be difficult to implement depending on your application. You would have to know exactly when the load will be disconnected in order to take measurements before disconnecting, and then the system would actually have to settle after disconnecting load for you to get the final reading.

    It does not seem practical to actively discharge the battery by separately attaching a load then detaching load just to read the cell impedance. One solution could be to take the reading after the user finishes using your product. That way each time your device is used, it will have the updated cell impedance reported. 

    In terms of range, the LSB for cell voltage is ~.722uV. If you have a max cell voltage of 4.2V then the conversion is 4.2V/.722uV ~ 5817174 = 0x0058C356. Additionally, DASTATUS only has 24 bits of raw data with 8 bits for the sign extension (this is why it's 32 bits total). So 5*Vref1 = 6.06V -> 6.06V/.722uV = 8388608 = 0x00800000 = max raw data reading

    Similar calculations can be done for current. 

    Best regards,

    Andrew