Arduino Forum

Forum 2005-2010 (read only) => Hardware => Interfacing => Topic started by: will_eng on Aug 07, 2009, 06:08 pm

Title: PWM H-Bridge circuit
Post by: will_eng on Aug 07, 2009, 06:08 pm
I have attached an H-Bridge circuit. I chose those Mosfets because I have them on hand. Does anyone see issues in using them together? They are both 12A,100V but one specifically says Logic Level optimized for 5V Gate drive. If this is an issue what would be good to use for a 12V and I guessing 9A power window motor form a car. I have been trying to do my homework on learning about motor drivers but I am still unsure. Should I be using a transistor or something between the inputs and arduino pins or is it that easy? I dont want to go and buy a $100 motor controller because of cost and the learning curve.

(http://img.photobucket.com/albums/v219/hotwheels_454/HBridge.jpg)
Title: Re: PWM H-Bridge circuit
Post by: RuggedCircuits on Aug 07, 2009, 06:23 pm
You're OK on the N-channel MOSFET's but the P-channel MOSFET's need 12V on the gate to turn them off, and your Arduino will only output 5V.

I recommend an H-bridge driver chip like the TC4428 to act as an interface between the Arduino and the MOSFET bridge.

Also, using 12A MOSFET's for a 9A motor means the MOSFET's are probably going to get pretty hot (the "12A" number is the one the manufacturer specifies as an absolute worst-case cook-your-eggs-on-it type of number).
Title: Re: PWM H-Bridge circuit
Post by: will_eng on Aug 07, 2009, 07:03 pm
Are there any good resources for sizing Mosfets to H-Bridge circuits?
Title: Re: PWM H-Bridge circuit
Post by: will_eng on Aug 07, 2009, 08:43 pm
How is this? I'm still not exactly sure how to size the fets. I got these form someone using a similar motor (around 10A). But they are rated for 8 and 6.8A. My motor isn't marked but I found documentation that leads me to believe that it is 2.8A no load, < or = 9A, and 28A stall. The app will not require heavy loading and will probably never run at full load or speed. Also have I used the driver properly?

(http://img.photobucket.com/albums/v219/hotwheels_454/H_Bridge2.jpg)
Title: Re: PWM H-Bridge circuit
Post by: RuggedCircuits on Aug 07, 2009, 08:46 pm
Without heatsinking, my general rule of thumb is to keep power dissipation of TO-220 packages to 1W or less. Find the Rds(on) (i.e., on-resistance) value for your MOSFET's, then compute their power dissipation as P=I*I*R where I is the maximum current they will carry. For example, your RFP12N10L has an on-resistance of 0.2 ohms (pretty high for a MOSFET, actually), so at 9A it will dissipate 81*0.2=16.2W of heat. That is not good. I have some MOSFET recommendations here (http://www.ruggedcircuits.com/html/circuit_ideas.html). The NDP6060L, for example, has an on-resistance of 0.025 ohms so will dissipate 81*0.025=2W which is much more manageable, and should be OK if you add a heat sink.
Title: Re: PWM H-Bridge circuit
Post by: RuggedCircuits on Aug 07, 2009, 08:48 pm
Not quite...you want one output of the TC4428 to be connected to the same "side" of the H-bridge. Because if the output is high, that means the P-channel MOSFET will be OFF and the N-channel MOSFET will be ON.

Also note the TC4427 and TC4426 are in the same family and offer some options with regards to true/complemented outputs.
Title: Re: PWM H-Bridge circuit
Post by: will_eng on Aug 08, 2009, 10:29 pm
I chose the NDP6020P for the p-channel both are logic level type mosfets. So do I still need the driver or will it still be good to reduce noise from the motor. Also are there any good resources on sizing caps to use with the motor?

(http://img.photobucket.com/albums/v219/hotwheels_454/H_Bridge3.jpg)
Title: Re: PWM H-Bridge circuit
Post by: RuggedCircuits on Aug 08, 2009, 10:34 pm
You do not need a logic-level FET for the P-channel ones because their gate voltage will swing from 0V to 12V. You do not need logic-level FET's for the N-channel ones either if you are going to use a gate driver like the TC4428.

I would keep the TC4428 (or similar) gate driver because FET's with high current handling and low on-resistance will generally have large gate capacitance, which is difficult to drive from a microcontroller and can even damage it over time due to high peak currents.

VDD for the TC4428 should be 12V, not 5V.

I would recommend pull-down resistors at the inputs of the TC4428. In case the Arduino outputs float, you don't want both TC4428 outputs turning on at the same time (that will destroy your MOSFET's very quickly).

There should be a capacitor close to the TC4428 (1uF ceramic or so). A "big" capacitor for the motors....that is less well determined. Some capacitance definitely helps, but I don't know of a definite sizing guide. I generally throw something like 220uF-330uF there.
Title: Re: PWM H-Bridge circuit
Post by: will_eng on Aug 09, 2009, 12:24 am
Here is Rev:4. I appreciate the help I'm a mechanical engineer and I'm still learning alot of electrical principles.  

(http://img.photobucket.com/albums/v219/hotwheels_454/H_Bridge4.jpg)
Title: Re: PWM H-Bridge circuit
Post by: RuggedCircuits on Aug 09, 2009, 12:43 am
C2 and C3 are in the wrong place...you need just one 1uF capacitor from VDD to GND for the TC4428. You don't want any extra capacitance on the outputs of the TC4428.
Title: Re: PWM H-Bridge circuit
Post by: will_eng on Aug 09, 2009, 12:56 am
Thank you i will change that and give it a try.
Title: Re: PWM H-Bridge circuit
Post by: drspectro on Aug 10, 2009, 04:29 am
I am pretty sure the power window motors I have seen for sale have been described as "limited duty cycle".  A reduced duty cycle would also reduce your transistor heating...  
Title: Re: PWM H-Bridge circuit
Post by: jd33333333 on Aug 31, 2009, 11:10 pm
will_eng:
The TC4428 has 1 inverting output and 1 non-inverting output. Your schematic shows that you are switching both the HIGH/LOW side fets with the same output. This will create a temporary shoot through state each time you switch that side on/off (as the voltage in the 4428 changes, there will be time when both the N-channel and P-channel will be at around 6-8 volts which will cause both fets on the same side of the h-bridge to be partially open at the same time). Using PWM will multiply this problem. You should use 1 tc4428 to drive each side of the bridge. Input A is Inverting, you should drive the P-channel fets with this, Input B is non-inverting to drive the N-channel fets. You can then tie in both inputs into a single control pin for 2 wire operation. IE, turn on control A, and you will turn on the N-channel of the left side, and the P-channel of the right side (and vise versa).  I will post a schematic that I use when I can.

I am using the FQP47P06 P-channel fets with good success, but they also make a complementary N-channel with or without a logic level gate:

http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=FQP50N06L-ND
Title: Re: PWM H-Bridge circuit
Post by: jd33333333 on Aug 31, 2009, 11:32 pm
here is a rough schematic... minus the capacitors and such. This turns on opposite legs of the H-bridge on at the same time thereby avoiding the shoot through condition.
(http://ftp://ftp.rediculouslygoodlooking.com/arduino/eagle_projects/hbridge.png)
Title: Re: PWM H-Bridge circuit
Post by: DigitalAmigo69 on Mar 17, 2010, 08:37 am
Here are some realy good materials - about Field effect transistors, their characteristics (current, thermal..utt.) and "H-bridge's" building with them....

First time on Arduino forum :P sorry for double post - I need 1 "normal" mesage, to be able to post links
Title: Re: PWM H-Bridge circuit
Post by: DigitalAmigo69 on Mar 17, 2010, 08:38 am
at first - for comparing - a H-bridge of bipolar transistors:
http://www.mcmanis.com/chuck/robotics/tutorial/h-bridge/bjt-circuit.html
How much can it take..? ;)
http://www.mcmanis.com/chuck/Robotics/projects/esc2/FET-power.html
To put it all together.. http://www.mcmanis.com/chuck/Robotics/projects/esc2/index.html