Anomaly detection in energy storage systems

The integration of machine learning for anomaly detection and optimized energy dispatch patterns addresses anomalies in energy storage systems, enhancing detection accuracy and system efficiency.

JP2026506494APending Publication Date: 2026-02-25FLUENCE ENERGY LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025543363
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-02-02
Filing Date
2023-08-01
Publication Date
2026-02-25

AI Technical Summary

Technical Problem

Energy storage systems face anomalies such as temperature increases and excessive charging or discharging, which can lead to degradation and outages if not detected, necessitating improved anomaly detection and optimization of energy dispatch.

Method used

Implementing systems and methods for anomaly detection using machine learning models to predict battery conditions and adjust usage based on detected anomalies, along with optimizing energy dispatch patterns through forecasting and optimization techniques to maximize revenue and minimize degradation.

Benefits of technology

Enhances the efficiency and accuracy of anomaly detection, reducing degradation and optimizing energy dispatch to improve system performance and profitability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026506494000001_ABST
    Figure 2026506494000001_ABST
Patent Text Reader

Abstract

In one embodiment, the computer-readable medium includes instructions for causing a processor to receive usage data for batteries disposed within one or more energy storage units during a time period, input the usage data into a machine learning model, generate a predicted temperature of the battery at the end of the time period based on processing the usage data by the machine learning model, receive a measured temperature of the battery at the end of the time period from a temperature sensor of the battery, determine a difference between the predicted temperature and the measured temperature, transmit an indication of the state of the battery based on the determined difference, and configure usage of the battery based on the state of the battery.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001]

[0001] The present disclosure relates to the field of energy storage. More particularly, the present disclosure relates to optimizing energy dispatch and anomaly detection in energy storage systems. [Background technology]

[0002]

[0002] An energy storage system can receive, store, and output energy. An energy storage system can be connected to, for example, a power grid, a power plant, a building, or any other type of facility, and can receive, store, and later supply energy. An operator of an energy storage system can configure how the energy storage system can operate.

[0003]

[0003] Various anomalies may occur during the operation of an energy storage system. Such anomalies may include, for example, an increase in temperature, excessive charging or discharging of the energy storage unit, and / or other abnormal changes in various operating parameters of the energy storage system. If unnoticed, an anomaly in the energy storage system may cause degradation of the energy storage system or even an outage of at least a portion of the energy storage system.

[0004]

[0004] Therefore, as described in more detail herein, there is a need for systems and methods aimed at increasing the efficiency, range, and / or accuracy of anomaly detection in energy storage systems, for example, by analyzing one or more of various parameters associated with the energy storage system to take into account behavior of the energy storage system that may be considered normal. Summary of the Invention

[0005]

[0005] Disclosed embodiments may relate to energy storage systems. Embodiments consistent with the present disclosure provide systems, methods, and apparatus associated with energy storage.

[0006]

[0006] Disclosed embodiments may include systems, methods, apparatus, and non-transitory computer-readable media for optimizing energy dispatch. For example, disclosed embodiments may include: generating, by a computing device, a plurality of energy dispatch patterns for utilizing one or more energy storage units; generating a recommended energy dispatch pattern based on data determined for each energy dispatch pattern of the plurality of energy dispatch patterns; and coordinating one or more energy storage units to dispatch electricity according to the recommended energy dispatch pattern. Some of these embodiments may include: for each energy dispatch pattern of the plurality of energy dispatch patterns, determining an estimate of the energy dispatch pattern based on expected energy market data; determining one or more state variables of the one or more energy storage units based on environmental data for the one or more energy storage units; determining an estimated marginal degradation of the one or more energy storage units based on the one or more state variables; determining an estimated cost of the energy dispatch pattern based on the estimated marginal degradation; and calculating an estimated net value of the energy dispatch pattern based on the estimate and the estimated cost. Some of these embodiments may include generating a recommended energy dispatch pattern based on an estimated net value for a plurality of energy dispatch patterns.

[0007] Disclosed embodiments may include systems, methods, apparatus, and non-transitory computer-readable media for anomaly detection in an energy storage system. Some of these embodiments may include receiving, by a computing device, usage data for batteries disposed in one or more energy storage units during a time window, inputting the usage data into a machine learning model, generating a predicted temperature of the battery at the end of the time window based on processing the usage data by the machine learning model, receiving a measured temperature of the battery at the end of the time window from a temperature sensor of the battery, determining a difference between the predicted temperature and the measured temperature, transmitting an indication of the battery's condition based on the determined difference, and configuring battery usage based on the battery's condition. Some of these embodiments may include transmitting an indication that a battery anomaly has been detected based on the difference meeting a threshold, and adjusting battery usage based on the detected battery anomaly.

[0008]

[0008] Consistent with the disclosed embodiments, a non-transitory computer-readable medium may store instructions that, when executed by at least one processor, may cause the at least one processor to perform any of the processes described herein.

[0009]

[0009] The foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the scope of the claims.

[0010]

[0010] The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate various disclosed embodiments. [Brief explanation of the drawings]

[0011] [Figure 1] 1 illustrates an example system for managing an energy storage system, consistent with some embodiments of the present disclosure. [Figure 2]1 illustrates an exemplary computing device consistent with certain embodiments of the present disclosure. [Figure 3] 1 illustrates an exemplary energy storage unit consistent with certain embodiments of the present disclosure. [Figure 4] 1 illustrates a flowchart of an example method for optimizing energy dispatch, consistent with certain embodiments of the present disclosure. [Figure 5] 1 illustrates an example user interface associated with optimizing energy dispatch, consistent with certain embodiments of the present disclosure. [Figure 6] 1 illustrates a flowchart of an example method for anomaly detection in an energy storage system, consistent with certain embodiments of the present disclosure. [Figure 7] 1 illustrates an example user interface associated with anomaly detection in an energy storage system, consistent with certain embodiments of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0012]

[0018] The following detailed description refers to the accompanying drawings. Wherever possible, the same reference numbers are used in the drawings and the following description to refer to the same or similar parts. While several exemplary embodiments are described herein, modifications, adaptations, and other implementations are possible. For example, substitutions, additions, or modifications may be made to the components illustrated in the drawings, and the exemplary methods described herein may be modified by substituting, rearranging, deleting, or adding steps to the disclosed methods. Therefore, the following detailed description is not limited to the particular embodiments and examples, but includes the general principles described herein and illustrated in the figures, in addition to the general principles encompassed by the appended claims.

[0013]

[0019] 1 illustrates an exemplary system for managing an energy storage system 100 consistent with some embodiments of the present disclosure. System 100 may include an energy storage system 110, a network 114, a user device 116, an energy market device 118, a weather data device 120, and one or more power lines (e.g., power line 122). Energy storage system 110 may include one or more energy storage units (e.g., 112A, 112B, and 112C).

[0014]

[0020] The network 114 may include any one or more of various types of networks for communicating information, such as a cellular network (e.g., 2G, 3G, 4G, or 5G), a satellite network, a Wi-Fi network, a WiMAX network, a Bluetooth network, a near-field communication (NFC) network, a low-power wide-area network (LPWAN) network, a mobile network, a terrestrial microwave network, a wireless ad hoc network, an Ethernet network, a telephone network, a power line communication (PLC) network, a coaxial cable network, and / or an optical fiber network. The network 114 may include a wired network or a wireless network. The network 114 may include a personal area network, a local area network, a metropolitan area network, a wide area network, a global area network, a space network, or any other type of computer network that may use data connections between network nodes. In some examples, the network 114 may include an Internet Protocol (IP)-based network. The network 114 may connect the energy storage units 112A, 112B, 112C, the user devices 116, the energy market devices 118, and / or the weather data devices 120 using interconnected communication links.

[0015]

[0021] Energy storage system 110 may refer to any system configured to store energy. Energy storage system 110 may include a centralized system or a distributed system. Energy storage system 110 may include one or more energy storage units (e.g., 112A, 112B, and 112C). In some examples, energy storage units 112A, 112B, and 112C may be located at a single physical location, such as a site. In some examples, energy storage units 112A, 112B, and 112C may be distributed across multiple physical locations. Energy storage units 112A, 112B, and 112C may be interconnected via a network and configured to function as a system.

[0016]

[0022] Energy storage system 110 may be coupled to one or more power lines (e.g., power line 122). In some examples, power line 122 may be associated with an electric power grid. In some examples, power line 122 may be associated with a power plant (e.g., a solar power plant, a solar farm, a wind power plant, a hydroelectric power plant). In some examples, power line 122 may be associated with any type of facility (e.g., a building, a factory, a hospital, or a school). Energy storage system 110 may receive energy via power line 122, store the received energy, and / or output energy via power line 122. For example, energy storage system 110 may be grid energy storage within an electric power grid. Energy storage system 110 may store electrical energy when demand for electricity is low and output electrical energy to the grid when demand for electricity is high. As another example, energy storage system 110 may be located next to a solar farm and configured to receive electrical energy from the solar farm and store the electrical energy for later output. As another example, the energy storage system 110 may be located adjacent to a facility and may be configured to store electrical energy and provide electrical energy to the facility at appropriate times.

[0017]

[0023] The energy storage system 110, including the energy storage unit(s), may store energy in one or more of a variety of forms, such as electrochemical, chemical, mechanical, electrical, electromagnetic, biological, and / or thermal. In some examples, the energy storage system 110, including the energy storage unit(s), may store energy using rechargeable batteries. An example of an energy storage unit is described in more detail in connection with FIG. 3.

[0018]

