Embedded Systems and Power Electronics

Total Pageviews

About Me

My photo
I am currently a PhD student at UC Berkeley, following a 6-year journey working at Apple after my undergrad years at Cornell University. I am a 2025 Paul & Daisy Soros fellow. I grew up in Dhaka, Bangladesh where my interest in electronics was cultivated, resulting in the creation of this blog.

BTemplates.com

Powered by Blogger.

Mar 4, 2013

Output Inductor Calculation for SMPS Converters using the Forward, Push-Pull, Half-Bridge and Full-Bridge Topologies



An output inductor is found at the output of every forward-mode converter. Converters utilizing the forward, push-pull, half-bridge and full-bridge topologies are all forward-mode converters. So, calculation of the output inductance follows the same methodology for all four of these popular topologies. The purpose of the output inductor is to store energy for the load during the time each switching cycle when the power switches (BJTs, MOSFETs or IGBTs) are turned off. The electrical function of the output inductor is to integrate the rectangular switching pulses (pulse width modulated signals with varying duty cycle) into DC. The capacitor following the inductor smooths the DC into clean DC.

The design of the output inductor is quite simple. Usually, a self-gapped toroid core is used. Gapped ferrite cores (the ones used for ferrite transformers, eg ETD39) can also be used with no difficulties.

The formula for calculating the output inductance is:

  • Vin(max) is the highest peak voltage following the output rectifier of that particular output.
  • Vout is the output voltage.
  • Toff(est) is the estimated on time of power switches at the highest input voltage.
  • Iout(min) is the lightest expected load current for that output.

Calculated from the above equation is Lmin – the minimum required inductance, below which the core will empty of flux at the minimum rated load current for that output. You may want to design a circuit that allows for operation with no load. Obviously, you can’t substitute zero for Iout(min) as that will result in an Lmin value of infinity. And well, that really isn’t possible, is it?

So, what you should do is that you should select a minimum allowable current. Use a resistor load at the output of the power supply so that when you have no other loads, this resistor load provides the minimum load. Iout(min) should be large enough that Lmin isn’t too large; it should also not be too large that you have too high power losses, and thus too low efficiency, due to the power dissipation in the output resistor. Sometimes, this resistor is referred to as a dummy load – its only purpose is to provide the minimum load when there is no other load at the output of the converter / power supply.

Now that we know the minimum required inductance, we need to know the number of turns to wind on our core.

From the datasheet of the core, you can find the AL value. This indicates the inductance per turns squared:


L is the inductance and N is the number of turns. Making N the subject:
So, that’s the formula used to calculate the number of turns once we know the required inductance.

In some cases you might not know the AL value. You may not know the part number of the core you have and thus cannot look for the datasheet. Whatever the reason, you can experimentally determine the AL value.

Wind a few turns and measure the inductance. Then, measure the inductance for a different number of turns. Repeat for different numbers of turns. So, measure the inductance for, for example, 5, 10, 20, 40 turns and then for each, calculate the AL value. Take the mean AL value. Another thing you could do is, you could draw a graph of L against N2. The gradient of the best fit line would be the AL value. You could also mathematically calculate the gradient of the “regression line”. Use whichever method you find simplest.

Now let’s look at an example to clear up what you’ve read till now.

Let’s say that our converter is a half-bridge converter. For ferrite transformer calculation in offline half-bridge converter, refer to this tutorial:
Ferrite Transformer Turns Calculation for Offline SMPS Half-Bridge Converter

Back to our example.

The input voltage to the converter will vary from 150VAC (212VDC) to 250VAC (354VDC). Output voltage of the converter is 14VDC. The switching frequency is 50kHz.

Transformer primary: 26 turns
Transformer secondary: 4+4 turns

The formula for calculating the minimum required inductance is: 


We need to calculate the output voltage at the transformer secondary at 354VDC input, which is our maximum input voltage.

We’ll assume that the voltage drop due to the rectifier diode is 1V. Thus the average output voltage at the transformer secondary is 15V. Transformer turns ratio (primary : secondary) = 26:4 = 6.5

