Electric vehicle battery management system based on single chip microcomputer design

Publisher:sdlg668Latest update time:2014-10-29 Source: eefocus Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
Electric vehicles are vehicles that are fully or partially driven by electric motors. Currently, there are three main types of vehicles: pure electric vehicles, hybrid electric vehicles, and fuel cell vehicles. Electric vehicles are currently powered by lead-acid batteries, lithium batteries, nickel-metal hydride batteries, etc.

Lithium batteries have high cell voltage, high specific energy and high energy density, and are currently the batteries with the highest specific energy. However, it is precisely because of the high energy density of lithium batteries that they can cause safety accidents when misused or abused. The battery management system can solve this problem. When the battery is in the state of over-voltage during charging or under-voltage during discharging, the management system can automatically cut off the charge and discharge circuit. Its power balancing function can ensure that the voltage difference of a single battery is maintained within a very small range. In addition, it also has functions such as over-temperature, over-current and remaining power estimation. This article designs a battery management system based on a single-chip microcomputer [1].

1 Battery Management System Hardware Composition

The system's hardware circuit can be divided into MCU module, detection module and balancing module.

1.1 MCU module

MCU is the core of system control. The MCU used in this article is the GZ16 model of the M68HC08 series. All MCUs in this series use the enhanced M68HC08 central processing unit (CP08). This microcontroller has the following features:

(1) 8 MHz internal bus frequency; (2) 16 KB of built-in FLASH memory; (3) 2 16-bit timer interface modules; (4) Clock generator supporting 1 MHz to 8 MHz crystal oscillators; (5) Enhanced serial communication interface (ESCI) module.

1.2 Detection Module

The detection module will introduce the voltage detection, current detection and temperature detection modules respectively.

1.2.1 Voltage detection module

In this system, the microcontroller will detect the overall voltage and single-cell voltage of the battery pack. There are two methods for detecting the overall voltage of the battery pack: (1) using a dedicated voltage detection module, such as a Hall voltage sensor; (2) using precision resistors to build a resistor voltage divider circuit. The use of a dedicated voltage detection module is expensive and requires a specific power supply, and the process is relatively complicated. Therefore, a voltage divider circuit is used for detection. The voltage variation range of a 10-series lithium manganese oxide battery pack is 28 V to 42 V. Using 3.9 M? and 300 k? resistors for voltage division, the range of the collected voltage signal is 2 V to 3 V, and the corresponding AD conversion results are 409 and *.

For the detection of single cells, flying capacitor technology is mainly used. The principle diagram of flying capacitor technology is shown in Figure 1 [2], which is a protection circuit diagram of the last 4 cells of the battery pack. Through the four-channel switch array, the voltage of any one of the last 4 cells can be collected into the single-chip microcomputer. The single-chip microcomputer outputs a drive signal to control the on and off of the MOS tube, thereby protecting the charging and discharging of the battery pack. As shown in Figure 1, this is a protection circuit diagram of the last 4 cells of the battery pack. Through the four-channel switch array, the voltage of any one of the last 4 cells can be collected into the single-chip microcomputer. The single-chip microcomputer outputs a drive signal to control the on and off of the MOS tube, thereby protecting the charging and discharging of the battery pack.

The above 6 batteries can be realized by using 2 three-channel switch arrays. MAX309 is a 4-to-1 dual-channel multi-way switch, which realizes channel selection by address selection. Switches S5, S6, and S7 are responsible for connecting the positive electrode of the battery to the positive electrode of the flying capacitor. Switches S2, S3, and S4 are responsible for connecting the negative electrode of the battery to the negative electrode of the flying capacitor. The structure of the three-channel switch array is similar to that of the four-channel switch array, except that the number of channels is one less. When working, the microcontroller sends a channel address signal to connect the positive and negative electrodes of one of the batteries to the capacitor to charge the capacitor, then disconnect the channel switch and connect the switch of the follower amplifier. The microcontroller quickly detects the voltage of the capacitor, thereby completing the voltage detection of one battery. If the detection voltage is found to be less than 2.8 V, it can be inferred that the battery may be short-circuited, over-discharged, or the detection line from the protection system to the battery is broken, and the microcontroller will immediately send a signal to cut off the main circuit MOS tube. Repeat the above process, and the microcontroller completes the detection of the battery managed by this module.

1.2.2 Current sampling circuit

When sampling current, the parameters in the battery management system are an important basis for battery overcurrent protection. The current sampling circuit in this system is shown in Figure 2. When the battery is discharging, the current signal is detected by a constantan wire, and the detected voltage signal is amplified by a differential amplifier and converted into a 0-5 V voltage signal and sent to the single-chip microcomputer. If the discharge current is too large, the voltage signal detected by the single-chip microcomputer is relatively large, which will drive the transistor to act, change the MOS tube gate voltage, and shut down the discharge circuit. For example, for a 36 V lithium manganese oxide battery, the protection current is set to 60 A. The resistance of the constantan wire is about 5 mΩ. When the current reaches 60 A, the voltage of the constantan wire reaches about 300 mV. To improve accuracy, the voltage is amplified 10 times by an amplifier and sent to the single-chip microcomputer for detection. 1.2.3 Temperature detection


