Dual Active Bridge Transformer

Introduction

The dual active bridge (DAB) converter is an isolated bi-directional DC-DC power converter that facilitates the transfer of power between two DC sources, enabling applications in battery systems, renewable energy integration, solid-state transformers, and low-to-medium voltage grid applications. DABs provide inherent design flexibility, allowing customization to meet specific voltage and power requirements. Additionally, the ability to achieve soft switching contributes to exceptionally high efficiency, exceeding 98% within the desired operating range.

A key element of these converters is the high-frequency (HF) transformer, which helps in galvanic isolation as well as miniaturization. Precise modeling of these transformers at high frequencies, typically in the hundreds of kHz range, is vital for accurately determining parameters like air gap length, core and copper losses, and leakage inductance, as well as understanding the impact of parasitic elements on DAB performance. Using finite element numerical simulations, we can account for non-homogeneous temperature distributions within different parts of the transformer. By accurately modeling these temperature variations, the simulations ensure precise estimation of core and copper losses. Moreover, analyzing the temperature increase resulting from these losses through coupled electro-thermal analysis ensures that the DAB transformer operates below its critical temperature and can be used to design effective and targetted cooling, thereby preventing dielectric material degradation. Hence FEM analysis predetermines all the fundamental parameters essential for designing the high-frequency transformer for DAB.

Model Description

A 10 kW dual active bridge (DAB) transformer, made of E65/32/27 core from Ferroxcube with 3C95 material, is being modeled. The transformer operates at a frequency of 100 kHz, as described in the Frenetic report.

Core specification

Core Core Material Core gap (mm)
E65/32/27 Ferroxcube 3C95 0.57

 Winding Specification

The transformer features a turns ratio of 24:15 and employs a Primary-Secondary-Primary (PSP) configuration. The two primary windings are connected in series, with each primary winding consisting of two parallel layers. Each layer contains three wires of 60 strands each in parallel, wound into 12 turns. As the two primary windings are in series, the total number of turns in the primary winding amounts to 24. For the secondary winding, two layers of a single wire, each comprising 225 strands, are wound into 15 turns.

Layers Wires / Layer Wires / Turn Turns Strands / Wire Strands / Turn
Primary 1 2 3 6 12 60 360
Secondary 2 1 2 15 225 450
Primary 2 2 3 6 12 60 360

Modeling Instructions

Setup

  1. From the Model Builder, click the Setup tab.
  2. Locate the General section and set the Domain type as Symmetric. This setting is beneficial for models with a plane of symmetry that divides the core and coil into symmetrical segments. This method ensures that the computed values reflect the complete system despite only modeling a symmetrical section. Subsequently, parameters such as voltage, resistance, losses, inductance, and other related values are appropriately scaled to represent the entire geometry accurately.
  3. In the Simulation Type section, set Electromagnetics to Transient to account for the time-dependent nature of non-sinusoidal waveforms in DAB. These waveforms exhibit rapid changes and non-linearities that steady-state or harmonic analysis cannot accurately capture. Transient analysis divides the waveform into small time steps, allowing for precise modeling of the system’s dynamic behavior.
  4. Additionally, set Heat transfer to Steady-state.
  5. Check the Capacitance box to calculate interwinding capacitance between primary and secondary windings.
    The Domain type is set to symmetric. In the simulation type settings, electromagnetics is set to transient, and heat transfer is set to steady-state.

    Domain type and Simulation type settings for DAB transformer analysis.

Materials

  1. Select the Materials tab from the Model Builder.
  2. From the Global Material section, select Copper and click the Copy button.
  3. Similarly, copy Epoxy and 3C95 Ferroxcube 100C from the Global Materials section to the Local Materials section.
  4. In the Default Materials section, select the material type for each component from the dropdown list as per the table below:
    Component Core Coil Other Bobbin Gaps
    Material type 3C95 Ferroxcube 100C Copper Not set Epoxy Epoxy
    The "Materials" tab for transformer design displays global materials on the left and selected local materials on the right. Users can copy, add, and set default materials for core, coil, and bobbin components.

    Interface for material selection for different components of the model.

