what microcontroller to buy to start robot building?

General Robotics Forum - All aspects of robots and their applications. 

Bookmark this page:  YahooMyWeb Yahoo!  Google Google  Windows Live Favorites Windows Live  del.icio.us del.icio.us  digg digg  Add to Netscape Netscape
Subject Author Date
what microcontroller to buy to start robot building? panfilero 02-16-2007
If you were  Registered and logged in, you could reply and use other advanced thread options
Posted by panfilero on February 16, 2007, 10:03 am
Hello, I'm taking a class right now where we're building a robot,
primarily around these main central components

csm-12c32 module board (MC9S12C32)
Xcite OEM RF Module (Wireless Transiever)
USB-ML-12 (BDM)

I was thinking about buying these for myself and building my own robot
at home, to parallel what we're doing in class so I can do and have
these things for myself. But, I was wondering if these are good
components for someone who wants to build robots as a hobby? Can
anyone recommend something equivalent or better for what I'm trying to
do or are these good?

thank you
Joshua


Posted by David on February 17, 2007, 2:03 pm
you could have a look to gumstix, as long as you are not doing
something too ambitiuous :)

Hope it helps,
David


> Hello, I'm taking a class right now where we're building a robot,
> primarily around these main central components
> csm-12c32 module board (MC9S12C32)
> Xcite OEM RF Module (Wireless Transiever)
> USB-ML-12 (BDM)
> I was thinking about buying these for myself and building my own robot
> at home, to parallel what we're doing in class so I can do and have
> these things for myself. But, I was wondering if these are good
> components for someone who wants to build robots as a hobby? Can
> anyone recommend something equivalent or better for what I'm trying to
> do or are these good?
> thank you
> Joshua



Posted by RMDumse on February 18, 2007, 7:05 pm
> Hello, I'm taking a class right now where we're building a robot,
> primarily around these main central components
> ...
> Can anyone recommend something equivalent or better for
> what I'm trying to do or are these good?

My new answer to this question "which microcontroller" is the best
micro is the one you know, or the next one you want to know. The
programmers interest in the micro is much more important than the
actual features.

We (NMI) build many different micro boards. We made HC11's which were
pretty good for robotics for their time (1988 - about 2000). We made
HC12 boards, but we didn't promote them much because their Flash
wasn't up to snuff. We had some fail after only 70 programming cycles,
even though they were supposed to go at least 100 times. In a
development environment, that means you won't get through many
development cycles before you have to throw your board away, and get a
new one. Now supposedly they've got the HC12 flash where it lasts
longer, iirc 1000 times. In any case, we just weren't that impressed
with the line for that reason.

I am still of the opinion the DSP56F80x line of processors is the
absolute best thing made for motion control projects. We sell more of
those than any other processor of late. When they came out, they
suggested their Flash would reprogram 100,000 times. I've never been
able to burn one out for reprogramming. So to me, that's a much better
investment.

But really, beyond having a fast processor, the next most important
issue is how well do the hardware features match your needs. In cases
like this, the PWM and timer suites on the DSP56F80x are the best I've
ever seen. For instance, does the HC12 have quadrature inputs? Without
looking into the data sheets for your particular one, my memory says,
probably not. Well, if you're going to do real PID motor control, or
advanced Odometry, you will either have hardware quadrature counters
or you will have to make software channels. If you do it in software,
and your encoders are fine enough to make good motor control, expect
to waste from 100% to 25% of your processor's execution time tracking
2 channels quadrature, where when done in hardware, there is 0%
overhead doing the same thing.

The DSP56F805 on our IsoPod(TM) for instance has two hardware
quadrature channels built in, and even the timers have a mode where
they can do quadrature, so running 6 channels of quadrature is a no-
processor overhead effort. You still have 12 PWM channels left over to
drive RC-Servos or PWM for H-bridges. We've got a small stack with a
DSP56F803 PlugaPod(TM) on an Hbridge with a XBee module built in. GPS
also if desired. You might want to see our web site to see how small
it is.

Finally, I should say the HC12 is a much slower processor, and
therefore uses less current than the DSP56F80x series. So it's better
on batteries, unless you start needing bunches of them to get the same
computing power. (DSP56F80x are ~80MHz 40 MIPS)

But there are ARM's now that run neck and neck with the DSP56F80x's,
but while they are very nice in many ways, they still don't have the
same complement of hardware the DSP does. Fred Martin of MIT who used
to do HC11's in the Handiboards is now doing even faster BlackFin DSP
processors on his board. So there are still lots of other options as
well.

So, when it comes to robotics, there are processors built from the
ground up for motion control, and then there are the others, which you
have to write a bunch of resource consuming software to approach their
performance. You decide.

I can see why your instructor would choose the HC12. It's a natural
follow on to the HC11 which was wildly populare and extremely well
featured for its time, and the HC12 is fairly popular. Probably fairly
easy to teach. But to me, it approaches the end of its life very soon,
and I'd rather jump ahead to a more modern processor that will have
some staying power. Again, it depends on 1) what you're interested in
learning/using 2) what hardware it brings to the party to make the
programming eaiser. and 3) wether it is a good career move for you to
do.

To the other items:

Maxstream make pretty good RF links. We use the XBee links in our
product line. So with the XBeePro units, we can get about 1/2 mile up
to 1 mile (depending on antenna height above ground) communications
between robots and PCs.

Lastly, BDM is an older concept of Motorola's than the now popular
JTAG, but in essence is the same thing. This means you are writing on
a PC and downloading and are much less interactive than the approach
we take with our boards. Again, different styles for different
programmers. But having some sore of BDM or JTAG for reloads is a good
idea, any way you go.

--
Randy M. Dumse
www.newmicros.com
Caution: Objects in mirror are more confused than they appear


Posted by Rich Grise on February 19, 2007, 4:48 pm
On Fri, 16 Feb 2007 07:03:34 -0800, panfilero wrote:

> Hello, I'm taking a class right now where we're building a robot,
> primarily around these main central components
>
> csm-12c32 module board (MC9S12C32)
> Xcite OEM RF Module (Wireless Transiever)
> USB-ML-12 (BDM)
>
> I was thinking about buying these for myself and building my own robot
> at home, to parallel what we're doing in class so I can do and have
> these things for myself. But, I was wondering if these are good
> components for someone who wants to build robots as a hobby? Can
> anyone recommend something equivalent or better for what I'm trying to
> do or are these good?


I'd just buy the same stuff that you're learning on - that way, you
won't have to learn a new processor, and you'll have a reference (in
the class lab) if you have any problems with the home unit.

Good Luck!
Rich



The site map in XML format XML site map
other useful resources:
Official Robosapien Website
Lego Mindstorms Website

Contact Us | Privacy Policy