Skip to content

Dual Active Bridge Transformer

A 10 kW dual active bridge transformer at 100 kHz, simulated in the time domain with the converter's currents: losses, temperature and interwinding capacitance.

  • Component: E65/32/27 core, Ferroxcube 3C95, 0.57 mm centre gap; interleaved primary–secondary–primary litz windings, 24:15 turns.
  • Simulation: Transient over 2 periods of imported currents, with Steady-state heat transfer and Capacitance; half model (Symmetric).
  • Winding model: Homogenization.
  • You get: core and winding losses, the hotspot, the interwinding capacitance and the DC resistance of each winding.
  • Files: the converter waveforms from a SIMBA circuit simulation, dual-active-bridge-transformer-waveforms-100kHz.csv (CSV, 17.5 MB). The same file is waveform_dump.csv in the cached folder of the example project.
  • In TRAFOLO: Welcome screen › Examples › Dual Active Bridge is this model with its results.
  • Run time: about 5 min on 8 CPU cores.

Model description

The two primary halves are in series; the secondary sits between them.

Core Core material Air gap
E65/32/27 Ferroxcube 3C95 0.57 mm, centre limb
Winding Layers Wires per turn Turns Strands per wire Strand diameter
Primary 1 2 6 12 60 0.08 mm
Secondary 2 2 15 225 0.1 mm
Primary 2 2 6 12 60 0.08 mm
To-scale cross-section of the E65 core with the primary, secondary and primary layers in each window
Cross-section to scale: primary halves P1 and P2 around the secondary S, epoxy bobbin, 0.57 mm centre gap.

Modelling instructions

Setup

  1. Under DOMAIN TYPE, select Symmetric. TRAFOLO models the half above z = 0 and scales the results to the whole transformer.
  2. Under ELECTROMAGNETICS, select Transient, because the currents are not sinusoidal, and tick Capacitance.
  3. Under HEAT TRANSFER, select Steady-state.
Setup tab with Symmetric, Transient, Capacitance and Steady-state heat transfer marked
Symmetric (1), Transient (2), Capacitance (3), Steady-state (4).

Materials

  1. Under Global Materials, select Ferroxcube 3C95 100C and click Copy.
  2. Copy Copper and Epoxy the same way.
  3. Under Project Materials, select Ferroxcube 3C95 100C and click Edit Material.
  4. On General, select Relative Permeability, keep its value, 3.88e3, and set Core Loss Model to iGSE. Click Save.

    The library copy comes with Complex Permeability, and a Transient run does not start with it. The example uses a constant permeability and iGSE.

  5. Under Default Materials, set the material of each component:

Core Coil Other Bobbin Gaps
Ferroxcube 3C95 100C Copper Not set Epoxy Epoxy

The example's Project Materials also list Aluminum; no component uses it.

Materials tab with Copy, the project materials and the default material per component
Copy (5), Project Materials (6), Default Materials (7).

Core

  1. On Core, click New Group. Group1core appears.
  2. Click Configure next to Group1core.
  3. Set Source to Template, Scale to mm and Gap Type to Physical.
  4. In Geometry Builder, set Type to E, enter the dimensions in mm, keep Mirror ticked and click Apply:

    A B C D E F
    65 32.8 27.4 22.2 44.2 20

    Group1core settings with Source Template, Gap Type Physical and the E core dimensions with Mirror
    Group1core: Source, Scale and Gap Type (8), E dimensions and Apply (9).

    E core pair in an angled 3D view next to the dimension drawing
    The E core pair and the meaning of A to F (Specification).

  5. Click New Gap, enter gMin −0.285 and gMax 0.285 (a 0.57 mm gap), and set Limb to Central limb.

    Gap table with one gap from minus 0.285 to 0.285 mm on the central limb
    The 0.57 mm gap on the central limb (10).

Coil

