Foreword

I was always building stuff as a kid. I didn’t have LEGO, but I was pretty happy with an erector set and whatever accessories were lying about the house. I still remember the day that I got a motor to run a crane built from flimsy metal spars. The simple process of lifting wooden blocks kept me entertained for hours. To me, that crane was not just a rickety pile of metal and string; it was a massive construction machine, and I was building skyscrapers, airports, entire cities. It was not so much about the things I built as it was about the things I imagined I was building. That was true when my kids starting building stuff, too, although they had the advantage of having LEGO, so we could build many more things. Together, we built hundreds of airplanes (the more engines, the better!) and used them to run around the house dogfighting. We built cities and destroyed them from missile bases. We built spaceships and ocean liners, trucks and buses, bulldozers and backhoes, motorcycles and race cars, coliseums and fortresses. What a blast! However, even with all that variety, it was basically the same activity that I had done when I was a child. Our stuff had no smarts.

And then along came MINDSTORMS. Suddenly, our creations were no longer completely predictable. Before MINDSTORMS, a car went where you pointed it, at whatever speed your hand (or its motor) pushed it, and fairly quickly crashed. At best, you could buy a remote control car, but even that just went where it was told. A MINDSTORMS car navigates by itself, avoiding obstacles (or picking them up), and keeps going.

However, building things is only half the battle; programming them is key. Furthermore, these creations can actually do useful stuff! Right away my kids and I built a robot that cleared the table. It ran around, detecting objects, scooping them up, and dumping them off the table, while being careful not to fall off the table itself. Lights! Sensors! Action! A single bot can do a million different things by just having you change the software.

At first I didn’t like the graphical programming environment that came with MIND-STORMS. I was used to standard programming languages, and having to move blocks around felt slow and clumsy. However, I found that, with no prior programming experience, my kids could program intuitively with the blocks. And then I found I could understand their programs with just a glance, not even having to read the code to follow the logic. Cool! Ultimately, the kids built and programmed a working model of the Space Shuttle’s robotic arm, and I took it along with me into orbit on board shuttle Discovery.

The FIRST LEGO League encourages kids to build robots as teams, and I am happy to participate, both as a judge and in the design of the contests. One day I was backstage while the competitions were running out front, and I saw a fifth-grader all alone, intently programming her MINDSTORMS brick. I asked her if she had a moment to talk, and she replied, “Well, OK, but just a minute because I have to get this working right now.” We talked for a bit about her project, and I realized that her grasp of concepts like torque, friction, and acceleration was at the level of a high school physics student. Finally I said, “You seem really into this project; what got you interested in robotics?” She said, “I’ll tell you, but you have to keep it secret, OK?” “You bet,” I replied. “Well, in our school there’s a deal where, if you do the LEGO league, you don’t have to do any science for the whole year, and I hate science, so I signed up for this—and it is so great! Anyway, I have to get back to programming since I’m the only one who knows how this part works.” So I left, amused to have met someone who “hated science” and loved being a scientist!

With the advent of MINDSTORMS NXT, the motors, sensors, and programming environment improved so much that I am incorporating NXT robots into the robots of my company, Denbar Robotics. I have not duplicated with NXT the types of robots we are making at Denbar. Instead, I decided to make robots that the Denbar robots command. For example, I built an NXT robot that has two drive motors and uses the third motor to move its light and ultrasound sensors. This robot can find light or dark directions, avoid obstacles, and navigate around the house. Our big robot, Neel, can turn the lights in the house on and off. So he can call the light-seeking robot by turning room lights on and off in a pattern that results in the light seeker getting to him. My idea is to have groups of robots that include leaders and followers. The LEGO robots can help Neel get access to spots that are too small for him and can do tasks for him while he is busy doing something else.

As robotic tasks become more interesting, the robots themselves must become mechanically more robust, able to withstand crashes, recover from upsets, steer accurately, and balance loads well. The authors of this book, led by Technical Editor Dave Astolfo, a member of the LEGO MINDSTORMS Developer Program/Community (MDP, MCP), have updated Mario and Giulio Ferrari’s content so that it is current with the NXT.They take us through the basics of gears, motors, and sensors and then move on to pneumatics, grabbers, and navigation, and eventually to tasks such as solving mazes and racing against time. The accurate descriptions and precise images have already helped me to make my robots stronger and more versatile. So gather your gear and let the inventing begin!

Dan Barry, M.D., Ph.D.NASA Astronaut (retired)Denbar Robotics

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.227.52.208