So, when average secondary voltage equals 15V, average voltage across transformer primary is 6.5 * 15V = 97.5V. If duty cycle was 100%, voltage across transformer primary would be 177V (half the DC bus voltage – think half-bridge topology). So, the duty cycle is (97.5/177)*100% = 55%.

Average output voltage at transformer secondary is 15V with a duty cycle of 55%. Thus, peak output voltage is 15V/0.55 = 27.3V, after which we have assumed a diode drop of 1V. So, Vin(max) is 26.3V.

At maximum input voltage, duty cycle will be lowest. This is when the off time will be the highest.

We have calculated a duty cycle value of 55% - this is the lowest duty cycle value. As switching frequency is 50kHz, time period is 20µs. The off time is 0.45 * 20µs = 9µs. That is our Toff(est).

Let’s say that the minimum load will draw 500mA current. With a 14V output and 500mA current, the power dissipated in the output resistor will be:

P = VI = 14 * 0.5 W = 7W

That is a lot of power! If it’s acceptable, go ahead and use a 500mA minimum load. If you choose to bring the minimum load down to 250mA, you bring down power dissipation (above) to 3.5W.

So we now have all required parameters. Let’s plug them into the formula.


This is the minimum required inductance. You should use an inductance larger than the minimum value calculated, since, well you calculated the minimum required inductance.


Let’s say we’ll use an inductance of 450µH. Let’s say that we’ve selected a toroid core with an AL value of 64nH per turn squared.

Firstly, the required inductance is 316µH which is equal to 316000nH.



Thus the required number of turns is:


You can use either 70 or 71 turns. This is for 316µH.

For 450µH:


Round this up to 84 turns.
 
There we have it. You can use this simple method to calculate the required output inductance for a converter that uses the forward, push-pull, half-bridge or full-bridge topology. It’s simple and I hope I’ve been able to make you understand clearly. Let me know your comments and feedback!

Feb 24, 2013

N-Channel MOSFET High-Side Drive: When, Why and How?



I had previously shown how to drive N-channel MOSFETs in low-side configuration. You can find the tutorial here:

http://tahmidmc.blogspot.com/2012/12/low-side-mosfet-drive-circuits-and_23.html

I’ve been requested to write a tutorial/article regarding high-side MOSFET drive. So, here I’ll talk about N-channel MOSFET high-side drive.

Let’s first look at the common low side configuration.

 Fig. 1 - N-channel MOSFET configured as low-side switch

Now let’s look at a MOSFET configured as a high-side switch.

Fig. 2 - N-channel MOSFET configured as high-side switch


You can quite easily see the difference between the high-side configuration and the low-side configuration. In the low-side configuration, the load is connected between the drain and +V, while the source is connected to ground. Thus, the gate drive is referenced to ground. So by applying a voltage of >7V (for Power MOSFETs) or >4V (for Logic Level MOSFETs), the MOSFET can be fully turned on.

Now let’s talk about the high-side configuration. The load is connected between the source and ground with the drain connected to +V. Thus the gate drive is not referenced to ground as source is not connected to ground and gate drive is related to VGS (voltage at gate with respect to source). I’ll talk about this in a while.

The difference in operation for the MOSFET configured as high-side switch as opposed to the MOSFET configured as low-side switch is that, it acts as a current source whereas the MOSFET configured as low-side switch acts as a current sink.

Now let’s go back to the high-side drive. Let’s say you apply a voltage of 12V (with reference to ground) to the MOSFET gate. However, when the MOSFET is on, voltage at source is equal to +V. Let’s assume +V is +15V. Now the problem is +12V gate drive (with reference to ground) will not keep the MOSFET on. When the MOSFET is on, the MOSFET source will be at a potential of +15V. To be on, the MOSFET must have +8V VGS minimum. So, if source is at +15V, the voltage at the gate with respect to ground must be at least +23V. If source was at +300V, for example, gate drive would require a minimum of +308V with respect to ground. This is if the gate drive is referenced to ground. If you have a separate isolated power supply whose ground and the ground of the MOSFET-based circuit are isolated, then  you can use that to drive the MOSFET as well.