Each winding is one coil group: Group1coil and Group2coil are the inner and outer primary halves, Group3coil the secondary between them.

  1. On Coil, click New Group three times, then Configure next to each group.

    Coil tab with New Group and Configure for the three windings, and the nested windings in an angled 3D view
    Coil tab: New Group (11), Configure for the three groups (12).

  2. Set Source to Template, Scale to mm and Wire Type to Stranded & Litz.

  3. In Geometry Builder, set Type to Filled, enter the values in mm and click Apply:

    Group Turns per solid A B C R H
    Group1coil 12 27.4 20 2 1 35
    Group2coil 12 27.4 20 2 9.5 35
    Group3coil 15 27.4 20 4.5 4 30

    Group3coil settings with Stranded and Litz, 15 turns per solid, the Filled dimensions and Configure Wire
    Group3coil: wire settings (13), Filled dimensions and Apply (14), Configure Wire (15).

    Dimension drawing of the Filled coil with A, B, C, R and H
    Filled coil dimensions A, B, C, R and H (Specification).

  4. Click Configure Wire. Select Homogenization, keep Packing Hexagonal, set Max Frequency to ≤ 1MHz and Strand Thickness as below.

  5. Next to Fill Factor, click Calculate, keep Strand Type Round, set N strands to the strands of one turn (wires per turn × strands per wire) and click Accept:
Group Strand Thickness N strands Fill Factor
Group1coil, Group2coil 0.08 mm 360 0.31
Group3coil 0.1 mm 450 0.393

After Accept, click Generate Mesh in each group's wire tab: TRAFOLO builds the 2D model of the strand bundle, and without it the run stops.

Group3coil_2D with Homogenization settings, the Fill Factor Calculator with 450 strands and Generate Mesh
Homogenization settings (16), Fill Factor and Calculate (17), N strands (18), Generate Mesh (19).
Triangular mesh of the hexagonal strand bundle model
The 2D strand model after Generate Mesh: round strands, hexagonal packing.

Bobbin

  1. On Bobbin, click New Group, then Configure next to Group1bobbin.
  2. Set Source to Template and Scale to mm.
  3. In Geometry Builder, set Type to Default with the outer primary's size: A 27.4, B 20, R 9.5 and H 35 mm, all other values 0. The windings cut the bobbin where they overlap. Click Apply.

    Group1bobbin settings with the Default bobbin dimensions A 27.4, B 20, R 9.5 and H 35Dimension drawing of the Default bobbin

Assembly

  1. On Assembly, click Assemble Geometry.
Assembly tab with the bodies and their materials, and the assembled half model in an angled 3D view
The assembled half model.

ElMag

  1. Under Primary Winding, set Excitation to Irms [A] and Coil group connection type to Series.
  2. Tick Secondary Winding and set the same.

    Primary and secondary winding excitation Irms with series connection
    Primary Winding (22) and Secondary Winding (23): Irms [A], Series.

  3. In the coil group table, set the groups:

Coil Group Winding Connection
Group1coil Primary Series
Group2coil Primary Series
Group3coil Secondary Series
Windings view of the transformer with the coil group table below
The coil groups (24): Group1coil and Group2coil Primary, Group3coil Secondary.

Circuits

Nothing to change: TRAFOLO drives the primary and the secondary from their current sources.

Automatic circuit with the transformer, the primary and secondary current sources and ground
The automatic circuits: primary and secondary winding, each driven by its current source.

Waveform

The currents come from a SIMBA simulation of the converter with 34 µH leakage and 720 µH magnetizing inductance.

Simplified dual active bridge circuit with leakage and magnetizing inductance and the two imported currents
The DAB circuit simulated in SIMBA and the two currents imported as Primary Source and Secondary Source.
  1. Under General, set Frequency [Hz] to 100000, Periods to 2 and Skip Periods From Averaged Losses to 1: the averages use the second period only.
  2. Select Load.
  3. Under Import, click Import and open dual-active-bridge-transformer-waveforms-100kHz.csv, downloaded under Files above, or waveform_dump.csv from the cached folder of the Dual Active Bridge example. Set Time to Tr - W2 - Voltage - Time [s], Primary Source to Lleakage - Current and Secondary Source to Tr - W2 - Current.
  4. Set Move By Points to 41, so that the simulation starts where the currents are close to zero.
  5. Tick Optimize Timesteps, set #Points per period to 41 and Algorithm to 4.

    Waveform settings with frequency, periods, Load, the imported columns, Move By Points and Optimize TimestepsWaveform plot with the imported primary and secondary currents and the two simulated periods

  6. Under Discrete Fourier Transform, set Number of harmonics to 6.

Heat

  1. Under GLOBAL SETTINGS, set Predicted Steady-State Temperature to 80 °C and Velocity Vector to (1.0; 0.0; 0.0) m/s: forced air at 1 m/s along x.

    Heat tab global settings with 80 degrees and velocity vector 1 0 0
    Predicted Steady-State Temperature 80 °C and Velocity Vector 1 m/s along x (30).

  2. Under FACES, select Geometry: settings made there apply to every face.

    Heat tab face list with Geometry selected
    FACES: Geometry (31) applies the surface settings to every face.

    Under SURFACE SETTINGS, keep Type Convection, set External temperature to 20 °C and tick Auto next to Heat transfer coefficient.

    Surface settings with convection, external temperature 20 and Auto heat transfer coefficient
    SURFACE SETTINGS (32): Convection, 20 °C, Auto heat transfer coefficient.

