The functional module of the BMS (Battery Management System) consists of the control module of the microcontroller (MCU) and the sensing module of the analog front end (AFE).

Microcontroller Unit (MCU)

In BMS, the MCU is equivalent to the brain. The MCU captures all data from the sensors through its peripherals and processes the data to make appropriate decisions based on the battery pack's profile.

Shanghai Hangxin general MCU ACM32F0 series is supported by its low power consumption + 1 channel CAN + 100,000 times of erasing and writing 128K on-chip Flash + 125 degrees high temperature; ACM32F4 series is supported by its 180MHz STAR-MC1 (M33) core + Flash acceleration + 100,000 times Erasing and writing 512K on-chip Flash+2-channel CAN+125 degree high temperature support is widely used in BMS scenarios.

The MCU has the following functions:

• Monitor battery

• Protect the battery

• Evaluate battery status

• Optimized battery performance

• data record

• Reporting to users or external devices via communication channels

For battery safety, the MCU has the following features:

• Prevent the cells in the battery pack from overvoltage by stopping charging (signaling the contactor to close).

• Prevent battery cell temperature in the battery pack from exceeding the upper threshold by reducing/stopping the current or activating the cooling system in the battery pack. This protects the battery from thermal runaway which could create safety issues.

• Prevents cells in the pack from going into undervoltage by limiting/stopping discharge current.

• Protect the battery pack from short circuits and overloads by opening the contactor.

BMS basic function module connected with MCU

The MCU will be connected with several functional blocks, such as:

Hall Effect Current Sensor (Current Measurement)

Power Supply Unit: PSU

Contactor (Contact Drive)

SD card (Data Storage)

Real Time Clock and Calendar (RTCC)

GPIO connector

CAN connector

Bluetooth (BLE)

HV Interlock Loop

Insulation Monitoring Device (IMD)

Voltage Measurement Port (Voltage Measurement)

ISO-SPI channel

1. Hall effect current sensor (Current Measurement)

Hall-effect sensors are placed within the magnetic field created by the cables that carry the current from the battery pack. It produces a voltage proportional to this current, which can be measured directly, as shown in the figure below.

Hall effect sensors have the following characteristics:

• The current reported by the Hall-effect sensor remains accurate over time and temperature.

• The Hall effect sensor is galvanically isolated from the battery pack, so isolation is not required.

• Hall effect sensors have a temperature-dependent offset at zero current. So even if they are zeroed at room temperature, when they get hot or cold, they may still report a small current when there is no current. Therefore, frequent calibration is required in applications with 0 current cycles, such as HEV.

Hall-effect current sensors are modules that contain their own amplifiers, so their output value is at a higher level, unlike the cut-off signal. They can be powered by a 5V bidirectional supply (charge and discharge currents can be seen).

Based on this, the bidirectional sensor will have a bipolar output. When its output is 2.5V, it can be considered that the current is 0A, and the actual output value will swing up and down at 2.5V. The voltage output produced by the current sensor sends it back to the BMS, which will estimate the actual current based on the sensitivity of the current sensor.

2. Power Supply Unit: PSU

The work of the MCU requires a power input, which can be provided by the auxiliary power supply or the battery pack itself through the DC-DC converter.

3. Contactor (Contact Drive)

A contactor is a functional block used to connect or isolate a battery pack and a load or charging circuit. Typically, a battery pack system has 3 different contactors:

• Charge

• discharge

• Precharge

In some applications like energy storage systems, only one contactor will be used for charging and discharging. The switching of the contactor is controlled by the BMS through the drive circuit. The BMS will send a power-on signal to the drive circuit, which energizes the contactor for operation. The selection of the contactor is based on the charge/discharge current. For low current and low voltage applications, we can choose a MOSFET based solution instead of a contactor.

4. SD card (Data Storage)

It can store BMS configuration files and battery-generated data. The BMS can store battery data for up to 15 years. This allows the user to understand the behavior of the battery pack and protect the battery from potential damage.

The battery analysis cloud platform "Edison" can use these data to obtain the following functions:

• Provides analysis and insight into battery health through a dashboard

• Alerts to any abnormal battery operation and takes prompt action

• Use machine learning algorithms to propose corrective actions to prevent battery degradation and increase battery life by 40%.

