Go Down

Topic: Custom H Bridge Design (Read 13 times) previous topic - next topic


Hello folk,

I'm trying to design a custom H bridge to drive my motors.

They draw atleast 6.5 amps, running off a 12v supply. I'm using an arduino mega 2560, which I understand gives an output of 5v at 40mA.

I've had a go at designing a PCB board, and would like some advice.

I was wondering if someone could be kind enough to check my circuit and choice of components and make sure it would work? I've posted the datasheets of the components i've chosen. Each circuit has 4 diodes, 2 NPN mosfets and 2 counterpart PNP mosfets.

I've attached the circuit I want to create, my attempt on the PCB board, and the data sheets. I'd be very grateful...



Have to add, you can see in the original H bridge schematic that there are CMOS 4011 Quad NANA drivers present in the circuit.

I'm not 100% sure how to implement these, but I found a schematic, which I've attached. It seems to be what I'm looking for?


The MOSFET's, for one, are not a good choice. Their on-resistance is too high (0.55 ohms). With 6.5A of current flowing their power dissipation could be as high as 6.5^2  * 0.55 = 23.2W. That will fry the MOSFET in short order.

The Arduino Drum Machine: 14-track MIDI drum machine sequencer / groove-box


Rugged, thanks for that. I've chosen better mosfets based on what you said. The IRF3706PBF has a drain resistance of 0.0085 ohms, so i should dissipate 0.359W - which should be acceptable.

I also found this article, which has been really helpful:

I understand the principle of having different quadrants active to get a desired function, but why all the logic gates? Why not just use the arduino to drive 4 pins in various configurations? The article tries to explain it but it's a bit much to wrap your head around.

I'm thinking it's along the lines of, the P type mosfets are 'on' by default, such that, when a gate voltage is applied, they're turned off? N types are simpler, they're off and supplying the 5v to gate turns them on - therefore the NAND gates are all about manipulating the logic appropriately.

I suppose then it's a choice of whether i actually NEED the P types, and whether or not my N types can do the job I'm asking of them...

KE7GKP, I agree regarding the PCB board - I'm just testing the water regarding PCBs at the moment. I used larger tracks (1.3mm) due to high current draw, and tried preserve the schematic as best as possible on the PCB.


Are you saying you're driving the FETs from a 4011 NAND gate???  That's a recipe for blowing up all of your MOSFETs.

High power MOSFETs have large input capacitances (20nF or so is the ballpark).  To charge up these gates fast enough (lets say 100ns for now) means a driving current of 2A per device.  The 4011 might be able to produce 5mA or so.  Thus the switching time will be 80us or so during which both top and bottom MOSFETs are switched on shorting out the power supply and perhaps drawing 100Amps from its filter/decoupling caps...

This is likely to fuse the MOSFETs, then the 4011, then the Arduino.

First piece of advice - protection circuitry is required between the Arduino signals and the H-bridge (even a 2k2 resistor in each signal line might be enough).

Second piece - switch the MOSFETs fast, something like a MIC4422 buffer is a good idea to drive that gate capacitance.  It can drive upto 9A which is plenty and it takes logic level inputs.  Certainly something more like amps than milliamps is necessary or your MOSFETs will spend lots of time in the linear region and overheat/burn.  You need lots of ceramic decoupling close to the gate-driver to do this successfully, at least ten times the combined gate capacitance.

Thirdly have suitable delays (hardware or software) so that it is impossible to have both the top and bottom MOSFETs on simultaneously.  This situation is called 'shoot through' and causes all sorts of chaos.  If you switch in 250ns or so the delay only needs to be a few hundred ns.

There are H-bridge driver chips that do all the work for you BTW, like the HIP4081, and they let you use all n-channel MOSFETs.

You should also be aware of the Open Source Motor Controller project http://www.robotpower.com/osmc_info/
[ I won't respond to messages, use the forum please ]

Go Up