[0024] The user device 116 may include any type of computing device configured to perform one or more of the aspects described herein (e.g., to optimize energy dispatch and / or for anomaly detection in the energy storage system). For example, the user device 116 may include at least one processor and memory that stores instructions that, when executed by the at least one processor, cause the at least one processor to perform one or more of the aspects described herein. The user device 116 may include, for example, a computer, a laptop computer, a desktop computer, a mainframe computer, a tablet, a smartphone, a mobile phone, a mobile device, a server device, a client device, an automotive electronics device, an augmented reality headset, a smartwatch, an Internet of Things (IoT) device, or any other type of computing device. In some examples, the user device 116 may be configured to receive data from various sources (e.g., via the network 114) and / or manage the energy storage system 110. For example, the user device 116 may receive operational data of the energy storage units 112A, 112B, 112C. Additionally or alternatively, the user device 116 may receive data including, for example, historical energy market data and / or forecasted energy market data from the energy market device 118. The energy market device 118 may include any type of computing device capable of storing data associated with an energy market (e.g., a wholesale energy market). Additionally or alternatively, the user device 116 may receive data including, for example, historical weather data and / or forecasted weather data from the weather data device 120. The weather data device 120 may include any type of computing device capable of storing data associated with weather. Based on the received data, the user device 116 may manage the energy storage system 110.For example, as described in more detail herein, the user device 116 may optimize the dispatch of energy from the energy storage units 112A, 112B, 112C, may detect anomalies within the energy storage units 112A, 112B, 112C, and / or may cause the display of user interface(s) that may enable a user (e.g., an administrator of the energy storage system 110) to control the energy storage system 110.

[0019]

[0025] 2 illustrates an exemplary computing device 210 consistent with some embodiments of the present disclosure. Computing device 210 may include, for example, at least one processor 212, at least one memory 214, at least one network interface 216, one or more input devices 218, and / or one or more output devices 220. The devices described herein (e.g., user device 116, energy market device 118, and weather data device 120 shown in FIG. 1 , and computing device 312 shown in FIG. 3 ) may similarly include these components and / or may be implemented in a manner similar to computing device 210. In some examples, computing device 210 including one or more of the components may be implemented using virtualization and / or cloud computing technologies.

[0020]

[0026] The processor 212 may execute instructions of a computer program to perform any of the functions described herein. The processor 212 may include, for example, an integrated circuit, a microchip, a microcontroller, a microprocessor, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a field programmable gate array (FPGA), or other unit suitable for executing instructions or performing logical operations. The processor 212 may include a single core or a multi-core processor (e.g., a dual-core, a quad-core, or any desired number of cores). The processor 212 may provide the capability to run, control, implement, or store multiple processes, applications, or programs. In some examples, the processor 212 may be configured to provide parallel processing capabilities that allow a device associated with the processor to run multiple processes simultaneously. In some examples, the processor 212 may be configured with virtualization technology. Other types of processor configurations may be implemented to provide the characteristics described herein.

[0021]

[0027] The memory 214 may include a non-transitory computer-readable medium that may store instructions that, when executed by at least one processor, cause the at least one processor to perform one or more processes described herein. The non-transitory computer-readable medium may include any type of physical memory in which information or data readable by at least one processor may be stored. The non-transitory computer-readable medium may include, for example, random access memory (RAM), read-only memory (ROM), compact disc read-only memory (CD-ROM), digital versatile disc (DVD), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), non-volatile random access memory (NVRAM), volatile memory, hard drive, flash drive, disk, cache, register, optical data storage medium, patterned physical medium, or networked versions thereof. The non-transitory computer-readable medium may include multiple structures and may be located in local or remote locations.

[0022]

[0028] The network interface 216 may include, for example, a network card and / or a modem, and may be configured to provide data communication (e.g., two-way data communication) with a network (e.g., network 114). The network interface 216 may be a wireless interface, a wired interface, or a combination of the two. The specific design and implementation of the network interface 216 may depend on the communication network over which the computing device 210 is intended to operate. For example, the network interface 216 may include a wireless local area network (WLAN) card, an integrated services digital network (ISDN) card, a cellular modem, a satellite modem, a modem configured to provide a data communication connection via the Internet, a network card with an Ethernet port, a device with a radio frequency receiver and transmitter, and / or a device with an optical receiver and transmitter, etc. In some examples, the network interface 216 may be designed to operate over the network 114. The network interface 216 may be configured to transmit and receive electrical, electromagnetic, or optical signals, which may represent various types of data.

[0023]

[0029] The input devices 218 may include, for example, a keyboard, a mouse, a touchpad, a touchscreen, one or more buttons, a joystick, a microphone, and / or any other device configured to detect and / or receive input. In some examples, the input devices 218 may include one or more of various types of sensors, such as an image sensor, a temperature sensor, a humidity sensor, a position sensor, or any other type of sensor. The output devices 220 may include, for example, a light indicator, a light source, a display (e.g., a light-emitting diode (LED) display, an organic light-emitting diode (OLED) display, a liquid crystal display (LCD), or a dot-matrix display), a screen, a touchscreen, a speaker, headphones, a device configured to provide tactile cues, a vibrator, and / or any other device configured to provide output.

[0024]

[0030] The memory 214 may store instructions that, when executed by the at least one processor, cause the at least one processor to perform one or more processes described herein. The instructions may include, for example, software instructions, computer programs, computer code, executable instructions, source code, machine instructions, machine language programs, or any other type of instructions for a computing device. The instructions may be based on one or more of various types of desired programming languages ​​and may include (e.g., embody) various processes for optimizing energy dispatch and / or detecting anomalies in the energy storage system described herein.

[0025]

[0031] FIG. 3 illustrates an exemplary energy storage unit 310 consistent with some embodiments of the present disclosure. The energy storage unit 310 may include, for example, a computing device 312, a cooling system 314, one or more sensors 316, and / or one or more batteries (e.g., 318A-318H). The energy storage unit 310 may be an example of one or more of the energy storage units 112A, 112B, 112C. In some examples, the energy storage unit 310 may have an enclosure, and the components of the energy storage unit 310 may be housed within the enclosure. The enclosure may be any desired shape and / or may be constructed using any desired material. For example, the enclosure may have a rectangular or cubic shape.

[0026]

[0032] The computing device 312 may be implemented in a manner similar to the computing device 210. The computing device 312 may be local to the energy storage unit 310 (e.g., located within the enclosure of the energy storage unit 310). The computing device 312 may be configured to manage other components of the energy storage unit 310. The computing device 312 may additionally or alternatively be configured to communicate with another computing device (e.g., the user device 116) for managing the energy storage unit 310. For example, the computing device 312 may transmit operational data of the energy storage unit 310 to the other computing device, receive instructions from the other computing device, and execute the received instructions.

[0027]

[0033] A battery (e.g., any one of batteries 318A-318H) may refer to a battery and may include a power source including one or more electrochemical cells with external connections. Batteries 318A-318H may be rechargeable and may be discharged and recharged multiple times. Batteries 318A-318H may include one or more of various types of batteries, such as lithium-ion batteries, lithium iron phosphate batteries, silver oxide batteries, nickel-zinc batteries, nickel-metal hydride batteries, lead-acid batteries, nickel-cadmium batteries, lithium-nickel-manganese-cobalt-oxide (NMC) batteries, lithium-nickel-cobalt-aluminum-oxide (NCA) batteries, lithium-ion-manganese-oxide (LMO) batteries, lithium-cobalt-oxide batteries, fuel cells, or other types of batteries. While energy storage unit 310 is shown to include batteries 318A-318H, more or fewer batteries may be included in energy storage unit 310 as needed.

[0028]

[0034] The batteries 318A-318H may have a control component associated therewith. The control component may be configured, for example, to manage the charging and discharging of the batteries 318A-318H. The control component may include, for example, a battery management system (BMS). In some examples, each of the batteries 318A-318H may have its own control component (e.g., a battery management system). The control component for each of the batteries 318A-318H may be implemented by a computing device and / or may be in communication with a central management component (e.g., one for the energy storage unit 310 and implemented by the computing device 312). Additionally or alternatively, the central management component may collectively manage the charging and discharging of the batteries 318A-318H. The charging and discharging of batteries 318A-318H may be controlled using suitable techniques, such as circuitry with switch control, a charge or discharge controller, a charge or discharge regulator, and / or a battery regulator, such that batteries 318A-318H may be controlled to receive electricity from a source at a particular rate, output electricity to a load at a particular rate, or be in an idle state.

[0029]

[0035] The cooling system 314 may include any type of device configured to remove heat from the energy storage unit 310. The cooling system 314 may use air, liquid, and / or any other type of suitable medium or material to remove heat. In some examples, the cooling system 314 may include a heat sink and / or cooling fins. In some examples, the cooling system 314 may include a fan (e.g., for moving air in air cooling), a pump (e.g., for moving liquid in liquid cooling), a compressor (e.g., for vapor compression refrigeration), or any other type of device for cooling. The cooling system 314 may use any type of desired configuration, positioning, and / or distribution. In some examples, each of the batteries 318A-318H may have a cooling element individually associated with each of the batteries 318A-318H as part of the cooling system 314.

[0030]

[0036] The one or more sensors 316 may include any type of sensor configured to collect information associated with the energy storage unit 310 (e.g., to measure the operation of the energy storage unit 310). For example, the sensor(s) 316 may include temperature sensors, humidity sensors, position sensors, current sensors, voltage sensors, and / or other types of sensors. The sensors 316(s) may use any type of desired configuration, positioning, and / or distribution. In some examples, each of the batteries 318A-318H may have sensor(s) individually associated with each of the batteries 318A-318H. In some examples, the energy storage unit 310 may include sensor(s) that may be collectively applicable to the batteries 318A-318H.