Core

  1. From the Model Builder, click on the Core tab.
  2. Click the New Group button. The Group1core will be added.
  3. Click the Open in new tab icon. The Group1core tab will open.
  4. From the Source dropdown list, select Template.
  5. From the Scale dropdown list, select mm.
  6. From the Gap Type dropdown list, select Physical. This will cut the core geometry and create a gap as a separate body with assigned material properties.
  7. In the Geometry Builder section, set the Type to E/EL and enter the dimensions (mm) as per the table below:
    A B C D1 D2  F R
    65.0 27.4 44.2 27.4 20.0 65.6 44.4 0.0
  8. Click the Apply button.
  9. Click the New Gap button.
  10. In the gMin and gMax text fields, enter –0.285 and 0.285, respectively. From the Limb dropdown list, select the Central Limb. This will create a gap of 0.57 mm in the central limb of the core.
  11. Click the Apply button.
    This image shows the configuration settings for creating the core geometry and gap settings, along with a visualization of the 3D model.

    3D model visualization of core geometry and gap settings.

Coil

  1. From the Model Builder, click on the Coil tab.
  2. Click the New Group tab. Group1coil will be added.
  3. Click the Open in new tab icon. The Group1coil tab will open.
  4. From the Source dropdown list, select Template.
  5. From the Scale dropdown list, select mm.
  6. From the Wire Type dropdown list, select Stranded & Litz wire.
  7. Set the Turns per solid to 12. This parameter allows the modeling of multiple turns with simple geometry, reducing the geometry’s complexity and facilitating faster results by avoiding excessively small meshing in that area.
  8. In the Geometry Builder section, set the Type to Filled and the Linked Core to None. Enter the dimensions (mm) according to the table below:
    Type Linked Core a b c R h
    Filled None 27.4 20.0 2.0 1.0 35.0
  9. Click the Apply button.
    Configuration settings for creating the coil geometry, along with a visualization of the 3D model.

    3D geometry configuration for winding along with 3D visualization for Group1coil.

  10. Click the Configure Wire button. Given the DAB’s complex and non-sinusoidal waveform characteristics, calculating the proximity factor solely for the fundamental frequency isn’t sufficient. It’s necessary to consider all significant frequencies. TRAFOLO can decompose the waveform into constituent harmonics and calculate the proximity coefficient for each harmonic using Dowell’s method, ultimately deriving the effective proximity factor for transient electromagnetic simulation. Alternatively, TRAFOLO also allows users to calculate the proximity factor by referring to online calculators. However, such calculators should treat each harmonic separately. To calculate the proximity factor using in-build Dowell’s method, select Dowell’s Equation from Rac computation methods.
  11. From the Strand Type dropdown list, select Litz.
  12. In the Strand thickness text field, enter 0.08 mm.
  13. In the Number of Layers text field, enter 16.
    For the Litz wire, the effective number of layers is given by:
    N_Effective = N_Layers × sqrt(N_strands)
    For primary winding, two layers of 60-stranded wire are used.
    Thus, N_Effective = 15.49 ≈16
  14. To calculate the Fill Factor, click the Calculator button. Enter the data as per the table below:
    Strand Type Strand Thickness (mm) Number of strands per turn (N strand)
    Litz 0.08 360

     As the fill factor is calculated for the entire winding, the strands of all 6 parallel wires within a turn are considered.

    Due to the non-sinusoidal nature of the waveform, the AC resistance (Rac) of Litz wire is computed using Dowell's method, accounting for each significant frequency separately and utilizing the effective number of layers for accurate calculations.

    Rac computational methods and Fill factor Calculator for Group1coil.

  15. Similarly, create Group2coil and Group3coil.
  16. Set the Turns per solid for Group2coil and Group3coil to 12 and 15, respectively.
  17. Enter the details in the Geometry Builder section as per the below table and click the Apply button.
    Winding Type Linked Core a b c R h
    Group2coil Filled None 27.4 20.0 2.0 9.5 35.0
    Group3coil Filled None 27.4 20.0 4.5 4.0 30.0
    Configuration settings for creating the coil geometry, along with a visualization of the 3D model.

    3D geometry configuration for winding along with 3D visualization for Group3coil.

  18. Click the Configure Wire button.
  19. Select Dowell’s Equation from Rac computation methods and enter the details according to the table below.
    Winding Strand Type Strand Thickness (mm) Number of Layers
    Group2coil Litz 0.08 16.0
    Group3coil Litz 0.1 15.0

    Since, the secondary winding, Group3coil, is interleaved between two primary windings, the interleaving coefficient must be considered while calculating the effective number of turns. This is given by:
    N_Effective = N_Layers × sqrt(N_strands) × Interleaving Coefficient,
    where N_Layers = 2, the Interleaving Coefficient = 0.5 and N_Strands = 225

  20. To calculate the Fill Factor, click the Calculator button. Enter the data as per the table below:

    Winding Strand Type Strand thickness (mm) Number of strands per turn (N strand)
    Group2coil Litz 0.08 360
    Group3coil Litz 0.1 450

    As the fill factor is calculated for the entire winding, the strands of all parallel wires within a turn are considered.

  21. The calculated Fill Factor will be displayed. Click the Accept button to update the Fill Factor values in the coil.
    Due to the non-sinusoidal nature of the waveform, the AC resistance (Rac) of Litz wire is computed using Dowell's method, accounting for each significant frequency separately and utilizing the effective number of layers for accurate calculations.

    Rac computational methods and Fill Factor Calculator for Group3coil.

  22. Click the Apply button.
    The calculated proximity factors will be available in the result section.

    3 D visualization of complete coil structure which includes Group1coil, Group2coil and Group3coil.

    3D model visualization of the entire coil geometry.