• Roll out OTA updates and feature additions to BMS via cloud platform

5. Real Time Clock and Calendar (RTCC)

RTCC is used to time stamp data stored in the SD card. This helps users perform root cause analysis of any potential damage to the battery pack at any point in time.

6. GPIO Connector

GPIO connectors are provided to connect additional functions to the BMS, such as cooling system, heating system, ignition, sensors, etc. Enable this feature by changing the configuration file.

7. CAN Connector

CAN connector to MCU for internal and external communication. Internal CAN communication is required if more than one BMS is connected in the system. External CAN communication is often used to exchange information such as voltage, current, errors, etc. External CAN communication is typically used for CAN chargers, CAN displays, CAN data loggers, etc.

8. Bluetooth (BLE)

It is a wireless mode to communicate with BMS. Users can connect the battery pack via bluetooth, which allows to visualize all important battery information such as voltage, current, temperature, SOC, SOH, errors, etc.

9. High Voltage Interlock Loop

An interlocking PWM loop mechanism is used to detect tampering or opening of high voltage equipment and disconnection of service connections. The High Voltage Interlock Loop (HVIL) is used to determine whether a high voltage system such as a power source (such as a vehicle battery), a load (such as a vehicle motor), and the conductors between them are properly connected. If not, the battery contactor is not allowed to close, or if already closed, an open command is issued.

10. Insulation Monitoring Device (IMD)

Typically used in EVs and ESS applications, IMD will ensure the electrical safety and reliability of electric vehicles equipped with high voltage battery packs. The IMD continuously monitors the insulation resistance between the phase conductors and earth in the system during charging or driving.

11. Voltage Measurement Port

The terminals are connected by contactors and are mainly used for welding inspection, total battery voltage measurement and voltage-based precharging. For high voltage and high current applications, it is possible for the contactor to be welded.

In this case, the contactor will not be allowed to open even if the BMS issues an open signal. Therefore, the BMS recognizes that welding has occurred in the contactor and sends an alarm/error message via CAN to the external device to take emergency action.

12.ISO-SPI channel

The ISO-SPI channel is used for internal communication between master (control circuit) and slave (sensor circuit).

Analog Front End (AFE)

An AFE is an integrated circuit (IC) in a BMS designed to pack all the analog circuitry required for BMS system design and operation into a small package. It contains voltage values ​​used to measure each cell in the stack. The AFE can measure 3 to 15 cells in series in a battery pack in the 0-5V range.

The AFE also plays an important role in triggering the balance circuit. The AFE IC contains a built-in temperature sensor to measure the BMS board temperature. The AFE has a small internal digital state machine that manages voltage sequencing measurements at the IC's inputs and provides an I2C interface.

Features of AFE include:

• Measure the voltage of each battery cell and set it to the MCU

• Measure temperature (usually via NTC thermistor)

• Balanced circuit for each unit

The basic function block of the BMS connected to the AFE, the AFE is connected to several function blocks such as:

Voltage detection channel

Temperature Sensor

GPIO connector


ISO-SPI channel

analog filter

AFE power supply

1. Voltage detection channel

The voltage sensing channel takes readings from the individual cells in the pack and sends them to the AFE, which also acts as a channel for balancing the cells.

2. Temperature sensor

NTC thermistor temperature sensors are critical components for the safety of Li-ion batteries. They provide critical temperature data needed to keep lithium-ion batteries in top condition during charge/discharge cycles. A temperature sensor will be placed in the hot spot of the battery pack, measuring the temperature in the form of voltage and sending the data to the AFE.

3. Balancer

When the cells in the battery pack exceed the defined unbalance value, the AFE will send a trigger signal controlled by the MCU to the balance circuit in the BMS.

4. GPIO connector

GPIO connectors are used to connect additional functions to the BMS, such as cooling system, contactor control, heating system, ignition, sensors, etc. The relevant functions can be activated by changing the firmware.

5. ISO-SPI channel

The ISO-SPI channel is used for internal communication between the slave device (sensor circuit) and the master device (control circuit).

6. Analog filter

It filters electrical noise in voltage and temperature measurements.

7. Power AFE

It represents the power supply unit required for the operation of the AFE. Typically, the power supply unit is taken out of the battery stack.

Leave a Reply

Your email address will not be published. Required fields are marked *