[0031]

[0037] The computing device 312 may communicate with and control the batteries 318A-318H (e.g., via control components for each battery), the cooling system 314, and the sensor(s) 316. In some examples, the computing device 312 may control the components based on instructions from another computing device (e.g., the user device 116). Additionally or alternatively, data associated with the energy storage unit 310 may be collected, including, for example, data measured by the sensor(s) 316, data used by the energy storage unit 310 (e.g., parameters for controlling the batteries 318A-318H or parameters for controlling the cooling system 314, such as fan speed, pump utilization, or compressor utilization), or any other type of data. The collected data may be processed by the computing device 312 and / or another computing device (e.g., the user device 116) for one or more aspects described herein.

[0032]

[0038] Disclosed embodiments, including methods, systems, apparatuses, and non-transitory computer-readable media, may relate to optimizing energy dispatch. Energy dispatch may refer to the input of energy to an energy storage unit and / or the output of energy from an energy storage unit. Disclosed embodiments include a system for optimizing energy dispatch, the system including one or more energy storage units and a computing device including at least one processor and memory, where the instructions, when executed by the at least one processor, cause the computing device to perform the functions described herein. An energy storage unit may refer to a physical object for storing energy. The energy storage unit may store energy in one or more of a variety of forms, such as electrochemical, chemical, mechanical, electrical, electromagnetic, biological, and / or thermal. In some examples, the energy storage unit may store energy using a rechargeable battery. An example of an energy storage unit is described in connection with FIG. 3. In some embodiments, the one or more energy storage units include one or more battery units. In some embodiments, each battery unit of the one or more battery units includes an enclosure containing multiple batteries.

[0033]

[0039] The disclosed embodiments include receiving forecasted energy market data from a computing device associated with a wholesale energy market. For example, a first computing device (e.g., user device 116, computing device(s) in energy storage units 112A, 112B, 112C, or any other computing device) may receive forecasted energy market data from a computing device associated with a wholesale energy market. The wholesale energy market may include the sale of energy from an entity to a reseller (e.g., an energy storage business that stores the received energy for later output and / or a utility company that distributes electricity to end consumers). The computing device associated with the wholesale energy market may incorporate information about and from the wholesale energy market and may forecast the energy market data based on a model (e.g., based on machine learning). For example, the forecasted energy market data may be generated based on historical energy market data. In some examples, the forecasted energy market data may indicate forecasted energy prices for each of multiple time intervals of a time frame (e.g., forecasted energy prices for each minute of a 24-hour period). In some examples, the computing device associated with the wholesale energy market may include energy market device 118. A computing device associated with the wholesale energy market may transmit forecasted energy market data to the first computing device.

[0034]

[0040] 4 illustrates a flowchart of an example method 400 for optimizing energy dispatch, consistent with certain embodiments of the present disclosure. Referring to FIG. 4, at step 410, a first computing device may receive forecasted energy market data.

[0035]

[0041] Disclosed embodiments include receiving environmental data for one or more energy storage units from a computing device associated with a weather forecast. For example, a first computing device may receive environmental data for one or more energy storage units from a computing device associated with a weather forecast. In some embodiments, the environmental data for the one or more energy storage units includes one or more of a predicted ambient temperature of an area in which the one or more energy storage units are located or a predicted ambient humidity of an area in which the one or more energy storage units are located. The environmental data may include any other type of data that may reflect the environment of an area in which the one or more energy storage units are located (e.g., wind speed within the area and / or the degree of solar radiation within the area). Solar radiation may refer to a measure of solar energy incident on a particular area over a set period of time. The environmental data may include forecasted data that may be generated based on historical data. In some examples, the environmental data may indicate environmental parameters (e.g., predicted temperature or predicted humidity for each minute of a 24-hour period) for each of multiple time intervals of a time frame. In some examples, the computing device associated with a weather forecast may include weather data device 120. The computing device associated with a weather forecast may transmit the environmental data to the first computing device. Referring to FIG. 4, at step 412, the first computing device may receive environmental data.

[0036]

[0042] Disclosed embodiments include generating a plurality of energy dispatch patterns for utilizing one or more energy storage units. For example, a first computing device may generate a plurality of energy dispatch patterns for utilizing one or more energy storage units. In some embodiments, an energy dispatch pattern of the plurality of energy dispatch patterns includes a plurality of time periods in which one or more energy storage units are configured to charge or discharge at a particular rate. For example, an energy dispatch pattern may indicate a rate at which one or more energy storage units are configured to charge or discharge for each of the plurality of time periods (e.g., charging at 5 megawatts for the first minute of a 24-hour period, charging at 5 megawatts for the second minute of the 24-hour period, charging at 10 megawatts for the third minute of the 24-hour period, discharging at 20 megawatts for the fourth minute of the 24-hour period, etc.). Each of the plurality of energy dispatch patterns may be for a time period of any desired length (e.g., 24 hours, 48 ​​hours, 72 hours, etc.). In some examples, each of the multiple energy dispatch patterns may be generated for the same particular time period (eg, the next 24 hours of the next day).

[0037]

[0043] The multiple energy dispatch patterns may differ from one another. For example, the multiple energy dispatch patterns may differ in the number of charge / discharge cycles (e.g., charge, then discharge, or discharge, then charge). A charge, then discharge cycle may refer to a time period during which the energy storage unit is charging, followed by a time period during which the energy storage unit is discharging. In some examples, there may be a time period during which the energy storage unit is idle between the two time periods. A discharge, then charge cycle may refer to a time period during which the energy storage unit is discharging, followed by a time period during which the energy storage unit is charging. In some examples, there may be a time period during which the energy storage unit is idle between the two time periods. Additionally or alternatively, the multiple energy dispatch patterns may differ in the rate of charging or discharging and / or may have different time segments during which charging or discharging occurs. The multiple energy dispatch patterns may differ from one another in any other desired manner.

[0038]

[0044] Disclosed embodiments include generating multiple energy dispatch patterns by performing an optimization technique based on an objective function and multiple different constraints. In some embodiments, the optimization technique includes linear programming or mixed integer linear programming. The optimization technique may include any other desired method for optimization. In some embodiments, the multiple different constraints include different amounts of charge / discharge cycles to be included in the energy dispatch patterns. For example, if the constraints for the optimization technique require one charge / discharge cycle to be included in a first energy dispatch pattern, the optimization technique may be performed to generate a first energy dispatch pattern, and if the constraints for the optimization technique require two charge / discharge cycles to be included in a second energy dispatch pattern, the optimization technique may be performed to generate a second energy dispatch pattern. It is contemplated that one or more of these or additional energy dispatch patterns may be generated using constraints requiring any number of charge / discharge cycles.

[0039]

[0045] In some embodiments, the optimization technique determines a particular energy dispatch pattern by maximizing an estimate of the particular energy dispatch pattern based on market price forecasts for the time frame. For example, input data to the optimization technique may include forecasted energy market data indicating predicted energy prices for each of multiple time intervals of the time frame (e.g., predicted energy prices for every minute of a 24-hour period). In some examples, based on the forecasted energy market data, the optimization technique may generate a particular energy dispatch pattern such that an objective function of the optimization technique may be maximized (e.g., subject to certain constraints). The objective function may be, for example, an estimate of the particular energy dispatch pattern (e.g., revenue received from discharging energy (or selling energy) by one or more energy storage units, minus costs of charging (or purchasing energy) the one or more energy storage units, based on the forecasted energy market data). Referring to FIG. 4 , in step 414, the first computing device may generate multiple energy dispatch patterns for utilizing one or more energy storage units.

[0040]

[0046] The disclosed embodiments include performing one or more functions for each energy dispatch pattern of the plurality of energy dispatch patterns. For example, the first computing device may perform one or more functions for each energy dispatch pattern of the plurality of energy dispatch patterns. The one or more functions are described in more detail below. With reference to FIG. 4 , in step 416, the first computing device may select an energy dispatch pattern from the plurality of energy dispatch patterns for processing (e.g., including performing one or more functions (e.g., steps 418, 420, 422, 424, and / or 426) for the selected energy dispatch pattern). In step 428, after performing the one or more functions for the selected energy dispatch pattern, the first computing device may determine whether each of the plurality of energy dispatch patterns has been processed. If the first computing device determines that each of the plurality of energy dispatch patterns has been processed (step 428: YES), the method may proceed to step 430. However, if the first computing device determines that each of the plurality of energy dispatch patterns has not been processed (step 428: no), the method may return to step 416. In step 416, the first computing device may select another energy dispatch pattern from the plurality of energy dispatch patterns for processing.

[0041]

[0047] In some embodiments, the one or more functions performed for each energy dispatch pattern of the plurality of energy dispatch patterns include determining an estimate for the energy dispatch pattern based on forecasted energy market data. For example, the first computing device may determine an estimate for a particular energy dispatch pattern of the plurality of energy dispatch patterns based on forecasted energy market data. The forecasted energy market data may indicate a forecasted energy price for each of a plurality of time intervals of the time frame (e.g., a forecasted energy price for each minute of a 24-hour period). The particular energy dispatch pattern may indicate a rate at which one or more energy storage units are configured to charge or discharge for each of the plurality of intervals of the time frame (e.g., charging at 5 megawatts for the first minute of the 24 hours, charging at 5 megawatts for the second minute of the 24 hours, charging at 10 megawatts for the third minute of the 24 hours, discharging at 20 megawatts for the fourth minute of the 24 hours, etc.). The estimate for a particular energy dispatch pattern may correspond, for example, to an aggregation of revenue received (from discharging or selling energy) or costs (from charging or purchasing energy) for each of a plurality of intervals of the time frame for the particular energy dispatch pattern. Referring to Figure 4, in step 418, the first computing device may determine an estimate for the energy dispatch pattern selected in step 416 based on forecasted energy market data.