Other

  1. If there is any additional body type like clamp, dielectric, or shield, it can be included in Other. Here, this step can be skipped.

Bobbin

  1. Click on the Bobbin tab from the Model Builder.
  2. Click the New Group button. The Group1bobbin will be added.
  3. Click the Open in new tab icon. The Group1bobbin tab will open.
  4. From the Source dropdown list, select Template.
  5. From the Scale dropdown list, select mm.
  6. Locate the Geometry Builder section.
  7. Enter the details as per the below table.
    Type Linked Coil xg zg dr dh
    Default Group2coil 0.0 0.0 0.0 0.0

    The bobbin is linked to Group2coil, as it is the outermost winding. This configuration creates a bobbin that fills the entire space between the outermost winding and the core. The other two coils, located between the core and Group2coil, cut the bobbin preventing any overlapping while assembling the geometries.

  8. Click the Apply button.
    The configuration settings for creating the bobbin geometry are shown, with dimensions and configurations specified for accurate modeling. The bobbin, linked to Group2coil, fills the space between the outermost winding and the core, with other coils cutting the bobbin to prevent overlap.

    Geometry configuration and 3D visualization of Group1bobbin.

Assembly

  1. Click the Assembly tab from the Model Builder.
  2. Click the Assemble Geometry button. The assembled geometry will be displayed.
    Symmetrical section of the assembled geometry with component details.

    Symmetric section of the assembled geometry with component details.

EIMag

  1. Open the EIMag tab from the Model Builder.
  2. Locate the Primary Winding section.
  3. Set the Excitation to Irms [A] and the Coil group connection type to Series from the dropdown list.
  4. Enable the Secondary Winding by checking the box.
  5. Set the Excitation to Irms [A] and the Coil group connection type to Series from the dropdown list.
  6. Set the Winding and Connection for each coil group as per the table below:
    Coil Group Winding Connection
    Group1coil Primary Series
    Group2coil Primary Series
    Group3coil Secondary Series
    Connections and excitation for primary and secondary windings in EIMag.

    Connections and excitation for primary and secondary windings in EIMag.

Circuit

  1. Select the Circuits tab from the Model Builder.
  2. The software sets up circuits automatically, connecting FEM components and sources in series. Equal indexes for positive/negative nodes indicate that elements are connected. Nodes that are not connected should have different indexes.
  3. Click the Apply button.
    Waveform tab depicting the point allocation after Algorithm 4 has been applied. Also the waveform has been moved by 41 points to start it from zero.

    Electrical circuit indices to build the DAB transformer.