Mesh

  1. Under GLOBAL SETTINGS, set Mesh Algorithm to Netgen and Mesh Refinement to Normal.
  2. Click Compute Mesh. The mesh has about 134,000 elements.

    Mesh global settings with Netgen and Normal and the Compute Mesh buttonMesh of the half model of the transformer with the mesh information below

Solve

  1. Set Parallel cores to the number of performance cores of your CPU and keep Solver Preset Fast.

    Solve tab with Parallel cores 8 and Solver Preset Fast
    Parallel cores (35) and Solver Preset Fast (36).

  2. Click Simulation Setup, then Run Simulation.

    Solve tab buttons Simulation Setup and Run Simulation
    Simulation Setup and Run Simulation (37).

Results

Averages over the second period, with the copper resistance at the predicted 80 °C (Results › Summary):

Primary winding Secondary winding Windings Core Total
8.53 W 9.34 W 17.9 W 10.1 W 27.9 W

Interwinding capacitance: 316 pF (Capacitance Matrix on Summary). DC resistance: 37.1 mΩ primary, 11.8 mΩ secondary.

Results tab, Summary with the average losses and the DC resistance of each winding
Summary: average losses and the DC resistance of each winding.

Winding losses: AC against DC

The RMS currents of the imported waveforms and the DC resistances give the loss each winding would have with a DC current of the same RMS value:

Winding IRMS Ipeak Rdc at 80 °C IRMS²·Rdc Simulated loss AC/DC
Primary, both halves 13.6 A 14.7 A 37.1 mΩ 6.84 W 8.53 W 1.25
Secondary 22.4 A 27.5 A 11.8 mΩ 5.93 W 9.34 W 1.58

The secondary has the higher AC/DC ratio for two reasons. It sits between the primary halves, where the leakage field is strongest, and sees that field on both faces; each primary half sees it on one face only. Its strands are also thicker, 0.1 mm against 0.08 mm. Splitting the primary around the secondary already halves the peak leakage field compared with a primary–secondary arrangement.

Core loss and flux density

The core loses 10.1 W, 36 % of the total. The ±800 V square-wave primary voltage sets the flux: Bpeak = V/(4·f·N·Ae) = 800 V/(4 × 100 kHz × 24 × 535 mm²) = 0.16 T in the centre limb, which the field view confirms. The flux crowds at the inner corners of the windows, up to 0.22 T.

The field views step through the 2 periods; in the loss views, frame 1 is the average.

Magnetic flux density in the core at the time step of peak flux
Flux density at its peak: at most 0.22 T, at the inner corners of the windows (Magnetic Flux, frame 37).
Loss density in the windings at the time step of peak flux
Winding loss density at the same time step (Coil Losses, frame 38).

Temperature

The hotspot is 108.5 °C, in the windings, 88 K above the 20 °C air for 27.9 W: about 3.2 K/W with forced air at 1 m/s.

TRAFOLO evaluated the winding loss at the predicted 80 °C, 28 K below the computed hotspot; Ferroxcube 3C95 100C has no Thermal Coefficients, so its core loss comes from the 100 °C data at any temperature. At the hotspot temperature the DC part of the winding loss (12.8 W) rises by 9 % with the copper resistance, while the eddy-current part (5.1 W) falls by about the same factor, because eddy currents in fine strands scale with the conductivity. The winding loss would be about 18.6 W. For a self-consistent result, set Predicted Steady-State Temperature near the computed hotspot, or raise Temperature Iterations on Setup.

Steady-state temperature of the transformer, highest in the windings
Steady-state temperature, 64 to 108 °C, highest in the windings (Temperature).

Interwinding capacitance

316 pF couples the primary's switching edges into the secondary as common-mode current, i = C·dv/dt: a 10 V/ns edge drives 3.2 A. The interleaving that lowers the leakage field creates two large primary–secondary interfaces, which is why the value is high; more insulation between the layers lowers it, at the cost of more leakage inductance.

The example ships with these views but without 3D field data: run it before Open in ParaView (ParaView (post-processing).

Further reading