[0042]

[0048] In some embodiments, the one or more functions performed for each energy dispatch pattern of the plurality of energy dispatch patterns include determining one or more state variables of the one or more energy storage units based on environmental data for the one or more energy storage units. For example, the first computing device may determine one or more state variables of the one or more energy storage units based on the environmental data for the one or more energy storage units. In some embodiments, the one or more state variables of the one or more energy storage units include temperatures of one or more energy storage units in one or more enclosures for the one or more energy storage units. In some examples, the temperatures may include temperatures of batteries of the one or more energy storage units. In some examples, the temperatures may be represented individually for each battery in the one or more energy storage units. In some examples, the temperatures may be represented in aggregate for the batteries of the one or more energy storage units (e.g., average battery temperature, maximum battery temperature, median battery temperature, or any other statistical value or metric). In some examples, the temperatures may be a time series of data points indicating the temperature(s) for each of multiple intervals of the time frame. Additionally or alternatively, the one or more state variables of the one or more energy storage units may include any other parameters that may affect or be indicative of degradation of the one or more energy storage units (e.g., auxiliary loads such as total power consumption and maximum power consumption to support the one or more energy storage units).

[0043]

[0049] Determining the one or more state variables may be based on any suitable method. Environmental data for the one or more energy storage units may be input data for the method. For example, thermodynamic modeling for the one or more energy storage units may be used to predict the one or more state variables based on the environmental data. In some examples, as described in more detail herein (e.g., in connection with anomaly detection in energy storage systems), a machine learning model (e.g., a random forest model or a neural network) may be used to predict the one or more state variables based on the environmental data. Disclosed embodiments include determining the one or more state variables of the one or more energy storage units based on an energy dispatch pattern. For example, a particular energy dispatch pattern may additionally or alternatively be input into a model for predicting the one or more state variables. The first computing device may calculate the heat generated by the batteries of the one or more energy storage units based on the electrical resistance of the batteries and the amount of current the batteries can output. The amount of current may be determined based on the particular energy dispatch pattern. The heat remaining in the batteries of the one or more energy storage units may correspond to the amount of heat generated minus the amount of heat dissipated via air or other cooling mechanisms (e.g., calculated using thermodynamic modeling). The temperature of the battery may be calculated based on the residual heat.

[0044]

[0050] Referring to FIG. 4, in step 420, the first computing device may determine one or more state variables of the one or more energy storage units based on the environmental data for the one or more energy storage units.

[0045]

[0051] In some embodiments, the one or more functions performed for each energy dispatch pattern of the plurality of energy dispatch patterns include determining an estimated degradation limit of one or more energy storage units based on one or more state variables. For example, the first computing device may determine an estimated degradation limit of one or more energy storage units based on the one or more state variables. The estimated degradation limit may indicate, for example, an amount of decrease in the capacity of one or more energy storage units for storing energy. For example, if the capacity of one or more energy storage units decreases from 50 megawatt-hours (MWh) to 49.99 MWh, the degradation limit may be 0.01 MWh (e.g., 50 MWh minus 49.99 MWh). Disclosed embodiments include determining the estimated degradation limit of one or more energy storage units based on the energy dispatch pattern. Disclosed embodiments include determining the estimated degradation limit by performing a lookup in a database that maps parameters of the energy dispatch pattern and battery temperature to expected degradation. The parameters of the energy dispatch pattern may include, for example, the energy throughput of the energy dispatch pattern, the amount of charge / discharge cycles included in the energy dispatch pattern, the depth of the charge / discharge cycles (e.g., discharge to 80% capacity and then recharge, discharge to 60% capacity and then recharge, discharge to 40% capacity and then recharge, discharge to 20% capacity and then recharge, discharge to 0% capacity and then recharge, etc.), the distribution of charge or discharge activity over the time span of the energy dispatch pattern (e.g., the length of time between two charge / discharge cycles of the energy dispatch pattern, the length of time between the charge and discharge activity of the energy dispatch pattern, etc.), and / or any other metric or parameter. As an example, an equation may be used by which the associated temperature and energy throughput (which may be calculated based on the energy dispatch pattern) may be mapped to a degree of degradation.In some examples, the mapping may be provided by a battery supplier for one or more energy storage units. Additionally or alternatively, other methods (e.g., machine learning models) may be used to calculate the marginal degradation. Referring to Figure 4, in step 422, the first computing device may determine an estimated marginal degradation of one or more energy storage units based on one or more state variables.

[0046]

[0052] In some embodiments, the one or more functions performed for each energy dispatch pattern of the plurality of energy dispatch patterns include determining an estimated cost of the energy dispatch pattern based on an estimated marginal degradation. For example, the first computing device may determine the estimated cost of the energy dispatch pattern based on the estimated marginal degradation. Disclosed embodiments include determining the estimated cost by calculating a replacement cost to replace the estimated marginal degradation. The replacement cost may correspond, for example, to the price for acquiring an amount of energy storage capacity (e.g., $100,000 per MWh) multiplied by the amount of estimated marginal degradation (e.g., 0.01 MWh). Disclosed embodiments include determining the estimated cost by calculating an opportunity cost associated with the estimated marginal degradation. The opportunity cost may be calculated, for example, as discounted future revenue lost because the estimated marginal degradation is greater than the planned degradation, or conversely, as future revenue recovered if the estimated marginal degradation is less than the planned degradation. The planned degradation may be configured or determined by an operator of one or more energy storage units (e.g., an operator may plan to use one or more energy storage units such that they are likely to degrade to 50% of their original capacity in 30 years). Any other suitable cost model may be used to determine the estimated cost of the energy dispatch pattern. Referring to Figure 4, in step 424, the first computing device may determine the estimated cost of the energy dispatch pattern selected in step 416 based on the estimated marginal degradation.

[0047]

[0053] In some embodiments, the one or more functions performed for each energy dispatch pattern of the plurality of energy dispatch patterns include calculating an estimated net value of the energy dispatch pattern based on the estimated value and the estimated cost. For example, the first computing device may calculate the estimated net value of the energy dispatch pattern based on the estimated value of the energy dispatch pattern and the estimated cost of the energy dispatch pattern. The estimated net value may refer, for example, to a predicted net benefit (e.g., monetary value) of the energy dispatch pattern. The estimated net value may correspond, for example, to the estimated value of the energy dispatch pattern minus the estimated cost of the energy dispatch pattern. Referring to FIG. 4, in step 426, the first computing device may calculate the estimated net value of the energy dispatch pattern based on the estimated value of the energy dispatch pattern selected in step 416 and the estimated cost of the energy dispatch pattern.

[0048]

[0054] Disclosed embodiments include generating a recommended energy dispatch pattern based on data determined for each energy dispatch pattern of the plurality of energy dispatch patterns. For example, a first computing device may generate a recommended energy dispatch pattern based on data determined for each energy dispatch pattern of the plurality of energy dispatch patterns. The data determined for each energy dispatch pattern of the plurality of energy dispatch patterns may include, for example, an estimated net value of the plurality of energy dispatch patterns. Additionally or alternatively, the data determined for each energy dispatch pattern of the plurality of energy dispatch patterns may include an estimated profit of the plurality of energy dispatch patterns, an estimated value or estimated revenue of the plurality of energy dispatch patterns, an estimated cost of the plurality of energy dispatch patterns, an estimated marginal degradation of the plurality of energy dispatch patterns, or any other type of data suitable for generating a recommended energy dispatch pattern. Disclosed embodiments include generating a recommended energy dispatch pattern based on the estimated net value for the plurality of energy dispatch patterns. For example, a first computing device may generate a recommended energy dispatch pattern based on the estimated net value for the plurality of energy dispatch patterns. The disclosed embodiment includes generating a recommended energy dispatch pattern by selecting, from a plurality of energy dispatch patterns, an energy dispatch pattern having an estimated net value that is greater than the estimated net value of other energy dispatch patterns of the plurality of energy dispatch patterns and greater than a configured threshold.The configured thresholds may be determined, for example, by operators of one or more energy storage units, such that if any energy dispatch pattern results in a net loss or a net benefit less than a threshold amount (e.g., $0, $500, $1,000, $2,000, or any other desired amount), the energy dispatch pattern may not be recommended to the operator. Additionally or alternatively, generating the recommended energy dispatch pattern may be based on considering other factors, such as the number of charge / discharge cycles included in the energy dispatch pattern, the depth of the charge / discharge cycles, and / or any other factor. Various weights may be assigned to the factors, and a weighted score may be calculated for each of the multiple energy dispatch patterns indicating how close it is to the preferred settings for the factors. The recommended energy dispatch pattern may correspond to the energy dispatch pattern of the multiple energy dispatch patterns having the highest weighted score. Referring to FIG. 4, in step 430, the first computing device may generate a recommended energy dispatch pattern based on the data determined for each energy dispatch pattern of the plurality of energy dispatch patterns (e.g., an estimated net value for the plurality of energy dispatch patterns).

[0049]

