# Analysis and Synthesis of Architectures for Automotive Battery Management Systems
### Battery Management Systems  
A BMS aims to measure different parameters of a battery, such as cell- and module voltages or currents, as well as temperatures. In addition, the BMS calculates different quantities such as SOC, SOL, SOP and SOH [7]. Furthermore, it measures the charging and discharging current of a battery, using shunts, Hall or/and fluxgate sensors. The purpose of a BMS is to keep the battery operating in a safe, reliable and efficient way in every operating state [8]. For this, the BMS consists of different modules, actors and sensors. In general, there are three different BMS architectures in BEVs and HEVs. One of them is the centralized architecture, which collects and processes the measurements on a single module over one channel connection to each battery module. There is also a decentralized architecture, which can be separated into a modular and a distributed sub-architecture. The modular architecture consists of several slave modules and a master module, which communicates via CAN or a wireless connection. While the slave modules measure voltages, currents and temperatures at each battery module, the master module collects the overall measurements of each measurement module and processes the different states out of them. Finally, the distributed architectures are also built out of a main computing unit (master) and several measurement units (slaves). Different from the modular architecture, it has one slave for each battery cell. This is why this topology often becomes more expensive than the others [29; 30; 31; 32]. Figure 2 shows all possible BMS architectures (centralized; decentralized) in general and for overview.  
Even though commercial BMS use master and slave solutions in a decentralized modular way, there are several architectures and ways to implement them. Besides the most common way to use one slave per battery module and connect it via daisy or ring chain to one master unit, some companies work with wireless transmitters from the slaves to the master [33] and others use one master for each battery module section (string). The master as a computing unit communicates with several systems and actors. It advises  
Figure 2: BMS topologies: centralized, decentralized (modular) and decentralized (distributed).  
other components how to proceed with calculated and measured data. Therefore, the BMS nowadays acts as an ECU [34].  
Data such as temperature and voltage are measured relatively constant to be able to calculate the different states (e.g., SOC) as well as possible; a BMS can measure these values in a time interval around 200-300 us [35]. The amount of data which is produced and collected by the BMS does not exceed the bandwidth of the CAN communication yet. Due to that, CAN, UART, and RS232 are common communication channels inside the BMS modules as well as between the BMS and other subsystems. To avoid over-charge and over-discharge currents, the BMS communicates to the junction box and therefore switches the high voltage contactors as well as the contractor of the pre-charging circuit. The pre-charging contractor is in line with a resistor to avoid high currents at the startup of the system. Once the capacitor of the DC intermediate circuit is preloaded, the junction box closes the contractor and opens the precharging contractor. Furthermore, the BMS handles the balancing of each battery module, which is why the cell measurement units on top of the single battery cells or battery modules also may have balancing modules integrated or attached. Since manufacturers need to isolate the high voltage battery pack from the chassis and want to avoid short circuits between them, the isolation resistance must be measured and analyzed too. To do so, an iso-meter is implemented between the high-voltage lines and the ground (chassis). Figures 3 and 4 illustrate exemplary current and signal diagrams of a BMS.  
Figure 3: Exemplary BMS-architecture with distributed master and slave units and a daisy-chain communication.