Hello, how can I choose and calculate the size of the tranformer core? I need the tranformer with minimum 5W tranfer. I intend a working frequency about 60-100kHz.

When I select some core, how can I calculate turns of primary winding?

- Tomsik

First of all—will you be operating in DCM (discontinuous conduction mode) or CCM (continuous)?

DCM is easy to implement, and controllers and regulators are abundant, e.g., UC3843. DCM has a large ripple fraction (>100%), so is quite aggressive in both core loss, and the ripple current that must be handled by both primary and secondary filter capacitors. This means it tends to not scale up so well, but is a good option at low power.

CCM is harder to realize in a flyback supply. Typically CCM uses an average current mode control, and so must monitor the magnetizing current constantly: both primary and secondary side currents need to be measured (or at least estimated). It can be used with peak current mode controllers with slope compensation, to a mild degree (ripple fraction >30% say; the downside to slope compensation is, sloppier current limiting). CCM only marginally reduces the filter capacitor ripple current (the current waveforms go from sharp triangles to flatter square waves, but the current is still going fully between peak and zero every cycle).

Also, if you're considering CCM, you may consider a forward converter, which exhibits discontinuous primary current (it's still switching fully on and off), but continuous secondary current (due to the filter choke) and so only needs secondary side current sensing. The isolation transformer has high inductance (no gap) so is easier to design, and the filter choke is standard off-the-shelf.

At 5 W, the parts cost to handle DCM ripple is minor, while the complexity to handle CCM is higher, so DCM flyback is the better choice.

Ferrite has lower B_{sat} than powdered iron types. This limits how much flux density you get in the core, for a reasonable amount of magnetization (amp-turns).

Usually we can't operate near saturation, due to the additional limit of core loss. This can be significant at lower B_{pk} values, ca. 100 mT. With a relatively small converter, you have a more advantageous surface area to volume ratio, so you can probably afford higher core loss in this case.

Relative permeability μ_{r} typically needs to be in the 20-60 range. This can be a bulk property (powder), or an equivalent (gapped ferrite). (For gapped cores, we can calculate the amount of gap required. For others, we can only check against a list of parts and materials to see which ones meet our minimum requirements.)

