Newbie - RC receiver to 2xPWM outputs with a 16F84
David Cary email (remove spam text)
Dear people designing H bridge drivers:
You probably have already figured out that "servo" PWM is very different from
"motor drive" PWM.
"servo" PWM: typically repeats at 20 to 70 Hz; 1 ms lo for reverse; 1.5 ms lo
for neutral; 2 ms lo for full forward, hi for rest of period.
"motor drive" PWM: typically repeats at 20 KHz to 100 KHz; solid lo for off; 1/2
period lo, 1/2 period hi for half-speed; solid hi for full on.
Brian Reed <REEDONLINE.COM> on 2001-04-21 08:35:13 PM wrote: piclist
> Subject: Re: [PIC]: Newbie - RC receiver to 2xPWM outputs with a 16F84
I agree that we only need 1 PWM and 1 DIRection bit per H bridge, but I don't
understand the rest of your description.
Bob Blick <SABER.NET> on 2001-04-21 08:55:27 PM wrote: bblick
> if you design your
> H-bridge correctly(it only takes 2 small transistors extra) you can prevent
> shorts and get a braking channel for "free".
Do you have a pointer to a "correctly-designed" H bridge ?
The H bridge circuit I'm about to install on my robot has the DIRection bit go
directly to the "left" half of the H bridge (actually a small transistor,
flyback diode, and a SPDT relay) which drives one motor lead. The "right" half
of the H bridge is controlled by the PWM, and drives the other motor lead. (PIC
PWM output goes through 2 inverters to give it a little more power and convert
TTL to +12V, then that 0 to +12V PWM signal connects to a power PFET on the top
right and a power NFET on the lower right).
(Pardon the crude ASCII diagram)
Bhi and Blo are both connected to the 0 to +12 V PWM signal.
The relay is controlled by the direction bit.
Not shown: 4 flyback Schottky diodes, connecting every motor lead to every
I haven't actually applied power yet, but I'm planning on
Full forward: DIR = Forward, PWM = 0xff
slow forward: DIR = Forward, PWM = 0x20
stop: DIR = Forward, PWM = 0x00
stop: DIR = Reverse, PWM = 0xFF
slow reverse: DIR = Reverse, PWM = 0xDF
full reverse: DIR = Reverse, PWM = 0x00.
Does this make any sense ?
(The relay in the left half H bridge is break-before-make. Right now, the 2
transistors in the right half H bridge are make-before-break, but the
transistion time is so small that I'm hoping it doesn't matter -- I *think* I
can tweak that circuit to get independent Bhi and Blo break-before-make if I
really need to, without any changes in software).
I was looking at High-side switching with 2 NFETs, but right now I think it's
simpler to use this PFET for motors that pull less than 10 A (when stalled):
$1.05 IRFR5305-ND (DPAK) -55 Vdss, -25 A Id P-CH (Price from Digikey on 2000)
Here's some H bridge links I've found useful:
Power H Bridge Driver http://www.PicNPoke.com/projects/mdrive.pdf
IR Design Tip DT-98.2 Bootstrap Component Selection For Control IC's
http://www.irf.com/technical-info/designtp/dt98-2.htm (for H bridges and half
bridges that use N type transistors on the hi side).
http://www.irf.com/_FKK4aEd/technical-info/appnotes/an-978.pdf MOS-gate drivers
(MGDs), the bootstrap circuit, brushless motor driver
-- David Cary
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics
See also: www.piclist.com/techref/microchip/begin.htm?key=pwm
You must be a member of the
piclist mailing list
(not only a www.piclist.com member) to post to the