Electromagnetic Transient Modeling and Verification for Battery Energy Storage Systems on the ADPSS Platform

In the pursuit of carbon neutrality and the construction of new power systems, integrating large-scale renewable energy sources such as wind and solar power has become essential. However, the intermittent and fluctuating nature of these sources poses significant challenges to grid stability and power quality. Battery energy storage systems (BESS) have emerged as a key technology to mitigate these issues, offering fast and flexible power regulation for applications such as smoothing renewable output, voltage sag mitigation, and frequency regulation. Accurate electromagnetic transient (EMT) models of BESS are fundamental for studying grid dynamic behavior and designing control and protection strategies. Most existing research relies on foreign simulation platforms like MATLAB/Simulink and PSCAD/EMTDC, while the domestic ADPSS platform, a next-generation simulation tool, lacks systematic modeling and verification for BESS. This paper presents a comprehensive approach to building and calibrating a BESS electromagnetic transient model on the ADPSS platform, using a general low/high voltage ride-through (LVRT/HVRT) control strategy and a rigorous model verification process against manufacturer data.

The proposed work begins by designing a universal control method for BESS capable of handling both undervoltage and overvoltage faults. This control strategy is implemented in both MATLAB/Simulink and ADPSS to compare the resulting response characteristics. Through detailed analysis of the main circuit, control circuit, and measurement circuit, systematic parameter and structural calibration methods are developed to align the ADPSS model with the manufacturer’s packaged model. The effectiveness of the calibrated ADPSS model is validated under various fault scenarios, demonstrating significant improvement in accuracy, with average deviations reduced to below 1.63% from initial errors exceeding 12.53%. This study promotes the domestic substitution of simulation tools for BESS research and supports large-scale power system simulation analysis using ADPSS.

General Low/High Voltage Ride-Through Control Method for BESS

A typical grid-connected battery energy storage system consists of a battery pack, a power conversion system (PCS), and its control circuit. The PCS, through bidirectional power conversion, regulates active and reactive power to maintain stable voltage at the point of common coupling. The external power characteristic of the BESS is primarily determined by the PCS control strategy. To achieve both LVRT and HVRT capabilities, a general fault ride-through control method is designed, as shown in the following mathematical formulation.

The steady-state power control adopts a dual-loop feed-forward decoupling structure, with an outer power loop and an inner current loop. The outer loop generates d-axis and q-axis current references based on active and reactive power commands, while the inner loop uses proportional-integral (PI) controllers with feed-forward compensation to decouple the d-axis and q-axis dynamics.

During voltage sags (LVRT), the active power outer loop is disconnected, and a reactive current priority strategy is activated. The d-axis and q-axis current references during LVRT are given by:

$$
i_{dref} = \min\left\{ k_{dL1} u + k_{dL2} I_{d0} + I_{dLset},\ k_0 u + \frac{P_0}{u},\ \sqrt{I_{\max}^2 – i_{qref}^2} \right\}
$$

$$
i_{qref} = \max\left\{ k_{qL1} (U_{Lin} – u) + k_{qL2} I_{q0} + I_{qLset},\ I_{qLmin} \right\}
$$

During voltage swells (HVRT), the active power outer loop remains connected, maintaining constant active power while injecting reactive current to support voltage recovery. The current references are:

$$
i_{dref} = k_{op}(P_{ref} – P) + k_{oi} \int (P_{ref} – P)\, dt
$$

$$
i_{qref} = \min\left\{ k_{qH1} (u – U_{Hin}) + k_{qH2} I_{q0} + I_{qHset},\ I_{qHmax} \right\}
$$

Here, \(u\) is the terminal voltage amplitude, \(I_{\max}\) is the maximum current limit, and \(P_0\) is the initial active power. The parameters \(k_{dL1}, k_{dL2}, k_0, k_{qL1}, k_{qL2}, k_{qH1}, k_{qH2}\) are coefficients determined by grid standards and manufacturer characteristics. The voltage thresholds \(U_{Lin}\) and \(U_{Hin}\) define the entry points for LVRT and HVRT, respectively. The control structure also includes rate limiters (\(r_P, r_Q, r_{Id}\)) to smooth transitions. This general control method ensures that the BESS meets the reactive power support requirements specified in standards such as GB/T 34120-2017 and GB/T 44117-2024.