[0055] The disclosed embodiments include coordinating one or more energy storage units to dispatch electricity according to a recommended energy dispatch pattern. For example, a first computing device may coordinate one or more energy storage units to dispatch electricity according to the recommended energy dispatch pattern. The first computing device may, for example, instruct a control component for one or more energy storage units to cause the one or more energy storage units (e.g., batteries therein) to charge or discharge for a specific time and at a specific rate (or to idle for a specific time) indicated in the recommended energy dispatch pattern. The charging and discharging of the one or more energy storage units may be controlled using appropriate techniques, such as a circuit with switch control, a charge or discharge controller, a charge or discharge regulator, and / or a battery regulator, such that the one or more energy storage units may be controlled to receive electricity from a source at a specific rate, output electricity to a load at a specific rate, or be idle. Referring to FIG. 4 , in step 432, the first computing device may coordinate one or more energy storage units to dispatch electricity according to the recommended energy dispatch pattern.

[0050]

[0056] Disclosed embodiments include displaying a user interface showing a recommended energy dispatch pattern. For example, a first computing device may display a user interface showing the recommended energy dispatch pattern. The user interface may, for example, show the charging, discharging, or idle state of one or more energy storage units over a time series of data points. FIG. 5 shows an example user interface 500 associated with optimizing energy dispatch, consistent with some embodiments of the present disclosure. The user interface may show an energy storage system identified by an identifier 510 (e.g., "Example Site - 100 MW 100 MWh"). Chart 512 shows data points of a predicted energy price over a 24-hour period and a recommended energy dispatch pattern (e.g., based on the predicted energy price). Chart 512 shows an energy dispatch pattern showing charging at a particular time (e.g., the 10th hour) and discharging at a particular time (e.g., the 15th hour). Chart 514 shows temperatures associated with one or more energy storage units over a 24-hour period. Chart 516 shows the state of charge (SOC) of one or more energy storage units over a 24-hour period. Identifier 518 shows the replacement cost for the energy dispatch pattern. Identifier 520 shows the opportunity cost for the energy dispatch pattern. Identifier 522 shows the total degradation of one or more energy storage units for the energy dispatch pattern. Identifier 524 shows the expected profit of the energy dispatch pattern taking into account the replacement cost (e.g., the estimated net value of the energy dispatch pattern). Identifier 526 shows the expected profit of the energy dispatch pattern taking into account the opportunity cost (e.g., the estimated net value of the energy dispatch pattern). Identifier 528 shows the revenue of the energy dispatch pattern (e.g., the estimated value of the energy dispatch pattern).A pull-down menu 530 may allow a user to select an energy dispatch pattern to be displayed on the user interface (e.g., “Energy Dispatch Pattern 1” may be shown on the user interface, and other energy dispatch patterns may be selected to be shown on the user interface). Using a button, pull-down menu, or some other trigger, a user may compare two or more energy dispatch patterns by selecting an energy dispatch pattern from the pull-down menu. The user interface shown in FIG. 5 is exemplary, and other types of displays are contemplated. The user interface may group various related information items on one screen, allowing a user to quickly determine the best energy dispatch pattern.

[0051]

[0057] In some embodiments, a method for optimizing energy dispatch includes generating, by a computing device, a plurality of energy dispatch patterns for utilizing one or more energy storage units, generating a recommended energy dispatch pattern based on data determined for each energy dispatch pattern of the plurality of energy dispatch patterns, and coordinating one or more energy storage units to dispatch electricity according to the recommended energy dispatch pattern. In some embodiments, the method includes, for each energy dispatch pattern of the plurality of energy dispatch patterns, determining an estimate for the energy dispatch pattern based on expected energy market data, determining one or more state variables of the one or more energy storage units based on environmental data for the one or more energy storage units, determining an estimated marginal degradation of the one or more energy storage units based on the one or more state variables, determining an estimated cost for the energy dispatch pattern based on the estimated marginal degradation, and calculating an estimated net value for the energy dispatch pattern based on the estimates and the estimated cost. In some embodiments, the method also includes generating the recommended energy dispatch pattern based on the estimated net value for the plurality of energy dispatch patterns.

[0052]

[0058] In some embodiments, a non-transitory computer-readable medium stores instructions for optimizing energy dispatch. The instructions, when executed by at least one processor, cause the at least one processor to generate a plurality of energy dispatch patterns for utilizing one or more energy storage units, generate a recommended energy dispatch pattern based on data determined for each energy dispatch pattern of the plurality of energy dispatch patterns, and coordinate one or more energy storage units to dispatch electricity in accordance with the recommended energy dispatch pattern. In some embodiments, the instructions, when executed by the at least one processor, cause the at least one processor to: determine, for each energy dispatch pattern of the plurality of energy dispatch patterns, an estimate for the energy dispatch pattern based on expected energy market data, determine one or more state variables of the one or more energy storage units based on environmental data for the one or more energy storage units, determine an estimated marginal degradation of the one or more energy storage units based on the one or more state variables, determine an estimated cost for the energy dispatch pattern based on the estimated marginal degradation, and calculate an estimated net value for the energy dispatch pattern based on the estimates and the estimated costs. In some embodiments, the instructions, when executed by the at least one processor, cause the at least one processor to generate a recommended energy dispatch pattern based on an estimated net value for a plurality of energy dispatch patterns.

[0053]

[0059] Disclosed embodiments, including methods, systems, apparatuses, and non-transitory computer-readable media, may relate to anomaly detection in an energy storage system. An anomaly in an energy storage system may include any operation, function, or implementation outside of an expected range of the energy storage system. In some embodiments, a system for anomaly detection in an energy storage system includes one or more energy storage units and a computing device including at least one processor and a memory storing instructions, the instructions, when executed by the at least one processor, causing the computing device to perform the functions described herein. An energy storage unit may refer to a physical object for storing energy. The energy storage unit may store energy in one or more of a variety of forms, such as electrochemical, chemical, mechanical, electrical, electromagnetic, biological, and / or thermal. In some examples, the energy storage unit may store energy using a rechargeable battery. An example of an energy storage unit is described in connection with FIG. 3. In some embodiments, each energy storage unit of the one or more energy storage units includes an enclosure containing multiple batteries. The enclosure may be of any desired shape and / or constructed using any desired material. For example, the enclosure may have a rectangular or cubic shape. In some embodiments, the computing device is associated with a cloud architecture. For example, the computing device may be implemented using virtualization technology and / or cloud computing technology. For example, components of the computing device (e.g., processor, memory, network interface, input device, and / or output device) may be implemented virtually (e.g., to function as a virtual machine on a physical computing device). In some embodiments, the computing device is local to one or more energy storage units.For example, the computing device may be located within the enclosure of one or more energy storage units or within the site area of ​​one or more energy storage units. In some examples, the computing device may be remote from one or more energy storage units. For example, the computing device may be located in a data center connected to one or more energy storage units via a network.

[0054]

[0060] Disclosed embodiments include receiving usage data for batteries disposed in one or more energy storage units during a time frame. For example, a computing device (e.g., user device 116, a computing device in energy storage units 112A, 112B, 112C, or any other computing device) may receive usage data for batteries disposed in one or more energy storage units during a time frame. The time frame may have any desired length (e.g., 1 minute, 2 minutes, 5 minutes, 10 minutes, 30 minutes, 1 hour, 2 hours, 5 hours, 10 hours, 24 hours, 48 ​​hours, etc.). In some embodiments, the battery usage data includes one or more of: a beginning state of charge of the battery for the time frame; an ending state of charge of the battery for the time frame; a sum of squared currents of the battery for the time frame; a voltage pattern of the battery associated with the time frame; a dispatch pattern associated with the battery for the time frame; a measured temperature of the battery at the beginning of the time frame; an ambient temperature or humidity associated with the battery during the time frame; one or more utilization parameters of a cooling system for the battery during the time frame; or a relative position of the battery within an enclosure of an energy storage unit that includes the battery. The state of charge may refer to the charge level of a battery relative to its capacity. The beginning state of charge for a time window may be the state of charge of the battery at the beginning of the time window. The ending state of charge for a time window may be the state of charge of the battery at the end of the time window. The sum of the squares of the battery's current during the time window may correspond, for example, to the integral or cumulative squared battery current over the span of the time window and may represent the amount of energy delivered to or from the battery. The battery voltage pattern may include, for example, a time series of data points of the battery's voltage over the time window. The dispatch pattern associated with a battery for a time window may include, for example, an energy dispatch pattern for the battery for the time window described herein.The ambient temperature or humidity associated with the battery during the time frame may include, for example, the temperature or humidity in the area where the battery is located during the time frame. The one or more utilization parameters of the cooling system of the battery during the time frame may include, for example, the extent to which the cooling system may be used during the time frame (e.g., fan speed, pump utilization, compressor utilization, etc.). The relative position of the battery within the enclosure of the energy storage unit containing the battery may be measured, for example, using three-dimensional coordinates, the position of the battery relative to other batteries in the energy storage unit, or any other suitable method. In some examples, the usage data may be received from a sensor or other system associated with the battery. FIG. 6 shows a flowchart of an example method 600 for anomaly detection in an energy storage system, consistent with some embodiments of the present disclosure. Referring to FIG. 6, at step 610, a computing device may receive usage data for batteries located within one or more energy storage units during the time frame.

[0055]

