The LEGO MINDSTORMS NXT is an amazing piece of
technology in more ways than one. With the combination
of the power of the NXT and the ability to rapidly prototype
mechanisms with LEGO elements, the MINDSTORMS NXT
kit really brings together all the components you need to
learn the basics of robotics which would otherwise seem
like a daunting task. First, we’ll look at what exactly the
NXT is good for; where it falls short; and just how far we
can push the software. Then, we'll build a driving chassis,
learn some basic programming, and talk about gear ratios.
What exactly is the NXT good for?
One of the most common responses I get when I tell
people I teach LEGO robotics is "Wait — you can build real
LEGO robots? I always thought the LEGO Star Wars kits
were cool but I had no idea that there was a kit for
building real robots!" The fact is, most people think of
LEGO as the brick and have no concept of just how far
LEGO has come over the years. The LEGO MINDSTORMS
NXT is in every way more advanced than LEGO Star Wars,
and it's important that people make a distinction between a
'model' and a 'robot.' The NXT is a robotics development kit
— not a static model kit — so if you're looking to build the
next big movie re-enactment in LEGO, look elsewhere.
Because the LEGO TECHNIC pieces included in the
MINDSTORMS kit are made of plastic and the snap-in
connections are relatively weak compared to screws or
bolts, the NXT is primarily useful for learning about robotics
and prototyping — rather than building the next big
ComBot. In the kit, you get a set of three motors, several
sensors, a brain, and a bin full of LEGO pieces to build your
robot with — as well as software with which to program it.
Where does the NXT fall short?
The biggest shortcoming of the NXT is its inability to
deal with extra weight. The pieces are not designed to
handle much stress beyond their own weight. So, as soon
as you add a few pounds of cargo to your bot, you'll
probably notice sagging and strain on the motors. For this
reason, it's important to try to keep your LEGO robots
lightweight; even then, make sure to use reinforced
connections wherever feasible. Scale is another issue that
sometimes comes into play with LEGO. LEGO pieces are
only so big and only so small. So, your dreams of building a
life-sized robotic LEGO car or a miniature 500 g Sumo robot
out of LEGO are sadly ill-founded. Besides that, the NXT is
capable of some very impressive things.
Just how far can you push
the software?
The awesome thing about the NXT is that it's open-source, and there are many languages and programming
environments you can choose from to up the performance
of your robot. For this reason, the NXT software is capable
of some extremely impressive things. Notably, software has
been created for NXT robots that balance on a ball, solve a
Rubik's Cube, and even draw digital pictures on paper
automatically!
For those looking to go beyond using the included
software, you might check out Lejos — a Java-based
programming language for the NXT — or Robot C —
a C-based programming language also compatible with
the NXT.
Building Eddie
Now that we've seen some of what's possible with the NXT, let's
get on to our project: building a basic, expandable driving platform.
The robotic driving platform we're building today is named Eddie 1.0
(the "ED"ucational robot). Eddie has two drive wheels and uses a
plastic ball as a caster in the rear. Eddie is very expandable with lots
of points to affix attachments, and some other great mechanical
features that we'll talk more about later! So, let's get building!
Start with one
NXT motor. 1.
Add two "long"
friction pegs.
Attach a studless L
beam to the pegs.
Add a tan axle-pin.
2.
3.
4.
SERVO 08.2010 57