Note that core loss is prohibitive for the cheapest powdered iron materials (#26, #52), and passable for others (#8, Kool-Mu, etc.). Ferrite is generally low loss.

We'll consider ferrite here.

We need to store some amount of energy at the peak of the switching cycle. All of that energy is deposited in the load, so the energy required is the output power divided by the switching frequency.

E = P_{out} / F_{sw}

In this case, about 62.5 μJ.

For a gapped ferrite, we can assume the core material itself stores nearly zero energy, and the airgap stores the rest. Thus we need some volume of airgap.

We also need some thickness of airgap, because this sets the effective permeability:

μ_{eff} = l_{e} / (l_{e}/μ_{r} + l_{g})

The core-energy assumption is saying that μ_{r} ≫ 1, which it is (typically ballpark 2000 for ferrites), so we should look for an l_{e} / l_{g} ratio around 20-60.

Energy density is:

e = B^{2} / (2 μ)

For the airgap, we use μ = μ_{0} (1.257 μH/m), and B = B_{pk}, whatever we've decided upon, say 100 mT. This gives an energy density about 4000 J/m^{3}.

Incidentally, energy density has units of pressure (J/m^{3} ≡ N/m^{2} ≡ Pa), and this is approximately the pressure attracting the core halves together. Isn't physics cool?

We need an airgap volume v_{g} = E / e, or (62.5 μJ) / (4000 J/m^{3}) = 15.7 (mm)^{3}.

Typical E cores have a e / √A_{e} ratio around 6. Let's call that α. Putting all these together, we get an approximate selection figure:

v_{g} = l_{e}^{3} / (α^{2} μ_{eff} )

so,

l_{e} ≅ (v_{g} α^{2} μ_{eff} )^{1/3}

or for this case about l_{e} = 28 mm.

Looking at TDK's catalog, I see the E12.7/6/6 being very close. Note that they don't offer a standard gapped version, so we might shop around for a nearby (same or larger) size, or a different shape than E, that does offer a gap. Otherwise, we can gap the core with shims, BUT note that the gap counts twice (once in the center, once in the legs), so we must use a shim of l_{g} / 2 thickness.

We still might not be able to realize this transformer, because we haven't wound it yet. The μ_{eff} assumption gets us close, though—its value is motivated by the resistivity of copper, and the lower μ is, the more copper we need for a given inductance. (Worst case, μ_{eff} = 1, i.e. an air cored inductor, which is all copper!)

For μ_{eff} ∼ 40, we need l_{g} ∼ l_{e} / (40) = 0.7 mm, or 0.35 mm shim thickness. This gives us an inductivity of:

A_{L} = μ_{0} μ_{eff} A_{e} / l_{e}

= (1.257 nH/mm) (40) (19.9 mm^{2}) / (28 mm)

= 35 nH/t^{2}

(The fake unit of "per-turn-squared" appears out of nowhere; to be more rigorous, we could change the other units to μ_{0} ≡ H/(m.t) and A_{e} ≡ mm^{2}/t for example.)

Now that we're down to winding design, we need to know the supply and output voltages, since we can put on any number of turns to get the desired voltage/current ratio.

Assuming 12 V:

5 W is 5/12 = 417 mA DC, or 833 mA average during the on period (assuming 50% duty cycle), or 1.67 A peak (assuming a triangular current waveform, which is true in DCM). We need to store 62.5 μJ at 1.67 A, or

L = 2 E / I^{2}

= 45 μH

So we need N = √L / A_{L} = 35 t. If we're doing 12 V output, we should use the same again for the secondary, or any ratio for any other voltage. We should also consider V_{in(min)}, and if it's to be adjustable, V_{out(max)}, so we don't run out of duty cycle when these conditions vary.

Checking:

B_{pk} = V_{in} / (2 N A_{e} F_{sw})

= (12) / [2 (35) (19.9) (0.08)] = 108 mT

Pretty close to what we started with (about as much has been rounded off in the process).

The wire would probably be ∼0.25 mm dia. or so, to handle the current; maybe a bit more. This takes up a copper cross section of 3.4 mm^{2}, and with packing density and insulating tape we should expect more like 7-10 mm^{2} winding area to be required, and a bit more for the bobbin too. The E12.7/6/6 core has 25 mm^{2} total winding area, which should be quite adequate.

Speaking of, they don't list a bobbin for this core, so we might not use this part after all? Again, practical considerations. Similar parts are available from multiple manufacturers on the usual suspects like Digi-Key and Mouser, and with their parametric filtering, we need only look for a big enough core, then sift through a few dozen results to find core-bobbin pairs, and gapped cores if possible.

Finally—the windup. It matters what order we wind the wire in! We can do one single section for each winding, which will lay down in about two layers each. This will give a few μH leakage inductance, which isn't terrible, but we will want to handle it with a snubber, probably an RCD rate or peak clamp type. The snubber power dissipation will be on the order of 1/4 W.

We can reduce leakage further, if we get more intimate contact between the primary and secondary. If we alternate primary and secondary layers (interleave), we can about cut the leakage in half. Or we could go with finer wire (0.15 mm wire should fit enough turns in a single layer), but do more layers in parallel (2-3 layers each), and alternate primary and secondary layers that way; this can go lower, maybe 1 to 0.5 μH.

Or we can use a transmission line transformer construction, where we start with twisted pair (the wire may have to be triple-insulated type to meet isolation requirements) and wind 35 turns of that however we like. Better still if we use "star quad" (two parallel pairs, twisted together so that the primary and secondary wires alternate), which can get to maybe 0.1-0.2 μH, where we may not need a snubber at all.

We can also use a larger core, with higher μ_{eff} (smaller gap), to get the same B_{pk} with many fewer turns, saving wire length—leakage inductance is roughly proportional to winding wire length, so this can be a handy savings.

If we consider planar magnetics (windings made with PCB traces, with a core clamped around it), the cores available for this purpose have a much lower l_{e} / √A_{e} ratio—that is, a large A_{e} for their size—so we won't need many turns, and the core is also quite low profile (not much thicker than the board itself). More of a production-oriented option than for prototyping (they're bloody hard to rewind!), but handy to know about.

Also, of course, if we raise the switching frequency, we don't need as much transformer, and for purposes like this (the assumed 12 V input and 5 W capacity), controllers and regulators running up to 2 MHz are cheap and plentiful. Not at all required for general purposes, but again very handy when you need to reduce size or cost.