This invention generally relates to electrical storage batteries and more particularly to methods and apparatus for determining the time to discharge a battery from a given initial voltage to a given final voltage under a given load, and the voltage after a given time and load.
A rechargeable battery or storage battery is a group of one or more electrochemical cells. Storage batteries are also known as secondary cells because their electrochemical reactions are electrically reversible. Rechargeable batteries come in many different shapes and sizes, ranging anything from a button cell to megawatt systems connected to stabilize electrical distribution networks. Several different combinations of chemicals are commonly used, including: lead-acid, nickel cadmium (NiCd), nickel metal hydride (NiMH), lithium ion (Li-ion), and lithium ion polymer (Li-ion polymer).
Rechargeable batteries are commonly used for automobile starters, portable consumer devices, light vehicles (such as motorized wheelchairs, golf carts, electric bicycles, and electric forklifts), tools, and other applications requiring uninterruptible power supplies such as off-the-grid houses or occasionally connected house. Emerging applications in hybrid electric vehicles and electric vehicles are driving the technology to reduce cost and weight and increase lifetime.
Rechargeable batteries are used in grid energy storage systems for load leveling, where they store electric energy for use during peak load periods. By charging batteries during periods of low demand and returning energy to the grid during periods of high electrical demand, load-leveling helps eliminate the need for expensive peaking power plants and helps amortize the cost of generators over more hours of operation. Rechargeable batteries are also used to store electrical power generated by renewable energy systems, such as photovoltaic arrays during the day to be used at night or by wind turbine to be used when the wind is not blowing.
The active components in a secondary cell are the chemicals that make up the positive and negative active materials, and an electrolyte. The positive and negative active materials are made up of different materials, with the positive active material exhibiting a reduction potential and the negative active material having an oxidation potential. The sum of these potentials is the standard cell potential or voltage.
During charging, the positive active material is oxidized, producing electrons, and the negative material is reduced, consuming electrons. The electrons constitute the current flow in the external circuit. The electrolyte may serve as a simple buffer for ion flow between the electrodes, as in lithium-ion and nickel-cadmium cells, or it may be an active participant in the electrochemical reaction, as in lead-acid cells.
The energy used to charge rechargeable batteries usually comes from a battery charger operating on alternating current (AC), e.g., from a standard electrical outlet. Chargers may take from a few minutes to several hours to charge a battery. Fast chargers must have multiple ways of detecting full charge (voltage, temperature, etc.) to stop charging before onset of harmful overcharging. There is also direct current charging, such as charging from photovoltaic solar panels, micro hydro turbines and some wind turbines.
Batteries are also subject to damage from being too fully discharged due to reverse charging if they are fully discharged. It is therefore desirable to be able to determine or estimate when a battery is fully discharged. It is also useful to be able to simulate and project the time it will take to discharge the battery under given load, as a way of forecasting range of an electric vehicle, or to optimize price-wise the scheduling charge of storage batteries when using the grid. Similarity, a house management system can schedule running various alliances against the batteries by estimating the remaining capacity of the batteries. The discharge time is a factor of the initial voltage, the load and other factors such as temperature. There are a number of theoretical models for the behavior of a battery that can be used to predict the time to discharge a storage battery under given load conditions. However, these models are either too complex or too simplistic or inaccurate.
It is within this context that embodiments of the present invention arise.
Other objects and advantages of the invention will become apparent upon reading the following detailed description and upon reference to the accompanying drawings in which:
Although the following detailed description contains many specific details for the purposes of illustration, anyone of ordinary skill in the art will appreciate that many variations and alterations to the following details are within the scope of the invention. Accordingly, the exemplary embodiments of the invention described below are set forth without any loss of generality to, and without imposing limitations upon, the claimed invention.
According to embodiments of the present invention, a battery may be characterized in terms of its time to discharge from a given start voltage to a given end voltage under a specific load. To characterize a battery, measurements of battery voltage as a function of time during battery discharge for different power loads may be fitted to discharge functions. The discharge functions may be applied to specific end voltage values determine a first set of data for the time for a battery that has been charged to a given starting voltage to discharge to a particular end voltage for a given load. The first set of data may be interpolated to provide additional data points to produce a plurality of second sets of data for discharge time to a particular voltage as a function of load. Each second set of data of discharge time to a particular voltage as a function of load can be fitted to a function. The function may be an odd order polynomial (e.g., 3rd order, 5th order, etc.), a power function, or some combination of a polynomial and a power function.
Using the fitted function it is possible to fill in voltage versus time curves for intermediate load values to produce a model for time to a particular voltage as a function of load. This can be done by using the fitted functions for voltage versus time measured for each load to determine the time to reach a sufficient number of selected voltages over the measurement range. The results can then be expressed in terms of time to particular target voltages versus load. These results can be interpolated to obtain times for intermediate load values to obtain a sufficient number of points to model for each target voltage the time to the target voltage as a function of load.
Using the resulting models for time to a particular target voltage as a function of load and voltage over time for different loads one can calculate battery capacity starting from fully charged to fully discharged as a function of load. Using weighting between curves for known loads and/or voltages it is possible to determine a voltage versus time curve for any load and the time to discharge curve for any voltage. The time versus voltage curves may be implemented automatically in a computer program.
The result of the foregoing battery characterization operations is a program that allows one to (a) specify any load, start voltage and target voltage and determine how long it takes for the battery to discharge from the start voltage to the target voltage; (b) specify any load, start voltage and target time to determine what the target voltage will be at the target time; or (c) specify a load and target voltage and determine the battery capacity. Binary search searches and recursive search algorithms may be used to speed up the calculations.
Once a battery has been characterized as described above it may be operated in accordance with the characterization. For example, the start voltage and load may be measured or otherwise determined. The start voltage and load may be entered into the program, which calculates the time to discharge based on a known target voltage, which may be specified by the battery manufacturer or which may depend on the nature of the load or the application. The battery may be operated using an automated system that changes the state of battery operation once the discharge time is reached after starting discharge under the load. The change in state may involve, e.g., closing a switch to disconnect the load from the battery and/or to connect the battery to a charger to begin a charge cycle.
Alternatively, the load, start voltage, and a target time may be entered as inputs to the program and a target voltage at the target time may be calculated. The calculated target voltage may be compared against an acceptable target voltage to determine whether the battery may be safely operated up to the target time. The battery may then be operated automatically until the target time if it is determined that the target voltage is a safe voltage.
In yet another alternative, a load and target voltage may be entered into the program, which may then calculate the battery capacity. The calculated battery capacity may be compared against an estimated capacity needed to power a given task to determine whether the battery has sufficient capacity to complete the task, such as can an electric vehicle reach its destination, or can a house battery power the load for the requested time. The battery may then be operated automatically if it is determined that the battery has sufficient capacity for the task.
A battery may be characterized using data from a relatively small number of controlled discharge experiments. The experimental set up may be as illustrated schematically in
By way of example, and not by way of limitation, the 10 may be made up of multiple batteries in a battery bank.
By way of example, and not by way of limitation, the charger unit 12 may be in the form a solar array. The battery may then be connected to a load device 18 through a switch 20. The load device 18 may be configured to draw a constant power from the battery 10. The term “load” is often used herein to refer to the power drawn by the battery. The term load is also often used conventionally to refer to the device that draws the load. To avoid confusion, the term “load device” is used herein to refer to the device that draws the load. By way of example, and not by way of limitation, the load device may be a bank of incandescent lights (e.g., halogen lights) to create load with a power factor of 1.0.
Each experiment may start with the batteries fully charged by for a few days, i.e., more than just one day of full charge, to get a good common baseline starting state. The battery may be disconnected from the charger after it has been charged to a given starting voltage V0. The battery may then be connected to the load device 18 and run at approximately constant load until it is discharged to a safe discharge voltage. The level for a safe discharge will vary depending on the type of battery; however, this level is often specified by the battery manufacturer. By way of example, a battery bank may include 16 Rolls model S-530 Lead Acid, 6V 530AH batteries from Surette Battery Company of Springhill, Nova Scotia, Canada. The batteries may be connected in two parallel strings of 8 batteries connected serially, so that an overall voltage of the battery bank is nominally 48V, and may be charged to 50 volts and discharged to between 45.8 volts and 46 volts. The discharge measurements are repeated for different load values, e.g., 100 Watts, 500 Watts and 1000 Watts.
The computer may be a general purpose computer, e.g., having a processor, memory, input output functions, clock, cache and other features commonly found in computers. The computer may include a program 15 to run on the processor and data 17, which may be stored in a memory affiliated with the computer. The computer 16 may plot or otherwise record the battery voltage data as a function of time. A function may be calculated from the battery voltage data as a function of time. For convenience, this function is referred to herein as a discharge function. For each load value, a corresponding discharge function may be calculated, e.g., by least-square fit to a polynomial or other mathematical function with an R2 of at least 90% or better and more preferably 99% or better. In the case of the curve for a load of 500 W shown in
The “S” nature of the classic discharge curves (voltage versus time) for different constant loads may be seen from
To avoid this, the computer 16 may be configured to trigger the charger 12 to charge the battery 10 if the voltage falls below some threshold (e.g., 47 volts) for a sufficiently long period (e.g., 24 hours).
Although
Difficulties in predicting and modeling battery discharge behavior become apparent when the three discharge functions obtained from the data in
Embodiments of the invention provide a model based on measurements for a relatively small number of load values that predicts the end voltage level for any given load after any amount of time, for any given starting voltage, or the inverse question: how long it will take for a battery to discharge from a given starting voltage to a given end voltage for a given load.
An advantage of the model produced according to embodiments of the present invention, is that it avoids problems associated with the boundary conditions describing the state of the batteries, making the theoretical model simply unapproachable.
Such a model may be generated from discharge curve data and/or discharge functions for a relatively small number of load values (e.g., three, including a low load, a high load, and a middle range load). Reducing the number of load values can be quite advantageous when the discharge measurements require a day or more for each load value. The model may be generated starting from the discharge functions obtained from the voltage versus time data. First the discharge function for each measured load may be sampled to determine the discharge time for the battery 10 to reach specific predetermined voltage levels. By way of example, discharge times to six different voltage levels (45 V, 46 V, 47 V, 48 V, 49 V and 50 V) may be determined for each load value. For the discharge curves described above, the results are listed in Table I below and the values in the table are time in minutes.
This data may be re-plotted to give curves of time to each given voltage as a function of load. The resulting time versus load curves are depicted in
Next, the time versus load data may be interpolated, e.g., using a spline function, to obtain time values for each voltage for load values intermediate the load values for the measurements. For example, one can measure from
Interpolating the data in Table II provides five data points for each voltage line instead of the original three.
In the example described by the data in Table II above, the best fit (best R2) discharge time function would use one formula (F1(X)) for each voltage value up to a cutoff load value and a different formula (F2(X)) beyond the cutoff load value.
The cutoff value may be determined from inspection of various R2 values. Past the “knee” in the curve, it was observed that the discharge function behaved much more like a power function than a polynomial. It is useful to pick a point around the knee, and measurement point in the middle (500 W) provided a simple solution (and the R2 values agreed).
By way of example, and not by way of limitation, in the case of the data in Table II, the best fit was a polynomial for up to 500 W, and a power function from 500 W. In general the polynomial may be of any integer order N and may have the general form CNXN+CN−1XN−1+ . . . +C2X2+C1X+C0. Where the Ci are coefficients and X represents the load (e.g., in Watts). The power function may have the form AXb, where A is a coefficient, b is an exponent, and X represents the load (e.g., in Watts).
By way of example, and not by way of limitation, the polynomial may be a second order polynomial of the form:
C2X2+C1X+C0, where C1, C2, and C3 are coefficients that can be determined by a curve fitting program.
By way of specific numerical example, for the 45V line, the best fit polynomial and power formula were are given by:
F
1(X)=0.0043967X2−11.386X+5646.6(for 100<X≦500)
F
2(X)=1582550X−1.177(for 500<X)
The selection of the polynomial and power function and the determination of the cutoff load value may be automated, through the use of specially programmed software. Alternatively, the functions, and cutoff load value may be determined manually using commercially available spreadsheet and laboratory simulation programs
It is noted that for the best results it is desirable to compute the coefficients in F1(X) and F2(X) to at least fourteen decimal places.
Using the formula for each voltage value one can plot time versus load curves for each voltage over a whole range of load values, e.g., from 0 to 2000 W in
For each of these new load levels one can calculate again the least square fit polynomial that best fits the corresponding voltage versus time curve for the battery 10 in
Using the above-described model for load and voltage over time, one can also calculate the battery capacity. For example,
Embodiments of the present invention are not limited to generating models that are restricted to specific load levels and voltage levels, but also include generation of open models of battery behavior. Specifically, once the data has been gathered for a relatively small set of measurements the computer 16 to implement such an open model by fitting polynomials and power functions into ranges, basically yielding on the fly the type of data shown in Tables III,
As an example of the use of binary searching to speed up calculations, consider an example in which it is desired to search for the time for a battery to discharge to an ending voltage V2, from a given starting voltage V1, under a given load as a function of time L(t), and suppose the function for voltage as a function of time under a given load L is known for the battery:
A naïve approach to calculating the result would be to specify some very small interval ε for the voltage (or load or time, depending on what is to be determined) and start scanning (calculating a value and looking for a match). Suppose that t0 is the time at the origin. The program calculates the voltage for L(t0). If the calculated voltage is greater than the target voltage v2, the program can set t1=t0+ε and calculate a voltage for the new load value L(t1). If the resulting voltage is still greater than the target end voltage V2 the process can be repeated for t2=t0+2ε, t3=t0+3ε . . . until the time to reach the desired end voltage V2 is determined.
Such a simple approach can take a long time. To speed up the process, a binary search may be used as follows. Consider two different times, e.g., t0 at the origin (which may be where the voltage is equal to V1) and tD at the end of the voltage versus time curve. The program can calculate the voltage for both L(t0) and L(tD).
If the voltage for L(tD) is greater than V2 and the voltage for L(t0) is smaller than V2, the desired voltage is reached somewhere between t0 and tD, such as the middle point tm=(t0+tD)/2.and now, if L(tm) is greater than V2, the program may assume that the time to reach V2 is between tm and tD.
If the voltage for L(tm) is smaller than V2, the program may assume that the time to reach V2 is between t0 and tm. This process may be repeated in a recursive fashion. For example, suppose the program determines that the voltage for L(tD) is greater than V2 and the voltage for L(t0) is smaller than V2. In this case a new intermediate time ti may be determined, e.g., as ti=(tm+tD)/2.
The program can then calculate the voltage for L(ti) and compare it to V2. Note that for this iteration, the search range is half the size of the previous search range. This process may be reiterated for subsequent intermediate values until ti is less than some predetermined tolerance (e.g., the ε value for the naïve case). In some cases the program may allow a user to select the tolerance and thereby adjust the tradeoff between resolution (smaller tolerance) and speed of calculations (larger tolerance)
The result of a binary search is a logarithmic reduction on the number of steps required, and hence, the time to calculate. So if a naive solution requires (tD−t0)/ε steps, a recursive binary search requires Log((tD−t0)/ε) steps.
For example, if epsilon is one second, and the range tD−t0 is 3 days, the number of calculations can be reduced from about 256,000 calculations to about 17 steps at the most, and usually about 8-10 or so. In the case of the battery simulator, the calculations may be a bit more complex, e.g., if the L(t) is not known. However, this function may be approximated, e.g., by using weighting and curve fitting.
According to an embodiment of the present invention, modeling of battery behavior may be implemented in the form of computer program implemented in the form of a set of computer readable instructions, which may be embodied in a non-transitory computer-readable medium, such as a computer memory, disk drive, flash memory, CD-ROM, magnetic tape, and the like.
The method may begin by obtaining a plurality of sets of measurements of voltage on the storage battery versus time for a corresponding plurality of approximately constant load values as indicated at 72. The measurements may be obtained by performing experiments using the apparatus shown in
Using the computer 16, the set of discharge data may be automatically interpolated to provide additional data points to produce a plurality of second sets of discharge time data for discharge time to a particular voltage as a function of load as indicated at 78. The computer 16 may then automatically fit each second set of discharge time data of discharge time to a particular voltage as a function of load to a discharge time function as indicated at 80. The discharge time function may then be automatically applied to fill in voltage versus time curves for intermediate load values to produce a computer model for time to a particular voltage as a function of load as indicated at 82. Specifically, voltage versus time data for different loads may be transformed into time versus load data for different voltages, as described above. Splines may be used to interpolate the measured time versus load data for given voltages to provide additional data points for intermediate load values, as described above. The resulting data for each voltage value may then be fit to a polynomial and/or power function using least-square regression to provide a set of functions that model the battery discharge behavior as described above.
There are a number of ways in which the resulting computer model may be used. For example, one can specify any load, start voltage and target voltage, and use the computer model to determine the time to reach the target voltage. Alternatively one may specify a load, start voltage and target time, and see what the target voltage will be at the target time.
Alternatively one can specify a load and target voltage and determine the battery capacity, e.g., as described above. In some embodiments, the program 15 may be configured to automatically produce and change charts reflecting the voltage during battery discharge as a function of time. Alternatively, one could input a given start voltage and end voltage, as well as a desired time and determine a maximum load the system can sustain. This can be useful, e.g., to determine the range (e.g., in miles or kilometers) for a battery-powered electric car. Other uses include determining how to optimize usage of battery storage for a solar powered system in order to avoid having to rely on power from a public electrical grid. The program 15 could even be configured to calculate a “distance” between the two voltage curves and even visualize it.
The resulting computer model may optionally be stored in computer readable form (e.g., as data 17) in a computer-readable medium (e.g., the memory of the computer 16), as indicated at 84. Alternatively, the computer model may optionally be transmitted in computer readable from over a network, as indicated at 86; or used to operate a battery-powered device, as indicated at 88.
There are a number of ways in which the computer model may be used to operate a storage battery or battery-powered device. For example, battery characterization may be obtained using the computer model as described above. A load, a start voltage and a target voltage may be entered into the computer program 15 and the program may determine a discharge time for the battery to discharge from the start voltage to the target voltage. The battery/device may then be operated by the computer 16 in accordance with the determined discharge time. Alternatively, a load, a start voltage and a target time may be entered into the program 15 and the program may determine what the target voltage will be for the battery at the target time. The battery/device may then be operated by the computer 16 in accordance with the determined target voltage. Furthermore, one could specify a load and a target voltage and determine a capacity of the battery. The battery/device may then be operated by the computer 16 in accordance with the determined capacity.
While the above is a complete description of the preferred embodiment of the present invention, it is possible to use various alternatives, modifications and equivalents. Therefore, the scope of the present invention should be determined not with reference to the above description but should, instead, be determined with reference to the appended claims, along with their full scope of equivalents. Any feature, whether preferred or not, may be combined with any other feature, whether preferred or not. In the claims that follow, the indefinite article “A”, or “An” refers to a quantity of one or more of the item following the article, except where expressly stated otherwise. The appended claims are not to be interpreted as including means-plus-function limitations, unless such a limitation is explicitly recited in a given claim using the phrase “means for.”