During the charging and discharging process of the battery pack, part of the energy is released in the form of heat. If this part of the heat is not removed in time, it will cause the battery pack to overheat. If the temperature of a single NiMH battery exceeds 55°C, the battery characteristics will deteriorate, the battery pack charge and discharge balance will be broken, and then the battery pack will be permanently damaged or exploded. To prevent the above situation from happening, it is necessary to monitor the battery pack temperature in real time and perform heat dissipation. [page]

Thermistors are used as temperature sensors for temperature sampling. Thermistors are heat-sensitive semiconductor resistors whose resistance decreases as temperature increases. The resistance-temperature characteristic can be approximately expressed by the following formula: 1.3 Balance module


Common equalization methods for battery packs include shunt method, fast capacitor equalization charging method, inductive energy transfer method, etc. In this system, more I/O ports are needed to drive the switch tube, but the I/O ports of the single-chip microcomputer are limited, so the charging equalization method of full charge to single charge is adopted. The schematic diagram is shown in Figure 3. Q4 is the switch that controls the full charge of the battery pack, and Q2, Q3, and Q5 are switches that control the charging of a single battery. Taking a 10-cell lithium manganese oxide battery pack as an example, the voltage across the main coil of the transformer is 42 V, and the voltage of the secondary coil is the rated voltage of the battery, 4.2 V. At the beginning, Q4 is turned on, Q2, Q3, and Q5 are turned off, and the voltage of a single battery continues to rise. When it is detected that the voltage of a certain battery reaches the rated voltage of 4.2 V, the voltage detection chip sends a drive signal, turns off Q4, turns on Q2, Q3, and Q5, and the entire system enters the single charge stage. The battery that is not fully charged continues to charge, so that the battery that reaches the rated voltage maintains the rated voltage unchanged. After testing, the voltage difference will not exceed 50 mV. 2 SOC power detection


In lithium-ion battery management systems, commonly used SOC calculation methods include open circuit voltage method, coulomb calculation method, impedance measurement method, and comprehensive table lookup method [3].

(1) The open circuit voltage method is the simplest measurement method, which mainly determines the SOC based on the open circuit voltage of the battery. From the working characteristics of the battery, it can be seen that there is a certain corresponding relationship between the open circuit voltage of the battery and the remaining capacity of the battery.

(2) The Coulomb calculation method measures the charging and discharging current of the battery, integrates the product of the current value and the time value, and calculates the amount of electricity charged and discharged by the battery, thereby estimating the SOC value.

(3) The impedance measurement method uses the linear relationship between the internal resistance of the battery and the state of charge (SOC). By measuring the voltage and current parameters of the battery, the internal resistance of the battery is calculated, thereby obtaining an estimated value of the SOC.

(4) In the comprehensive table lookup method, the remaining capacity SOC of the battery is closely related to the battery voltage, current, temperature and other parameters. By setting up a correlation table and inputting parameters such as voltage, current, temperature, etc., the remaining capacity value of the battery can be queried.

In this design, considering the integration of the circuit, cost, and performance of the selected MCU, the software programming method is adopted. Combining several methods, the Coulomb calculation method is more appropriate.

(1) C represents the total amount of electricity discharged when the lithium battery pack drops from 42 V to 32 V.

(2) η represents the ratio of the amount of electricity discharged after the current i has passed for a period of time t to C. CRM is the remaining capacity. Let ΔCi=i×Δt, which represents the discharge amount of the battery pack at a discharge rate of i during the dwell time t; or the charge amount at a charge rate of i. The remaining capacity is actually the calculation and accumulation of ΔCi. Set a suitable sampling time Δt, measure the current current value, and then calculate the product to obtain the change in the remaining capacity CRM within the Δt time, thereby continuously updating the value of CRM to achieve SOC power detection. 3 Experimental results



The battery management system is used to test the charge and discharge of the lithium manganese oxide battery pack. Figure 4(a) is a test diagram of the lithium battery pack discharge. The discharge current is 8 A. When the battery pack voltage drops to 32 V, the discharge MOS tube is turned off. Figure 4(b) is a test diagram of the charging. After 4 hours of charging, the balance is completed. The battery management system in this paper is based on M68HC08GZ16, which realizes the acquisition of the voltage, current and temperature signals of the battery pack. After the charging power is balanced, the voltage difference of the single cell does not exceed 50 mV. The overall system has good operating performance and can meet the application needs of electric vehicle power battery packs.

Reference address:Electric vehicle battery management system based on single chip microcomputer design

Previous article:Car wireless remote control door opening technology
Next article:Design of battery management system for NiMH battery electric vehicle based on CAN bus

Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号