[0061] The disclosed embodiments include inputting usage data into a machine learning model. For example, a computing device may input the usage data into the machine learning model. Inputting the usage data into the machine learning model may include, for example, retrieving usage data stored in a memory of the computing device (e.g., stored in a database) and configuring the machine learning model to process the retrieved usage data. Additionally or alternatively, the computing device may read usage data stored by the computing device and configure the machine learning model to process the usage data. In some embodiments, the machine learning model includes one of a random forest model or a neural network. Additionally or alternatively, any other suitable machine learning model may be used. In some examples, other types of models or methods may be used to predict the temperature of the battery, such as a lookup table or mapping, an equation that may model the heat transfer process of the battery, or other suitable algorithm. The disclosed embodiments include receiving specific usage data of a battery during time periods during which the battery was manually deemed to exhibit normal behavior, receiving measured temperature data of the battery at the end of each of the time periods, and training the machine learning model using the specific usage data and the measured temperature data. For example, an individual who may operate the battery may indicate a time frame during which the battery is deemed to exhibit normal behavior, and battery usage data may be collected during the time frame. The temperature of the battery may be measured by a sensor at the end of the time frame. Training the machine learning model may use any suitable training algorithm. A dataset for training the machine learning model may be based, for example, on historical usage data of the battery for one or more time frames during which the battery is deemed to exhibit normal behavior, and the corresponding temperature of the battery measured at the end of each of the one or more time frames. Validation and testing of the trained machine learning model may be performed using, for example, a validation dataset or a test dataset.The validation or test data set may be established in a similar manner as the data set for training and may use data for a different time frame(s) than the time frame(s) included in the training data set. Referring to Figure 6, at step 612, the computing device may input usage data into a machine learning model.

[0056]

[0062] The disclosed embodiments include generating a predicted temperature of the battery at the end of a time window based on processing of the usage data by a machine learning model. For example, a computing device may generate a predicted temperature of the battery at the end of a time window based on processing of the usage data by a machine learning model. For example, the machine learning model may include several input nodes, one or more intermediate nodes, and an output node (relationships or interconnections between the nodes may be configured during training of the machine learning model). Each of the input nodes may correspond to a particular item in the usage data. The value of each input node may be set to the value of the corresponding item in the usage data for the time window. Based on the relationships or interconnections between the nodes of the machine learning model, an input value to an input node may trigger other nodes of the machine learning model and cause an output node to generate a value corresponding to the predicted temperature of the battery at the end of the time window. Referring to FIG. 6 , at step 614, the computing device may generate a predicted temperature of the battery at the end of the time window based on processing of the usage data by the machine learning model.

[0057]

[0063] The disclosed embodiments include receiving a measured temperature of the battery at the end of the time period from a battery temperature sensor. For example, the computing device may receive the measured temperature of the battery at the end of the time period from the battery temperature sensor. The temperature sensor may include, for example, a thermometer, a bimetallic strip, a thermistor, a thermocouple, a resistance thermometer, a silicon bandgap temperature sensor, or any other type of temperature sensor. The temperature sensor may be located within the battery, on the surface of the battery, or in any other suitable location. In some examples, the temperature sensor may measure the temperature using, for example, infrared light, or may be located remotely from the battery to measure the temperature of the battery. The battery temperature sensor may be instructed to measure the temperature of the battery at the end of the time period and may be configured to transmit the measured temperature to the computing device. For example, data indicative of the measured temperature may be transmitted to the computing device via a wired or wireless connection between the temperature sensor and the computing device. Referring to FIG. 6 , at step 616, the computing device may receive the measured temperature of the battery at the end of the time period from the battery temperature sensor.

[0058]

[0064] Disclosed embodiments include determining a difference between the predicted temperature and the measured temperature. For example, the computing device may determine the difference between the predicted temperature and the measured temperature. The difference may include, for example, a subtraction or ratio of the predicted temperature and the measured temperature. For example, a ratio closer to 1 may indicate a smaller difference, and a ratio further from 1 may indicate a larger difference. Additionally or alternatively, the difference may include a signed value or an absolute value. A battery anomaly may be detected based on, for example, determining that the difference meets a threshold (e.g., configured by the battery operator). In some examples, a battery anomaly may be detected based on comparing the measured temperature to the predicted temperature and determining that the measured temperature is higher or lower than the predicted temperature. In some examples, the calculation may be repeated over multiple time frames, and average or maximum values ​​for the multiple time frames may be calculated or compared to determine whether a battery anomaly has been detected. Referring to FIG. 6, in step 618, the computing device may determine the difference between the predicted temperature and the measured temperature.

[0059]

[0065] Disclosed embodiments include transmitting an indication of the battery's status based on the determined difference between the predicted temperature and the measured temperature. For example, a computing device may transmit an indication of the battery's status based on the determined difference between the predicted temperature and the measured temperature. The indication may be in any desired form (e.g., email notification, pop-up window, text message, graphical display, pie chart, bar graph, icon, etc.). The indication may be transmitted to any suitable device (e.g., a device associated with an operator of the battery). The battery status may include, for example, a normal battery status, an abnormal battery status, or any other status. In some examples, the battery status may include a battery health level. The battery status may be determined based on the difference between the predicted temperature and the measured temperature. For example, the computing device may determine that the battery may be in a normal state when the temperature difference is within a particular range (e.g., -1.5 degrees Celsius to 1.5 degrees Celsius, or any other desired range) and may determine that the battery may be in an abnormal state when the temperature difference is outside the particular range. Additionally or alternatively, the computing device may determine the battery health level, for example, inversely proportional to the magnitude of the temperature difference. In some examples, the battery health may be determined to be inversely proportional to the distance between the temperature difference value and a reference value (e.g., 0 degrees Celsius or any other desired value). Disclosed embodiments include transmitting an indication that a battery anomaly has been detected based on the difference meeting a threshold. For example, a computing device may transmit an indication that a battery anomaly has been detected based on the difference meeting a threshold. The computing device may compare the difference to a threshold and determine whether the difference meets (e.g., meets or exceeds) the threshold. The indication may include, for example, a notification to an individual (e.g., an operator of the battery). The indication may be in any desired form (e.g., an email notification, a pop-up window, a text message, a graphical display, a pie chart, a bar graph, an icon, etc.). The indication may be presented to an individual (e.g., an operator associated with the battery), for example.The indication may be presented on any suitable device (e.g., a user device, a computing device, etc.). In some examples, the indication may trigger an alarm, a flashing light, or any other type of signal (e.g., in a control room for an operator associated with the battery). In some examples, the indication may include a difference between the predicted temperature and the measured temperature, a threshold, and / or other information. In some examples, the indication may include a severity of the detected anomaly based on the difference between the predicted temperature and the measured temperature and / or based on the amount by which the difference between the predicted temperature and the measured temperature may exceed a threshold. Referring to FIG. 6 , at step 620, the computing device may transmit an indication of the battery's status based on the determined difference between the predicted temperature and the measured temperature. For example, the computing device may transmit an indication that a battery anomaly has been detected based on a difference that meets a threshold.

[0060]

[0066] The disclosed embodiments include configuring battery usage based on the battery's status. For example, a computing device may configure battery usage based on the battery's status. Configuring battery usage may include, for example, continuing battery usage or adjusting battery usage. For example, the computing device may continue an existing manner in which the battery may be used when the battery's status indicates a normal battery status (e.g., the computing device may not make any changes to the existing manner), or may adjust an existing manner in which the battery may be used when the battery's status indicates an abnormal battery status. Additionally or alternatively, configuring battery usage may be based on the battery's health. For example, the degree to which the manner in which the battery may be used may be changed may be configured to be inversely proportional to the battery's health (e.g., the degree of change may be smaller when the battery's health is higher and the degree of change may be greater when the battery's health is lower). The disclosed embodiments include adjusting battery usage based on detecting a battery abnormality. For example, the computing device may adjust battery usage based on detecting a battery abnormality. Disclosed embodiments include adjusting battery usage by one or more of suspending battery usage, reducing battery usage, or modifying battery usage patterns. The computing device may, for example, instruct a control component for the battery to adjust battery usage. For example, it may adjust the battery's current, current flow rate, voltage, length of time of usage, or any other usage parameter. In some examples, adjusting battery usage may be based on the severity of the detected anomaly. For example, if the detected anomaly is more severe, battery usage may be significantly reduced.Modifying the battery usage pattern may include, for example, modifying the depth of the charge / discharge cycles for the battery (e.g., switching between shallower and deeper cycles), changing the amount of charge / discharge cycles in a time frame for the battery (e.g., 1, 2, 3, 4, etc.), and / or changing any other parameters of the battery usage pattern. The depth of the charge / discharge cycles for a battery may refer, for example, to the extent to which the battery's total capacity may be discharged or charged within a charge / discharge cycle (e.g., discharge to 80% capacity and then recharge, discharge to 60% capacity and then recharge, discharge to 40% capacity and then recharge, discharge to 20% capacity and then recharge, discharge to 0% capacity and then recharge, etc.). Referring to FIG. 6 , in step 622, the computing device may configure battery usage based on the battery's condition. For example, the computing device may adjust battery usage based on detection of a battery anomaly.

[0061]

[0067] The disclosed embodiments include, for each particular battery of a plurality of batteries of one or more energy storage units, using a machine learning model to generate a predicted temperature of the particular battery at the end of a time window; receiving a measured temperature of the particular battery at the end of the time window; and determining a temperature difference between the predicted temperature of the particular battery and the measured temperature of the particular battery. For example, the computing device may determine a temperature difference between the predicted temperature and the measured temperature for each of the plurality of batteries of the one or more energy storage units. In some examples, the plurality of batteries may have relative positions that may differ from one another. Their relative positions may be input into the machine learning model so that the machine learning model may take the relative positions of the batteries into account when generating a predicted temperature for the battery. Each of the plurality of batteries may be associated with a sensor (which may have similar characteristics and / or functionality as the temperature sensor(s) described above) for measuring the temperature of the corresponding battery.

