Batmodel Tutorial

Location of Data Files
The sample files used in this tutorial are in /advisor/extras/batmodel/sample_files.  There are two types of files:

  1. *.mat files:  Saved batmodel files with previously processed data.
  2. *.dat files:  The base data files (generated by the battery tests) that were processed and assembled into the *.mat files.
Overview
Batmodel allows you to look at already saved data without processing it again by clicking on the Results buttons instead of the processing yellow buttons (e.g. 'VOC vs. SOC').  In this tutorial, you will process raw data files for an Evercel NiZn 22 Ah battery, view previously saved results, plot the results vs. temperature for two different temperatures, and then generate an ADVISOR battery file.

Commands to be entered at the Matlab prompt are indicate by bold typeface.  Button pushes on the Batmodel screens are indicated by red.  Filenames are italicized.

View Previously Saved Mat File Results
First, change directories to /advisor/extras/batmodel/sample_files.  If it is not already open, type >> batmodel at the Matlab command prompt.  Select Load and open the file named Evercel25_sample.mat.  Now you have loaded the battery file associated with testing at 25oC.  This file saves all the battery information under a variable named binf (stands for battery information).

View the capacity results by selecting Cap Res.   You should see the following:

For more information on the capacity processing, see Rate vs. Capacity Testing.

View the VOC results by selecting Voc Res.  You should see the following:

For more information on OCV processing, see OCV vs. SOC.

View the Internal Resistance results by selecting Rint Res.  You should see the following:

For more information on Rint processing, see Internal Resistance vs. SOC.

You can also navigate all of the information available in the variable binf through the command prompt.  For example, at the command prompt, type >> binf.VOC.  You should get the following:

ans =

data_files: {2x1 cell}
path: [1x65 char]
batname: 'Evercel 22AH prismatic NiZn'
batnum: '2'
testdate: '09/20/00'
testdescription: 'VOC vs. SOC test'
testscript: 'Evercel22AHCellSocVoc'
ratedAh: 22
equations: {5x1 cell}
var_column: [1 2 3 4 5]
header_names: {'Time'  'Amp'  'Volt'  'AH'  'Temp_1'}
no_header_lines: 1
vars: {5x1 cell}
data: [10939x5 double]
SOC_OCV_data: [23x2 double]
ess_voc: [1x11 double]
ess_soc: [0 10 20 30 40 50 60 70 80 90 100]
percentage_error: 0.1646
temperature: 25.8284
ind: [22x1 double]
You can also look at the results for Evercel32_sample.mat by using the same process.

Process Raw Data Files
To process the raw data files, you process the capacity, the VOC, and the Rint data files.  Note that you need to have the OCV results before you can process Rint.  The capacity processing may occur at any time, however it is recommended that you process these first, as any information on the battery that you enter in the 'Data File Information' window (e.g. which columns time is in) is automatically loaded into the OCV and Rint 'Data File Information' parameters.

Process Files Already Set Up
Load the file named Evercel25_sample.mat.  Select Chg Path and select Evercel25_sample.mat again.  The path describing the location of the data files is saved in the binf variable (e.g. binf.peukert.path, binf.VOC.path, and binf.Rint.path).  By selecting 'Chg Path', you are re-defining the path in these three locations to be the directory of Evercel25_sample.mat (it's associated data files are also in this path).

Select Capacity (Peukert).  The File Specification window prompts you to enter the data files you have for capacity tests.  Here, the file EvercelResidualCapacity25C.dat is already selected.  Select Next and the Data File Information Window will appear.  In our case, we've loaded a file with this information already entered.  If you were processing your own data, you'd need to input these fields and select the appropriate columns for your variables through the pull-down menus.  Select Process Data, and you should see the same results you saw previously.

Repeat this process for VOC vs. SOC.  You can repeat for Internal Resistance as well, but it may take a long time.  Instead, try processing the Internal Resistance for just the first input file (EvercelC3InternalResistance25CN2.dat).  Note that for the Rint model, if there is limited test data, model points outside of the test data range are based on a polynomial curve fit to the test data.  This can result in erroneous Rint values (even. negative values), which is why the user is allowed to change the model values as edit boxes in the Rint results screen.  The user-edited values are those saved in the binf variable and used as the final parameters.  When processing Rint values, text messages in the command prompt indicate reasons for throwing out bad current pulse points.

Process Files From Scratch
Now you'll repeat the first few steps starting from scratch, as you would with new data.  Go to the command prompt and clear the workspace by typing >> clear all; close all; batmodel.  From batmodel, select Capacity (Peukert).  Select EvercelResidualCapacity25C.dat to add it to your list of Data Files.  Select Next.  Enter the parameters shown below in the edit boxes, and choose the appropriate Heading for the Variables from the pull-down menus.

Select Process Data, and you should again see the same results you saw previously.  At the command prompt, type >> global binf; binf  (binf is a global variable which is why we first need to specify global binf).  Note that only binf.peukert exists, as you have not yet processed the VOC and Rint.  Select Save to save your work.  This will save the binf variable, which you can load at a later time to continue processing of your data.

View Results vs. Temperature
Once battery data is processed with batmodel for various temperatures (and saved as mat files), the user can plot the parameter variation with temperature.  To start fresh, type >> clear all; close all; batmodel.  Select Results vs. Temp and add Evercel25_sample.mat and Evercel32_sample.mat to your Data File list.  Select Next.  Four plots will appear: capacity, OCV, Rint discharge, and Rint charge.  Data is plotted as well as the model.  Here is one of the four plots you should see:

Generate an ADVISOR Model
Once you have a battery file (mat file) for at least one temperature, you can automatically create an ADVISOR battery file.  The data files used and accuracy/error data from the processing is automatically saved in the header. You'll need to enter thermal parameters, as well as mass, and minimum and maximum voltage limits for the battery, and coulombic efficiency at each temperature.  You have to calculate the coulombic efficiencies, which can be done by using the capacity tests and the Ah plots.

Select ADVISOR model generation and add Evercel25_sample.mat and Evercel32_sample.mat to your Data File list.  Fill in the edit boxes as below:

Select Make ADVISOR File and you will create a new file ESS_NiZn23_sample.m.  It's a good idea to open up the file and double check the parameter values with the plots.  Now you're done!

Last revised: 5/29/01, vhj