DETERMINING THE BATTERY CONDITION OF A MOBILE ELECTRONIC DEVICE
20230273260 · 2023-08-31
Inventors
Cpc classification
G01R31/392
PHYSICS
H01M10/48
ELECTRICITY
G06F1/28
PHYSICS
Y02E60/10
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
Y02D10/00
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
H01M10/488
ELECTRICITY
G01R31/367
PHYSICS
H01M2010/4278
ELECTRICITY
H01M2220/30
ELECTRICITY
International classification
G01R31/367
PHYSICS
Abstract
A method for use in determining a condition of a battery of a mobile electronic device, comprises receiving, at a server, mobile electronic device data from a mobile electronic device, receiving, at the server, information relating to each candidate method of a plurality of candidate methods, each candidate method being configured for determining a value of a corresponding battery condition, wherein the battery condition value corresponding to each candidate method is representative of the condition of the battery of the mobile electronic device. The method further comprises determining whether any of the candidate methods are capable of determining a corresponding battery condition value based at least in part on the mobile electronic device data and the information relating to each candidate method, and, in response to determining that one or more of the candidate methods is capable of determining one or more corresponding battery condition values, performing one or more of the capable methods to thereby determine the one or more corresponding battery condition values. The method may be suitable for use in determining a condition of a battery of a mobile electronic device and, in particular though not exclusively, for use in determining a condition of a battery of a mobile electronic device which comprises or runs an Android operating system.
Claims
1. A method for use in determining a condition of a battery of a mobile electronic device, the method comprising: receiving, at a server, mobile electronic device data from a mobile electronic device; receiving, at the server, information relating to each candidate method of a plurality of candidate methods, each candidate method being configured for determining a value of a corresponding battery condition, wherein the battery condition value corresponding to each candidate method is representative of the condition of the battery of the mobile electronic device; determining whether any of the candidate methods are capable of determining a corresponding battery condition value based at least in part on the mobile electronic device data and the information relating to each candidate method; and in response to determining that one or more of the candidate methods is capable of determining one or more corresponding battery condition values, performing the one or more of the capable methods to thereby determine the one or more corresponding battery condition values.
2. The method of claim 1, wherein the mobile electronic device data comprises at least one of a make, a model, an operating system, and a version of the operating system of the mobile electronic device and, at least one of: data relating to the battery of the mobile electronic device; a design capacity Q.sub.des of the battery; a make and/or a model of the battery of the mobile electronic device; and historical battery performance data.
3. The method of claim 1, further comprising extracting historical battery performance data from the mobile electronic device data, for example from a battery cycle information file stored on the mobile electronic device or from a battery stats log file stored on the mobile electronic device.
4. The method of claim 1, comprising transmitting the mobile electronic device data from the mobile electronic device data to the server.
5. The method of claim 1, comprising running an app on the mobile electronic device to extract the mobile electronic device data from data stored on the mobile electronic device and to transmit the mobile electronic device data from the mobile electronic device data to the server.
6. The method of claim 1, wherein the information relating to each candidate method comprises instructions for performing each candidate method.
7. The method of claim 1, comprising: transmitting, from the server to the mobile electronic device, instructions for performing each one or more of the capable methods; and executing, at the mobile electronic device, the instructions for performing each one or more of the capable methods.
8. The method of claim 1, comprising selecting an optimum one of the one or more capable methods based at least in part on the mobile electronic device data and the information relating to each candidate method and performing the optimum method to thereby determine a corresponding battery condition value, wherein the battery condition value determined using the optimum one of the one or more capable methods is known to provide a more accurate representation of the condition of the battery of the mobile electronic device than the battery condition value determined using any other one of the capable methods.
9. The method of claim 8, comprising: transmitting, from the server to the mobile electronic device, instructions for performing the optimum one of the one or more capable methods; and executing, at the mobile electronic device, the instructions for performing the optimum one of the one or more capable methods.
10. The method of claim 1, wherein the information relating to each candidate method comprises a corresponding battery condition threshold value and the method comprises comparing each determined battery condition value with the corresponding battery condition threshold value and determining whether the battery condition is compliant or non-compliant with a predetermined battery condition test according to the result of the comparison.
11. The method of claim 1, wherein receiving the information relating to each candidate method of a plurality of candidate methods comprises fetching the information relating to each candidate method from a database to the server.
12. The method of claim 11, comprising: updating or modifying the information in the database relating to one or more of the candidate methods; or storing, in the database, information relating to one or more additional candidate methods, each additional candidate method being configured for determining a corresponding battery condition value, wherein the battery condition value corresponding to each candidate method is representative of the condition of the battery of the mobile electronic device.
13. The method of claim 1, comprising making each determined battery condition value available at the mobile electronic device by displaying each determined battery condition value at the mobile electronic device, and/or transmitting, from the mobile electronic device to the server and/or to a further server, each determined battery condition value.
14. The method of claim 1, wherein the historical battery performance data comprises a battery cycle count value representing the number of full discharge/charge cycles associated with the battery of the mobile electronic device and the method comprises returning the battery cycle count value as at least one of the determined battery condition values.
15. The method of claim 2, wherein the historical battery performance data comprises historical battery charge data and the method comprises determining one or more of the battery condition values based at least in part on the historical battery charge data.
16. The method of claim 15, wherein the historical battery charge data comprises time information and battery charging status information, wherein the method comprises using the time information and the battery charging status information to identify one or more battery charge intervals during which the battery was charged; wherein the historical battery charge data comprises a plurality of historical battery charge data points for each battery charge interval, wherein each historical battery charge data point comprises time information, battery charging current information, and battery charge information; wherein the time information comprises a relative time value or time stamp; wherein the battery charging current information comprises a value of charging current supplied to the battery; wherein the battery charge information comprises a fractional value of the present or actual capacity Q.sub.act of the battery, expressed as a fraction or as a percentage of the present or actual capacity Q.sub.act of the battery; and wherein the method further comprises: identifying one or more battery charge ranges within each of the one or more battery charge intervals; determining, for each battery charge range, an estimate Q.sub.act (k) of the present or actual charge capacity Q.sub.act of the battery, where k is an index assigned to each battery charge range according to the numerical order in which the fractional values of the present or actual capacity Q.sub.act of the battery in the battery charge ranges occur; estimating the present or actual capacity Q.sub.act of the battery by averaging the estimates Q.sub.act(k) of the present or actual capacity of the battery for all of the battery charge ranges according to the formula:
17. The method of claim 2, wherein the historical battery performance data comprises historical battery drain data and the method comprises determining one or more of the battery condition values based at least in part on the historical battery drain data.
18. The method of claim 17, wherein the historical battery drain data comprises a lower limit min(Σ ΔQ) for a cumulative charge consumed over a drain period, and an upper limit max(Σ ΔQ) for the cumulative charge consumed over the drain period, wherein the drain period is defined as a time period elapsed since the last full charge of the battery of the mobile electronic device, and wherein the method comprises determining an average value avg (Σ ΔQ) for the cumulative charge consumed over the drain period according to
19. The method of claim 18, wherein the historical battery drain data comprises a cumulative percentage drop in charge Σ Δp over the drain period and the method comprises: determining an actual capacity Q.sub.act of the battery according to Q.sub.act=avg (Σ ΔQ)×100/Σ Δp; and determining one or more of the battery condition values based at least in part on the present or actual capacity Q.sub.act of the battery; or wherein the historical battery drain data comprises a cumulative fractional drop in charge Σ Δf over the drain period and the method comprises: determining an actual capacity Q.sub.act of the battery according to Q.sub.act=avg (Σ ΔQ)/Σ Δf; and determining one or more of the battery condition values based at least in part on the present or actual capacity Q.sub.act of the battery.
20. The method of claim 16, comprising returning one or more of the following quantities as one or more of the battery condition values: the ratio Q.sub.act/Q.sub.des; the percentage 100×Q.sub.act/Q.sub.des; a percentage wear value W.sub.p determined according to W.sub.p=100×(1−Q.sub.act/Q.sub.des); and a fractional wear value W.sub.f determined according to W.sub.f=1−Q.sub.act/Q.sub.des.
21. The method of claim 1, wherein the mobile electronic device comprises or runs an Android operating system such as Android Marshmallow Versions 6.0-6.0.1, Android Nougat Versions 7.0-7.1.2, Android Oreo Versions 8.0-8.1 or Android P Version 9.
22. An app which, when executed on a mobile electronic device, causes a method to be performed as claimed in claim 1.
23. Instructions for a server for use in determining a condition of a battery of a mobile electronic device, which instructions, when executed by a processing resource of the server, cause the server to perform the method of claim 1.
24. A server for use in determining a condition of a battery of a mobile electronic device, the server comprising a processing resource and a memory containing instructions which, when executed by the processing resource, cause the processing resource to: receive mobile electronic device data from the mobile electronic device; receive information relating to each candidate method of a plurality of candidate methods, each candidate method being configured for determining a value of a corresponding battery condition, wherein the battery condition value corresponding to each candidate method is representative of the condition of the battery of the mobile electronic device; determine whether any of the candidate methods are capable of determining a corresponding battery condition value based at least in part on the mobile electronic device data and the information relating to each candidate method; and in response to determining that one or more of the candidate methods is capable of determining one or more corresponding battery condition values, cause the one or more of the capable methods to be performed to thereby determine the one or more corresponding battery condition values.
25. A system comprising the server of claim 24 and a database storing the information relating to each candidate method of the plurality of candidate methods, wherein, when executed by the processing resource of the server, the instructions cause the processing resource of the server to fetch the information relating to each candidate method of the plurality of candidate methods from the database.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0097] A method and system for use in determining a condition of a battery of a mobile electronic device will now be described by way of non-limiting example only with reference to the following drawings of which:
[0098]
[0099]
[0100]
[0101]
[0102]
[0103]
[0104]
[0105]
[0106]
DETAILED DESCRIPTION OF THE DRAWINGS
[0107] One of ordinary skill in the art will understand that one or more of the features of the embodiments described below with reference to the drawings may produce effects or provide advantages when used in isolation from one or more of the other features of the embodiments and that different combinations of the features are possible other than the specific combinations of the features of the embodiments described below.
[0108] Referring initially to
[0109] The mobile electronic device 2 includes the battery 4, a memory 6, a processing resource 8, and a user interface 10. The memory 6 stores an operating system in the form of an Android operating system 12 and mobile electronic device data 14. The mobile electronic device data 14 includes at least one of a make, a model, and a version of the Android operating system 12 of the mobile electronic device 2. The mobile electronic device data further includes data relating to the battery 4 of the mobile electronic device 2. Specifically, the mobile electronic device data 14 further includes historical battery performance data for the battery 4 of the mobile electronic device 2 in the form of a battery cycle information file and a battery stats log file stored in the memory 6 of the mobile electronic device 2. The battery stats log file may be output from a batterystats service of a dumpsys tool that runs on the mobile electronic device 2. The mobile electronic device data 14 may further include a make and/or a model of the battery 4 of the mobile electronic device 2.
[0110] The battery cycle information file includes a battery cycle count value representing the number of full discharge/charge cycles associated with the battery 4.
[0111]
[0112] Each historical battery charge data point of the first battery charge interval 101 comprises time information and corresponding battery charging current and battery charge information. The time information takes the form of relative time values or time stamps expressed as a date and a time in hours, minutes and seconds, t.sub.start1, . . . t.sub.j, . . . t.sub.finish1. The battery charging current information comprises an absolute value of charging current expressed in mA, I.sub.start1, . . . I.sub.j, . . . I.sub.finish1 supplied to the battery at each time t.sub.start1, . . . t.sub.j, . . . t.sub.finish1 respectively. The battery charge information comprises a fractional value q.sub.start1, . . . q.sub.i, . . . q.sub.finish1 of the actual charge capacity Q.sub.act of the battery expressed as a fraction or percentage of the actual charge capacity Q.sub.act of the battery at each time t.sub.start1, . . . t.sub.finish1 respectively.
[0113] Similarly, each historical battery charge data point of the second battery charge interval 102 comprises time information and corresponding battery charging current and battery charge information. The time information takes the form of relative time values or time stamps expressed as a date and a time in hours, minutes and seconds, t.sub.start2, . . . t.sub.j, . . . t.sub.finish2. The battery charging current information comprises an absolute value of charging current expressed in mA, I.sub.start2, . . . I.sub.j, I.sub.finish2 supplied to the battery at each time t.sub.start2, . . . t.sub.j, . . . t.sub.finish2 respectively. The battery charge information comprises a fractional value q.sub.start2, . . . q.sub.i, . . . q.sub.finish2 of the actual charge capacity Q.sub.act of the battery expressed as a fraction or percentage of the actual charge capacity Q.sub.act of the battery at each time t.sub.start2, . . . t.sub.j, . . . t.sub.finish2 respectively.
[0114] The battery stats log file also includes battery charging status information such as a battery charging status flags 110, 112, indicating when battery charging started, and a battery charging status flags 120, 122 indicating when battery charging finished.
[0115] One of skill in the art will understand that, an actual battery stats log file may include other information not shown in
[0116]
[0117]
[0118] One of skill in the art will understand that, in general, the historical battery drain data values in the battery stats log file may be different to the specific historical battery drain data values shown in
[0119] Referring back to
[0120] The system 20 includes a battery profiler cloud 22 which includes a server in the form of a battery profiler server 24 and a database in the form of a battery profiler database 26. The battery profiler server 24 includes a processing resource 24a and a memory 24b containing instructions which, when executed by the processing resource 24a, cause the processing resource 24a to perform various operations as will be described in more detail below. The battery profiler database 26 stores information relating to each candidate method of a plurality of candidate methods, each candidate method being configured for determining a corresponding battery condition value, wherein the battery condition value corresponding to each candidate method is representative of the condition of the battery 4 of the mobile electronic device 2. The battery condition value may, for example, be a battery cycle count value of the battery 4; a ratio of a present or actual charge capacity of the battery 4 to a design charge capacity of the battery 4 expressed as a percentage or as a fractional value; a proportion of a life-time of the battery 4 which remains expressed as a percentage or as a fractional value; a proportion of a life-time of the battery 4 which has elapsed expressed as a percentage or as a fractional value; or a present or actual wear value of the battery 4 expressed as a percentage or as a fractional value. The information relating to each candidate method may include instructions for performing the candidate method and a battery condition threshold value corresponding to the candidate method. The battery profiler server 24 is configured for two-way communication with the mobile electronic device 2 and for two-way communication with the battery profiler database 26.
[0121] Referring to
[0122] At step 56, the method continues with the processing resource 24a of the battery profiler server 24 fetching information relating to each candidate method of the plurality of candidate methods from the battery profiler database 26, each candidate method being configured for determining a corresponding battery condition value. Specifically, the processing resource 24a of the battery profiler server 24 fetches instructions from the battery profiler database 26 for performing each of the candidate methods stored in the battery profiler database 26.
[0123] At step 58, the method continues with the processing resource 24a of the battery profiler server 24 determining whether any of the candidate methods are capable of determining a corresponding battery condition value based at least in part on the mobile electronic device data 14 and the information relating to each candidate method. Specifically, the processing resource 24a of the battery profiler server 24 identifies a set of input parameters required by the instructions for performing each of the candidate methods stored in the battery profiler database 26 and compares the required set of input parameters for each of the candidate methods with a set of parameter values known to be stored in a memory of any mobile electronic device which has the same make, model and version of the Android operating system as the mobile electronic device 2. If the required set of input parameters for any candidate method matches the set of parameter values known to be stored in a memory of any mobile electronic device having the same make, model and version of the Android operating system as the mobile electronic device 2, then the processing resource 24a of the battery profiler server 24 identifies the candidate method concerned as a method which is capable of determining a corresponding battery condition value for the battery 4 of the mobile electronic device 2 based on the historical battery performance data which must be stored in the memory 6 of the mobile electronic device 2. For the specific example of the mobile electronic device 2, the processing resource 24a of the battery profiler server 24 uses at least one of the make, model and version of the Android operating system of the mobile electronic device 2 to identify that the memory 6 of the mobile electronic device 2 must have historical battery performance data in the form of a battery cycle information file specifying a battery cycle count value and a battery stats log file including both historical battery charge data and historical battery drain data as described with reference to
[0124] In response to the processing resource 24a of the battery profiler server 24 determining that one or more of the candidate methods are capable of determining a corresponding battery condition value, the method continues at step 60 with the processing resource 24a of the battery profiler server 24 transmitting instructions for performing one or more of the capable methods to the mobile electronic device 2. The app 16 then causes the processing resource 8 to perform one or more of the capable methods to thereby determine one or more corresponding battery condition values at step 62.
[0125] For example, where the processing resource 8 performs the battery cycle method, the processing resource 8 simply looks up the battery cycle count value stored in the battery cycle information file in the memory 6 of the mobile electronic device 2 and returns the battery cycle count value as at least one of the determined battery condition values.
[0126] Where the processing resource 8 performs the battery charge method, the processing resource 8 performs the method 200 described with reference to
[0127] The method continues at step 206 with the processing resource 8 using the battery charging status flags 110, 112, 120, 122 to identify one or more battery charge intervals during which the battery 4 was charged.
[0128] As will be described in more detail below, the method continues at step 208 with the processing resource 8 identifying one or more battery charge ranges within each of the one or more battery charge intervals and determining, for each battery charge range, an estimate Q.sub.act(k) of the actual charge capacity Q.sub.act of the battery, where k is an index assigned to each battery charge range according to the numerical order in which the fractional values of the actual capacity Q.sub.act of the battery in the battery charge ranges occur.
[0129] At step 210, the processing resource 8 estimates the actual capacity Q.sub.act of the battery 4 by averaging the estimates Q.sub.act(k) of the actual capacity of the battery 4 for all of the battery charge ranges according to the formula:
where N.sub.k is the total number of battery charge ranges. It is known that the charge behaviour of a battery of a mobile electronic device is generally non-linear such that the accuracy of the measurement of the battery charge information may vary across the full range of fractional values of the actual capacity Q.sub.act of the battery 4. Consequently, averaging the estimates Q.sub.act(k) of the actual capacity of the battery 4 for all of the battery charge ranges in this way may improve the accuracy of the estimate of the actual capacity Q.sub.act of the battery 4 because it may average out or reduce any variations in the accuracy of the battery charge information across the full range of fractional values of the actual capacity Q.sub.act of the battery 4. It is also thought that the accuracy of the measurement of the battery charge information may vary with usage of the mobile electronic device 2 during charging. Averaging the estimates Q.sub.act(k) of the actual capacity of the battery 4 for all of the battery charge ranges in this way, may also help to account for any variation in the accuracy of the measurement of the battery charge information with usage of the mobile electronic device 2 during charging, thereby helping to improve the accuracy of the estimate of the actual capacity Q.sub.act of the battery 4.
[0130] At step 212, the processing resource 8 returns one or more of the following quantities as one or more of the battery condition values: [0131] the ratio Q.sub.act/Q.sub.des; [0132] the percentage 100×Q.sub.act/Q.sub.des; [0133] a percentage wear value W.sub.p determined according to:
and [0134] a fractional wear value W.sub.f determined according to:
[0135] Step 208 of the method of
[0136] identifies any common battery charge ranges in which the fractional values of the actual capacity Q.sub.act of the battery 4 of one battery charge interval overlap with the fractional values of the actual capacity Q.sub.act of the battery 4 of any one or more other battery charge intervals; and
[0137] identifies any unique battery charge ranges in which none of the fractional values of the actual capacity Q.sub.act of the battery 4 of one battery charge interval overlap with the fractional values of the actual capacity Q.sub.act of the battery 4 of any one or more other battery charge intervals.
[0138] For example, referring to
[0142] Referring back to
Q.sub.act(i, k)=ΔQ(i, k)×100/[p.sub.final (i, k)−p.sub.initial(i, k)]
[0143] where p.sub.initial(i, k) is the initial fractional value of the actual capacity of the battery expressed as a percentage at the beginning of the k.sup.th battery charge range in the i.sup.th battery charge interval;
[0144] where p.sub.final(i, k) is the final fractional value of the actual capacity of the battery expressed as a percentage at the end of the k.sup.th battery charge range in the i.sup.th battery charge interval; and
[0145] where ΔQ(i, k) is the total charge supplied to the battery over the k.sup.th battery charge range in the i.sup.th battery charge interval.
[0146] For the example shown in
p.sub.initial(1,2)=30 and p.sub.final(1,2)=60; and
p.sub.initial(2,2)=30 and p.sub.final(2,2)=60.
[0147] The processing resource 8 also determines, for each common battery charge range (e.g. battery charge range 2 of
ΔQ (i, k)=I.sub.avg(i, k)×T(i, k)
where t.sub.initial(i, k) is the average battery charging current supplied to the battery 4 over the k.sup.th battery charge range in the i.sup.th battery charge interval, and T (i, k) is the duration of the k.sup.th battery charge range in the i.sup.th battery charge interval determined according to the formula:
T(i, k)=t.sub.final(, k)−t.sub.initial(i, k)
where t.sub.initial(i,k) is the relative time value or time stamp corresponding to the first battery charge data point of the k.sup.th battery charge range in the i.sup.th battery charge interval, and t.sub.final(i, k) is the relative time value or time stamp corresponding to the last battery charge data point of the k.sup.th battery charge range in the i.sup.th battery charge interval.
[0148] For the example shown in
ΔQ(1,2)=I.sub.avg(1,2)×T(1,2)
ΔQ(2,2)=I.sub.avg(2,2)×T(2,2)
where:
[0149] I.sub.avg(1,2) is the average current determined for battery charge range 2 from the battery charging data in the first battery charge interval;
[0150] T(1,2) is the duration associated with battery charge range 2 from the time data in the first battery charge interval;
[0151] I.sub.avg(2,2) is the average current determined for battery charge range 2 from the battery charging data in the second battery charge interval; and
[0152] T(2,2) is the duration associated with battery charge range 2 from the time data in the second battery charge interval.
[0153] The processing resource 8 determines, for each common battery charge range and for each battery charge interval to which the common battery charge range is common, the average battery charging current I.sub.avg(i, k) supplied to the battery 4 over the k.sup.th battery charge range in the i.sup.th battery charge interval according to the formula:
where I.sub.j is the battery charging current supplied to the battery corresponding to the j.sup.th historical battery charge data point, ∀j ∈ i, k indicates that the summation should be performed over all of the historical battery charge data points in the k.sup.th battery charge range in the i.sup.th battery charge interval, and N.sub.j (i, k) is the total number of historical battery charge data points in the k.sup.th battery charge range in the P battery charge interval.
[0154] For the example shown in
where I.sub.j is the battery charging current supplied to the battery corresponding to the P historical battery charge data point, ∀j ∈ i=1, k=2 indicates that the summation should be performed over all of the historical battery charge data points in battery charge range 2 in the 1.sup.st battery charge interval, and N.sub.j(1,2) is the total number of historical battery charge data points in battery charge range 2 in the 1.sup.st battery charge interval.
[0155] Similarly, the processing resource 8 determines the average battery charging current I.sub.avg(1,2) supplied to the battery over battery charge range 2 in the second battery charge interval according to the formula:
where I.sub.j is the battery charging current supplied to the battery corresponding to the P historical battery charge data point, ∀j ∈ i=2, k=2 indicates that the summation should be performed over all of the historical battery charge data points in battery charge range 2 in the 2.sup.nd battery charge interval, and N.sub.j(2,2) is the total number of historical battery charge data points in battery charge range 2 in the 2.sup.nd battery charge interval.
[0156] As shown in
where ∀i ∈ i.sub.com indicates that the summation should be performed over all of the battery charge intervals to which the k.sup.th battery charge range is common and N.sub.icom(k) is the number of battery charge intervals to which the k.sup.th battery charge range is common. Averaging the estimates of the actual capacity of the battery 4 in this way across each battery charge interval to which each common battery charge range is common, may help to account for any variation in the usage of the mobile electronic device during charging in the common battery charge range in different battery charge intervals, thereby helping to improve the accuracy of the estimate of the actual capacity of the battery 4.
[0157] For the example shown in
Averaging the estimates of the actual capacity of the battery 4 in this way over a battery charge range for different battery charge intervals, helps to account for any variation in the usage of the mobile electronic device 2 during charging, thereby helping to improve the accuracy of the estimate of the actual capacity of the battery 4.
[0158] At step 226 of
Q.sub.act(k)=ΔQ(i, k)×100/[p.sub.final(i, k)−p.sub.initial(i, k)]
where p.sub.initial(i, k) is the initial fractional value of the actual capacity of the battery 4 expressed as a percentage at the beginning of the k.sup.th battery charge range in the i.sup.th battery charge interval;
[0159] where p.sub.final(i, k) is the final fractional value of the actual capacity of the battery 4 expressed as a percentage at the end of the k.sup.th battery charge range in the i.sup.th battery charge interval; and
[0160] where ΔQ(i, k) is the total charge supplied to the battery over the k.sup.th battery charge range in the i.sup.th battery charge interval.
[0161] For the example of
p.sub.initial(1,1)=0 and p.sub.final(1,1)=30; and
p.sub.initial(2,3)=60 and p.sub.final(2,3)=90.
The processing resource 8 also determines, for each unique battery charge range, the total charge ΔQ(k) supplied to the battery over the k.sup.th battery charge range in the i.sup.th battery charge interval according to:
ΔQ(k)=I.sub.avg(i, k)×T(i, k)
where I.sub.avg(i, k) is the average battery charging current supplied to the battery over the k.sup.th battery charge range in the i.sup.th battery charge interval, and T(i, k) is the duration of the k.sup.th battery charge range in the i.sup.th battery charge interval determined according to the formula:
T(i, k)=t.sub.final(i, k)−t.sub.initial(i, k)
where t.sub.initial(i, k) is the relative time value or time stamp corresponding to the first battery charge data point of the k.sup.th battery charge range in the i.sup.th battery charge interval, and t.sub.final(i, k) is the relative time value or time stamp corresponding to the last battery charge data point of the k.sup.th battery charge range in the i.sup.th battery charge interval.
[0162] For the example shown in
ΔQ(1)=I.sub.avg(1,1)×T(1,1)
and the total charge ΔQ(3) supplied to the battery over battery charge range 3 in the 2.sup.nd battery charge interval according to:
ΔQ(3)=I.sub.avg(2,3)×T(2,3)
[0163] The processing resource 8 determines, for each unique battery charge range, the average battery charging current I.sub.avg(i,k) supplied to the battery over the k.sup.th battery charge range in the i.sup.th battery charge interval according to the formula:
where I.sub.j is the battery charging current supplied to the battery corresponding to the j.sup.th historical battery charge data point, ∀j ∈ i, k indicates that the summation should be performed over all of the historical battery charge data points in the k.sup.th battery charge range in the i.sup.th battery charge interval, and N.sub.j (i, k) is the total number of historical battery charge data points in the k.sup.th battery charge range in the i.sup.th battery charge interval.
[0164] For the example shown in
where I.sub.j is the battery charging current supplied to the battery corresponding to the j.sup.th historical battery charge data point, ∀j ∈ i=1, k=1 indicates that the summation should be performed over all of the historical battery charge data points in battery charge range 1 in the 1.sup.st battery charge interval, and N.sub.j (1,1) is the total number of historical battery charge data points in battery charge range 1 in the 1.sup.st battery charge interval.
[0165] Similarly, the processing resource 8 determines, for unique battery charge range 3, the average battery charging current I.sub.avg(2,3) supplied to the battery over battery charge range 3 in the second battery charge interval according to the formula:
where I.sub.j is the battery charging current supplied to the battery corresponding to the j.sup.th historical battery charge data point, ∀j ∈ i=2, k=3 indicates that the summation should be performed over all of the historical battery charge data points in battery charge range 3 in the 2nd battery charge interval, and N.sub.j(2,3) is the total number of historical battery charge data points in battery charge range 3 in the 2nd battery charge interval.
[0166] Returning to step 210 shown in
[0167] It is known that the charge behaviour of the battery 4 of the mobile electronic device 2 is generally non-linear and it is thought that the accuracy of the measurement of the battery charge information may vary across the full range of fractional values of the actual capacity Q.sub.act of the battery 4. Consequently, averaging the estimates Q.sub.act(k) of the actual capacity of the battery 4 for all of the battery charge ranges in this way may improve the accuracy of the estimate of the actual capacity Q.sub.act of the battery 4 because it may average out or reduce any variations in the accuracy of the battery charge information across the full range of fractional values of the actual capacity Q.sub.act of the battery 4. It is also thought that the accuracy of the measurement of the battery charge information may vary with usage of the mobile electronic device 2 during charging. Averaging the estimates Q.sub.act(k) of the actual capacity of the battery 4 for all of the battery charge ranges in this way, may also help to account for any variation in the accuracy of the measurement of the battery charge information with usage of the mobile electronic device 2 during charging, thereby helping to improve the accuracy of the estimate of the actual capacity Q.sub.act of the battery 4.
[0168] Where the processing resource 8 performs the battery drain method, the processing resource 8 determines one or more of the battery condition values based at least in part on the historical battery drain data. Specifically, with reference to the description of the historical battery drain data of
[0169] For the specific battery drain data shown in
[0170] Where the historical battery drain data includes a cumulative percentage drop in charge Σp over the drain period, the processing resource 8 determines an actual capacity Q.sub.act of the battery 4 according to Q.sub.act=avg(Σ Q)×100/Σp. For the specific battery drain data shown in
[0171] The processing resource 8 then returns one or more of the following quantities as one or more of the battery condition values: the ratio Q.sub.act/Q.sub.des; the percentage 100×Q.sub.act/Q.sub.des; a percentage wear value W.sub.p determined according to W.sub.p=100×(1−Q.sub.act/Q.sub.des); and a fractional wear value W.sub.f determined according to W.sub.f=1−Q.sub.act/Q.sub.des. For the specific battery drain data shown in
[0172] Referring back to
[0173] It will be appreciated by one of ordinary skill in the art that various modifications may be made to the foregoing system and method without departing from the scope of the present invention as defined by the claims. For example, a first alternative method may include an additional step performed between steps 58 and 60 of
[0174] Rather than transmitting instructions for performing each of the one or more of the capable methods to the mobile electronic device 2 as described with reference to step 60 of
[0175] In a variant of the first alternative method described above, rather than the processing resource 24a of the battery profiler server 24 performing the additional step of selecting the optimum one of the one or more capable methods based at least in part on the mobile electronic device data 14 and the information relating to each candidate method between steps 58 and 60 of
[0176] In a second alternative method, the information relating to each candidate method which the processing resource 24a of the battery profiler server 24 fetches from the battery profiler database 26 at step 56 of
[0177]
[0178] In a third alternative method, the app 16 extracts historical battery performance data from the memory 6 of the mobile electronic device 2 and transmits the historical battery performance data to the battery profiler server 24 at step 54 of
[0179] Specifically, the app 16 extracts the battery cycle information file stored in the memory 6 of the mobile electronic device 2 and the battery stats log file stored in the memory 6 of the mobile electronic device 2 and transmits the battery cycle information file and the battery stats log file to the battery profiler server 24 at step 54.
[0180] In a fourth alternative method, rather than the processing resource 24a of the battery profiler server 24 transmitting instructions for performing one or more of the capable methods to the mobile electronic device 2 and the app 16 performing the one or more of the capable methods to thereby determine one or more corresponding battery condition values, the processing resource 24a of the battery profiler server 24 may perform one or more of the capable methods to thereby determine one or more corresponding battery condition values and the processing resource 24a of the battery profiler server 24 may transmit the one or more corresponding battery condition values to the mobile electronic device 2. Such a method may avoid any requirement for the processing resource 24a of the battery profiler server 24 to transmit any instructions for performing one or more of the capable methods to the mobile electronic device 2. In a variant of the fourth alternative method, the processing resource 24a of the battery profiler server 24 may execute some of the instructions for performing each one or more of the capable methods at the battery profiler server 24 and the app 16 may execute some of the instructions for performing each one or more of the capable methods at the mobile electronic device 2.
[0181] A fifth alternative method may comprise the following steps: [0182] i. a user installs an application onto the mobile electronic device; [0183] ii. the application accesses via APIs available mobile electronic device data stored on the mobile electronic device and available battery data stored on the mobile electronic device; [0184] iii. the application sends the available mobile electronic device data and the available battery data to a cloud server; [0185] iv. the cloud server compares the received mobile electronic device data and the received battery data to information maintained on a database and identifies the best (e.g. most accurate) battery condition estimation method based on the make, model and version of the Android OS of the mobile electronic device and the battery data; and [0186] v. instructions for executing the identified battery condition estimation method are downloaded from the cloud server to the mobile electronic device and the instructions are executed to estimate the battery condition.
[0187] A sixth alternative method may comprise the following steps: [0188] i. a user installs an app onto an Android device; [0189] ii. the app is launched; [0190] iii. the app fetches the manufacturer, model and OS version of the Android device and a design capacity of the battery from Android APIs; [0191] iv. the app fetches battery cycle information from a battery cycle information file stored on the Android device, and battery drain log and battery current information from a battery stats log file stored on the Android device; [0192] v. the app uploads the battery cycle, battery drain log and battery current information to a battery profile cloud; [0193] vi. the battery profile cloud includes a list of methods that calculate battery life based on device information received from the app; [0194] vii. the battery profile cloud determines or selects the method to be used for calculating a battery life; [0195] viii. the battery profile cloud sends the selected battery life calculation method as well as any required threshold values to the Android device; [0196] ix. the app uses the selected battery life calculation method as well as any required threshold values to calculate a battery life and/or to determine a battery grade or condition parameter; [0197] x. the app displays the calculated battery life and/or to battery grade or condition parameter on a user interface of the Android device; and [0198] xi. the app uploads the calculated battery life and/or to battery grade or condition parameter to a report cloud along with the manufacturer, model and OS of the Android device.