Modeling on MATLAB and ADPSS Platforms

Based on the proposed control strategy, a 200 kW battery energy storage system model is built on both MATLAB/Simulink and ADPSS platforms. The model consists of three main parts: main circuit, control circuit, and measurement circuit.

Main Circuit: The main circuit includes a lithium-ion battery model (improved Rint model), DC-link capacitors, an averaged converter, an LCL filter, and a step-up transformer. The battery model uses a controlled voltage source represented by two operating modes:

Charging mode:

$$
E = E_0 – K \frac{Q}{Q – i_s} (i^* – i_s) + A e^{-B i_s}
$$

Discharging mode:

$$
E = E_0 – K \frac{Q}{i_s + 0.1Q} i^* – K \frac{Q}{Q – i_s} i_s + A e^{-B i_s}
$$

where \(E_0\) is the nominal voltage, \(K\) is polarization voltage, \(Q\) is battery capacity, \(i_s\) is the integrated current, \(i^*\) is the filtered current, and \(A,B\) are exponential coefficients.

The key parameters of the main circuit are: rated power 200 kW, DC nominal voltage 800 V, DC capacitance 2960 μF, LCL filter resistance 0.05 Ω and inductance 185 μH, transformer ratio 35 kV/800 V with D11/Y connection, winding resistance 0.0048 p.u., and leakage reactance 0.035 p.u.

Control Circuit and Measurement Circuit: The control circuit implements the general LVRT/HVRT algorithm described above. The measurement circuit acquires voltages and currents, performs phase transformation, power calculation, and fault flag detection using hysteresis comparators.

The response characteristics of the two platform models are compared against the manufacturer’s packaged model (encapsulated black-box model) under both steady-state and transient conditions. Steady-state tests apply step changes in active or reactive power references. Transient tests simulate symmetric voltage sags and swells.

Comparison of Steady-State Output at t=12.5 s (Reactive Power Step Test)
Variable Manufacturer Model MATLAB Model ADPSS Model (Uncalibrated)
Positive-sequence voltage (p.u.) 0.925 0.928 0.999
Reactive current (p.u.) -1.081 -1.078 -1.001

The MATLAB model shows close agreement with the manufacturer model in both steady-state and transient responses. In contrast, the ADPSS model exhibits larger deviations, including delayed control switching during faults and a temporary overshoot in active current. For example, during a voltage sag to 0.5 p.u., the ADPSS model’s active current spikes to 1.15 p.u., while the manufacturer model remains below the 1.05 p.u. limit.

Root Cause Analysis of Module Differences

To understand the discrepancies, the modules of the two platforms are compared in three categories: main circuit, control circuit, and measurement circuit.

1. Main Circuit – Transformer Equivalent Circuit:

The ADPSS transformer uses an RL-coupled branch for the excitation path, while MATLAB uses a parallel RZ-XZ branch. The single-phase equivalent circuits differ, leading to different steady-state voltage drops. For a 1.0 p.u. grid voltage, the transformer low-side voltage in ADPSS is 0.990 p.u., whereas in MATLAB it is 0.981 p.u. This mismatch causes a steady-state offset in the BESS terminal voltage.

2. Control Circuit – PI Controller Internal Structure:

The PI controller in ADPSS places the output limiter inside the integral path, as shown in the figure (structure not reproduced here). In MATLAB, the limiter is applied at the overall output. Consequently, when the PI output exceeds the limit, ADPSS may produce a sharp peak because the proportional term bypasses the limiter. MATLAB, by limiting the combined output, avoids such overshoot.

3. Measurement Circuit – Hysteresis Comparator:

The hysteresis comparator in ADPSS uses a midpoint value \(\mu_M\) and hysteresis width \(\gamma_{HY}\), while MATLAB uses explicit on/off thresholds \(Y_{ON}\) and \(Y_{OFF}\). Incorrect parameter mapping causes different voltage thresholds for entering/exiting fault mode, resulting in delayed control switching. For instance, the LVRT entry threshold in ADPSS becomes 0.88 p.u. with \(\mu_M=0.90\) and \(\gamma_{HY}=0.02\), whereas the intended threshold using MATLAB parameters was 0.89 p.u.

Mapping Between Module Differences and Response Discrepancies
Circuit Module Difference Response Effect
Main circuit Transformer equivalent circuit Steady-state voltage offset
Control circuit PI limiter position Transient current peak during fault
Measurement circuit Hysteresis comparator parameterization Delayed control switching during faults

Calibration Methods for ADPSS Model

Based on the identified differences, three calibration steps are proposed to align the ADPSS model with the manufacturer model.

3.1 Main Circuit Calibration – Transformer Parameters

To eliminate the steady-state voltage error, the excitation branch parameters of the ADPSS transformer must be recalculated from the MATLAB equivalent. The formulas for the equivalent resistance and reactance of the ADPSS excitation branch are:

$$
R_m = \frac{R_Z X_Z^2}{R_Z^2 + X_Z^2}
$$
$$
X_m = \frac{R_Z^2 X_Z}{R_Z^2 + X_Z^2}
$$

where \(R_Z\) and \(X_Z\) are the excitation resistance and reactance used in the MATLAB model. Additionally, the per-unit values for winding resistance and leakage reactance should be consistent with manufacturer specifications:

$$
R_{1,pu} = R_{2,pu} = \frac{P_k S_b}{2000 S_N^2}
$$
$$
X_{1,pu} = X_{2,pu} = \frac{U_k S_b}{200 S_N}
$$
$$
G_{m,pu} = \frac{P_0}{1000 S_N}
$$
$$
B_{m,pu} = \frac{I_0 S_N}{100 S_b}
$$

After calibration, both platforms yield identical transformer low-side voltages (1.006 p.u.) for a 1.0 p.u. grid voltage.

3.2 Control Circuit Calibration – PI Controller

To resolve the transient current spike, the PI controller in ADPSS is restructured. The internal limiter is removed (set to infinity) and a separate limiter block is placed after the controller output. The calibrated controller thus behaves identically to the MATLAB PI, with the overall output limited. The block diagram is conceptually modified as:

$$ Y = \text{limit}\left\{ k_P \Delta_x + k_I \int \Delta_x \, dt,\ Y_{\max},\ Y_{\min} \right\} $$

With this change, a power step test shows that the ADPSS model’s PI output no longer exceeds the 1.05 p.u. limit, matching the MATLAB response.

3.3 Measurement Circuit Calibration – Hysteresis Comparator

To synchronize the fault detection timing, the ADPSS hysteresis comparator parameters are set as:

$$
Y_{ON} = \mu_M + \gamma_{HY}
$$
$$
Y_{OFF} = \mu_M – \gamma_{HY}
$$

The output channel is selected according to the MATLAB logic: if the MATLAB comparator outputs 0 when on and 1 when off, the ADPSS comparator should use the “low output” channel (QL). For example, with MATLAB thresholds \(Y_{ON}=0.91\) p.u. and \(Y_{OFF}=0.89\) p.u., the calibrated ADPSS parameters become \(\mu_M=0.90\) p.u. and \(\gamma_{HY}=0.01\) p.u. After calibration, the fault flag transitions occur at the exact same times in both platforms during a voltage sag to 0.5 p.u.

Verification of Calibrated ADPSS Model

The calibrated ADPSS battery energy storage system model is tested under multiple fault scenarios defined in standard GB/T 44117-2024. The responses are compared to the manufacturer’s packaged model for both LVRT and HVRT conditions.

4.1 Low Voltage Ride-Through Results

Two representative cases are shown: a sag to 0.2 p.u. for 0.625 s, and a sag to 0.5 p.u. for 1.21 s, with initial active power of 1.0 p.u. The calibrated ADPSS model closely follows the manufacturer model in all phases: pre-fault steady state, fault transient, and post-fault recovery. The active current no longer exhibits an initial spike. The reactive current injection aligns with the voltage support requirement.

