DPRG
DPRG List  



[DPRG] What's you favorite motor driver chip?

Subject: [DPRG] What's you favorite motor driver chip?
From: Kipton Moravec kip at kdream.com
Date: Mon Aug 27 08:26:14 CDT 2001

One thing at a time.  Right now I am concentrating on the hardware.  It
consists of a Philips  89C52RD2, a XILINX 9572 CPLD, a MAX232, two ST TD340
and the MOSFETs

I am making sure I can read and write to CPLD at memory speeds.  That will
be important to getting high loop rates.  I also want to make sure I can
read the encoder counters without problems.   My biggest concern is reading
the number in two 8-bit bytes.  Suppose the number is 0x01FF,  but I get a
pulse in the small interval between reading the lower and higher byte.
(Granted it is a low probability.) If I read high then low instead of 0x01FF
or 0x0200 I could get 0x0100. If I read low then high I could read 0x02FF.
On the other side if my loop is fast say 50Hz that means the system would be
out of wack for 20 ms and then be back on track.  I may be able to just
ignore it, as the mechanics will not be able to do very much positional
damage in 20 ms.

I want a couple of different algorithms.  A positional PID, a Velocity PID,
A joint wheel control of some type.  I really like the planner/control model
where the planner routine calculates the position of where the wheel should
be for every increment in the control loop.

I am not sure what should be done if the user specifies a speed faster than
both wheels can spin.  If he does, than probably one motor will spin faster
than the other, and the robot will turn. My gut feeling says maintaining
direction is more important than speed.

As you can see there is a lot of software to work out once I get some HW
working.

Kip

----- Original Message -----
>From: "David Peterson" <robologist at yahoo.com>
To: "Kipton Moravec" <kip at kdream.com>
Cc: "DPRG List" <dprglist at dprg.org>
Sent: Monday, August 27, 2001 12:17 AM
Subject: Re: [DPRG] What's you favorite motor driver chip?


> Kip this sounds too cool. I've been trying to figure out a
> homebrew answer to the Motor Mind B, especially something
> that might read quadrature and output a PID value. Those 500
> cpr encoders are pretty count heavy and trying to figure
> something to keep track of the multitude of blips was giving
> me brainlock. Besides the assemblies, I've some HEDS
> encoders also 500 cpr on the back of motors that run about
> 1000 rpm out the gearbox, so the encoder is twirling at near
> 6000 rpm. So that's about 50k counts per second to keep
> track of at free spin. Fortunately I haven't found an
> encoder yet to come up to the 5 M counts per second your
> board can keep track of. And the serial hook up sounds
> great, but now I've got to figure out the BS2s serin and
> serout functions (kinda avoided that til now). Any chances
> of seeing how you're programming it?
> David P
>
> ----- Original Message -----
> From: "Kipton Moravec" <kip at kdream.com>
> To: "Jeffrey T. Birt" <ditto at ipa.net>
> Cc: "DPRG List" <dprglist at dprg.org>
> Sent: Sunday, August 26, 2001 11:17 PM
> Subject: Re: [DPRG] What's you favorite motor driver chip?
>
>
> <snip>
> >
> > The board will have dual quadrature encoder counters
> 16-bits hardware, TBD
> > software, (maybe 32-bits) and it will be able to read
> pulses as fast as 5
> > MHz, so you don't have to worry about too much resolution.
> You will be able
> > to command it from a serial port.  (logic level or RS-232)
> >
> > Then the software...  It will have two or three "canned"
> control algorithms
> > which you can tune by setting the PID values (for
> example), and by passing
> > it some conversion factors, you can work in whatever units
> you desire!
> > Depending on the algorithm, I am shooting for a 50 Hz (or
> faster) control
> > loop.  The processor is a 6 state 8051 running at 20 MHz
> which is like a
> > conventional 8051 running at 40MHz.
> >
> > The board is designed to be a "co-processor" to handle two
> wheel control
> > with quadrature encoder feedback.  This leaves you with
> whatever processor
> > you choose to do the rest of the robot with.  12A should
> handle 95% of the
> > robots.
> >
>
>
>
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com


More information about the DPRG mailing list