User profile based on battery measurements
By combining battery measurement results and operational data, and using a time series model to update user profiles, the problem of inaccurate estimation of remaining battery life in electronic devices is solved, enabling more accurate battery consumption management and extending the device's operating time.
Patent Information
- Application Number
- CN202080096758.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-01-16
- Publication Date
- 2026-01-13
- Estimated Expiration
- 2040-01-16
AI Technical Summary
In the prior art, the remaining battery life of electronic devices is not accurately estimated, which causes the battery to run out prematurely in some cases, affecting the operation of the device.
By combining battery measurement results and operational data, and using time series models to update user profiles, the battery consumption of electronic devices can be adjusted to improve the accuracy of remaining battery life.
It improves the accuracy of remaining battery life, extends equipment operating time, and reduces battery consumption.
Smart Images

Figure 91442 
Figure 192715 
Figure 193380
Abstract
Description
Background Technology
[0001] For power and portability, electronic devices are typically equipped with rechargeable batteries. Rechargeable batteries allow electronic devices to operate in locations without any available power outlets. They also enable users to move from one location to another without being limited by power cord length. When using an electronic device, the rechargeable battery dissipates its power. Recharging the battery usually requires keeping the electronic device in a location with a power outlet for several minutes to several hours. Attached Figure Description
[0002] The following examples will be described with reference to the attached figures:
[0003] Figure 1 These are schematic diagrams of battery-equipped electronic devices based on various examples;
[0004] Figure 2 These are schematic diagrams of battery-equipped electronic devices based on various examples;
[0005] Figure 3 It is a lookup table based on user profiles of various example electronic devices;
[0006] Figure 4 It is a conceptual diagram of a neural network used to determine the usage patterns of a user profile, based on various examples;
[0007] Figure 5 It is a conceptual diagram of a neural network used to determine the usage patterns of a user profile, based on various examples;
[0008] Figure 6 This is a schematic diagram of a system used to manage the battery consumption of electronic devices;
[0009] Figure 7 This is a schematic diagram of a system used to manage the battery consumption of electronic devices;
[0010] Figure 8 This is a flowchart of a method for managing battery consumption in electronic devices;
[0011] Figure 9 This is a flowchart illustrating one method for managing battery consumption in electronic devices, based on various examples.
[0012] Figure 10 This is a schematic diagram of a system used to manage battery consumption in electronic devices; and
[0013] Figure 11 It is a sequence diagram of the user profile's usage patterns. Detailed Implementation
[0014] As described above, electronic devices (e.g., laptops, notebook computers, tablets, smartphones, mobile devices, or any other suitable device with a battery and the ability to capture performance information) are equipped with rechargeable batteries, referred to herein as batteries, to provide power and facilitate portability. As an illustrative example, a laptop computer has a battery to allow the user to use the laptop in locations where power outlets may not be available (e.g., outdoors, conference centers, shopping malls, auditoriums, cafeterias, lobbies). When the electronic device draws power from the battery, the battery dissipates its charge.
[0015] When describing a battery, a metric known as "state of charge" is used. State of charge indicates the amount of remaining energy in the battery as a percentage of its maximum charge capacity. When the battery's state of charge falls below a threshold, the operation of an electronic device may be affected. For example, an application (e.g., machine-readable instructions) may be unable to execute because the energy consumption associated with the application exceeds the remaining energy associated with the state of charge. In another instance, an electronic device may shut down when the state of charge falls below this threshold. Another metric associated with batteries is called "maximum charge capacity." Maximum charge capacity is the amount of energy a battery holds when fully charged. Maximum charge capacity can decrease as the battery ages. See below for reference. Figure 1 The state of charge and maximum charging capacity discussed here can be measurements obtained from electronic devices.
[0016] Once the charge is fully dissipated or reaches a level that affects the operation of the electronic device (e.g., to ensure uninterrupted operation), the battery should be recharged. However, in some cases, users may leave the power outlet for longer than the duration of the remaining battery life associated with the state of charge. Remaining battery life is an estimate of how long an electronic device can operate before the battery is fully discharged. Remaining battery life can be an estimate provided by the electronic device, as referenced below. Figure 1 The remaining battery life discussed, or it could be an estimate made by the user, may be inaccurate due to system performance configuration and user actions (e.g., failing to recharge after receiving a low battery warning, or continuing to use the electronic device when power dissipation is below a threshold), and the battery may dissipate faster than estimated. Performance configuration is the setting that establishes operating limits and conditions for the components of an electronic device. Components of an electronic device include hardware (e.g., central processing unit (CPU), graphics processing unit (GPU), fans, input devices, memory devices, output devices, wireless transmitters, lights) and applications (e.g., machine-readable instructions).
[0017] This disclosure describes various examples of electronic devices configured to improve the accuracy of remaining battery life calculations and increase remaining battery life by adjusting the battery consumption of the electronic device based on battery measurements, operating data, and user profiles. Battery consumption is the rate at which a battery discharges over a period of time. This period of time can be fixed or variable, as referenced below. Figure 1 The rate of battery discharge during this time period is determined by what components are used during that period. For example, the battery discharge rate can be higher during a period when multiple applications are running than during a period when there is no user interaction with the electronic device. Battery measurements provide information about the battery's performance during that time period. (See references below) Figure 1 (Discussion of battery measurement results) The operating data is information about the component's performance during that time period. (See reference below) Figure 2 (Discussion of Operating Data) User profiles describe the relationships between data (e.g., information about the electronic device, information about the user of the electronic device) that influences battery usage patterns. (See references below) Figures 1 to 5 (Discussion of user profiles) Usage patterns are models of battery consumption over multiple time periods. (See references below) Figure 2 (Discussion on usage patterns) Electronic devices utilize time-series models to update user profiles based on battery measurements and operational data. Time-series models identify patterns within time-based data points. (See references below) Figure 1 and 2 (Discussion on time series models) By combining battery measurement results and operational data with user profiles, the accuracy of remaining battery life calculation can be improved, and remaining battery life can be increased by reducing battery consumption of electronic devices.
[0018] In one example according to this disclosure, an electronic device is provided. The electronic device includes a battery; a storage device storing a user profile including usage patterns of the battery; and a processor coupled to the battery and the storage device, the processor being configured to: receive battery measurement results of the battery and operational data of a first component of the electronic device; calculate battery consumption of the first component based on the battery measurement results; compare the battery consumption with the usage patterns; update the user profile using a time series model based on the comparison, wherein the inputs to the time series model include the battery measurement results and the operational data; and adjust the battery consumption of the electronic device based on the updated user profile.
[0019] In another example according to this disclosure, a system is provided. The system includes a computer-readable medium coupled to a processor. The computer-readable medium is a non-transitory medium storing machine-readable instructions that, when executed by a processor of an electronic device, cause the processor to receive operational data of the electronic device, the operational data including a battery measurement result log and an activity log; calculate battery consumption of activities in the activity log based on battery measurement results from the battery measurement result log; compare the battery consumption with usage patterns in a user profile; update the user profile using a time-series model based on the comparison, wherein the inputs to the time-series model include the battery consumption and the activity; and adjust the battery consumption of the electronic device based on the updated user profile.
[0020] In yet another example according to this disclosure, a method is provided. The method includes receiving measurements of a battery of an electronic device; receiving activity of the electronic device; calculating battery consumption of the activity based on the battery measurements; updating a user profile of the electronic device using a time series model based on the calculation, wherein inputs to the time series model include the battery consumption and the activity; and adjusting the battery consumption of the electronic device based on the updated user profile.
[0021] Figure 1 This is a schematic diagram of an electronic device 100 having a battery 102, according to various examples. The electronic device 100 includes a battery 102, a storage device 104, and a processor 110 coupled to the battery 102 and the storage device 104. The electronic device 100 may be, for example, a laptop computer, notebook computer, tablet computer, smartphone, mobile device, or any other suitable device having a battery 102 and capable of capturing data about the operation of the device. The processor 110 may include, for example, a microprocessor, microcomputer, microcontroller, or other suitable controller. For example, the storage device 104 may include a hard disk drive, solid-state drive (SSD), flash memory, random access memory (RAM), or other suitable memory.
[0022] Storage device 104 may include user profile 106 and machine-readable instructions 108. As described above, user profile 106 is relational information describing data (e.g., information about electronic device 100, information about the user of electronic device 100) that influences the determination of usage patterns. In some examples, user profile 106 is implemented as a data structure that stores data that influences calculations of usage patterns. As used herein, a data structure is an object (e.g., a lookup table or database) that stores and cross-references data. See the following references Figure 4 and 5In some examples, the usage patterns of user profile 106 discussed are determined by a neural network. The input to the neural network includes data that can influence usage patterns based on a set of weighted relationships (e.g., bias layers). In another example, see the reference below. Figure 2 The usage patterns discussed can be generated from time series models. Machine-readable instruction 108, when executed by processor 110, can cause processor 110 to perform some or all of the actions attributed to processor 110 herein.
[0023] In various examples, user profile 106 may include information about electronic device 100 (e.g., date, time, owner, components, activities), information about the user of electronic device 100 (e.g., identifier, behavior), or a combination thereof. As described above, a component can be a piece of hardware or an application. The hardware can be, for example, a CPU, GPU, fan, input device, memory device, output device, wireless transmitter, or light. An input device can be, for example, a touchscreen, keyboard, mouse, or card reader. An output device can be, for example, a printer, monitor, or touchscreen. For example, an application can be an operating system, hardware driver, text editor, spreadsheet, or photo editor. Activities of electronic device 100 describe the operation of electronic device 100 using multiple components (e.g., playing a slideshow, editing a document, editing an image, sending a message). In this disclosure, any information about components or activities other than watching a movie, reading a news article, playing a game, using a payment application, and operating electronic device 100 in airplane mode can qualify as information about electronic device 100, which may be excluded in some examples and included in others. User behavior describes the activities or sets of activities a user engages in on a daily basis (e.g., attending meetings daily, watching movies daily, editing photos weekly, attending meetings monthly). In this disclosure, any information about user behavior other than daily work schedules may qualify as information about the user; daily work schedules may be excluded in some examples and included in others.
[0024] In some examples, user profile 106 may be installed on storage device 104 during the manufacture of electronic device 100. In various examples, the owner of electronic device 100 may provide user profile 106. In other examples, user profile 106, including information about electronic device 100, may be installed during manufacture and updated using information about the user or electronic device 100 as processor 110 learns information about electronic device 100 or the user. In yet another example, user profile 106 may be learned by processor 110.
[0025] In some examples, electronic device 100 can be shared among multiple users. For example, electronic device 100 could be a laptop computer shared among students in a school. In another example, electronic device 100 could be a tablet computer shared among medical assistants in a physician's office. In yet another example, electronic device 100 could be a point-of-sale unit in a retail establishment. One of the multiple users can have a user profile 106. The user profile 106 of the multiple users can include a schedule that includes, for example, when the user accesses electronic device 100. In another example, the user profile 106 of the multiple users can include a list of applications installed on electronic device 100, to which the user has access rights. In yet another example, the user profile 106 of the multiple users can include a list of network connections the user is connected to.
[0026] In various examples, machine-readable instruction 108 may cause processor 110 to receive battery measurement results from battery 102. For example, the battery measurement results may indicate maximum charge capacity, state of charge, maximum voltage, state of voltage, consumption rate, error status, or some combination thereof. As described above, maximum charge capacity is the amount of energy stored in a fully charged battery 102. As described above, state of charge is the amount of energy remaining as a percentage of maximum charge capacity at the time of measurement. Maximum voltage is the voltage of a fully charged battery 102. State of voltage is the voltage at the time of measurement. Consumption rate is the amount of battery energy consumed at the time of measurement. Error status is information about the overall health and lifespan of battery 102. For example, if the cells of battery 102 drop below a threshold percentage of maximum capacity, an error status may indicate that the battery should be replaced.
[0027] In some examples, machine-readable instruction 108 may cause processor 110 to calculate the battery consumption of electronic device 100 using battery measurement results. For example, processor 110 may receive a consumption rate and determine that the consumption rate is the battery consumption of electronic device 100. In other examples, processor 110 may use battery measurement results and previous battery measurement results to determine battery consumption. Previous battery measurement results are battery measurement results captured during a time period prior to the current time period. The current time period is the time period associated with the battery measurement results. In some examples, previous battery measurement results may be stored on storage device 104. For example, previous battery measurement results may be stored as data in user profile 106.
[0028] In some examples, previous battery measurements are data points for a time series model. As described above, the time series model utilizes time-based data points to determine patterns in the data. The sampling rate determines when data points are collected. The sampling rate can be at equally spaced time intervals (e.g., every minute, every fifteen minutes, every hour). For example, when the sampling rate is at fifteen-minute intervals, a first time period can be equal to the first fifteen minutes of the operation; a second time period can be equal to the second fifteen minutes of the operation; and the nth time period can be equal to the nth fifteen minutes of the operation. When a time period equals the time interval of the sampling rate, that time period can be considered fixed. In other examples, processor 110 can determine patterns in the data, as described below. Figure 2 The time period discussed, and when equal to a portion of the pattern's duration, can be referred to as variable. For example, the pattern may include a first duration during which data points indicate a steady increase in battery consumption; a second shorter duration during which data points indicate stable battery consumption; and a third and a longest duration during which data points indicate intermittent battery consumption. This time period varies depending on the duration used.
[0029] The method for calculating battery consumption can depend on which battery measurement result is received. For example, processor 110 may receive the state of charge as a battery measurement result. Processor 110 may retrieve a previous state of charge from storage device 104 and subtract the previous state of charge to determine the battery consumption associated with the time period of the battery measurement result. For example, the previous state of charge may be the maximum charge capacity of battery 102. In another example, processor 110 may receive the voltage state and compare that voltage state with a voltage dissipation curve to determine the state of charge of battery 102. A voltage dissipation curve is an example of a time series model that models the consumption rate based on voltage states. A voltage dissipation curve contains a time period from when battery 102 is fully charged (e.g., at maximum voltage) to when battery 102 is fully dissipated (e.g., with a charge that is substantially equal to zero).
[0030] For example, the y-axis of the curve indicates the voltage of battery 102, and the x-axis indicates the percentage of discharged charge capacity. This curve may be provided by, for example, the manufacturer of battery 102, and is installed on storage device 104 as part of user profile 106 during the manufacture of electronic device 100. Processor 110 can determine points on the curve that have voltage values substantially equal to the voltage state. To determine the percentage of discharged capacity, processor 110 can determine the value on the x-axis corresponding to the point on the curve. For example, processor 110 can determine that battery consumption is equal to the value on the x-axis corresponding to the point on the curve. In another example, processor 110 can calculate battery consumption by subtracting the percentage of discharged capacity associated with a previous voltage state from the percentage of discharged capacity associated with the voltage state. In some examples, as battery 102 ages and the maximum voltage decreases, processor 110 can determine a new voltage dissipation curve and update user profile 106 with this new voltage dissipation curve, as referenced below. Figure 2 The subject of discussion.
[0031] In various examples where the battery measurement result is greater than the previous battery measurement result, the resulting battery consumption calculation result can be zero or negative, indicating that battery 102 has been charged or replaced. For example, if the state of charge is greater than the previous state of charge, processor 110 can determine that battery 102 has been charged. In another example, if the maximum charge capacity is greater than the previous maximum charge capacity, processor 110 can determine that battery 102 has been replaced. Processor 110 can update user profile 106 with information associated with charging or replacement (e.g., an increase in charge capacity, the time period during which electronic device 100 has been charged or replaced).
[0032] By considering additional data from previous battery measurements, processor 110 can improve the accuracy of battery consumption calculations. In some examples, processor 110 can use battery consumption to predict the discharge rate of battery 102. In various examples, processor 110 can determine that the discharge rate is equal to the ratio of battery consumption to the time period associated with the battery measurements used to calculate battery consumption. For example, processor 110 can receive a 2% consumption rate and have a sampling rate of 10 minutes. In an example where battery measurements from the previous ten-minute period indicate that battery 102 has maximum charging capacity, processor 110 can determine that battery consumption equals a 2% consumption rate. Processor 110 can determine, for example, that the discharge rate is equal to 2% every 10 minutes.
[0033] In various examples, processor 110 can calculate remaining battery life based on the discharge rate. In an example where battery measurements from the previous ten-minute period indicate that battery 102 has maximum charge capacity, processor 110 can predict remaining battery life by dividing 100% (e.g., indicating maximum charge capacity) by 2% to determine a multiplier of 50. Processor 110 can multiply this multiplier by the time period associated with the battery measurements to obtain total operating time. Continuing with the previous example, where battery 102 has maximum charge in the previous time period, processor 110 multiplies 50 by 10 to determine that electronic device 100 can have a total operating time of 500 minutes at a discharge rate equal to 2% per 10 minutes. In some examples, processor 110 calculates remaining battery life by subtracting the time period associated with the battery measurements used to calculate battery consumption from the total operating time. Continuing with the previous example, where battery 102 has maximum charge capacity in the previous time period, processor 110 subtracts 10 minutes (e.g., the time period with a 2% consumption rate) from 500 minutes to determine 490 minutes of remaining battery life. In another example, processor 110 can calculate the remaining battery life by subtracting the time period associated with the battery measurement result from a previous time period, stopping when the previous time period indicates that battery 102 has maximum charging capacity or has been charged or replaced. By utilizing additional data from previous battery measurements, processor 110 can improve the accuracy of the remaining battery life.
[0034] Figure 2 This is a schematic diagram of an electronic device 100 with a battery 102, based on various examples. (See above for reference.) Figure 1 The discussed electronic device 100 includes a battery 102, a storage device 104, and a processor 110 coupled to the battery 102 and the storage device 104. The storage device 104 may store a user profile 106 and machine-readable instructions 200, 202, 204, 206, and 208. The machine-readable instructions 200, 202, 204, 206, and 208 may be, for example, machine-readable instruction 108. The machine-readable instructions 200, 202, 204, 206, and 208 may be executed by the processor 110.
[0035] Execution of machine-readable instructions 200, 202, 204, 206, and 208 can cause processor 110 to calculate the battery consumption of the first component, update user profile 106 based on the battery consumption, and adjust the battery consumption of electronic device 100 based on the updated user profile 106. Execution of instruction 200 can cause processor 110 to receive battery measurement results from battery 102 and operating data of the first component of electronic device 100. Execution of instruction 202 can cause processor 110 to calculate the battery consumption of the first component based on the battery measurement results. Execution of instruction 204 can cause processor 110 to compare battery consumption with the usage patterns in user profile 106. Execution of instruction 206 can cause processor 110 to update user profile 106 based on a comparison usage time-series model, wherein the inputs to the time-series model include battery measurement results and operating data. Execution of instruction 208 can cause processor 110 to adjust the battery consumption of electronic device 100 based on the updated user profile 106.
[0036] In various examples, processor 110 receives battery measurement results from battery 102 and operational data of the first component. (See above reference.) Figure 1 The battery measurements discussed can be, for example, maximum charge capacity, state of charge, maximum voltage, state of voltage, consumption rate, error state, or a combination thereof. As discussed above, operational data is performance information about component states. Operational data can include, for example, identifiers, measurements, descriptions, error states, or combinations thereof. For example, processor 110 can receive operational data including an identifier for the GPU and GPU utilization (e.g., a measurement). For example, utilization could be a percentage of total battery usage over a time period associated with the operational data.
[0037] In some examples, processor 110 can use battery measurement results to calculate the battery consumption of a component identified by operational data. Continuing with the previous examples, processor 110 can receive a consumption rate as a battery measurement result and receive GPU usage as computational data. Processor 110 can determine that the GPU's battery consumption is, for example, a consumption rate. In another example, processor 110 can determine the GPU's battery consumption by determining a percentage of the consumption rate based on the usage rate. For example, processor 110 can receive a 2% consumption rate, a GPU identifier, and a 28% usage rate. For example, processor 110 can determine that the battery consumption of electronic device 100 is a 2% consumption rate, and the GPU's battery consumption is 28% of 2%, or 0.56%.
[0038] As referenced above Figure 1The previously discussed battery measurement results can be stored on storage device 104. For example, the previous battery measurement results can be stored as data from user profile 106 stored on storage device 104. In other examples, previous operation data can be stored on storage device 104. Previous operation data is operation data captured during a time period preceding the time period associated with the operation data received by processor 110. For example, previous operation data can be stored as data from user profile 106. In various examples, processor 110 can utilize the previous operation data from user profile 106 when determining battery consumption. For example, processor 110 can receive battery measurement results and operation data. Processor 110 can utilize the previous operation data from user profile 106 to determine that an additional application has been executed since the time period preceding the time period associated with the operation data received by processor 110. Processor 110 can calculate the battery consumption of the additional application by utilizing the previous battery measurement results associated with the previous time period and stored as data in user profile 106, as referenced above. Figure 1 The subject of discussion.
[0039] As referenced above Figure 1 In some examples, as discussed, battery consumption can indicate that battery 102 has been recharged or replaced. In various examples, processor 110 can extract usage patterns from user profile 106 to determine the battery consumption of the first component. (See above reference...) Figure 1 The usage patterns discussed refer to battery consumption over multiple time periods. User profiles may include usage patterns of components, activities, user behavior, battery 102, electronic device 100, or some combination thereof. (See above for reference.) Figure 1 The usage patterns discussed can be determined by time series models. In some examples, the input to the time series model can be battery measurements, operational data, or some combination thereof. (See reference above.) Figure 1 The sampling rate discussed determines when data points are collected. In various examples, the sampling rate can differ for battery measurements and operational data. For example, battery measurements may be sampled every few seconds, while operational data may be collected every minute. In another example, operational data for the first component may be sampled at a different rate than operational data for the second component. In other examples, processor 110 can adjust the sampling rate of battery measurements, operational data, or a combination thereof. For example, if a user is running an application, processor 110 can increase the sampling rate of the application's operational data to be equal to the sampling rate of the battery measurements. In another example, if the user closes the application, processor 110 can decrease the sampling rate of both battery measurements and operational data. By decreasing the sampling rate, processor 110 can increase remaining battery life by reducing battery consumption from the activity of electronic device 100 (e.g., sampling data).
[0040] In some examples, the input to a time series model can be calculated battery consumption and the time period associated with that calculated battery consumption. For example, the input to a time series model for a component can be the battery consumption calculated by processor 110 for that component and the corresponding time period. In another example, the input to a time series model for an activity can be the battery consumption calculated by processor 110 for that activity and the corresponding time period. In yet another example, the input to a time series model for user behavior can be the battery consumption calculated by processor 110 for that user behavior and the corresponding time period.
[0041] In various examples, processor 110 can determine usage patterns by plotting battery consumption on the y-axis and the corresponding time periods on the x-axis. In some examples, processor 110 can determine the best-fit curve. For example, as referenced above. Figure 1 The voltage dissipation curve discussed is an example of a best-fit curve modeled based on the voltage state of charge as a function of the battery 102's consumption rate. The voltage dissipation curve can be described as the usage pattern of the battery 102 during the time period from when the battery 102 is fully charged (e.g., at maximum voltage) to when the battery 102 is completely dissipated (e.g., with essentially zero charge). See above reference. Figure 1 In the various examples discussed, as battery 102 ages, the maximum voltage decreases, and processor 110 can determine a new voltage dissipation curve by utilizing a time series model to determine a new best-fit curve for modeling the consumption rate of battery 102.
[0042] In other examples, processor 110 may determine usage patterns that include ranges of battery consumption associated with time periods. For example, processor 110 may determine four battery consumption values for a component that occur during the same two-hour time period over several days: 1%, 10%, 11%, and 10.2%. Processor 110 may determine that the 1% battery consumption is an outlier, and that the pattern of battery consumption over the two-hour time period is, for example, 10-11%. In another example, processor 110 may determine that the 1% battery consumption establishes a separate pattern of usage. For example, 1% battery consumption might occur on Sundays, while 10-11% battery consumption might occur from Monday to Wednesday. Processor 110 may, for example, determine a 1% usage pattern on weekends (e.g., Saturday and Sunday) and a 10-11% usage pattern on weekdays (e.g., Monday to Friday).
[0043] In various examples, to determine a component's battery consumption based on its usage patterns, processor 110 can compare the time period of the usage pattern with, for example, time periods of battery measurements, operational data, or some combination thereof. The time period of the usage pattern is a period during which the pattern remains consistent. Consistency can indicate that the pattern's values remain substantially the same, that the pattern's values increase or decrease at substantially the same rate, or that the pattern exhibits instability in other cases.
[0044] Temporarily forward Figure 11 Based on various examples, a timing diagram 1100 depicts the usage patterns of a user profile. For example, a user profile could be user profile 106. The x-axis indicates time periods including clock times within a day. The y-axis indicates the percentage of battery consumption. Usage pattern 1100 includes time periods 1102, 1104, 1106, 1108, and 1110. Time periods 1102, 1104, 1106, 1108, and 1110 correspond to the duration for which the usage pattern 1100 remains consistent. For example, the battery percentage remained essentially the same in the first time period 1102 from midnight to 6:00 AM; increased at a substantially constant rate in the second time period 1104 from 6:00 AM to 11:00 AM; remained essentially the same in the third time period 1106 from 11:00 AM to 1:00 PM; decreased to a lower and essentially the same value in the fourth time period 1108 from 1:00 PM to 6:00 PM; and was unpredictable in the fifth time period 1110 from 6:00 PM to midnight.
[0045] Now go to Figure 2 The processor 110 can determine the time period for the battery measurement results and operating data of the component, for example, from 3:00 PM to 3:10 PM. Using the timing diagram 1100, the processor 110 can determine that the battery consumption of the first component is equal to the battery consumption of mode 1100 during the fourth time period 1108.
[0046] In some examples, processor 110 may extract usage patterns from user profile 106 for comparison with battery consumption. Processor 110 may determine whether the calculated battery consumption conforms to the usage pattern. For example, when the usage pattern is a best-fit curve, processor 110 may determine whether the battery consumption over the equivalent time period is substantially equal to the value on the best-fit curve. In another example, when the usage pattern includes a range of values for a time period, processor 110 may determine whether the battery consumption over the equivalent time period falls within that range.
[0047] In various examples, processor 110 can update user profile 106 based on a comparison of usage patterns and battery consumption. For example, the comparison could reveal individual usage patterns in progress, such as those discussed in the example above, where 1% battery consumption occurs on Sunday, while 10-11% battery consumption occurs from Monday to Wednesday. As mentioned above, processor 110 can utilize time-series models to update user profiles. See the following reference... Figure 4 and 5 In some examples, as discussed, processor 110 may utilize machine learning techniques such as long short-term memory (or other time series modeling techniques) to update the usage patterns of user profile 106. For example, inputs to the time series model may include battery consumption, battery measurements, operational data, or some combination thereof.
[0048] In some examples, processor 110 can adjust the battery consumption of electronic device 100 based on an updated user profile 106. For example, processor 110 can determine a new usage pattern based on the updated user profile 106. In various examples, processor 110 can calculate remaining battery life based on this new usage pattern. Processor 110 can determine where battery consumption conforms to the new usage pattern. For example, the new usage pattern may indicate a first time period from midnight to 8:00 AM with little to no battery consumption; a second time period from 8:00 AM to 10:00 AM with low but stable battery consumption; a third time period from 10:00 AM to noon with high battery consumption; a fourth time period from noon to 1:00 PM with little to no battery consumption; a fifth time period from 1:00 PM to 6:00 PM with low but stable battery consumption; and a sixth time period from 6:00 PM to midnight with little to no battery consumption. Processor 110 can determine that battery consumption occurs during the second time period of the new usage pattern. Processor 110 can estimate remaining battery life based on the new usage pattern. For example, processor 110 can utilize a step function. Processor 110 can calculate the discharge rate for each time period and sum the results to obtain the total battery discharge based on the usage pattern. Processor 110 can subtract the total discharge from the state of charge associated with the time period of battery depletion to determine in which time period of the new usage pattern the battery 102 is completely depleted.
[0049] In various examples, processor 110 can determine that the remaining battery life is sufficient to meet the needs of the new usage pattern. In other examples, processor 110 can utilize the updated user profile 106 to identify components, activities, user behaviors, or some combination thereof that are not used during the remaining battery life. Processor 110 can adjust the power supply to components, the power supply to one or more components associated with activities or user behaviors, or some combination thereof. Adjusting the power supply to one or more components regulates the battery consumption of electronic device 100. Continuing with the previous examples, processor 110 can determine that the card reader is not used during the third to sixth time periods and reduce the power supply to the card reader. In some examples, processor 110 can prompt the user to allow processor 110 to adjust the power supply to the components before adjusting the power supply to the components. In another example, processor 110 can prompt the user to select which actions processor 110 can perform automatically without requesting user permission. By utilizing user profile 106, processor 110 can improve the accuracy of remaining battery life and regulate the battery consumption of electronic device 100 to extend remaining battery life.
[0050] In some examples, such as when the remaining battery life drops below a threshold, processor 110 may prompt the user to recharge electronic device 100. For example, this threshold may be set by the user using the power management system of electronic device 100. In various examples, processor 110 may prompt the user to change the settings of the power management system to adjust the threshold. In other examples, processor 110 may determine that the remaining battery life is insufficient to ensure that operation associated with components, activities, or user behavior related to the updated user profile 106 is not interrupted. Processor 110 may calculate a recommended time period to recharge battery 102 so that operation associated with usage patterns is not interrupted. In yet another example, processor 110 may calculate predicted battery consumption for components, activities, or user behavior based on information from a calendar application. Processor 110 may determine that the remaining battery life is insufficient to ensure operation during the predicted battery consumption period. Processor 110 may prompt the user to recharge battery 102.
[0051] Figure 3 It is a lookup table 300 based on the user profiles of various example electronic devices 100. (See above for reference.) Figure 1As discussed, multiple users can share electronic device 100. For example, the user profiles in lookup table 300 could be user profile 106. The user profile lookup table 300 could be part of a data structure or neural network stored in memory, which is part of the main memory or long-term memory of electronic device 100, such as SSD, RAM, or flash memory. For example, the user profile lookup table 300 could be as follows (reference 106) Figure 4 and 5 This is part of the neural network being discussed. User profiles can be stored, for example, on storage device 104. The user profile lookup table 300 can include information about the electronic device 100 and the user, as referenced above. Figure 1 The subject of discussion.
[0052] In the user profile lookup table 300, users are associated with the utilization and activities of components of electronic device 100, and have behaviors. Each component, activity, and user behavior is associated with battery consumption. For example, in lookup table 300, the first user 0001 is associated with the utilization of the display with 2% battery consumption, the activity of "slideshow" with 1% battery consumption, and the user behavior of "work" with 75% battery consumption; the second user 0002 is associated with the utilization of the GPU with 30% battery consumption, the activity of "watching movies" with 50% battery consumption, and the user behavior of "home" with 25% battery consumption; and the last user 9999 is associated with the utilization of the photo editing application with 6% battery consumption, the activity of "editing photos" with 10% battery consumption, and the user behavior of "work" with 80% battery consumption.
[0053] In some examples, lookup table 300 may include a list of components, a list of activities, a list of user behaviors, or some combination thereof. (See above for reference.) Figure 1 The activities discussed describe operations utilizing multiple components. In various examples, the battery consumption of components can be associated with the activity. In some examples, the battery consumption of an activity can be equal to the sum of the battery consumption of each component associated with that activity. (See above references.) Figure 1 The user behavior discussed here describes the activities or set of activities that a user engages in on a daily basis. In various examples, the battery consumption of an activity can be associated with that user behavior. In some examples, the battery consumption of a user behavior can be equal to the sum of the battery consumption of each activity associated with that user behavior.
[0054] In other examples, lookup table 300 can include usage patterns for each component, activity, or behavior. (See reference above.) Figure 2The usage patterns discussed here refer to battery consumption over multiple time periods. In various examples, the battery consumption of components, activities, or behaviors can be correlated with the time periods of the usage pattern. (See reference above.) Figure 2 The time period in which the usage pattern is discussed is the period during which the pattern remains largely constant.
[0055] In various examples, processor 110 may receive a user's identifier. Processor 110 may compare this identifier with a list of users in lookup table 300 to determine which user is associated with the identifier. In some examples, if the identifier is not in the user list, processor 110 may create a user profile for that identifier. In other examples, the processor may base its profile on the information referenced above. Figure 1 The user's identity is determined by the timetable, the applications accessed, or the network connection used. In various examples, when determining battery consumption, as referenced above... Figure 1 and 2 As discussed, processor 110 can utilize data associated with the user profile in lookup table 300. In some examples, processor 110 can update lookup table 300 based on a comparison of battery consumption with usage patterns associated with the user. For example, processor 110 can determine new user activity and store that new activity and associated information in lookup table 300. In other examples, processor 110 can use the updated lookup table 300 to determine components, activities, or behaviors that can be adjusted to increase remaining battery life.
[0056] Figure 4 This is a conceptual diagram of a neural network 400 for determining usage patterns of a user profile of an electronic device 100, based on various examples. The user profile may be, for example, user profile 106. The usage pattern may be, for example, usage pattern 1100. The neural network 400 includes an input layer 402, a hidden layer 412, and an output layer 422. The input layer 402 may include multiple inputs 404, 406, and 408. The multiple inputs 404, 406, and 408 may include, for example, information about the electronic device 100 (e.g., date and time 408), battery measurement results 404, and operating data 406. The hidden layer 412 may include weighted relationships describing the inputs 404, 406, and 408 of the input layer 402. The output layer 422 may include multiple outputs 416, 418, and 420. The multiple outputs 416, 418, and 420 may include the usage patterns of the user profile. For example, the first usage mode 416, "Usage Mode A," can indicate high usage; the second usage mode 418, "Usage Mode B," can indicate normal usage; and the third usage mode 420, "Usage Mode C," can indicate low usage. Usage modes can, for example, be specific to the battery 102, components, activities, or user behavior.
[0057] As referenced above Figure 1 In some examples, the usage pattern of user profile 106 is determined by a neural network using machine-readable instructions that, when executed, cause processor 110 to determine weights describing the relationships between inputs 404, 406, and 408 of input layer 402. The values of these weights are determined by the dataset and can change based on new datasets. The values of the weights can be computed based on a single input to input layer 402 or a selection of inputs to input layer 402. The number of weights in hidden layer 412 is based on the number of inputs to input layer 402, the number of layers within hidden layer 412, and the expected number of outputs from output layer 422 (see reference below). Figure 5 Discussion of hidden layer 412).
[0058] In various examples, output layer 422 is a usage pattern. This usage pattern can be directed to, for example, a component, activity, behavior, battery 102, electronic device 100, or some combination thereof. Processor 110 can utilize the usage pattern to compare it with the battery consumption of the component, activity, behavior, battery 102, or electronic device 100, as referenced above. Figure 1 and 2 The processor 110 can calculate remaining battery life using usage patterns, as discussed above. Figure 1 and 2 As discussed above, when regulating battery consumption, processor 110 can utilize usage patterns to determine during which periods one or more components are not used, as referenced above. Figure 2 The subject of discussion.
[0059] Figure 5 This is a conceptual diagram of a neural network 400 used to determine the usage patterns of a user profile for an electronic device 100, based on various examples. (See above reference.) Figure 4 The neural network 400 discussed includes an input layer 402, a hidden layer 412, and an output layer 422. The hidden layer 412 may include multiple layers. For example, the hidden layer 412 may include a first layer comprising weighted relations 502, 504, and 506. Weighted relations 502, 504, and 506 describe the relationships between the inputs of the input layer 402. The output of the first layer can become the input of a second layer comprising weighted relations 508, 510, and 512. The values of the weighted relations in the second layer can be computed based on an output of the first layer or a selection of the outputs of the first layer. In this way, the computation of the hidden layer 412 can be refined until the number of outputs required to achieve the output layer 422 is reached.
[0060] In some examples, the output of hidden layer 412 can be an input to the same layer or the previous layer. Path 514 inputs the output of weighted relation 508 into weighted relation 502. Path 516 inputs the output of weighted relation 506 into weighted relation 506. Path 518 inputs the output of weighted relation 512 into weighted relation 510. When the output becomes an input for the same layer or a previous layer, this output can be referred to as a backpropagation input. Path 514 carries the output of weighted relation 508 as a backpropagation input to weighted relation 502 of the previous layer. Path 516 carries the output of weighted relation 506 as a backpropagation input to weighted relation 506 of the same layer. Path 518 carries the output of weighted relation 512 as a backpropagation input to weighted relation 510 of the same layer. In various examples, weighted relations 502, 504, and 506 describe the relationship between the inputs to input layer 402 and any backpropagation inputs to hidden layer 412. In other examples, weighted relations 508, 510, and 512 describe the relationship between the output of the first layer of hidden layer 412 and any backpropagation inputs to the second layer of hidden layer 412.
[0061] In various examples, neural network 400 is a Long Short-Term Model (LTSM) (or other time series model). The weighting relation of hidden layer 412 may include an input gate, an output gate, or both. A gate can use the input to the weighting relation to determine whether to update the weighting relation. A gate can use the input to the weighting relation to determine whether to access the data associated with the weighting relation. For example, an input gate can control whether to update the weighting relation, and an output gate can control whether to access the data associated with the weighting relation. Gates may have relevant weights used in control decisions. For example, if the weight associated with a gate is zero, access to the data in the weighting relation can be denied. In another example, the weighting relation may not be updated.
[0062] In some examples, LSTM is used to predict usage patterns based on simulated input. For example, processor 110 can access a user's calendar to determine planned future activities or behaviors. Processor 110 can utilize LSTM to determine usage patterns associated with calendar activities or behaviors. LSTM can use data stored in weighted relationships in hidden layer 412 to determine usage patterns as, for example, the output of output layer 422. In various examples, processor 110 can calculate battery consumption for usage patterns. Based on the battery consumption associated with usage patterns, processor 110 can prompt the display to show recommended actions to the user, as referenced above. Figure 3The above is discussed. In other examples, processor 110 may utilize usage patterns to determine one or more components that will not be used during the predicted activity period. Processor 110 may adjust the power supply to one or more components to improve remaining battery life. By increasing remaining battery life, processor 110 can prevent interruptions in operation during the predicted activity period.
[0063] Figure 6 This is a schematic diagram of a system 600 for managing battery consumption of an electronic device. System 600 includes a computer-readable medium 602 and a processor 614 coupled to the computer-readable medium 602. For example, system 600 may be an electronic device 100. The computer-readable medium 602 may be a storage device, such as a hard disk drive, solid-state drive (SSD), flash memory, random access memory (RAM), or other suitable memory. The computer-readable medium 602 may be, for example, storage device 104. The processor 614 may be, for example, a microprocessor, microcomputer, microcontroller, or other suitable controller. The processor 614 may be, for example, processor 110. The computer-readable medium 602 may store machine-readable instructions that, when executed, cause the processor 614 to perform some or all of the actions attributed to the processor 614 herein.
[0064] Computer-readable medium 602 includes machine-readable instructions 604, 606, 608, 610, and 612. Machine-readable instructions 604, 606, 608, 610, and 612 may be, for example, machine-readable instruction 108. Machine-readable instructions 604, 606, 608, 610, and 612 may be machine-readable instructions for execution by processor 614. Execution of machine-readable instructions 604, 606, 608, 610, and 612 may cause processor 614 to calculate active battery consumption, update a user profile based on battery consumption, and adjust the battery consumption of the electronic device based on the updated user profile. Execution of machine-readable instruction 604 may cause processor 614 to receive operational data of the electronic device, including a battery measurement result log and an activity log. Execution of machine-readable instruction 606 may cause processor 614 to calculate the active battery consumption of the activity log based on the battery measurement results in the battery measurement result log. Execution of machine-readable instruction 608 may cause processor 614 to compare battery consumption with the usage patterns in the user profile. Execution of machine-readable instruction 610 enables processor 614 to update the user profile based on a comparison using a time-series model, wherein the inputs to the time-series model include battery consumption and activity. Execution of machine-readable instruction 612 enables processor 614 to adjust the battery consumption of the electronic device based on the updated user profile.
[0065] The battery measurement results log is a time series consisting of battery measurement results captured over a continuous period of time. The activity log is a time series consisting of activities captured from operational data over a continuous period of time. (See above for reference.) Figure 2 The time period discussed can be determined by the sampling rate. In various examples, processor 110 can determine the time period of activity and acquire battery measurements from the same time period to calculate battery consumption. Processor 110 can calculate battery consumption as referenced above. Figure 1 and 2 As discussed, processor 110 can compare battery consumption with usage patterns in a user profile. The user profile can be, for example, user profile 106. The usage pattern can be, for example, usage pattern 1100. Based on this comparison, processor 110 can update user profile 106 using battery consumption and activity as inputs. For example, battery consumption can be input 404, and activity can be another input to input layer 402 of user profile 400.
[0066] Figure 7 This is a schematic diagram of a system 600 used to manage battery consumption in electronic devices. (See above for reference.) Figure 6 The system 600 discussed includes a computer-readable medium 602 and a processor 614 coupled to the computer-readable medium 602. The computer-readable medium 602 includes machine-readable instructions 700, 702, 704, 706, 708, and 710. The machine-readable instructions 700, 702, 704, 706, 708, and 710 can be, for example, machine-readable instruction 108. The machine-readable instructions 700, 702, 704, 706, 708, and 710 can be machine-readable instructions for execution by the processor 614. Execution of the machine-readable instructions 700, 702, 704, 706, 708, and 710 can cause the processor 614 to calculate the battery consumption of activities in the activity log, determine the reason why the battery consumption of the activity exceeds a threshold, and adjust the battery consumption of the electronic device based on the remaining battery life.
[0067] The execution of machine-readable instruction 700 enables processor 614 to update user behavior in the user profile based on the activity log. The execution of machine-readable instruction 702 enables processor 614 to determine if the battery consumption of an activity exceeds a threshold. The execution of machine-readable instruction 704 enables processor 614 to determine the reason why the battery consumption in the activity log exceeds the threshold. The execution of machine-readable instruction 706 enables processor 614 to calculate remaining battery life based on the updated user profile. The execution of machine-readable instruction 708 enables processor 614 to adjust the battery consumption of the electronic device based on the remaining battery life. The execution of machine-readable instruction 710 enables processor 614 to recommend charging the battery based on the calculated remaining battery life.
[0068] As referenced above Figure 1 The user behavior discussed describes the activities or set of activities a user performs on a daily basis. In some examples, processor 614 can determine that the user behavior includes activities from the activity log. For example, processor 614 can update the usage pattern associated with the user behavior using battery measurements and operational data associated with the activity. The usage pattern could be, for example, usage pattern 1100. In another example, processor 614 can determine that the activity log defines a new user behavior. Processor 614 can create a new behavior in the user profile based on the activity log. The user profile could be, for example, user profile 106. As described above, processor 614 can calculate the remaining battery life of the updated user profile and adjust the battery consumption of the electronic device based on the remaining battery life. Processor 614 can cause the display to show the user recommendations for battery charging based on the remaining battery life, as referenced above. Figure 2 The subject of discussion.
[0069] In various examples, processor 614 can determine that the battery consumption of an activity exceeds a threshold. For example, processor 614 can compare the battery consumption with the usage pattern of the activity to determine that the battery consumption exceeds the threshold. As described above, the activity describes the operation of an electronic device 100 utilizing multiple components. In one example, processor 614 can compare the most recent battery measurement of a component with the component's usage pattern to determine whether the component is consuming more energy than the usage pattern indicates. Processor 614 can make comparisons across all components involved in the activity. In some examples, processor 614 can increase the sampling rate associated with the component's operational data to monitor the performance of one or more components associated with the activity. In other examples, based on the comparison of the component's battery measurement with the component's usage pattern, processor 614 can cause a display to show the user a recommendation to take corrective action. In yet another example, processor 614 can calculate the remaining battery life based on the increased battery consumption. Processor 614 can, for example, cause the display to show the user a warning that abnormal activity may cause the battery to dissipate faster and provide the remaining battery life.
[0070] Figure 8This is a flowchart of a method 800 for managing battery consumption of an electronic device, based on various examples. Method 800 may be executed, for example, by processors 110 and 614. The electronic device may be, for example, electronic device 100. Method 800 includes receiving battery measurement results of the electronic device's battery (802). Method 800 also includes receiving the activity of the electronic device (804). Additionally, method 800 includes calculating the battery consumption of the activity based on the battery measurement results (806). Furthermore, method 800 includes updating the user profile of the electronic device using a time series model based on the calculation, wherein the inputs to the time series model include battery consumption and activity (808). Method 800 also includes adjusting the battery consumption of the electronic device based on the updated user profile (810).
[0071] As referenced above Figure 1 The input to the user profile discussed can include any data that affects the usage patterns of the user profile. The user profile could be, for example, user profile 106. The usage patterns could be, for example, usage pattern 1100. (See above for reference.) Figure 2 In some examples, the inputs to the time series model may include battery measurements and operational data. Battery consumption is calculated based on the battery measurements, and activity is determined based on the operational data. In various examples, battery consumption and activity may also be inputs to the time series model. For example, battery consumption and activity may be inputs in addition to battery measurements and operational data. In another example, battery consumption and activity may be the sole input to the time series model.
[0072] Figure 9 This is a flowchart of a method 900 for managing battery consumption of an electronic device, based on various examples. Method 900 may be executed, for example, by processors 110 and 614. The electronic device may be, for example, electronic device 100. Method 900 includes identifying components on a component list that are not actively used (902). Method 900 also includes reducing power to the unused components (904). Additionally, the method includes calculating the remaining battery life of the electronic device based on a user profile and battery measurements (906). Furthermore, method 900 includes adjusting battery consumption based on the calculation of the remaining battery life (908). Method 900 also includes requesting user permission before adjusting the battery consumption of the electronic device (910).
[0073] As described above, the processor can identify unused components. The processor can then adjust the power supply to these unused components. After adjustment, the processor can calculate the remaining battery life based on a user profile and battery measurements. The user profile can be, for example, user profile 106. The processor can determine a second adjustment based on the remaining battery life. As discussed above, the processor can cause the display to show the user a request for permission to perform this second adjustment.
[0074] Figure 10 A schematic diagram of a system 1000 according to various examples is depicted. System 1000 includes an electronic device 1002 and a processing environment 1006 coupled to the electronic device 1002. The electronic device 1004 in the electronic device 1002 can be, for example, a laptop computer, notebook computer, tablet computer, smartphone, mobile device, or some other device with a battery. The electronic device 1004 can be, for example, an electronic device 100. The processing environment 1006 can be an electronic device (e.g., a server, central server, edge server, or some other suitable computing device) or a network of electronic devices (e.g., a local area network (LAN), wide area network (WAN), virtual private network (VPN), client / server network, the Internet (e.g., the cloud), or any other suitable system for sharing processing and storage resources).
[0075] Processing environment 1006 includes a network interface 1008, a processor 1010 coupled to the network interface 1008, and a storage device 1012. The processor 1010 may be, for example, a microprocessor, a microcomputer, a microcontroller, or other suitable processor or controller. In some examples, such as when the storage device 1012 is a remotely managed storage device (e.g., an enterprise cloud, public cloud, data center, server, or some other suitable storage device), the processor 1010 may be communicatively coupled to the storage device 1012 via path 1020, which couples the network interface 1008 and the storage device 1012. In other examples, such as when the processor 1010 and the storage device 1012 are located on a computing device, the storage device 1012 may be coupled to the processor 1010 via path 1022. The storage device 1014 of the storage device 1012 may be, for example, a hard disk drive, a solid-state drive (SSD), flash memory, random access memory (RAM), or other suitable memory. Storage device 1014 may store machine-readable instructions 1016, which, when executed, enable processor 1010 to perform some or all of the actions attributed to processor 1010 herein. Machine-readable instructions 1016 may be, for example, machine-readable instructions 108.
[0076] In various examples, electronic device 1004 may have an identifier, while another electronic device in electronic device 1002 may have a different identifier. In some examples, electronic device 1004 may utilize an operating system (e.g., WINDOWS®, ANDROID®, MAC OS®), while another electronic device in electronic device 1002 may utilize a different operating system. In other examples, electronic device 1004 may belong to one enterprise, while another electronic device in electronic device 1002 may belong to another enterprise. In some examples, electronic device 1002 is owned by one enterprise.
[0077] In some examples, electronic device 1002 and system 1000 belong to the same enterprise. In other examples, the enterprise that owns the application installed on electronic device 1002 is also the enterprise that owns system 1000. In various examples, the enterprise to which electronic device 1002 belongs has granted access rights to electronic device 1002 to the enterprise that owns processing environment 1006. In other examples, the enterprise that owns processing environment 1006 has granted access rights to storage device 1014 to the enterprise to which electronic device 1002 belongs. The enterprise to which electronic device 1002 belongs may grant access rights to the data of electronic device 1002 stored on storage device 1014 to the enterprise that owns processing environment 1006. For example, the enterprise to which electronic device 1002 belongs may have the ability to upload data for storage on storage device 1014. Processing environment 1006 can then access the data to identify data of interest (e.g., operational data, user profiles) and analyze the data to determine the regulation of the battery of electronic device 1004 associated with the data. In some examples, the processing environment 1006 has been granted prior access permissions and can automatically access data on a scheduled basis (e.g., hourly, daily, weekly, monthly).
[0078] In various examples, electronic device 1004 includes a user profile and collects battery measurement results and operational data. Electronic device 1004 can store the user profile, battery measurement results, and operational data on itself. In some examples, electronic device 1004 can send the user profile, battery measurement results, and operational data when processor 1010 sends a request for information. In other examples, electronic device 1004 can store the user profile, battery measurement results, and operational data on storage device 1014. In various examples, processor 1010 can access the data on storage device 104.
[0079] In some examples, processor 1010 may calculate the battery consumption of a first component of electronic device 1004 based on battery measurements. In other examples, processor 1010 may compare the battery consumption with usage patterns in a user profile of electronic device 1004. In various examples, processor 1010 may have permission to update the user profile of electronic device 1004 based on the comparison. In still other examples, processor 1010 may have permission to adjust the battery consumption of electronic device 1004 based on the updated user profile. In various examples, processor 1010 may send recommendations to electronic device 1004 to adjust battery consumption. These recommendations may include components, activities, user behaviors, or combinations thereof.
[0080] The foregoing discussion is intended to illustrate the principles and various examples of this disclosure. Once the foregoing disclosure is fully understood, many variations and modifications will be apparent to those skilled in the art. The following claims are intended to be construed as covering all such variations and modifications.
[0081] In the accompanying drawings, some features and components disclosed herein may be shown at an enlarged scale or in a slightly schematic form, and for clarity and simplicity, certain details of some elements may not be shown. In some drawings, components or aspects of components may be omitted for the purpose of improving clarity and simplicity.
[0082] In the foregoing discussion and claims, the terms “comprising” and “including” are used in an open-ended manner and should therefore be interpreted as meaning “including, but not limited to…”. Similarly, the terms “coupled” or “couples” are intended to cover both indirect and direct connections broadly. Thus, if a first device is coupled to a second device, the connection can be either a direct connection or an indirect connection via other devices, components, and connections. As used herein, including in the claims, the word “or” is used in an inclusive manner. For example, “A or B” means any one of: “A” alone, “B” alone, or both “A” and “B”. Additionally, when used herein including the claims, the terms “generally” or “substantially” refer to a range of plus or minus 10% of the stated value.
Claims
1. An electronic device, comprising: a battery; a storage device storing a user profile, the user profile comprising usage patterns of the battery; and a processor coupled to the battery and the storage device, the processor to: receive battery measurements of the battery and operational data of a first component of the electronic device; calculate battery consumption of the first component based on the battery measurements; compare the battery consumption to the usage patterns; based on the comparison, update the user profile using a time series model, wherein inputs to the time series model comprise the battery measurements and the operational data; and regulate battery consumption of the electronic device based on the updated user profile.
2. The electronic device of claim 1, wherein, the user profile comprises user behaviors, usage patterns of the battery for the user behaviors, a list of components of the electronic device, usage patterns of the battery for the components of the list of components, or a combination thereof.
3. The electronic device of claim 2, wherein, the usage patterns of the battery for the user behaviors comprise battery consumption for the user behaviors.
4. The electronic device of claim 2, wherein, the usage patterns of the battery for the components of the list of components comprise battery consumption of the components. 5.The electronic device of claim 1, wherein, the battery measurements comprise maximum charge capacity, state of charge, maximum voltage, voltage state, rate of consumption, error state, or a combination thereof.
6. A non-transitory computer-readable medium storing machine-readable instructions that, when executed by a processor of an electronic device, cause the processor to: receive operational data of an electronic device, the operational data comprising a battery measurement log and an activity log; calculate battery consumption of an activity of the activity log based on battery measurements of the battery measurement log; compare the battery consumption to usage patterns of a user profile; based on the comparison, update the user profile using a time series model, wherein inputs to the time series model comprise the battery consumption and the activity; and regulate battery consumption of the electronic device based on the updated user profile.
7. The computer-readable medium of claim 6, wherein, the machine-readable instructions cause the processor to update user behaviors of the user profile based on the activity log.
8. The computer readable medium of claim 6, wherein, the machine-readable instructions cause the processor to: determine that the battery consumption of the activity is above a threshold; and determine a reason why the battery consumption of the activity is above the threshold.
9. The computer-readable medium of claim 6, wherein, the machine-readable instructions cause the processor to: calculate remaining battery life based on the updated user profile; and regulate battery consumption of the electronic device based on the remaining battery life.
10. The computer readable medium of claim 9, wherein, the machine-readable instructions cause the processor to recommend charging the battery based on the calculation of the remaining battery life.
11. A method for managing battery consumption of an electronic device, comprising: receiving battery measurements of a battery of an electronic device; receiving an activity of the electronic device; calculating the battery consumption of the activity based on the battery measurements; based on the calculation, updating a user profile of the electronic device using a time series model, wherein inputs to the time series model comprise the battery consumption and the activity; and regulating battery consumption of the electronic device based on the updated user profile.
12. The method of claim 11, wherein, The user profile includes the activity, a battery consumption of the activity, a user behavior, a battery consumption of the user behavior, a list of components of the electronic device, a battery consumption of a component in the list of components of the electronic device, or a combination thereof.
13. The method of claim 12, comprising adjusting the battery consumption of the electronic device based on the user profile by: determining a component on the list of components that is not utilized by the activity; and reducing power to the component that is not utilized by the activity.
14. The method of claim 11, comprising adjusting the battery consumption of the electronic device based on the user profile by: calculating a remaining battery life of the electronic device based on the user profile and the battery measurements; and adjusting the battery consumption based on the calculation of the remaining battery life.
15. The method of claim 11, comprising requesting user permission prior to adjusting the battery consumption of the electronic device.
Citation Information
Patent Citations
Adaptive battery life extension
CN106415296A
Automated user profile generation and authentication
CN110419041A