Waveform

  1. Select the Waveform tab from the Model Builder.
  2. Mark the Load From File button.
  3. To calculate the losses in the transformer, it is essential to obtain the current waveform. It is possible only by simulating the circuit in a circuit simulator. In our analysis, we utilized simba.io to model the circuit illustrated below.
    The circuit scheme made in SIMBA to obtain the current waveform for calculating the losses.

    Dual active bridge circuit scheme in SIMBA used to generate waveforms.

  4. To proceed, click the Import button to upload the generated waveform file. It must be noted that although our simulation yielded a smaller value for leakage inductance, yet to maintain experimental consistency, we used the same value as Frenetic to obtain identical waveforms.
  5. In the Frequency [Hz] text field, enter 100000.0.
  6. In the Periods text field, enter 2.
  7. In the #Points per period text field, enter 41.
  8. Check the Optimize Timesteps checkbox. It enables the software to use interpolation algorithms to redistribute the small timesteps generated by the circuit simulator and interpolate waveform values.
  9. From the Algorithm dropdown list, select 4. The algorithms differ in how they distribute the points. Algorithm 1 distributes the points uniformly, while the others allocate more points in the region of steep/sudden change to resolve them accurately. The user must check which algorithm best suits the waveform.
  10. Check the Skip 1st period from the averaged losses checkbox, as the first few timesteps in transient simulation typically have high errors.
  11. From the Time dropdown list, select Tr – W2 – Voltage – Time[s].
  12. From the Primary Source dropdown list, select Leakage – Current.
  13. From the Secondary Source dropdown list, select Tr-W2-Current.
  14. To minimize the voltage spike at the beginning of the simulation (see more details), it is advised to start the simulation with excitation current values as close to 0. For this reason, we can move the starting point of our waveform by changing the Move By Points parameter. In this case, we set it to 41.
  15. In transient simulations, the Discrete Fourier Transform (DFT) is employed to decompose waveforms into their harmonic components, which can be viewed in the DFT tab. Harmonics with significant amplitudes are used to determine the effective AC/DC proximity coefficient for litz or stranded wire. So, under the Discrete Fourier Transform section, enter the Number of harmonics to be included in calculations as 6.
    Waveform tab depicting the point allocation after Algorithm 4 has been applied. Also the waveform has been moved by 41 points to start it from zero.

    Timesteps allocation on imported waveform using Algorithm 4.

Heat

  1. From the Model Builder, click on the Heat tab.
  2. In the Settings section, enter 80.0 as the Initial Temperature in deg C. The initial temperature is set as a preliminary guess. After obtaining the first result, the user can adjust the temperature to an appropriate value based on the temperature distribution in the geometry. Alternatively, the user can increase the number of iterations, though this will require solving electromagnetic and thermal problems multiple times.
  3. In the Temperature Iteration text field, enter 1.
  4. Locate the Boundary Conditions section.
  5. Click on Geometry.
  6. In the Type dropdown list, select Convection.
  7. In the External temperature text field, type 20.
  8. In the Heat transfer coefficient text field, type 20.0. Generally, the Heat transfer coefficient for forced convection with an airflow speed of around 2 m/s is 20 W/ m2/K. It can be calculated using the Heat transfer empirical equations.
    Thermal settings showing initial steady state temperature and boundary conditions for the transformer.

    Initial steady-state temperature setting and configuring Boundary Conditions in the Heat tab.

Mesh

  1. From the Model Builder, click on the Mesh tab.
  2. Under the Settings section, from the Mesh Refinement dropdown list, select Coarse.
  3. Click the Evaluate Mesh button.
  4. Click the Compute Mesh button.
    Meshed geometry along with depicting how element size can be adjusted.

    Generated mesh for the simulation.

Solve

  1. From the Model Builder, click on the Solve tab.
  2. Click on the Simulation Setup button followed by the Run Simulation button.
    Solver settings to run the simulation for DAB transformer.

    Solver settings to run the simulation.

