If you need assistance, please send an email to forum at 4hv dot org. To ensure your email is not marked as spam, please include the phrase "4hv help" in the subject line. You can also find assistance via IRC, at irc.shadowworld.net, room #hvcomm.
Support 4hv.org!
Donate:
4hv.org is hosted on a dedicated server. Unfortunately, this server costs and we rely on the help of site members to keep 4hv.org running. Please consider donating. We will place your name on the thanks list and you'll be helping to keep 4hv.org alive and free for everyone. Members whose names appear in red bold have donated recently. Green bold denotes those who have recently donated to keep the server carbon neutral.
Special Thanks To:
Aaron Holmes
Aaron Wheeler
Adam Horden
Alan Scrimgeour
Andre
Andrew Haynes
Anonymous000
asabase
Austin Weil
barney
Barry
Bert Hickman
Bill Kukowski
Blitzorn
Brandon Paradelas
Bruce Bowling
BubeeMike
Byong Park
Cesiumsponge
Chris F.
Chris Hooper
Corey Worthington
Derek Woodroffe
Dalus
Dan Strother
Daniel Davis
Daniel Uhrenholt
datasheetarchive
Dave Billington
Dave Marshall
David F.
Dennis Rogers
drelectrix
Dr. John Gudenas
Dr. Spark
E.TexasTesla
eastvoltresearch
Eirik Taylor
Erik Dyakov
Erlend^SE
Finn Hammer
Firebug24k
GalliumMan
Gary Peterson
George Slade
GhostNull
Gordon Mcknight
Graham Armitage
Grant
GreySoul
Henry H
IamSmooth
In memory of Leo Powning
Jacob Cash
James Howells
James Pawson
Jeff Greenfield
Jeff Thomas
Jesse Frost
Jim Mitchell
jlr134
Joe Mastroianni
John Forcina
John Oberg
John Willcutt
Jon Newcomb
klugesmith
Leslie Wright
Lutz Hoffman
Mads Barnkob
Martin King
Mats Karlsson
Matt Gibson
Matthew Guidry
mbd
Michael D'Angelo
Mikkel
mileswaldron
mister_rf
Neil Foster
Nick de Smith
Nick Soroka
nicklenorp
Nik
Norman Stanley
Patrick Coleman
Paul Brodie
Paul Jordan
Paul Montgomery
Ped
Peter Krogen
Peter Terren
PhilGood
Richard Feldman
Robert Bush
Royce Bailey
Scott Fusare
Scott Newman
smiffy
Stella
Steven Busic
Steve Conner
Steve Jones
Steve Ward
Sulaiman
Thomas Coyle
Thomas A. Wallace
Thomas W
Timo
Torch
Ulf Jonsson
vasil
Vaxian
vladi mazzilli
wastehl
Weston
William Kim
William N.
William Stehl
Wesley Venis
The aforementioned have contributed financially to the continuing triumph of 4hv.org. They are deserving of my most heartfelt thanks.
Registered Member #146
Joined: Sun Feb 12 2006, 04:21AM
Location: Austin Tx
Posts: 1055
Ive been working on a DC brushed motor controller (i dabble in robotics too) and have been trying to come up with a proper gate drive solution.
First off, i have looked at most of the common half-bridge drivers that are "bootstrap" type designs where you only charge your high side supply when you switch on the lower fet in the half-bridge. This is a big problem when driving DC motors, since you are either constantly pulsing the top fet, or the bottom, and never really alternating.
Ive considered building my own DC-DC converter to power the high side driver (like i do with my DRSSTCs) but this just seems like a huge hassle, and still i would need opto-isolators to couple the logic level drive signal to the high side driver. Of course, optical isolation between the micro controller and the power electronics wouldnt be a bad thing (particularly to avoid ground loop issues).
Anyway, im curious if anyone has run across high side drivers that have a built in charge pump (to avoid the drawbacks of the bootstrap setup i mentioned above). Of course, im open to other suggestions as well. IF anyone has already built what im trying to build, then id be curious to hear some details of your design.
Registered Member #30
Joined: Fri Feb 03 2006, 10:52AM
Location: Glasgow, Scotland
Posts: 6706
The way I like to drive an H-bridge, you are always alternating. When the motor is at a standstill, both sides are running 50% duty cycle, and the PWM signal of one side is just the inverse of the other. If you limit the duty cycle to the range of say, 1% to 99%, the bootstrap thing is always geting charged.
The only drawback is increased switching losses at a standstill, and the inability to coast the motor (you always have regen braking) unless you slap the whole mess inside a motor current control loop.
There are some discrete charge pump circuits on the 4QD site, IIRC.
Registered Member #146
Joined: Sun Feb 12 2006, 04:21AM
Location: Austin Tx
Posts: 1055
Hey Peter, thanks for the tip. I was looking at that chip a long time back and forgot about it. The 30V max is cutting it close (24V nominal NiMH battery power, so it would peak near 28V+).
Steve, is the idea with the 'dc bias drive' basically to have the motors inductive reactance swamp out its resistance? I thought about such a driving scheme, but im not sure i like the idea of the stand still current-draw... but i suppose i could disable the PWM during stand still. There will be either rotary encoder feedback or linear position feedback on the motor channels, so the micro could be "smart" about how it controls the motors in this manner.
I came up with another drive scheme (using normal boot-strap drivers) where one half-bridge oscillates hi-lo and the other one just stays lo the whole time. This works ok at high enough PWM frequency, but im not sure i like the short-circuit it places across the motor during the "off" period. I could pulse the lower fet on and off instead of leaving it on the whole time, but this requires more control logic.
Registered Member #30
Joined: Fri Feb 03 2006, 10:52AM
Location: Glasgow, Scotland
Posts: 6706
Hi Steve,
Yes, in practice the inductive reactance of the motor should be so big that if you're operating in the 10s of kHz it smooths the current right out. So with both sides at 50% the motor passes no DC current (so it generates no torque) and a (hopefully small) AC ripple current.
If you're operating at a lower frequency, it may not work out so well and you might have to use one of the other schemes you mentioned.
The short-circuit across the motor during the "off" period is what causes regen braking and makes it a 4-quadrant drive. Think of it like a boost converter stepping the motor voltage up to feed motor current back into the battery. 4-quadrant operation is often necessary when the motor is inside a servo loop: if the drive is missing a quadrant, the dynamics of the servo loop will change when it wanders into that quadrant.
Registered Member #146
Joined: Sun Feb 12 2006, 04:21AM
Location: Austin Tx
Posts: 1055
I looked at other commercial motor drives and realized that my intended scheme is the same thing they do anyway...
Ive also been looking at some high power P-channel fets, so i can just make P-N pairs using the AC coupled gate drive to the high side P-fet. I tested this with some higher resistance P fets i have here (80mOhms) and it worked good with heatsinking up to 5A at 40V. I found some cool fets with only 16mOhms, so i recon they ought to outperform the N-chan fets i have at 24mOhms.
Anyway, ive been messing with TI's UCC27200 drivers, but for some reason the bootstrap diodes keep going leaky and failing on me (i think). I can see the high side supply leaking current as soon as i apply voltage to the bridge. The high side supply drops by the same voltage as the bridge voltage, which makes me think the reverse biased boot diode is leaking. Eventually it gets so bad that they fail. Im pretty fed up with it, so the P/N bridge is starting to sound more appealing... so long as it can do 20A continuous and 50A peak (which it ought to).
Otherwise, i already ordered up some other high-side drivers to give them a shot...
Registered Member #146
Joined: Sun Feb 12 2006, 04:21AM
Location: Austin Tx
Posts: 1055
I think i have it all figured out now. Here is how it went down...
I built a test P/N fet bridge to test out Conner's drive method (using AC drive with DC offset via duty cycle control). This pulled an excessive amount of current with an idle motor (in fact it seemed to pull about the same current whether the motor was full blast or stopped). I tweaked up the frequency a bunch and this lowered the motor current of course, but increased my switching losses a bunch.
I then switched to the "buck" drive. This was much more efficient to say the least.
I ordered up some different high side drivers from intersil: ISL6700. They are rated 80V and 1.25A peak output current per driver. They worked perfectly for me right from the start, unlike those TI drivers (UCC27200) that seemed to fail unpredictably under light duty conditions even.
So i think this one is done. I tested my drivers up to 5A at 25VDC input (just hooked up a bunch of motors) and the little heatsinks hardly warmed up (24mOhm fet resistance). I need to see if i can get 10 or even 20A out of this thing now (probably need bigger heatsinks).
Now its time to focus on the microcontroller code. If there is any interest i can release the PCB layout and source code for the driver when its all done.
This site is powered by e107, which is released under the GNU GPL License. All work on this site, except where otherwise noted, is licensed under a Creative Commons Attribution-ShareAlike 2.5 License. By submitting any information to this site, you agree that anything submitted will be so licensed. Please read our Disclaimer and Policies page for information on your rights and responsibilities regarding this site.