4.2 High Voltage Ride-Through Results

For HVRT, tests with voltage swells to 1.25 p.u. for 1.0 s and to 1.3 p.u. for 0.5 s are conducted. Again, the calibrated ADPSS model matches the manufacturer model’s steady-state values and transient trends. The active power remains constant during the swell, while reactive power is absorbed as required.

4.3 Quantitative Error Analysis

Using the error metrics from GB/T 44117-2024, the weighted average deviation \(F_G\) is computed for voltage, active power, reactive power, active current, and reactive current. The formulas for steady-state interval average deviation \(F_1\) and transient interval average deviation \(F_2\) are:

$$
F_n = \frac{\sum_{i=K_{\text{Start}}}^{K_{\text{End}}} |X_M(i) – X_S(i)|}{K_{\text{End}} – K_{\text{Start}} + 1}, \quad n=1,2
$$

$$
F_3 = \max_i |X_S(i) – X_M(i)|
$$

$$
F_G = 0.1 F_{1,A} + 0.6 F_{1,B} + 0.3 F_{1,C}
$$

where \(X_M\) and \(X_S\) are the per-unit values from the manufacturer and simulation models, and \(A\), \(B\), \(C\) refer to pre-fault, during-fault, and post-fault intervals, respectively.

Comparison of Average Weighted Deviations Before and After Calibration (Voltage Sag to 0.5 p.u.)
Quantity Before Calibration (%) After Calibration (%) Max Allowed (%)
Voltage 6.23 0.81 2.0
Active power 12.53 1.63 3.0
Reactive power 8.74 1.15 2.5
Active current 5.42 0.92 2.0
Reactive current 7.81 1.02 2.0

The table clearly shows that after calibration, all deviations are well below the standard maximum allowable errors. The average improvement is dramatic, from a maximum of 12.53% to under 1.63%. For the HVRT case (voltage swell to 1.25 p.u.), similar reductions are achieved, confirming that the calibration method is effective for both undervoltage and overvoltage scenarios.

Conclusion

This paper presents a systematic methodology for developing and calibrating electromagnetic transient models of battery energy storage systems on the ADPSS simulation platform. By designing a general low/high voltage ride-through control strategy and comparing models built on MATLAB and ADPSS, key differences in transformer models, PI controller structures, and hysteresis comparators are identified. Corresponding calibration methods—recalculating transformer excitation parameters, restructuring the PI controller with external limiting, and adjusting hysteresis comparator thresholds—are proposed and validated. The calibrated ADPSS model reduces response deviations from over 12% to less than 1.63%, meeting the requirements of standard GB/T 44117-2024. This work facilitates the adoption of the domestic ADPSS platform for high-fidelity simulation of battery energy storage systems, supporting the analysis of large-scale renewable integration and grid stability. Future work will explore underlying numerical solver differences between platforms to further enhance model efficiency and accuracy.

Key Formulas Used in the Calibration Process
Purpose Formula
Transformer excitation branch calibration $$R_m = \frac{R_Z X_Z^2}{R_Z^2 + X_Z^2},\quad X_m = \frac{R_Z^2 X_Z}{R_Z^2 + X_Z^2}$$
PI controller restructure $$Y = \text{limit}\left( k_P \Delta x + k_I \int \Delta x\, dt,\ Y_{\max},\ Y_{\min} \right)$$
Hysteresis comparator mapping $$Y_{ON} = \mu_M + \gamma_{HY},\quad Y_{OFF} = \mu_M – \gamma_{HY}$$
Steady-state error metric $$F_n = \frac{\sum |X_M(i)-X_S(i)|}{K_{\text{End}}-K_{\text{Start}}+1}$$
Weighted average error $$F_G = 0.1F_{1,A} + 0.6F_{1,B} + 0.3F_{1,C}$$

The comprehensive calibration approach ensures that the ADPSS-based battery energy storage systems model can accurately replicate manufacturer responses, making it a reliable tool for power system studies in the new energy era.

Scroll to Top