[0062]

[0068] Disclosed embodiments include displaying a user interface showing a plurality of batteries, their relative positions, and a temperature difference for each of the plurality of batteries. In some examples, the user interface may enumerate the plurality of batteries and show (e.g., list) their respective positions and temperature differences. The user interface may have any desired format (e.g., a pop-up window, a tile listing, etc.). The tile listing may include, for example, organizing the display into non-overlapping frames. In some embodiments, the user interface shows the relative positions of the plurality of batteries in a three-dimensional perspective and uses a color scale to indicate the temperature difference for each of the plurality of batteries. The temperature difference for each of the plurality of batteries may be indicated using any other desired method. FIG. 7 shows an example user interface 700 associated with anomaly detection in an energy storage system, consistent with some embodiments of the present disclosure. The user interface shows a three-dimensional view 710. The user interface shows several batteries (e.g., battery 712) as boxes. A scale 716 indicating the degree of temperature difference may use a pattern scale, a color scale, or any other type of suitable indication. Each battery depicted as a box in the user interface may be associated with and displayed (e.g., a pattern, color, etc.) a corresponding indication of the degree of temperature difference for the battery. Window 714 may be invoked, for example, when a cursor (e.g., controlled by a user) clicks or hovers over a particular battery. Additionally or alternatively, window 714 may be invoked via a touchscreen, by speaking into a microphone and / or by voice recognition and processing, by entering text into a text entry box, by selecting from a pull-down menu, or by any other desired method.Window 714 may show the battery's location (e.g., as indicated by x, y, and z coordinates), the battery's identifier (e.g., energy storage unit 3, rack 14, battery module 8), and the temperature difference for the battery (e.g., -1.1°C). The user interface shown in FIG. 7 is exemplary, and other types of displays are contemplated. For example, the user interface may be a tabular listing, an image of a rack (where batteries may be located) color-coded by temperature difference, a pie chart showing the number of batteries with different temperature differences, or a line graph. In some examples, selecting a particular battery may show a time series plot of temperature data or a tabular listing of temperature data. The user interface may present related information on one screen without requiring the user to go to multiple screens. Other buttons, list boxes, pull-down menus, and / or other features may be present to allow the user to zoom in or out of the data through one screen.

[0063]

[0069] Disclosed embodiments include determining a difference between a predicted temperature and a measured temperature for a battery for each of a plurality of time periods and determining whether a battery anomaly has been detected based on the difference for each of the plurality of time periods. For example, the predicted temperature may be determined based on a machine learning model, and the measured temperature may be measured using a sensor for the battery. The plurality of time periods may be any desired time period, such as consecutive time periods, time periods of equal length, time periods having different lengths, time periods separated by equal lengths, time periods separated by different lengths, specific times of the day over several days, and / or time periods having any other desired configuration. In some examples, the computing device may calculate an average of the differences for each of the plurality of time periods and use the average to determine whether a battery anomaly has been detected (e.g., by comparing the average to a threshold). In some examples, the computing device may determine whether the differences determined for the plurality of time periods indicate an increasing trend in the magnitude of the difference, which is indicative of a battery anomaly. Additionally or alternatively, a maximum of the determined differences for the multiple time periods, a minimum of the determined differences for the multiple time periods, a value calculated based on an arithmetic function or gradient applied to the determined differences for the multiple time periods, and / or any other desired metric based on the determined differences for the multiple time periods may be used to determine whether a battery anomaly has been detected (e.g., by comparing the metric to a threshold value).

[0064]

[0070] The disclosed embodiments include inputting usage data into a second machine learning model; generating a predicted voltage of the battery at the end of a time window based on processing of the usage data by the second machine learning model; receiving a measured voltage of the battery at the end of the time window from a voltage sensor of the battery; determining a voltage difference between the predicted voltage and the measured voltage; and transmitting an indication that a battery anomaly has been detected when the voltage difference meets a threshold. The second machine learning model may include, for example, a random forest model, a neural network, or any other suitable model. The second machine learning model may be trained using voltage data of the battery measured during a time window during which the battery was manually deemed to exhibit normal behavior. The threshold against which the voltage difference is compared may be set to any desired value (e.g., 1 volt, 2 volts, 5 volts, 10 volts, etc.) by, for example, an operator associated with the battery. In some examples, the computing device may retrieve usage data stored in a memory of the computing device and configure the second machine learning model to process the usage data. The second machine learning model may include, for example, input node(s), intermediate node(s), and / or output node(s). The value of the input node may be set to the value of the corresponding item in the usage data. An input value to the input node may trigger other nodes of the second machine learning model and cause the output node(s) to generate a value corresponding to the predicted voltage of the battery at the end of the time window. A voltage sensor may measure the voltage of the battery at the end of the time window and may send data indicative of the measured voltage to the computing device (e.g., via a connection between the voltage sensor and the computing device). The computing device may receive the data indicative of the measured voltage. The computing device may calculate a voltage difference between the measured voltage and the predicted voltage (e.g., by subtracting the measured voltage from the predicted voltage, calculating a ratio between the measured voltage and the predicted voltage, or any other desired metric).The computing device may compare the voltage difference to a threshold and may transmit an indication that a battery anomaly has been detected when the voltage difference meets (e.g., meets or exceeds) the threshold. The detection of a battery anomaly may be based on both the voltage and temperature of the battery, based on the temperature of the battery, based on the voltage of the battery, or based on other desired parameter(s) of the battery.

[0065]

[0071] In some embodiments, a method for anomaly detection in an energy storage system includes receiving, by a computing device, usage data of batteries disposed in one or more energy storage units during a time window, inputting the usage data into a machine learning model, generating a predicted temperature of the battery at the end of the time window based on processing the usage data by the machine learning model, receiving a measured temperature of the battery at the end of the time window from a temperature sensor of the battery, determining a difference between the predicted temperature and the measured temperature, transmitting an indication of the battery status based on the determined difference, and configuring battery usage based on the battery status. In some embodiments, the method includes transmitting an indication that a battery anomaly has been detected based on the difference meeting a threshold, and adjusting battery usage based on the detected battery anomaly. In some embodiments, each energy storage unit of the one or more energy storage units includes an enclosure containing a plurality of batteries. In some embodiments, the method includes, for each particular battery of a plurality of batteries of the one or more energy storage units, generating a predicted temperature of the particular battery at an end of a time period using a machine learning model, receiving a measured temperature of the particular battery at the end of the time period, and determining a temperature difference between the predicted temperature of the particular battery and the measured temperature of the particular battery. In some embodiments, the method includes displaying a user interface illustrating the plurality of batteries, relative positions of the plurality of batteries, and the temperature difference for each of the plurality of batteries.

[0066]

[0072] In some embodiments, a non-transitory computer-readable medium stores instructions for anomaly detection in an energy storage system. The instructions, when executed by at least one processor, cause the at least one processor to receive usage data for batteries disposed in one or more energy storage units during a time window, input the usage data into a machine learning model, generate a predicted temperature of the battery at the end of the time window based on processing the usage data by the machine learning model, receive a measured temperature of the battery at the end of the time window from a temperature sensor of the battery, determine a difference between the predicted temperature and the measured temperature, transmit an indication of the battery's condition based on the determined difference, and configure battery usage based on the battery's condition. In some embodiments, the instructions, when executed by the at least one processor, cause the at least one processor to transmit an indication that a battery anomaly has been detected based on the difference meeting a threshold, and adjust battery usage based on the detected battery anomaly. In some embodiments, the instructions, when executed by at least one processor, cause the at least one processor to, for each particular battery of a plurality of batteries of the one or more energy storage units, use the machine learning model to generate a predicted temperature of the particular battery at the end of a time period, receive a measured temperature of the particular battery at the end of the time period, and determine a temperature difference between the predicted temperature of the particular battery and the measured temperature of the particular battery. In some embodiments, the instructions, when executed by the at least one processor, cause the at least one processor to display a user interface showing the plurality of batteries, relative positions of the plurality of batteries, and the temperature difference for each of the plurality of batteries.

[0067]

[0073] Implementations of the disclosed methods and systems may involve performing or completing certain selected tasks or steps manually, automatically, or a combination thereof. Furthermore, depending on the actual implementation and equipment of preferred embodiments of the disclosed methods and systems, some selected steps may be implemented by hardware (HW) or software (SW) on any operating system of any firmware, or a combination thereof. For example, as hardware, selected steps of the disclosed methods and systems may be implemented as a chip or circuit. As software or algorithms, selected steps of the disclosed methods and systems may be implemented as multiple software instructions executed by a computer using any suitable operating system. In either case, selected steps of the disclosed methods and systems may be described as being performed by a data processor, such as a computing device, for executing multiple instructions.

[0068]

[0074] Various implementations of the systems and techniques described herein may be realized in digital electronic circuitry, integrated circuits, specially designed ASICs (application-specific integrated circuits), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include implementations in one or more computer programs executable and / or interpretable on a programmable system including at least one programmable processor, which may be special purpose or general purpose, coupled to receive data and instructions from, and send data and instructions to, a storage system, at least one input device, and at least one output device.

[0069]

[0075] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), middleware components (e.g., an application server), or front-end components (e.g., a client computer having a graphical user interface or web browser through which a user can interact with an implementation of the systems and techniques described herein), or any combination of such back-end, middleware, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), and the Internet. The computing system may include clients and servers. Clients and servers are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

