System and method for implementation of an analog front end (AFE) framework
The AFE framework addresses the inefficiencies of BMS-AFE coupling by enabling seamless integration and adaptive operation across different AFE models, enhancing performance and reducing development time through pre-stored libraries.
Patent Information
- Application Number
- PCT/IB2024/060519
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-30
- Filing Date
- 2024-10-25
- Publication Date
- 2026-02-05
AI Technical Summary
Existing battery management systems (BMS) are tightly coupled with specific Analog Front End (AFE) architectures, requiring extensive redevelopment and resource-intensive testing when switching to new AFE models, leading to operational inefficiencies and vendor dependency.
An Analog Front End (AFE) framework that manages communication between the BMS and multiple AFEs, using pre-stored libraries to facilitate seamless integration and data retrieval from battery packs, enabling efficient parameter acquisition and adaptive operation across different AFE configurations.
The AFE framework allows for easy integration and testing of new AFEs, reduces development time, enhances performance and reliability, and supports modular updates without extensive reprogramming, ensuring consistent functionality across various AFE models.
Smart Images

Figure IB2024060519_05022026_PF_FP_ABST
Abstract
Description
SYSTEM AND METHOD FOR IMPLEMENTATION OF AN ANALOG FRONT END (AFE) FRAMEWORKFIELD OF THE INVENTION
[0001] The present invention relates to a battery management system. More particularly, the present invention relates to a system and a method for implementation of an Analog Front End (AFE) framework.BACKGROUND
[0002] Usually, in a battery management system (BMS), an Analog Front End (AFE) is used to interact with a battery pack to receive information such as cell voltages, current, and temperature. The received information is processed by a microcontroller unit to determine an operational status of the battery pack. However, there are a variety of AFE architectures available, each having a different configuration structure and the ability to handle different numbers of battery cells. Since, the BMS is usually adapted to work with a specific type of AFE, setting up the BMS to work with a new type of AFE may take a lot of time and effort. Therefore, the testing and evaluation of different types of available AFEs for use in the BMS is resource and time intensive.
[0003] Typically, the BMS is developed to be compatible with a specific AFE. For instance, the BMS may be developed for an AFE Model ‘X’. Thus, the BMS may include functions and protocols tailored specifically for the AFE Model X's libraries, resulting in a tightly coupled system. If a new AFE Model ‘Y’ is introduced, the BMS must be extensively redeveloped to support the AFE Model ‘Y's’ different libraries and protocols. Consequently, such tight coupling hinders the ability to easily test or integrate new AFEs with the BMS. Further, it becomes hard to maintain and fix issues across different BMS setups that use different AFEs, since the BMS is linked to the AFE. This makes the developer rely only on a single vendor / supplier for supplying AFEs, thereby elevating business challenges.Further, there may be instances where a semiconductor shortage may force the user to rely on more than one type of AFE. In such scenarios, the developer may take time and effort to decouple the BMS software from the AFE to test the new type of available AFEs. Consequently, this results in operational inefficiency and time consumption.
[0004] Therefore, in view of the problems mentioned above, it is advantageous to provide a method and a system to implement an Analog Front End (AFE) framework, to overcome the limitations known in the existing method used in the state of the art.SUMMARY
[0005] This summary is provided to introduce a selection of concepts, in a simplified format, that are further described in the detailed description of the invention. This summary is neither intended to identify key or essential inventive concepts of the invention nor is it intended for determining the scope of the invention.
[0006] To overcome, or at least mitigate, one of the problems mentioned above in the state of the art, there is a requirement for a system and a method to obtain battery parameters using an Analog Front End (AFE) framework.
[0007] In an aspect of the present invention, a method for obtaining one or more parameters associated with one or more battery packs is disclosed. The method includes receiving, by an Analog Front End (AFE) framework, a request to obtain the one or more parameters associated with the one or more battery packs. The one or more parameters indicates an operational status of the one or more battery packs. The method also includes correlating, by the AFE framework, one or more prestored AFE libraries with at least one AFE in communication with the one or more battery packs. The one or more pre-stored AFE libraries indicates a set of configuration parameters of the at least one AFE. The method further includes determining, by the AFE framework, a pre-stored AFE library among the one or more pre-stored AFE libraries corresponding to the at least one AFE based on the correlation. The method also includes obtaining, by the AFE framework, the one ormore parameters from the one or more battery packs based on the determined prestored AFE library.
[0008] In another aspect of the present invention, a system for obtaining one or more parameters associated with one or more battery packs is disclosed. The system includes at least one battery pack comprising one or more battery cells, at least one Analog Front End (AFE) in communication with the one or more battery packs, and at least one controller in communication with the at least one AFE and the at least one battery pack. The at least one controller comprises an AFE framework configured to receive a request to obtain the one or more parameters associated with the one or more battery packs. The one or more parameters indicates an operational status of the one or more battery packs. The AFE framework is further configured to correlate one or more pre-stored AFE libraries with the at least one AFE, where the one or more pre-stored AFE libraries indicates a set of configuration parameters of the at least one AFE. The AFE framework is also configured to determine a prestored AFE library among the one or more pre- stored AFE libraries corresponding to the at least one AFE based on the correlation. The AFE framework is also configured to obtain the one or more parameters from the one or more battery packs based on the determined pre-stored AFE library.
[0009] In yet another aspect of the present invention, an Analog Front End (AFE) framework of a system for obtaining one or more parameters associated with one or more battery packs is disclosed. The AFE framework includes a receiving module, a correlating module, a determining module, and an obtaining module. The receiving module is configured to receive a request to obtain the one or more parameters associated with the one or more battery packs, the one or more parameters indicates an operational status of the one or more battery packs. The correlating module is configured to correlate one or more pre-stored AFE libraries with at least one AFE in communication with the one or more battery packs, the one or more pre- stored AFE libraries indicates a set of configuration parameters of the at least one AFE. The determining module is configured to determine a prestored AFE library among the one or more pre- stored AFE libraries corresponding to the at least one AFE based on the correlation. The obtaining module is configured to obtain the one or more parameters from the one or more battery packs based on the determined pre-stored AFE library.
[0010] To further clarify the advantages and features of the present invention, a more particular description of the invention will be rendered by reference to specific embodiments thereof, which are illustrated in the appended drawings. It is appreciated that these drawings depict only typical embodiments of the invention and are therefore not to be considered limiting of its scope. The invention will be described and explained with additional specificity and detail with the accompanying drawings.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] These and other features, aspects, and advantages of the present invention will become better understood when the following detailed description is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
[0012] Figure 1 illustrates an electronic control unit for an implementation of a system for obtaining one or more parameters from one or more battery packs, according to an embodiment of the present disclosure;
[0013] Figure 2 illustrates a block diagram of the system for obtaining the one or more parameters associated with the one or more battery packs, according to an embodiment of the present disclosure;
[0014] Figure 3 illustrates a block diagram depicting one or more components of the system for obtaining the one or more parameters using the AFE framework, according to an embodiment of the present disclosure;
[0015] Figure 4a and Figure 4b illustrate process flow charts for obtaining the one or more parameters from at least one AFE in a BMS using the AFE framework, according to various embodiments of the present disclosure;
[0016] Figure 5 exemplary illustrates a plurality of BMS applications using the AFE framework, according to another embodiment of the present disclosure;
[0017] Figure 6 exemplary illustrates a BMS application monitoring the one or more battery pack having corresponding AFEs by utilizing the AFE framework, according to another embodiment of the present disclosure;
[0018] Figure 7 illustrates a use case of the system for obtaining the one or more parameters from the one or more battery packs corresponding to vehicle- 1 and vehicle-2 by utilizing the AFE framework, according to an embodiment of the present disclosure; and
[0019] Figure 8 illustrates a flowchart depicting an exemplary method for obtaining the one or more parameters from the one or more battery packs by utilizing the AFE framework, according to an embodiment of the present disclosure.
[0020] Further, skilled artisans will appreciate that elements in the drawings are illustrated for simplicity and may not have necessarily been drawn to scale. For example, the flow charts illustrate the method in terms of the most prominent steps involved to help improve understanding of aspects of the present invention. Furthermore, in terms of the construction of the device, one or more components of the device may have been represented in the drawings by conventional symbols, and the drawings may show only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the drawings with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.DETAILED DESCRIPTION OF FIGURES
[0021] For the purpose of promoting an understanding of the principles of the present disclosure, reference will now be made to the various embodiments and specific language will be used to describe the same. It will nevertheless be understood that no limitation of the scope of the present disclosure is thereby intended, such alterations and further modifications in the illustrated system, and such further applications of the principles of the present disclosure as illustrated therein being contemplated as would normally occur to one skilled in the art to which the present disclosure relates.
[0022] It will be understood by those skilled in the art that the foregoing general description and the following detailed description are explanatory of the present disclosure and are not intended to be restrictive thereof.
[0023] Whether or not a certain feature or element was limited to being used only once, it may still be referred to as “one or more features” or “one or moreelements” or “at least one feature” or “at least one element.” Furthermore, the use of the terms “one or more” or “at least one” feature or element do not preclude there being none of that feature or element, unless otherwise specified by limiting language including, but not limited to, “there needs to be one or more. ..” or “one or more elements is required.”
[0024] Reference is made herein to some “embodiments.” It should be understood that an embodiment is an example of a possible implementation of any features and / or elements of the present disclosure. Some embodiments have been described for the purpose of explaining one or more of the potential ways in which the specific features and / or elements of the proposed disclosure fulfill the requirements of uniqueness, utility, and non-obviousness.
[0025] Use of the phrases and / or terms including, but not limited to, “a first embodiment,” “a further embodiment,” “an alternate embodiment,” “one embodiment,” “an embodiment,” “multiple embodiments,” “some embodiments,” “other embodiments,” “further embodiment”, “furthermore embodiment”, “additional embodiment” or other variants thereof do not necessarily refer to the same embodiments. Unless otherwise specified, one or more particular features and / or elements described in connection with one or more embodiments may be found in one embodiment, or may be found in more than one embodiment, or may be found in all embodiments, or may be found in no embodiments. Although one or more features and / or elements may be described herein in the context of only a single embodiment, or in the context of more than one embodiment, or in the context of all embodiments, the features and / or elements may instead be provided separately or in any appropriate combination or not at all. Conversely, any features and / or elements described in the context of separate embodiments may alternatively be realized as existing together in the context of a single embodiment.
[0026] Any particular and all details set forth herein are used in the context of some embodiments and therefore should not necessarily be taken as limiting factors to the proposed disclosure.
[0027] The terms “comprises”, “comprising”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a process or method that comprises a list of steps does not include only those steps but mayinclude other steps not expressly listed or inherent to such process or method. Similarly, one or more devices or sub-systems or elements or structures or components proceeded by “comprises... a” does not, without more constraints, preclude the existence of other devices or other sub-systems or other elements or other structures or other components or additional devices or additional subsystems or additional elements or additional structures or additional components.
[0028] Embodiments of the present disclosure will be described below in detail with reference to the accompanying drawings.
[0029] For the sake of clarity, the first digit of a reference numeral of each component of the present disclosure is indicative of the Figure number, in which the corresponding component is shown. For example, reference numerals starting with digit “1” are shown at least in Figure 1. Similarly, reference numerals starting with digit “2” are shown at least in Figure 2.
[0030] Embodiments of the present disclosure disclose a system and a method to obtain battery parameters using an Analog Front End (AFE) framework. The AFE framework manages communication between a Battery Management System (BMS) and a plurality of Analog Front Ends (AFEs). The AFE framework enables the BMS to obtain operational parameters related to voltage, current, and temperature from the plurality of AFEs efficiently. The AFE framework further performs cell balancing, and / or cell protection actions on battery cells based on the obtained operational parameters.
[0031] Figure 1 illustrates an electronic control unit (ECU) 100 for an implementation of a system for obtaining one or more parameters from one or more battery packs, according to an embodiment of the present disclosure.
[0032] In a non-limiting example, an Electric Vehicle (EV) or a battery- powered vehicle including, but not limited to two-wheelers such as scooters, mopeds, motorbikes / motorcycles; three-wheelers such as auto-rickshaws, four- wheelers such as cars and other Light Commercial Vehicles (LCVs) and Heavy Commercial Vehicles (HCVs) primarily work on the principle of driving an electric motor using a power from one or more batteries provided in the EV. Furthermore, the electric vehicle may have at least one wheel which is electrically powered totraverse such a vehicle. The term ‘wheel’ may refer to any ground-engaging member that allows traversal of the electric vehicle over a path. The types of EVs include Battery Electric Vehicle (BEV), Hybrid Electric Vehicle (HEV), and Range Extended Electric Vehicle. However, the subsequent paragraphs pertain to different elements of the Battery Electric Vehicle (BEV).
[0033] In construction, the BEV, commonly referred to as EV, may typically comprise hardware components such as a battery or battery pack enclosed within a battery casing and includes a Battery Management System (BMS), an onboard charger, a Motor Controller Unit (MCU), an electric motor, and an electric transmission system. In addition to the hardware components / elements, the EV may be supported with software modules comprising intelligent features including but not limited to navigation assistance, hill assistance, cloud connectivity, Over-The- Air (OTA) updates, adaptive display techniques, and so on. A firmware of the EV may also comprise Artificial Intelligence (Al) & Machine Learning (ML) driven modules which enable the prediction of a plurality of parameters such as and not limited to driver / rider behaviour, road condition, charging infrastructures / charging grids in the vicinity and so on. The data pertaining to the intelligent features may be displayed through a display unit present in a dashboard of the vehicle. In one embodiment, the display unit may contain a Liquid Crystal Display (LCD) screen of a predefined dimension. In another embodiment, the display unit may contain a Light-Emitting Diode (LED) screen of a predefined dimension. The display unit may be a water-resistant display supporting one or more User- Interface (UI) designs. The EV may support multiple frequency bands such as 2G, 3G, 4G, 5G and so on. Additionally, the EV may also be equipped with wireless infrastructure such as, but not limited to Bluetooth, Wi-Fi and so on to facilitate wireless communication with other EVs or the cloud.
[0034] The ECU 100 of the EV may be responsible for managing all the operations of the EV, wherein the key elements of the ECU 100 typically include (i) a microcontroller core (or processing unit) 102; (ii) a memory unit 104; (iii) a plurality of input 106 and output units 108, and (iv) communication protocols including, but not limited to CAN protocol, Serial Communication Interface (SCI) protocol and so on. A sequence of programmed instructions and data associated therewith can be stored in a non-transitory computer-readable medium such as amemory unit or a storage device which may be any suitable memory apparatus such as, but not limited to a read-only memory (ROM), a programmable read-only memory (PROM), an electrically erasable programmable read-only memory (EEPROM), a random-access memory (RAM), a flash memory, a disk drive and the like. In one or more embodiments of the disclosed subject matter, the non- transitory computer-readable storage media may be embodied with the sequence of programmed instructions for monitoring and controlling the operation of different components of the EV.
[0035] The Processing Unit 102 may include any computing system that includes, but is not limited to, a Central Processing Unit (CPU), an Application Processor (AP), a Graphics Processing Unit (GPU), a Visual Processing Unit (VPU), and / or an Al-dedicated processor such as a Neural Processing Unit (NPU). In an embodiment, the processor may be a single processing unit or several processing units, all of which may include multiple computing units. The processing unit 102 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and / or any devices that manipulate signals based on operational instructions. Among other capabilities, the processing unit 102 may be configured to fetch and execute computer-readable instructions and data stored in the memory. The instructions may be compiled from source code instructions provided in accordance with a programming language such as Java, C++, C#.net, or the like. The instructions can also comprise code and data objects provided in accordance with, for example, the Visual Basic™ language, Lab VIEW, or another structured or object-oriented programming languages. The one or more processors may control the processing of the input data in accordance with a predefined operating rule or artificial intelligence (Al) model stored in the nonvolatile memory and the volatile memory. The predefined operating rule or artificial intelligence model is provided through training or learning algorithms which include, but are not limited to, supervised learning, unsupervised learning, semisupervised learning, or reinforcement learning.
[0036] Furthermore, the modules, processes, systems, and devices may be implemented as a single processor or as a distributed processor. Also, the processes, modules, and sub-modules described in the various figures of and for embodimentsherein may be distributed across multiple computers or systems or may be colocated in a single processor or system. Further, the modules may be implemented in hardware, instructions executed by the processing unit 102, or by a combination thereof. The processing unit 102 may comprise a computer, a processor, such as the processor, a state machine, a logic array, or any other suitable devices capable of processing instructions. The processing unit 102 may be a general -purpose processor which executes instructions to cause the general-purpose processor to perform the required tasks or, the processing unit 102 may be dedicated to performing the required functions. In another embodiment of the present disclosure, the modules may be machine-readable instructions (software) which, when executed by a processor / processing unit, perform any of the described functionalities. The data serves, amongst other things, as a repository for storing data processed, received, and generated by one or more of the modules. Exemplary structural embodiment alternatives suitable for implementing the modules, sections, systems, means, or processes described herein are provided below.
[0037] Figure 2 illustrates a block diagram of the system 200 for obtaining the one or more parameters associated with the one or more battery packs 212, according to an embodiment of the present disclosure. The system 200 may be deployed in the electric vehicle to monitor an operational status of the one or more battery packs 212. Accordingly, the system 200 may include, but not limited to, the processing unit 102 alternatively be referred to as “the processor 102”, an Analog Front End (AFE) 210, and the one or more battery pack 212. In another embodiment, the AFE 210 may be integrated with the processing unit 102. In an alternative embodiment, the AFE 210 and the one or more battery pack 212 may be disposed external to the system 200. Further, the system 200 may include, but is not limited to, a BMS application 202, memory 204, one or more modules 206, and data 208. The one or more modules 206 and the memory 204 may be coupled to the processor 102.
[0038] The processor 102 may be a single processing unit or several units, all of which could include multiple computing units. Among other capabilities, the processor 102 may be adapted to fetch and execute computer-readable instructions and data stored in the memory 204. The memory 204 may include any non- transitory computer-readable medium known in the art including, for example,volatile memory, such as static random-access memory (SRAM) and dynamic random-access memory (DRAM), and / or non-volatile memory, such as read-only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. The memory 204 may alternatively be referred to as a database 204 in the present disclosure, within the scope of the invention.
[0039] The modules 206, amongst other things, may include routines, programs, objects, components, data structures, etc., which perform particular tasks or implement data types. The modules 206 may also be implemented as, signal processor(s), state machine(s), logic circuitries, and / or any other device or component that manipulates signals based on operational instructions.
[0040] Further, the modules 206 may be implemented in a hardware, instructions executed by the processing unit 102, or by a combination thereof. The processing unit 102 may comprise a computer, a processor, a state machine, a logic array, or any other suitable devices capable of processing instructions. The processing unit 102 may be a general-purpose processor (e.g., processor 102) which executes instructions to cause the general -purpose processor to perform the required tasks or, the processing unit 102 may be dedicated to performing the required functions. In another embodiment of the present disclosure, the modules 206 may be machine-readable instructions (software) which, when executed by the processor 102 / processing unit, perform any of the described functionalities / methods, as discussed throughout the present disclosure.
[0041] In an embodiment, the modules 206 may include a receiving module 214, a correlating module 216, a determining module 218, and an obtaining module 220. The receiving module 214, the correlating module 216, the determining module 218, and the obtaining module 220 may be in communication with each other. The data 208 serves, amongst other things, as a repository for storing data processed, received, and generated by one or more of the modules 206.
[0042] In an embodiment, an Analog Front End (AFE) framework (shown in Figure 3) may reside in the processor 102 and interact with the plurality of AFEs collectively numbered as 210. Each of the plurality of AFEs 210 may be configured to gather one or more parameters such as, but not limited to, a cell voltage, a current, and / or a temperature, from one or more battery cells (not shown). In addition to theone or more parameters, the AFE framework may be capable of collecting cell diagnostic data. The cell diagnostic data may further include error reporting and signal integrity checks. In an exemplary scenario, error reporting may encompass identification of any faults or anomalies detected within the one or more battery cells, such as, but is not limited to, over-voltage, under- voltage, or over-temperature conditions. In another exemplary scenario, signal integrity checks may ensure that data transmitted from the one or more battery cells to the plurality of AFEs 210 may be accurate and free from corruption. The one or more parameters may be required to determine the operational status of the one or more battery packs 212.
[0043] In an embodiment, the receiving module 214 of the AFE framework may be configured to receive a request to obtain the one or more parameters associated with the one or more battery packs 212. Further, the correlating module 216 of the AFE framework may be configured to correlate one or more pre-stored AFE libraries (shown in Figure 3) with at least one AFE 210 (may alternatively be referred to as ‘the AFE 210’) in communication with the one or more battery packs 212. The one or more pre-stored AFE libraries may indicate a set of configuration parameters of the at least one AFE. The determining module 218 of the AFE framework may be configured to determine a pre- stored AFE library among the one or more pre-stored AFE libraries (shown in Figure 3) corresponding to the at least one AFE based on the correlation. The obtaining module 220 of the AFE framework may be configured to obtain the one or more parameters from the one or more battery packs 212 based on the determined pre-stored AFE library.
[0044] In another embodiment, the AFE framework 302 may also include a detecting module 222 and a performing module 224. The detecting module 222 may be configured to detect the operational status of the one or more battery packs 212 based on the obtained one or more parameters. Further, the performing module 224 may be configured to perform at least one of a cell balancing action or a cell protection action on the one or more battery cells.
[0045] Further, paragraphs of Figures 3-7 may provide a detailed description of the AFE framework.
[0046] Figure 3 illustrates a block diagram depicting one or more components of the system 200 for obtaining the one or more parameters using the AFE framework 302, according to an embodiment of the present disclosure.
[0047] In an aspect of the present invention, the BMS 202 may be a critical component in battery-powered devices and systems, especially those utilizing rechargeable batteries such as, but not limited to, lithium-ion (Li-ion), nickel-metal hydride (NiMH), and the like. The BMS 202 may ensure a safe and efficient operation of the one or more battery packs 212 associated with the BMS thereby extending a lifespan and maintaining optimal performance of the one or more battery packs 212. The BMS manages the one or more battery packs 212 by continuously monitoring the one or more parameters. The BMS may further ensure that the one or more battery packs 212 operates within safe limits and provides the necessary power for an intended application.
[0048] Referring to Figure 3, the BMS may have, but not limited to, the processing unit 102, the at least one AFE 210, and the one or more battery packs 212. The processing unit 102, the at least one AFE 210, and the one or more battery packs 212 may be in communication with each other to determine the operational status of the one or more battery packs 212. The processing unit 102 may process information related to the one or more parameters of the one or more battery packs 212 that may be received from the at least one AFE 210. The processing unit 102 may be adapted to execute control algorithms stored in the memory 204 and manage communication with external systems. Further, the processing unit 102 may be adapted to execute the BMS application 202.
[0049] In an embodiment, the AFE 210 may be an interface between the one or more battery packs 212 and the processing unit 102. The AFE 210 may be adapted to accurately measure electrical parameters from the one or more battery packs 212 and convert analog signals into digital data for further processing by the processing unit 102. Furthermore, the one or more battery packs 212 may include the one or more battery cells that may be connected in series and / or parallel to achieve a specific voltage and battery capacity. The one or more battery packs 212 may be defined as an energy storage unit that powers a specific device.
[0050] In an embodiment, the BMS application 202 may be, but not limited to, a software, an algorithm, or a set of instructions that may reside in the memory 204 of the processing unit 102. The BMS application 202 may be configured to monitor, control, and protect the one or more battery packs 212. In an embodiment, the BMS application 202 may serve as a central hub for managing complex interactions between the one or more battery cells within the one or more battery packs 212, hardware components, and user interfaces. The BMS application 202 may collect real-time data from the one or more battery cells, including the one or more parameters such as the voltage, the current, the temperature, and a state of charge (SoC). The data may then be processed and the operation status of the one or more battery packs 212 may be analyzed to prevent overcharge and overdischarge conditions and ensure thermal management to avoid overheating.
[0051] Further, the BMS application 202 may also include, but not limited to, advanced algorithms to predict a state of health (SoH) of the one or more battery packs 212 to estimate remaining battery life and manage energy usage to extend the lifespan of the one or more battery packs 212. The BMS application 202 may communicate with external devices and systems through a plurality of protocols thereby providing battery status information to users and other system components. Additionally, the BMS application 202 may also trigger alarms and safety mechanisms in case of detected anomalies, such as short circuits or abnormal temperature rises, thereby protecting the one or more battery packs 212 and a device that the one or more battery packs 212 power.
[0052] In an embodiment, the AFE framework 302 may be configured to manage an interaction between the BMS application 202 and the at least one AFE 210 among the plurality of AFEs 210-1, 210-2, 210-3...210-n (collectively numbered as 210). The AFE framework 302 may be an intermediary layer between the BMS application 202 and the at least one AFE 210. The AFE framework 302 may be configured to determine a configuration structure of each of the plurality of AFEs 210 and obtain the one or more parameters from the one or more battery packs by employing one or more prestored AFE libraries 306 corresponding to the plurality of AFEs 210. The AFE framework 302 may include, but not limited to, the receiving module 214, the correlating module 216, determining module 218, and the obtaining module 220.
[0053] In an embodiment, the receiving module 214 may be configured to receive the request to obtain the one or more parameters associated with the one or more battery packs 212. Further, the correlating module 216 may be configured to correlate the one or more pre-stored AFE libraries 306 with the at least one AFE 210 in communication with the one or more battery packs 212. The one or more pre-stored AFE libraries 306 may indicate a set of configuration parameters of the at least one AFE 210. The determining module 218 may be configured to determine a pre-stored AFE library among the one or more pre-stored AFE libraries 306 corresponding to the at least one AFE 210 based on the correlation. The obtaining module 220 may be configured to obtain the one or more parameters from the one or more battery packs 212 based on the determined pre-stored AFE library.
[0054] Therefore, the AFE framework 302 may allow for easier integration of the plurality of AFEs 210. Due to the incorporation of the AFE framework 302, a development and testing time that was required during the integration of new AFEs within the BMS may be minimized. The incorporation of the AFE framework ensures that the BMS may adapt to different hardware configurations without significant changes to the BMS application 202. Further, the AFE framework 302 may enhance the overall performance and reliability of battery management operations.
[0055] In an embodiment, the AFE framework 302 may include an AFE configuration structure 304 and the one or more prestored AFE libraries 306. The AFE configuration structure 304 may be a set of protocols or rules configured to determine the set of configuration parameters for each of the plurality of AFEs 210. The set of configuration parameters may indicate specific settings and operational guidelines necessary for the AFE 210 to function within the Battery Management System (BMS). Further, the set of configuration parameters may include an AFE configuration, a communication protocol, and a cell count.
[0056] Further, the AFE 210 may utilize different communication protocol for exchanging data. In a non-limiting example, the at least one AFE 210 may use serial peripheral interface (SPI) protocol or inter-integrated circuit (I2C) protocol for data communication thus defining a process of exchanging the data between the processing unit 102 and the at least one AFE 210. In an exemplary scenario, theAFE configuration may include parameters for analog-to-digital conversion settings, such as sampling rates. Additionally, calibration data within the configuration structure 304 may also be provided for adjustments to account for any inherent inaccuracies in the data provided by the at least one AFE 210 thereby enhancing an accuracy of the information associated with the one or more parameters.
[0057] Further, the pre-stored AFE libraries 306 may be one or more modules or routines associated with each of the plurality of the AFEs 210. The prestored AFE libraries 306 may be configured to interact with hardware components of each of the plurality of the AFEs 210 within the BMS. The pre-stored AFE libraries 306 may encapsulate a software code and / or algorithm required to manage communication, data acquisition, and control functions of the plurality of AFEs 210 to enable seamless integration and operation within the BMS. Each pre-stored AFE library among the pre-stored AFE libraries 306 may include a set of standardized interfaces and function definitions that correspond to unique configurations and protocols of the at least one AFE 210.
[0058] Furthermore, the pre-stored AFE libraries 306 may be a ready-to- use repository of software components. In a non-limiting example, when the BMS application 202 may require data on the one or more parameters from a selected AFE, a pre-store AFE library among the pre-stored AFE libraries 306 may be retrieved and utilized to communicate with the selected AFE thus ensuring that the communication and data processing may adhere to a specific requirement of the selected AFE. The use of the pre-stored AFE libraries 306 may enhance modularity and scalability of the BMS thus allowing for easy updates and upgrades to support new AFE models without extensive reprogramming.
[0059] In an alternative embodiment, the pre-stored AFE libraries 306 may be stored in a cloud-based storage system. The BMS may be adapted to retrieve the pre-stored AFE library corresponding to the selected AFE from the cloud whenever required. The cloud-based storage system may ensure easy updates and scalability. Further, the cloud-based storage system may provide a latest AFE configuration and protocol that may be available without requiring any manual updates to a local system. In an embodiment, the AFE framework 302 may also include predefinedApplication Programming Interfaces (APIs) configured to communicate with the at least one AFE based on the received request.
[0060] Referring to Figure 3, the BMS application 202 may be in communication with the AFE framework 302 to manage and monitor the one or more battery packs 212. Further, the one or more battery packs 212 may be connected to corresponding AFEs. Each AFE may communicate with the AFE framework 302 via the AFE configuration structure 304 and the pre-stored libraries 306 thereby ensuring that the BMS receives accurate and timely data about the operational status of the one or more battery packs 212.
[0061] In another embodiment, the AFE framework 302 may also include the detecting module 222 and the performing module 224. The detecting module 222 may be configured to detect the operational status of the one or more battery packs 212 based on the obtained one or more parameters. Further, the performing module 224 may be configured to perform at least one of the cell balancing action or the cell protection action on the one or more battery cells. In an exemplary scenario, the cell balancing action may ensure that the one or more cells within the one or more battery packs 212 may be maintained at similar voltage levels for optimizing an overall performance and longevity of the one or more battery packs 212. Based on the voltage readings obtained from the one or more battery cells, the performing module 224 may be adapted to balance the one or more battery cells by either shunting excess charge from higher voltage cells to lower voltage cells or by controlling the charging / discharging cycles to equalize cell voltages among the one or more battery cells. Thus, the performing module 224 may be adapted to prevent such scenarios where some cells become overcharged while others remain undercharged.
[0062] In another exemplary scenario, the performing module 224 may be adapted to perform cell protection action safeguard the one or more battery cells from conditions that may potentially harm the one or more battery packs 212 or reduce the lifespan. Thus, the performing module 224 may protect the one or more battery packs 212 against over-voltage, under- voltage, over-current, and overtemperature situations. The performing module 224 further utilizes obtained one or more parameters such as voltage, current, and temperature readings to identify anyunsafe conditions. For instance, if a cell is detected to be overheating, the performing module 224 may trigger a cooling mechanism or reduce the charging current. Similarly, if a cell is overcharged, the performing module may cut off the charging to prevent damage. The cell balancing action and the cell protection action performed by the performing module 224 may ensure a safe operation of the one or more battery pack under various operating conditions.
[0063] Figure 4a and Figure 4b illustrate process flow charts for obtaining the one or more parameters from the at least one AFE 210 in the BMS using the AFE framework 302, according to various embodiments of the present disclosure.
[0064] As may be depicted from the Figure 4a, when the BMS application 202 requires the cell voltage reading from the battery pack 212. The BMS then calls a standardized API function, such as “read cell voltage Q The API function may be designed to request cell voltage data from the at least one AFE 210 selected by the AFE framework 302 based on the requirement from the BMS application 202. When the “read cell voltage Q ” API may be called, the AFE framework 302 may then act as the intermediary layer and route the API call to the at least one AFE selected during the compilation time. Further, when the AFE framework 302 routes the API function, the BMS application 202 may not know specific details or configurations of the AFE hardware.
[0065] In another embodiment, as depicted in Figure 4b, when the BMS application 202 requires the cell voltage reading from the battery pack 212. The BMS then calls the standardized API function, “read cell voltageQ ” . The AFE framework 302 based on the requirement from the BMS application 202, routes the API function for cell voltage reading from the BMS application 202 to a source file where the correct function of the selected AFE may be present. When the “read cell voltage Q ’’API may be called, the AFE framework 302 may route the API call to the at least one AFE 210 selected during a run time.
[0066] In an advantageous aspect, during the run time, when the at least one AFE 210 may be unknown or different from a previously selected AFE, then also the AFE framework 302 may be able to determine the pre-stored AFE library among the one or more pre-stored AFE libraries 306 corresponding to the unknown AFE. Hence, the AFE framework 302 may be designed with a high degree offlexibility and adaptability to handle a variety of AFEs even during the run time. In an exemplary scenario, the at least one AFE 210 may be adapted to identify the set of configuration parameters, such as, not limited to, the communication protocols, the cell count, and the AFE configuration, which may be unique to the unknown AFE. The AFE framework 302 may then correlate the set of AFE configuration parameters with the one or more pre-stored AFE libraries 306. Once a match is found, the AFE framework 302 may retrieve the pre-stored library among the corresponding to the one or more pre-stored AFE libraries 306 thus ensuring that the unknown / new AFE may be seamlessly integrated and managed by the BMS.
[0067] Once the selected AFE measures the cell voltage, the selected AFE may then send the voltage reading back through the AFE framework 302 to the BMS application 202. The AFE framework 302 may ensure that the cell voltage reading may be correctly routed and interpreted by the BMS application 202 thus providing a seamless and efficient data retrieval process.
[0068] In conclusion, when the BMS application 202 runs, the BMS application 202 may require the cell voltage value, the current value, and / or the temperature values, etc. To get the aforementioned values, the BMS application 202 calls the APIs such as, but not limited to, “afe read cv() ”, “afe read ciirrenlQ ” or “afe start cell balancingO The APIs used by BMS application 202 may be declared in a common header file. Further, the header file may be independent of the type of AFE used. The header file may include declarations of all the APIs required to get the required information (cell voltage, current, temperature etc.) from each of the plurality of AFEs 210. Further, the correct function of the APIs may be provided under respective AFE modules having the pre-stored AFE libraries 306. When the BMS application 202 runs and calls for the APIs, the AFE framework 302 may be adapted to point to the specific source file of the respective AFE module where the correct function may be available. Then, the correct function may be implemented as per protocols and algorithms of the selected AFE. An AFE type selection may be done during the compile time or the run time.
[0069] Figure 5 exemplary illustrates a plurality of the BMS applications 202-1, 202-2 using the AFE framework 302, according to another embodiment of the present disclosure.
[0070] In an exemplary embodiment, the plurality of the BMS applications 202-1, 202-2 includes a BMS application- 1 202-1 and a BMS application-2 202-2 that may be configured to interface with the AFE framework 302. Each of the plurality of the BMS applications 202-1, 202-2 may be configured to handle specific configurations or tasks within the BMS. The AFE framework 302 may act as a bridge between each of the plurality of the BMS applications 202-1, 202-2 and the AFE 210. The AFE framework 302 may ensure that the API calls from each of the plurality of BMS applications 202-1, 202-2 may be correctly routed to the AFE 210.
[0071] Figure 6 exemplary illustrates the BMS application 202 monitoring the one or more battery packs 212-1, 212-2 having corresponding AFEs 210-1, 210- 2 by utilizing the AFE framework 302, according to another embodiment of the present disclosure.
[0072] In an exemplary embodiment, AFE-1 210-1 and AFE-2 210-2 may be coupled to battery pack-1 212-1 and battery pack-2 212-2 respectively. Each of the AFE-1 210-1 and AFE-2210-2 may have specific tasks and configurations with respect to the battery pack-1 212-1 and the battery pack-2212-2 respectively. Thus, advantageously, the AFE framework 302 may act as a bridge between the BMS application 202 and the AFE-1 210-1 and AFE-2210-2. In an advantageous aspect, the AFE framework 302 may ensure that the API calls from the BMS application 202 may be correctly routed to each of the AFE-1 210-1 and AFE-2 210-2. Similarly, the AFE framework 302 may be adapted to obtain the data from each of the AFE-1 210-1 and AFE-2 210-2 and correctly route the data to the BMS application 202.
[0073] Figure 7 illustrates a use case 700 of the system 200 for obtaining the one or more parameters from the one or more battery packs 212 corresponding to vehicle- 1 702a and vehicle-2 702b by utilizing the AFE framework 302, according to an embodiment of the present disclosure.
[0074] In an exemplary embodiment, the vehicle- 1 702a and the vehicle-2 702b may have respective one or more battery packs and associated AFEs. As depicted in Figure 7, the BMS application 202 and the AFE framework 302 may be utilized for both the vehicles 702a, 702b. Further, the BMS application 202 and theAFE framework 302 may be capable to maintain consistent functionality and performance, regardless of a specific vehicle configuration in which the BMS application 202 and the AFE framework 302 may be deployed.
[0075] In an advantageous aspect of the present disclosure, a same BMS application code associated with the BMS application 202 may be effectively used for both the vehicles 702a, 702b. More specifically, developers may not need to write a separate code for each vehicle thereby significantly simplifying development, deployment, and maintenance process. The BMS application 202, supported by the AFE framework 302 may be adapted to abstract one or more complexities of different hardware configurations and provide a standardized interface for battery management tasks.
[0076] The AFE framework 302 may act as a bridge between the BMS application 202 and the AFEs of the vehicles 702a, 702b. The AFE framework 302 may ensure that the API calls from the BMS application 202 may be correctly routed to the AFE of each of the vehicles 702a, 702b. Similarly, the AFE framework 302 may be adapted to obtain data from the AFEs of the vehicles 702a, 702b and correctly route the data to the BMS application 202.
[0077] The disclosed system and method are designed to be adaptable thereby allowing for different combinations of the aforementioned components to suit specific requirements and use cases. This flexibility ensures that the BMS can be customized to meet diverse operational needs while maintaining high standards of performance and safety. It is to be understood that the present disclosure is not limited to the specific embodiments described herein but includes any combination of the one or more components of the BMS, including variations and modifications thereof.
[0078] Figure 8 illustrates a flowchart depicting an exemplary method 800 for obtaining one or more parameters from the one or more battery packs 212 by utilizing the AFE framework 302, according to an embodiment of the present disclosure. The method 800 may be a computer-implemented method executed, for example, by the system 200 and the modules 206. For the sake of brevity, the constructional and operational features of the system 200 that are already explainedin the description of Figure 1, Figure 2, Figure 3, Figure 4a, Figure 4b, Figure 5, Figure 6, and Figure 7, are not explained in detail in the description of Figure 8.
[0079] At step 802, the method 800 may include receiving, by AFE framework 302, the request to obtain the one or more parameters associated with the one or more battery packs 212. The one or more parameters may indicate an operational status of the one or more battery packs 212.
[0080] At step 804, the method 800 may include correlating, by the AFE framework 302, the one or more pre-stored AFE libraries 306 with the at least one AFE 210 in communication with the one or more battery packs 212. The one or more pre-stored AFE libraries 306 may indicate a set of configuration parameters of the at least one AFE 210.
[0081] At step 806, the method 800 may include determining, by the AFE framework 302, a pre-stored AFE library among the one or more pre-stored AFE libraries 306 corresponding to the at least one AFE 210 based on the correlation.
[0082] At step 808, the method 800 may include obtaining, by the AFE framework 302, the one or more parameters from the one or more battery packs 212 based on the determined pre-stored AFE library.
[0083] While the above-discussed steps in Figures 2-7 are shown and described in a particular sequence, the steps may occur in variations to the sequence in accordance with various embodiments. Further, a detailed description related to the various steps of Figure 8 is already covered in the description related to Figures 2-7 and is omitted herein for the sake of brevity.
[0084] The present disclosure provides various advantages:• The present disclosure provides the AFE framework that simplifies the integration process of the new AFE within the BMS, thus reducing development and testing time for new BMS configurations. The present disclosure further supports various configurations, including single or multiple BMS applications interfacing with one or more AFEs, providing flexibility to adapt to different operational needs.• The present disclosure incorporates the usage of pre-stored AFE libraries and the AFE framework that ensure that the system may easily scale to support new AFE models and configurations without extensive reprogramming.• The present disclosure may allow for different BMS applications that may be tailored to handle specific tasks or configurations thereby optimizing performance for particular battery management functions.• The present disclosure allows for easy integration of the new AFEs to meet specific operational requirements and constraints and extensive customization of the BMS, thereby making the AFE framework suitable for a wide range of applications.
[0085] It will be appreciated that the modules, processes, systems, and devices described above can be implemented in hardware, hardware programmed by software, software instruction stored on a non-transitory computer-readable medium or a combination of the above. Embodiments of the methods, processes, modules, devices, and systems (or their sub-components or modules), may be implemented on a general-purpose computer, a special-purpose computer, a programmed microprocessor or microcontroller and peripheral integrated circuit element, an ASIC or other integrated circuit, a digital signal processor, a hardwired electronic or logic circuit such as a discrete element circuit, a programmed logic circuit such as a programmable logic device (PLD), programmable logic array (PLA), field-programmable gate array (FPGA), programmable array logic (PAL) device, or the like. In general, any process capable of implementing the functions or steps described herein can be used to implement embodiments of the methods, systems, or computer program products (software program stored on a non- transitory computer readable medium).
[0086] Furthermore, embodiments of the disclosed methods, processes, modules, devices, systems, and computer program products may be readily implemented, fully or partially, in software using, for example, object or object- oriented software development environments that provide portable source code that can be used on a variety of computer platforms. Alternatively, embodiments of the disclosed methods, processes, modules, devices, systems, and computer program products can be implemented partially or fully in hardware using, for example,standard logic circuits or a very-large-scale integration (VLSI) design. Other hardware or software can be used to implement embodiments depending on the speed and / or efficiency requirements of the systems, the particular function, and / or particular software or hardware system, microprocessor, or microcomputer being utilized.
[0087] In this application, unless specifically stated otherwise, the use of the singular includes the plural and the use of “or” means “and / or.” Furthermore, use of the terms “including” or “having” is not limiting. Any range described herein will be understood to include the endpoints and all values between the endpoints. Features of the disclosed embodiments may be combined, rearranged, omitted, etc., within the scope of the invention to produce additional embodiments. Furthermore, certain features may sometimes be used to advantage without a corresponding use of other features.
[0088] List of reference numerals:
Claims
WE CLAIM:
1. A method (800) for obtaining one or more parameters associated with one or more battery packs (212), the method (800) comprising: receiving (802), by an Analog Front End (AFE) framework (302), a request to obtain the one or more parameters associated with the one or more battery packs (212), the one or more parameters indicates an operational status of the one or more battery packs (212); correlating (804), by the AFE framework (302), one or more prestored AFE libraries with at least one AFE (210) in communication with the one or more battery packs (212), the one or more pre-stored AFE libraries (306) indicates a set of configuration parameters of the at least one AFE (210); determining (806), by the AFE framework (302), a pre-stored AFE library among the one or more pre-stored AFE libraries (306) corresponding to the at least one AFE (210) based on the correlation; and obtaining (808), by the AFE framework (302), the one or more parameters from the one or more battery packs (212) based on the determined pre-stored AFE library.
2. The method (800) as claimed in claim 1, wherein each of the one or more battery packs (212) comprises one or more battery cells.
3. The method (800) as claimed in claim 1, comprises: detecting the operational status of the one or more battery packs (212) based on the obtained one or more parameters.
4. The method (800) as claimed in claim 1 , wherein the one or more parameters includes a cell voltage, a current, and a temperature,.
5. The method (800) as claimed in claim 1, wherein the set of configuration parameters includes an AFE configuration, a communication protocol, a number of AFEs (210), and a cell count.
6. The method (800) as claimed in claim 1, wherein receiving the request comprises: receiving the request from at least one BMS application (202).
7. The method (800) as claimed in claim 1, wherein prior to receiving the request, the method (800) comprises: determining the one or more pre-stored AFE libraries (306) and the corresponding at least one AFE (210) during one of a compile time and a run time.
8. The method (800) as claimed in claim 1, wherein the AFE framework (302) includes an AFE configuration structure (304) and predefined Application Programming Interfaces (APIs) configured to communicate with the at least one AFE based on the received request, the AFE configuration structure (304) includes the one or more prestored AFE libraries (306).
9. The method as claimed in claim 1, further comprising: performing at least one of cell balancing action and cell protection action on one or more battery cells of the one or more battery packs (212) based on the one or more parameters.
10. A system (200) for obtaining one or more parameters associated with one or more battery packs (212), the system (200) comprising: the one or more battery packs (212) comprises one or more battery cells; at least one Analog Front End (AFE) (210) in communication with the one or more battery packs (212); and at least one controller (102) in communication with the AFE (210) and the one or more battery packs (212), the at least one controller (102) comprises an AFE framework (302) configured to: receive a request to obtain the one or more parameters associated with the one or more battery packs (212), the one or more parameters indicates an operational status of the one or more battery packs (212);correlate one or more pre-stored AFE libraries (306) with the at least one AFE (210), the one or more pre-stored AFE libraries (306) indicates a set of configuration parameters of the at least one AFE (210); determine a pre- stored AFE library among the one or more pre-stored AFE libraries (306) corresponding to the at least one AFE (210) based on the correlation; and obtain the one or more parameters from the one or more battery packs (212) based on the determined pre-stored AFE library.
11. The system (200) as claimed in claim 10, wherein the one or more parameters includes a cell voltage, a current, and a temperature.
12. The system (200) as claimed in claim 10, wherein the set of configuration parameters includes an AFE configuration, a communication protocol, a number of AFEs (210), and a cell count.
13. The system (200) as claimed in claim 10, wherein the AFE framework (302) is configured to: detect the operational status of the one or more battery packs (212) based on the obtained one or more parameters.
14. The system (200) as claimed in claim 10, wherein to receive the request, the AFE framework (302) is configured to: receive the request from at least one BMS application (202).
15. The system (200) as claimed in claim 10, wherein prior to receive the request, the AFE framework (302) is configured to: determine the one or more pre-stored AFE libraries (306) and the corresponding at least one AFE (210) during one of a compile time and a run time.
16. The system (200) as claimed in claim 10, wherein the AFE framework (302) includes an AFE configuration structure (304) and predefined ApplicationProgramming Interfaces (APIs) configured to communicate with the at least one AFE (210) based on the received request, the AFE configuration structure (304) includes the one or more prestored AFE libraries (306).
17. The system (200) as claimed in claim 10, wherein the AFE framework is further configured to: perform at least one of cell balancing action or cell protection action on the one or more battery cells of the one or more battery packs (212) based on the one or more parameters.
18. An Analog Front End (AFE) framework (302) of a system (200) for obtaining one or more parameters associated with one or more battery packs (212), the AFE framework (302) comprising: a receiving module (214) configured to receive a request to obtain the one or more parameters associated with the one or more battery packs (212), the one or more parameters indicates an operational status of the one or more battery packs (212); a correlating module (216) configured to correlate one or more prestored AFE libraries (306) with at least one AFE (210) in communication with the one or more battery packs (212), the one or more pre-stored AFE libraries (306) indicates a set of configuration parameters of the at least one AFE (210); a determining module (218) configured to determine a pre- stored AFE library among the one or more pre-stored AFE libraries (306) corresponding to the at least one AFE (210) based on the correlation; and an obtaining module (220) configured to obtain the one or more parameters from the one or more battery packs (212) based on the determined pre- stored AFE library.
19. The AFE framework (302) as claimed in claim 18, wherein the one or more parameters includes a cell voltage, a current, and a temperature.
20. The AFE framework (302) as claimed in claim 18, wherein the set of configuration parameters includes an AFE configuration, a communication protocol, a number of AFEs (210), and a cell count.
21. The AFE framework (302) as claimed in claim 18, wherein the AFE framework (302) is implemented in at least one controller of the system (200).
22. The AFE framework (302) as claimed in claim 18, comprising an AFE configuration structure (304) and predefined Application Programming Interfaces (APIs) configured to communicate with the at least one AFE (210) based on the received request, the AFE configuration structure (304) includes the one or more prestored AFE libraries (306).
23. The AFE framework (302) as claimed in claim 18, wherein each of the one or more battery packs (212) comprises one or more battery cells.
24. The AFE framework (302) as claimed in claim 18, comprising a detecting module configured to detect the operational status of the one or more battery packs (212) based on the obtained one or more parameters.
25. The AFE framework (302) as claimed in claim 18, wherein the receiving module (214) is configured to receive the request from at least one BMS application (202).
26. The AFE framework (302) as claimed in claim 18, wherein prior to receive the request, the AFE framework (302) is configured to: determine the one or more pre-stored AFE libraries (306) and the corresponding at least one AFE (210) during one of a compile time and a run time.
27. The AFE framework (302) as claimed in claim 18, comprising a performing module configured to: perform at least one of cell balancing action or cell protection action on one or more battery cells of the one or more battery packs (212) based on the one or more parameters.
Citation Information
Patent Citations
Battery system coding grouping method
CN114079091A
Battery pack detection method, device, equipment and medium
CN114394033A