SLUUB65B May 2015 – December 2022
For better accuracy and performance, the fuel gauge can be configured with the system or application loading conditions. This helps the gauge to better adapt the algorithm based on the use case.
When a system load is applied, the impedance of the cell is calculated from the OCV, the measured voltage under load, and the discharge current or power as configured in the Load Select parameter. Load Select defines the type of power or current model to be used to compute load-compensated capacity in the Impedance Track algorithm.
For simulations during RELAXATION, CHARGE, and at the start of DISCHARGE (since a new average has not been gathered), it would use data flash values for simulations. Once the discharge lasts 500 seconds, the gauge re-simulates using the new running average. Thereafter, during discharge, it uses the continuous running average for any subsequent simulations. Re-simulations can also be triggered by a temperature change, which can cause an updated simulation to occur earlier than 500 seconds into a discharge. In this case, this simulation would use the present running average.
The Load Mode parameter extends this further by supporting the same options with respect to power instead of current. Load Mode selects either the constant-current or constant-power model for the Impedance Track algorithm as used in Load Select. When Load Mode is 0, the constant current model is used (default). When Load Mode is 1, the constant-power model is used. The CONTROL_STATUS [LDMD] bit reflects the status of Load Mode.
If Load Mode = 0 (constant-current model), then the options presented in Table 7-5.
Load Select Value | Current Model Used |
---|---|
0 | Average discharge current from previous cycle: There is an internal register that records the average discharge current through each entire discharge cycle. The previous average is stored in this register. |
1 (default) | Present average discharge current: This is the average discharge current from the beginning of this discharge cycle until present time. |
2 | Average current: based off the AverageCurrent() |
3 | Current: based off of a low-pass-filtered version of AverageCurrent() (τ = 14 s) |
4 | Design capacity/5: C Rate based off of Design Capacity /5 or a C/5 rate in mA |
5 | Use the value specified by AtRate() |
6 | Use the value in User_Rate-mA. This gives a completely user-configurable method. |
If SHUTDOWN state = 1 (constant-power model) then the following options are available:
Load Select Value | Power Model Used |
---|---|
0 | Average discharge power from previous cycle: There is an internal register that records the average discharge power through each entire discharge cycle. The previous average is stored in this register. |
1 | Present average discharge power: This is the average discharge power from the beginning of this discharge cycle until present time. |
2 | Average current × voltage: based off the AverageCurrent() and Voltage(). |
3 | Current × voltage: based off of a low-pass-filtered version of AverageCurrent() (τ = 14 s) and Voltage() |
4 | Design energy/5: C Rate based off of Design Energy /5 or a C/5 rate in mW or cW |
5 | Use the value specified by AtRate() |
6 | Use the value in User_Rate-Pwr. This gives a completely user-configurable method. |
The fuel gauge logs the AverageCurrent() averaged from the beginning to the end of each discharge. It stores this average current from the previous discharge period in Avg I Last Run provided that the previous discharge lasted at least 500 seconds.
It is recommended that users set Avg I Last Run to typical values for their system to correctly initialize predictions.
The fuel gauge logs the power averaged from the beginning to the end of each discharge. It stores this average power from the previous discharge period in Avg P Last Run provided the previous discharge lasted at least 500 seconds. To get a correct average power reading, the fuel gauge continuously multiplies instantaneous current with Voltage() to get power. It then logs this data to derive the average power.
It is recommended that users set Avg P Last Run to typical values for their system to correctly initialize predictions.
In situations wherein the available load options do not match the application, custom current or power profiles can also be provided to the gauge. User Rate-mA can be used to indicate a current load that the algorithm will use for the RemainingCapacity() computation in the Impedance Track algorithm.
This parameter is used only when Load Select = 6 and SHUTDOWN state = 0. An example application that requires this register is one that has increased predefined current at the end of discharge. With this application, it is logical to adjust the rate compensation to this period because the IR drop during this end period is affected the moment Terminate Voltage is reached.
User Rate-Pwr can be used to indicate a power load that the algorithm will use for the RemainingCapacity() computation in the Impedance Track algorithm.
This parameter is used only when Load Select = 6 and SHUTDOWN state = 1. An example application that requires this register is one that has increased predefined power at the end of discharge. With this application, it is logical to adjust the rate compensation to this period because the IR drop during this end period is affected the moment Terminate Voltage is reached. The actual unit of this parameter is dependent on Design Energy Scale.
The gauge also provides maximum and minimum limits for current/power used in IT simulations. These are the Max Sim Rate and Min Sim Rate parameters. They are a function of Design Capacity or Design Energy.
SHUTDOWN state | Limit |
---|---|
0 | –Design Capacity/Max Sim Rate ≤ Simulation Current ≤ –Design Capacity/Min Sim Rate |
1 | –Design Energy/Max Sim Rate ≤ Simulation Power ≤ –Design Energy/Min Sim Rate |
In situations where a controlled shutdown after 0% RemainingCapacity() is reached, the Reserve Cap-mAh can be used that determines how much actual remaining capacity exists after reaching 0% RemainingCapacity(), before Terminate Voltage is reached when SHUTDOWN state = 0 is selected. A loaded rate or no-load rate of compensation can be selected for Reserve Cap by setting the [RESCAP] bit in the Pack Configuration data flash register. This is a specialized function to allow time for a controlled shutdown after 0 RemainingCapacity() is reached.
The voltage must dip below Terminate Voltage for at least this many seconds before RemainingCapacity() and StateOfCharge() will be forced to 0.
Subclass ID | Subclass | Offset | Name | Data Type | Value | Unit | ||
---|---|---|---|---|---|---|---|---|
Min | Max | Default | ||||||
80 | IT Cfg | 0 | Load Select | U1 | 0 | 6 | 1 | Number |
1 | SHUTDOWN state | U1 | 0 | 1 | 1 | Number | ||
64 | Terminate Voltage | I2 | 2800 | 3700 | 3000 | mV | ||
73 | User Rate-mA | I2 | 0 | 32767 | 0 | mA | ||
75 | User Rate-Pwr | I2 | 0 | 32767 | 0 | cW | ||
77 | Reserve Cap-mAh | I2 | 0 | 14500 | 0 | mAh | ||
88 | Max Sim Rate | U1 | 0 | 255 | 1 | HourRate | ||
89 | Min Sim Rate | U1 | 0 | 255 | 20 | HourRate | ||
118 | TermV Valid t | U1 | 0 | 255 | 2 | s | ||
82 | State | 5 | Avg I Last Run | I2 | –32768 | 0 | –299 | mA |
7 | Avg P Last Run | I2 | –32768 | 0 | –1131 | mA |