E N D
Appendix D Example • The procedure described in Appendix D is meant to determine a battery’s performance parameters from the data taken during a HPPC test. The goal is to determine Ro and Rp with respect to SOC; the time constant tau also needs to be determined. What is known is IL , Voltage, and A-s with respect to time. The procedure assumes that an equation for voltage can be created that has IL , Ip and A-s its variables. The coefficients will then be Ro, Rp, OCV’, and OCV. For this to work, Ip will also have to be calculated. The procedure revolves around an Excel function named LINEST and assumes the battery model shown.
Start by entering the appropriate labels in an Excel file; column numbers go up to twelve
From a HPPC data file carry in Time, I load, A-s, and Voltage
Enter a zero into the first cell of dT/tau and make a guess for tau, then use tau in the equation for the second cell of dT/tau (be sure to use dollar signs in front of the tau’s reference)dT/tau=(ti - ti-1)/tau
Copy the second dt/tau cell and use it to fill in the rest of the column
The Ip column can now be filled in; enter a 0 into the first cell, and enter the formula for Ip from the manual into the second cell
Copy the second cell and use it to fill in the rest of the column
The LINEST function now needs to be set up; enter OCV’, Rp, Ro, and OCV under columns 9-12 and highlight a 5x4 block underneath them
The LINEST block needs each cell to be filled in; start by clicking on the square with the red arrow that is across from Known_y’s
Highlight the entire Voltage column and hit Enter, this will create an array for the Known_y’s block
The Known_x’s block is next; click on the square corresponding to that cell
This time highlight the three columns under I load, Ip, and A-s and hit Enter
Now that the Known_y’s and Known_x’s cells contain arrays, the Const and Stats cells need filled in
For the purposes of modeling a battery, the last two cells can just have TRUE typed into them; to display the results hit Ctrl-Shift-Enter
After hitting Ctrl-Shift-Enter the results will appear in the 5x4 block that was highlighted
The first row of values are coefficients for a linear equation where Voltage is the dependent variable and I load, Ip, and A-s are the independent variables; OCV’ goes with A-s, Rp with Ip, Ro with I load, and OCV is the “b” valueVoltage=(A-s)(OCV’)+( Ip)(Rp)+(I load)(Ro)+ OCV
Use the voltage formula in the first cell of Estimated V loadVoltage=(A-s)(OCV’)+( Ip)(Rp)+(I load)(Ro)+ OCV
Copy the first cell to fill in the rest of the column, remember that the coefficients in the formula need to have a dollar sign in front
Fill in the V error column by taking the difference between the measured voltage and estimated voltage; if the formula is good the errors should be small
The third cell down in the leftmost column of the results is the r2 value, this number indicates the accuracy of the formula; the formula is perfect if r2 is equal to one, and the battery manual requires that r2 be >0.995
The rest of the cells give more statistics on the formula that LINEST created, but they will not be used in this application
Tau affects all of the results, but in the beginning it was only guessed; to get the correct value, adjust tau so that it gives the maximum value of r2, then consider that the true value
For this example 9.4 was the best value for tau; changing tau by 0.1 caused changes in r2 as small as 1x10-6
Sometimes there is “noisy data” in the Voltage column; a bad cell can be edited out by setting it equal to the corresponding calculated value
Excel must be in “Iteration” mode for the editing strategy to work; this mode can be set by choosing Tools/Options/Calculation and checking the appropriate box
The second chart is of Measured and Estimated Voltage vs. time; both charts can be used to graphically see how well the LINEST formula follows the measured data
This procedure needs to be done for each pulse profile in a HPPC test. To save effort, copy the results of each profile into a separate Excel file (be sure to use Copy/Paste Special/Values). Then for a new pulse, paste in Time, I load, A-s, and Voltage into the old setup; LINEST should recalculate on its own. • Once all the resistance values are in their own file, plot them with respect to SOC. From this, polynomials can be created that can be plugged into PNGV models.