Requesting feedback on H-Bridge

Discussion in 'The Projects Forum' started by Johnny B. Goode, Mar 15, 2012.

  1. Johnny B. Goode

    Thread Starter New Member

    Jun 14, 2010
    3
    0
    Hey folks, been lurking for a while but this is my first post so I guess it warrants an introduction. I'm not an EE and have almost no formal training when it comes to electronics. I like to think I have a rudimentary understanding of electronics, but usually about the time I think I'm getting things figured out something I've never heard of rears its ugly head.

    As the title suggests I'm looking for feedback on an H-Bridge circuit that I designed. I'll post a couple of schematics at the end, but I'll start with some background and description. I know that I can just buy H-Bridge circuits that will interface with the arduino, but I don't really learn anything by taking that route and it's not as much fun(and by fun I mean frustrating).

    The circuit in question is intended to be controlled by an arduino. It has been designed to drive some small motors that operate at 6-24 volts, 12v nominal - which is what I intend to drive the motors at. Stall current for the motors is four amps. I'd really like it to be a rather general purpose design, but those are the motors around which it has been designed.

    I based the circuit around TIP41C and TIP42C BJTs because (if I read the datasheets correctly)they can handle a large range of voltages and a fair amount of current. The other transistors used are 2N3904 and 2N3906s because they're cheap and easy to find. Cheap and easy to find are important because I'm very good at ruining things. The diodes are 1N4001s for the aforementioned reasons.

    I know the circuit could be simpler and that I have more transistors than I need. I would like to drive the circuit with a PWM output, so I was going for a "balanced" design. It seems to me that having more transistors on one side of the big BJTs would cause some sort of signal propagation delay(probably not what the effect is actually called). If such an effect exists I'm sure it probably wouldn't actually make any difference in the performance of the circuit, but if I can eliminate it then why not?

    I've built and tested the circuit in the first picture. It worked but there are some caveats and a few realizations associated with the testing. First is that the power supply I used for testing was 5v, so even if the circuit wasn't really right I don't think I would've noticed. This means I probably need to run the smaller transistors off the 5v from the arduino and only apply the higher voltage to the TIPs, which means I need to sort of isolate them.

    The second picture is how I think I should set the circuit up to accomplish what I'm trying to do. One concern I have is the electrical noise caused by the motor(which I'm assuming is non-trivial) interfering with the micro controller. The other concerns I have are will this work or will it let the magic smoke out of something.

    I've attached the two pictures, but if they for some reason cannot be seen they are available at: http://www.shaggitywham.com/images/H-Bridge_Schematic-As_Tested.JPG and http://www.shaggitywham.com/images/H-Bridge_Schematic-Diff_Voltage-Untested.JPG

    Any advice is greatly appreciated.


    Thanks,

    Johnny
     
  2. Johnny B. Goode

    Thread Starter New Member

    Jun 14, 2010
    3
    0
    Just a short update: I've modified the circuit to match what is in the "untested" schematic and have done some basic testing(without hooking it up to the arduino). It seemed to work fine. I had a multimeter on the 5v supply and didn't see any voltage change when the motor was running. The only thing I can think to change would be to have a resistor on the 5v supply to ensure there are no issues with excessive current draw.

    Unfortunately I don't have access to an oscilloscope so I have no idea what kind of electrical noise there is with this circuit. I'd still like some feedback on this circuit if anybody has any comments or suggestions.


    Thanks,

    Johnny
     
Loading...