Results and Discussion

  1. From the Model Builder, click on the Results tab.
  2. Click on the Summary tab to get the average values of various parameters.
    The Results Summary tab provides the average values of the evaluated losses for the various components, hotspot temperature, DC resistance, and interwinding capacitance.

    The Results Summary tab provides the average values of the evaluated losses for the various components, hotspot temperature, DC resistance, and interwinding capacitance.

  3. Additionally, the user can switch between the Results tabs to visualize the processed results.
    The core and coil losses tabs display the transient loss in the transformer for a particular duration of time. Below is an instance of coil loss distribution where primary loss is observed to be at its maximum value.

    The figure shows an instance of transient coil loss in the windings of the transformer.

    An instance of transient analysis of winding losses distribution.

    The temperature distribution across the transformer cross-section indicates significant heating, particularly in the windings, with a hotspot reaching 77.1 °C in the secondary winding. The temperature in the central limb of the core approaches 70°C. These temperatures consistently fall within acceptable operational limits for the transformer.

    The temperature distribution across the transformer cross-section indicates significant heating, particularly in the windings, with a hotspot reaching 77.1 °C in the secondary winding.

    Temperature distribution on the transformer surface in the DAB converter.

    The Magnetic Flux tab provides analysis of the transient flux density distribution which is essential for determining the peak flux density in the core.

    The Magnetic Flux tab provides analysis of the transient flux density distribution which is essential for determining the peak flux density in the core.

    Transient analysis of magnetic flux distribution on the surface of the ferrite core

  4. Click the Open in ParaView button to open simulation results in post-processing software. It allows manipulation with results, changing color schemes, making slices, and doing any other manipulations with results.
    ParaView has been used for detailed visualization and analysis of the flux density, temperature, and loss distribution, as shown in the accompanying figures.

    Detailed analysis and 3D visualization of transient losses and thermal behavior in ParaView, focusing on coil losses and surface temperature profiles within a symmetrical transformer section

    Coil loss and temperature distribution on the transformer surface in ParaView for detailed analysis.

    The magnetic flux density distribution can be visualized in ParaView, enabling precise examination of flux density variations at any point over time. Given that the maximum flux density is typically found in the central limb of the core, an element/cell on this limb is selected for analysis by plotting.
    To visualize the magnetic flux density change over time for the central limb, navigate to the Pipeline Browser and make the Core visible under Electromagnetic Results by clicking the eye icon. In the Attribute toolbar, select magnetic flux density e from the first dropdown and Y from the second dropdown. Next, from the RenderView toolbar, click on Interactive Select Cells and choose an element on the central limb for which the field values are to be plotted. In the Menu bar, click on Filters, then search for and apply Plot Selection Over Time. In the Properties tab, click Copy Active Selection, then click Apply. Finally, navigate to Series Parameters, check the Magnetic Flux Density e (1) (stats) box, and uncheck all other boxes.

    Selection of a cell on the central limb of a transformer model in ParaView for magnetic flux density evaluation, with highlights indicating the settings used.

    Selecting a cell on the central limb for magnetic flux density evaluation in ParaView.

    The resulting plot shows that the peak flux density for this cell is 0.17 T, significantly below the core’s saturation point. This ensures that the core operates efficiently without risk of saturation.

    The magnetic flux density distribution and the flux density plot over time for a point on the central limb have been analyzed and visualized using ParaView.

    ParaView analysis of magnetic flux density distribution and flux density plot for an element on the central limb.

Losses TRAFOLO Frenetic 
Primary coil loss (W) 8.55 9.22
Secondary coil loss (W) 9.46 10.1
Total coil losses (W) 18.0 19.4
Core loss (W) 11.9 11.2
Total loss (W) 29.9 30.5

The results show that while core losses are very similar between the two software, with a minor difference of 0.712 W, there is a more noticeable discrepancy in the winding losses. TRAFOLO reports total winding losses of 18.0 W compared to Frenetic’s 19.4 W, leading to a difference of 1.34 W. Overall, the total losses computed by TRAFOLO are 29.9 W, slightly lower than Frenetic’s total losses of 30.5 W.

Additionally, it is important to note that Frenetic does not specify thermal conditions in their report. Consequently, a comparison of temperature with their results is not possible.

 

Was this page helpful?