[0070]

[0076] While certain features of the described implementations have been shown as described herein, many modifications, substitutions, changes, and equivalents will occur to those skilled in the art. It is therefore to be understood that the appended claims are intended to cover all such modifications and variations that fall within the scope of the implementations. It is to be understood that they have been presented by way of example only, and not limitation, and that various changes in form and detail may be made. Any portions of the apparatus and / or methods described herein may be combined in any combination, except mutually exclusive combinations. The implementations described herein may include various combinations and / or subcombinations of the functions, components, and / or features of the different implementations described.

[0071]

[0077] The above description has been presented for purposes of illustration. It is not exhaustive and is not limited to the precise form or embodiment disclosed. Modifications and adaptations of the embodiments will be apparent from consideration of the specification and practice of the disclosed embodiments. For example, while the described implementations include both hardware and software, systems and methods consistent with the present disclosure may be implemented solely in hardware.

[0072]

[0078] It should be understood that the above-described embodiments can be implemented by hardware, or software (program code), or a combination of hardware and software. If implemented by software, the above-described embodiments can be stored in the above-described computer-readable medium. The software, when executed by a processor, can perform the disclosed methods. The computing units and other functional units described in this disclosure can be implemented by hardware or software, or a combination of hardware and software. Those skilled in the art will also understand that multiple of the above-described modules / units can be combined into one module or unit, and that each of the above-described modules / units can be further divided into multiple sub-modules or sub-units.

[0073]

[0079] The block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer hardware or software products according to various exemplary embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code, including one or more executable instructions for implementing the specified logical function(s). It should be understood that in some alternative implementations, the functions shown in the blocks may occur in an order different from that shown in the figures. For example, two blocks shown in succession may be executed or implemented substantially simultaneously, depending on the functionality involved, or the two blocks may sometimes be executed in the reverse order. Also, some blocks may be omitted. It should also be understood that each block of the block diagrams, and combinations of blocks, may be implemented by a dedicated hardware-based system that performs the specified functions or operations, or by a combination of dedicated hardware and computer instructions.

[0074]

[0080] In the foregoing specification, embodiments have been described with reference to numerous specific details that may vary from implementation to implementation. Certain adaptations and modifications of the described embodiments may be made. Other embodiments will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples be considered exemplary only, with the true scope and spirit of the invention being indicated by the following claims. It is also intended that the sequence of steps depicted in the figures is for illustrative purposes only and is not intended to be limited to any particular sequence of steps. Thus, one skilled in the art will appreciate that these steps may be performed in different orders while implementing the same method.

[0075]

[0081] It will be understood that the embodiments of the present disclosure are not limited to the exact construction described above and illustrated in the accompanying drawings, and that various modifications and changes can be made without departing from the scope thereof. Also, other embodiments will be apparent to those skilled in the art from consideration of the specification and practice of the disclosed embodiments disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the disclosed embodiments being indicated by the appended claims.

[0076]

[0082] Furthermore, although exemplary embodiments are described herein, the scope includes any and all embodiments having equivalent elements, modifications, omissions, combinations (e.g., of aspects across various embodiments), adaptations, or variations based on the present disclosure. The elements within the claims should be construed broadly based on the language employed in the claims and not limited to the examples described within the specification or during prosecution of the application. These examples should be construed as non-exclusive. Furthermore, the steps of the disclosed methods may be modified in any manner, including rearranging steps or inserting or deleting steps. Accordingly, it is intended that the specification and examples be considered as exemplary only, with the true scope and spirit being indicated by the following claims and their full scope of equivalents.

Claims

1. one or more energy storage units; 1. A computing device comprising at least one processor and a memory storing instructions, the instructions, when executed by the at least one processor, causing the computing device to: receiving usage data of batteries located within the one or more energy storage units during a time period; inputting the usage data into a machine learning model; generating a predicted temperature of the battery at the end of the time period based on processing the usage data by the machine learning model; receiving a measured temperature of the battery from a temperature sensor of the battery at the end of the time period; determining a difference between the predicted temperature and the measured temperature; transmitting an indication of the battery's condition based on the determined difference; and Configuring use of the battery based on the condition of the battery. a computing device that causes the A system comprising:

2. The system of claim 1 , wherein each energy storage unit of the one or more energy storage units comprises an enclosure containing a plurality of batteries.

3. The usage data of the battery the starting state of charge of the battery for the time period; the ending state of charge of the battery for the time period; the sum of the squares of the currents in the battery for the time period; a voltage pattern of the battery associated with the time period; a dispatch pattern associated with the battery for the time period; the measured temperature of the battery at the beginning of the time period; an ambient temperature or humidity associated with the battery during the time period; one or more utilization parameters of a cooling system for the battery during the time frame; or the relative position of the battery within the enclosure of an energy storage unit containing the battery; The system of claim 1 , comprising one or more of:

4. The system of claim 1 , wherein the machine learning model comprises one of a random forest model or a neural network.

5. The instructions, when executed by the at least one processor, cause the computing device to: receiving specific usage data for the battery during a period during which the battery was manually deemed to be exhibiting normal behavior; receiving measured temperature data of the battery at the end of each of said time periods; and training the machine learning model using the particular usage data and the measured temperature data; The system of claim 1 .

6. The instructions, when executed by the at least one processor, cause the computing device to: For each particular battery of the plurality of batteries of the one or more energy storage units: using the machine learning model to generate a predicted temperature for the particular battery at the end of the time period; receiving a measured temperature of the particular battery at the end of the time period; and determining a temperature difference between the predicted temperature of the particular battery and the measured temperature of the particular battery; The system of claim 1 .

7. The instructions, when executed by the at least one processor, cause the computing device to: The system of claim 6 , further comprising displaying a user interface showing the plurality of batteries, their relative positions, and the temperature differential for each of the plurality of batteries.

8. The system of claim 7 , wherein the user interface indicates the relative positions of the plurality of batteries in a three-dimensional perspective and uses a color scale to indicate the temperature difference for each of the plurality of batteries.

9. The instructions, when executed by the at least one processor, cause the computing device to: determining a difference between a predicted temperature and a measured temperature for each of a plurality of time periods for the battery; and determining whether an abnormality in the battery has been detected based on the difference for each of the plurality of time periods; The system of claim 1 .

10. The system of claim 1 , wherein the computing device is associated with a cloud architecture.

11. The system of claim 1 , wherein the computing device is local to the one or more energy storage units.

12. The instructions, when executed by the at least one processor, cause the computing device to: transmitting an indication that an anomaly has been detected in the battery based on the difference satisfying a threshold; and adjusting the use of the battery based on detecting the abnormality in the battery. The system of claim 1 .

13. The instructions, when executed by the at least one processor, cause the computing device to: inputting the usage data into a second machine learning model; generating a predicted voltage of the battery at the end of the time period based on processing the usage data by the second machine learning model; receiving, from a voltage sensor of the battery, a measured voltage of the battery at the end of the time period; determining a voltage difference between the predicted voltage and the measured voltage; and transmitting the indication that the abnormality in the battery has been detected when the voltage difference meets a threshold. The system of claim 12 .

14. The instructions, when executed by the at least one processor, cause the computing device to:

13. The system of claim 12, wherein the use of the battery is regulated by one or more of suspending the use of the battery, reducing the use of the battery, or modifying a usage pattern of the battery.

15. receiving, by a computing device, usage data of batteries located in one or more energy storage units during a time period; inputting the usage data into a machine learning model; generating a predicted temperature of the battery at the end of the time period based on processing the usage data by the machine learning model; receiving a measured temperature of the battery from a temperature sensor of the battery at the end of the time period; determining a difference between the predicted temperature and the measured temperature; transmitting an indication of the battery's condition based on the determined difference; configuring usage of the battery based on the condition of the battery; A method comprising:

16. For each particular battery of the plurality of batteries of the one or more energy storage units: using the machine learning model to generate a predicted temperature for the particular battery at the end of the time period; receiving a measured temperature of the particular battery at the end of the time period; determining a temperature difference between the predicted temperature of the particular battery and the measured temperature of the particular battery; 16. The method of claim 15, further comprising:

17. displaying a user interface showing the plurality of batteries, their relative positions, and the temperature differential for each of the plurality of batteries.

17. The method of claim 16.

18. 1. A non-transitory computer-readable medium storing instructions that, when executed by at least one processor, cause the at least one processor to: receiving usage data of batteries located within one or more energy storage units during a time period; inputting the usage data into a machine learning model; generating a predicted temperature of the battery at the end of the time period based on processing the usage data by the machine learning model; receiving a measured temperature of the battery from a temperature sensor of the battery at the end of the time period; determining a difference between the predicted temperature and the measured temperature; transmitting an indication of the battery's condition based on the determined difference; and Configuring use of the battery based on the condition of the battery. to carry out Non-transitory computer-readable medium.

19. The instructions, when executed by at least one processor, cause the at least one processor to: For each particular battery of the plurality of batteries of the one or more energy storage units: using the machine learning model to generate a predicted temperature for the particular battery at the end of the time period; receiving a measured temperature of the particular battery at the end of the time period; and determining a temperature difference between the predicted temperature of the particular battery and the measured temperature of the particular battery; to carry out 20. The non-transitory computer-readable medium of claim 18.

20. The instructions, when executed by at least one processor, cause the at least one processor to: displaying a user interface showing the plurality of batteries, the relative positions of the plurality of batteries, and the temperature differential for each of the plurality of batteries.

20. The non-transitory computer-readable medium of claim 19.