There are quite a few ways to drive MOSFETs in high-side configuration. The first thing that might come into the minds of many of you would be a boost converter circuit or a charge pump circuit to use as the drive voltage for gate drive. This concept is sometimes used and isn’t wrong. However, it is usually used when voltage gap between control circuit voltage and gate drive requirement is small. If you needed to step up voltage from 12V to 40V for example, you might be able to accomplish it quite easily. However, a problem arises when there is the need to step up voltages from 12V to, say, 300V. In such situations, other solutions must be sought.

One simple solution is to use a gate drive transformer. This is not a method I prefer and thus I will not talk about it here. If you are interested, I might write another article just for gate drive transformers.

Another solution is to use a separate/isolated power supply whose ground is separate from the ground of the MOSFET-based circuit. See Fig. 3 below.

The other popular method is to use bootstrap based drive. In this drive method, a capacitor is charged to the required VGS – let’s say 10V – when the MOSFET is off. Then this capacitor is used during driving the MOSFET to provide an additional 10V over the source.

First I’ll talk about the use of a separate/isolated power supply. Here’s a circuit diagram illustrating this:

Fig. 3 - Driving a high-side N-channel MOSFET from a separate/isolated power supply (click image to enlarge)

When a logic high is given to “Drive Signal”, potential at optocoupler pin 4 (emitter of optocoupler transistor) is about +12V with respect to the ground / negative terminal/point of BAT1 – the separate/isolated power supply. This point is connected to Q1 source. Thus Q2 turns on. About +12V, with respect to Q1 source, is provided to Q1 gate. Thus Q1 is driven on.

When a logic low is given to “Drive Signal”, optocoupler pin 4 (emitter of optocoupler transistor) is at the same potential as the ground / negative terminal/point of BAT1 – the separate/isolated power supply. So Q3 turns on and pulls Q1 gate low. Thus MOSFET Q1 is driven off.

Note that the optocoupler ground is the same ground as the ground of the MOSFET-based circuit.

Here’s the current flow for when the “Drive Signal” is a logic high.

 Fig. 4 - Current flow when driving a high-side N-channel MOSFET on, from a separate/isolated power supply (click image to enlarge)

This driver can be used for any duty cycle – all the way from 0% to 100%. The driving frequency is limited by the speed of the optocoupler. For high frequencies, optically isolated MOSFET drivers may be used instead of the two transistors and the optocoupler – the optically isolated MOSFET driver will be all that’s needed. Some such drivers are TLP250, TLP350, HCPL3120, etc.

Now let’s talk about the boostrap based drive. Here when the high-side MOSFET is off, a capacitor is charged from the driving voltage. The capacitor charges through the load or a supporting low-side MOFSET. When the high-side MOSFET is to be turned on/driven, the voltage on the capacitor is used to drive the high-side MOSFET. Thus the limitation of this method is quite obvious. A large enough capacitor should be used for storing the required energy/charge for keeping the high-side MOSFET on for the required time. At the same time, the capacitor must be large enough that during the entire driving time, the voltage doesn't fall below about 8V, in order to prevent the MOSFET from being only partially on. Thus, the bootstrap based drive can not be used for 100% or close to 100% duty cycle. And the lower the frequency of operation, the larger the required capacitance.

The easiest way to drive a MOSFET using the boostrap based drive is to use a dedicated high side MOSFET driver. Some drivers come with just the high-side driver while many come with both high-side and low-side drivers. IR2117, for example, is one driver that contains a single driver that can be used to drive a high-side MOSFET driver. IR2110, which is arguably the most popular high-low side MOSFET driver, features a high-side driver and a low-side driver in a single device. I’ve written a detailed tutorial regarding the use of IR2110. Here's the tutorial:

http://tahmidmc.blogspot.com/2013/01/using-high-low-side-driver-ir2110-with.html

Besides the IR2110, there are many high-low side drivers available. L6385E and NCP2181 are my personal favorites. You can choose from a wide range of high side and high-low side drivers.

No matter which method you choose, once you know how to handle the drive requirement, it's really easy. In most cases, I use the bootstrap based drivers, although I do occasionally use isolated power-supply based drive. None of these methods are too difficult and I hope I've managed to provide you a clear answer to your question: "Why are high-side N-channel MOSFETs to be driven differently from low-side N-channel MOSFETs, and how do we drive the high-side N-channel MOSFET?" Do let me know your comments and feedback.

Feb 22, 2013

Ferrite Transformer Turns Calculation for Offline SMPS Half-Bridge Converter



On different forums, I often find people asking for help in calculating the required turns for a ferrite transformer they are going to use in offline SMPS half-bridge converters. The half-bridge topology is very popular for offline converters in the power range 100W to 500W, sometimes going up to even 1000W. In an offline SMPS half-bridge converter, the line voltage is rectified and filtered and is then converted to high frequency with 2 MOSFETs – one in high-side configuration and the other in low-side configuration. This high frequency high voltage AC is fed to the ferrite transformer to step down the voltage to low voltage high frequency AC which is then rectified to DC and filtered to provide clean DC output. A vital thing to remember is that in a half-bridge converter, the 2 MOSFETs work along with 2 capacitors to create the high voltage high frequency AC. The configuration of the capacitors, MOSFETs and transformer causes the transformer to be supplied half the voltage of the rectified DC. This means that, compared to a full-bridge converter, half the number of turns is required for the primary, but the power output would be half. Thus power/energy density is halved.

Now let’s move on to the calculation. Calculation of required turns is actually quite simple and I’ll explain this here.

For explanation, I’ll use an example and go through the calculation process.
Let’s say the ferrite transformer will be used in a 250W converter that will be used to charge a 12V lead acid battery. The selected topology is obviously half-bridge. The power source for the converter is the AC mains. Here I’ll take that to be 220V RMS, 311V peak, 50Hz. So, you must remember that the mains AC should be rectified to DC first. Output voltage of the DC-DC converter stage will be 14V. Switching frequency is 50kHz. The selected core is ETD44. Remember that the output of the transformer will be high frequency AC (50kHz square wave in this case). When I refer to an output of low voltage DC (eg 14VDC mentioned above), this is the DC output obtained after rectification (using schottky, preferably, or ultrafast recovery diodes configured as full-wave rectifier) and filtration (using LC filter). Since I plan to use full-wave rectification (with 2 diodes) at the output, the secondary of the ferrite transformer will be center tapped.

We must take a maximum and minimum input voltage rating for the converter. For our example, these will be a low line voltage of 150V and a high line voltage of 250V. During operation, the output voltage will stay fixed as the converter is expected to have feedback circuitry. 

Vinmin = 150VAC = (150* √2)VDC = 212VDC

Vinmax = 250VAC = (250* √2)VDC = 354VDC

Vinnom = 220VAC = (220* √2)VDC = 311VDC

The formula for calculating the number of required primary turns for a forward-mode converter is:


For our half-bridge transformer, this will be twice the required number of turns, that is, the actual number of primary turns will be half that calculated from the above formula if we use the full voltage, or exactly what is calculated if half the voltage is used. This is because the voltage across the transformer is half the line voltage, as previously mentioned.

So, the actual formula would be:
 


Npri means number of primary turns; Nsec means number of secondary turns; Naux means number of auxiliary turns and so on. But just N (with no subscript) refers to turns ratio.


For calculating the required number of primary turns using the formula, the parameters or variables that need to be considered are:



  • Vin(nom) – Nominal Input Voltage. We’ll take this as 311V. So, Vin(nom) = 311.
  • f – The operating switching frequency in Hertz. Since our switching frequency is 50kHz, f = 50000.
  • Bmax – Maximum flux density in Gauss. If you’re accustomed to using Tesla or milliTesla (T or mT) for flux density, just remember that 1T = 104 Gauss. Bmax really depends on the design and the transformer cores being used. In my designs, I usually take Bmax to be in the range 1300G to 2000G. This will be acceptable for most transformer cores. In this example, let’s start with 1500G. So Bmax = 1500. Remember that too high a Bmax will cause the transformer to saturate. Too low a Bmax will be under utilizing the core.
  • Ac – Effective Cross-Sectional Area in cm2. You will get this information from the datasheets of the ferrite cores. Ac is also sometimes referred to as Ae. For ETD44, the effective cross-sectional area given in the datasheet/specification sheet (I’m referring to TDK E141. You can download it from here: www.tdk.co.jp/tefe02/e141.pdf  ). The effective cross-sectional area (in the specification sheet, it’s referred to as Ae but as I’ve said, it’s the same thing as Ac) is given as 175mm2. That is equal to 1.75cm2. So, Ac = 1.75 for ETD44.
So now, we’ve obtained the values of all required parameters for calculation of Npri – the number of required primary turns.



Vin(nom) = 311                                        f = 50000                              Bmax = 1500                          Ac = 1.75

Plugging these values into the formula:





                                    Npri = 29.6

We won’t be using fractional windings, so we’ll round off Npri to the nearest whole number, in this case, rounded up to 30 turns. Now, before we finalize this and select Npri = 30, we better make sure that Bmax is still within acceptable bounds (it will be since this is such a minor percentage change, but I’ll show this anyways so that you know what to do, just in case). As we’ve increased the number of turns from the calculated figure (up to 30 from 29.6), Bmax will decrease very slightly. We’ll now figure out just how much Bmax has decreased.

 



                                        Bmax = 1481 



The new value of Bmax is well within acceptable bounds and so we can proceed with Npri  = 30.
 

So, we now know that for the primary, our transformer will require 30 turns.

In any design, if you need to adjust the values, you can easily do so. But always remember to check that Bmax is acceptable. 

  • I’ve started off with a set Bmax and gone on to calculate Npri from there. You can also assign a value of Npri and then check if Bmax is okay. If not, you can then increase or decrease Npri as required and then check if Bmax is okay, and repeat this process until you get a satisfactory result. For example, you may have set Npri = 20 and calculated Bmax and decided that this was too high. So, you set Npri = 30 and calculated Bmax and decided it was okay. Or you may have started with Npri = 40 and calculated Bmax and decided that it was too low. So, you set Npri = 30 and calculated Bmax and decided it was okay.
Now it’s time to move on to the secondary. The output of our DC-DC converter is 14V. Keep in mind that there will be a voltage drop due to the output rectifiers. So, the transformer output must be [14 + (Total Voltage Drop Due to Diodes)]V at all input voltages, from all the way up from 354VDC (254VAC) to all the way down to 212VDC (150VAC). To keep the voltage drop due to the diodes a minimum, use schottky didoes.

Naturally, feedback will be implemented to keep the output voltage fixed with line and load variations – changes due to mains voltage change and also due to load change. So, some headroom must be left for feedback to work. So, we’ll design the transformer with secondary rated at 16V. This headroom compensates for voltage drops due to output rectifier diodes. Feedback will just adjust the voltage required by changing the duty cycle of the PWM control signals. Besides that, the headroom also compensates for some of the other losses in the converter and thus compensates for the voltage drops at different stages – for example, in the MOSFETs, in the transformer itself, in the output inductor, etc.

This means that the output must be capable of supplying 14V with input voltage equal to 212VDC and also input voltage equal to 354VDC. For the PWM controller, we’ll take maximum duty cycle to be 98%. The gap allows for dead-time.


At minimum input voltage (when Vin = Vinmin), duty cycle will be maximum. Thus duty cycle will be 98% when Vin = 212VDC = Vinmin. At maximum duty cycle = 98%, average voltage to transformer = 0.98 * 0.5 * 212V = 103.88V.

So, voltage ratio (primary : secondary) = 103.88V : 16V = 6.493

Since voltage ratio (primary : secondary) = 6.493, turns ratio (primary : secondary) must also be 6.493 as turns ratio (primary : secondary) = voltage ratio (primary : secondary). Turns ratio is designated by N. So, in our case, N = 6.493 (I’ve taken N as the ratio primary line voltage : secondary).

Npri = 30
Nsec = Npri / N = 30 / 6.493 = 4.62

Round off to the nearest whole number. Nsec = 5

Now, notice how this rounding up is not an insignificant rounding up. So, let’s try to keep Nsec = 5 and adjust Npri again.

Npri = N * Nsec

Npri = 5 * 6.493 = 32.5 = 33 (rounded off to the nearest integer)

Now let’s check if Bmax is okay with Npri = 33, ie, if Bmax is within acceptable bounds.




  
                                    Bmax = 1346


Bmax = 1346 is okay. So, Npri = 33 and Nsec = 5. Thus 5 + 5 turns are required for the secondary. With proper implementation of feedback, a constant 12VDC output will be obtained throughout the entire input voltage range of 150VAC to 250VAC.

Of course, notice here that Bmax is very small and can be increased to reduce the required turns. So, let’s reduce Nsec from 5 to 4.

Nsec = 4

Npri = N * Nsec = 6.493 * 4 = 25.97 = 26 (rounded off to nearest integer)

Checking Bmax again:
  



                                   Bmax = 1709 

Here, one thing to note is that even though I took 98% as the maximum duty cycle, maximum duty cycle in practice will be smaller since our transformer was calculated to provide 16V output. In the circuit, the output will be 16V (transformer output will be 14V + Voltage drop of diode), so the duty cycle will be even lower. However, the advantage here is that you can be certain that the output will not drop below 12V even with heavy loads since a large enough headroom is provided for feedback to kick in and maintain the output voltage even at high loads and low line voltages.

If any auxiliary windings are required, the required turns can be easily calculated. Let me show with an example. Let’s say we need an auxiliary winding to provide 17.5V. I know that the output 14V will be regulated, whatever the input voltage may be, within the range initially specified (Vinmin to Vinmax – 150VAC to 250VAC). So, the turns ratio for the auxiliary winding can be calculated with respect to the secondary winding. Let’s call this turns ratio (auxiliary : secondary) NA.

NA = Naux / Nsec = (Vaux+Vd)/ (Vsec + Vdsec). Vdsec is the output diode forward drop (at the secondary). Vd is the output diode forward drop at the auxiliary. Let’s assume that in our application, schottky rectifiers with Vd = 0.5V is used.

So, NA = 18.0V/14.5V = 1.24 

Naux / Nsec = NA 

 Naux = Nsec * NA = 4 * 1.24 = 4.96

Let’s round off Naux to 5. Since the rounding up is very small (from 4.96 to 5), the output voltage will be pretty close to the desired voltage, but I'll just show you how to calculate what the output voltage is.



(Vaux + Vd) / (Vsec + Vdsec) = NA = Naux / Nsec = 5 / 4 = 1.25

(Vaux + Vd) = (Vsec + Vdsec) * NA = 14.5V * 1.25 = 18.13V

Vaux = 17.63V

That is great for an auxiliary supply. If in your designs, you ever find that Vaux is far too off the required voltage, a simple voltage regulator (using 78XX for example) should be used to provide the stable auxiliary voltage.

Another option is to recalculate Npri and Nsec to accommodate for a near accurate auxiliary voltage but you can just use a voltage regulator to simplify things. After all, the voltage regulator will keep the output voltage regulated stable.

So, there we have it. Our transformer has 26 turns for primary, 4 turns + 4 turns for secondary and 5 turns for auxiliary.

Here’s our transformer:




Here’s the transformer at work in a circuit (block diagram):






Calculating required number of turns for a transformer for an offline SMPS half-bridge converter is actually a simple task and I hope that I could help you understand how to do this. I hope this tutorial helps you in your ferrite transformer designs for offline SMPS half-bridge converters. Do let me know your comments and feedback.