Building Mindstorms NXT Robots

advertisement
Building Mindstorms NXT
Robots
Dr. David Johnson
School of Computing
What Is a Robot?
Resources for Learning About Robots
• Web
– Wikipedia
• http://en.wikipedia.org/wiki/Robot
– New Scientist
• http://www.newscientist.com/article/dn9973-instant-expertrobots.html
– Youtube
• Many!
– MAKE magazine
– Boy Scout badge guide is quite nice and cheap
• Consider exercising your team’s FLL skills by
having them look at some of these resources
Some Example Robots
• Big Dog
– http://www.youtube.com/watch?v=b2bExqhhWRI
• Planetary Exploration
– http://www.youtube.com/watch?v=nb2GsD7TAjU&feature=related
• Home assistance
– http://www.youtube.com/watch?v=GTxW3GWZ5hI
• Hobby
– http://www.youtube.com/watch?v=zX09WnGU6ZY
What Is a Robot?
• Sense
– Update information about the world
• Plan
– Modify original plan in response to this
sensed information
• Act
– Move in the world or make a change in the
world
Mindstorms NXT
• Can it?
– Sense
– Plan
– Act
Mindstorms NXT
• It can
– Sense
•
•
•
•
•
Light intensity and color
Sound intensity
Button presses
Distance to nearby objects
Wheel revolutions
– Plan
– Act
Mindstorms NXT
• It can
– Sense
– Plan
• Small computer brain
– “the brick”
• Graphical programming language
– Act
Mindstorms NXT
• It can
– Sense
– Plan
– Act
• Three motors that turn
Goals For Today
• Raise your comfort level with Mindstorms
– Building
– Programming
– There is no substitute for doing it
• Try some common tasks
– Wheeled robot
– Respond to sensors
• Maybe a taste of competition…
Testing Equipment
• Plug in motors, sensors
• A critical thing to know is
the view program
– Let you read values from
sensors without writing a
custom program
Building
• Not “normal” LEGO pieces
– Based on the Lego Technic build system
– Pegs and holes
• Can be frustrating
– Stable
• One peg makes a rotary joint
• Multiple pegs lock two pieces in place
– Strong
• Keep in close to the main body
• The wheel axes must not be wobbly and flex!
Building Resources
• There are lots of instructions
for building things online
– http://www.nxtprograms.com/
– Have the team try some out
• Learn things that work
• Then modify
– Don’t get too distracted with NXT
guitars, guns, etc.
– 5 minute bot
• A quick base
• Probably not good to adapt for
competition
Programming
• Programming teaches
– Breaking complex problems into solvable parts
– Precise thinking and specification
– Creative experimentation to discover and isolate
problems
• Programs are designed on a base computer
– Downloaded by USB cable to the brick
•
Programming the Brick
• LEGO Mindstorms NXT
– Default language for programming Mindstorms
• Designed to be friendly
– Nice tutorials
• Try them with your team
– Not based on traditional programming languages
– Easy to do very basic things
• More difficult to advance
• It does have some subtle actions that can cause confusion
Learning to Use the Tutorial
• Each tutorial is structured as
– Challenge
– Build
– Program
• The mobile base from the tutorials is not
my favorite
– Takes too long to build
– Difficult to modify
A Quick Programming Tour
• Control goes along the path
• Each block performs some action
– Most blocks are very flexible
– Learn the options at the bottom panel
– Many actions continue until
• A sensor is triggered
• Time has passed
• A commanded result is finished
A Quick Test
• Attach a motor to the brick (ports A,B,C)
• Attach a touch sensor to the brick (ports 1,2,3,4)
• Write a program
– Move block
• Set duration to unlimited
– Wait until touch
– Move block
• Set the brakes
• Download to brick
• Run it
Additional Resources
• There is a lot to learn, but you can get started
pretty quickly
• I recommend
– Winning Design! LEGO Mindstorms NXT: Design
Patterns for Fun and Competition
• Most FLL-centric of the books
• Beginning to medium skill level
– If you don’t have prior experience, I think you would
be foolish not to look at this book.
• Parts of my FLL camp notes
– More for getting a novice team started
Let’s have a competition!
• Go through maze
• Stop before unknown finish “wall”
• How to solve?
– Detect or dead reckoning
• Development cycle
– Build, test, adjust, repeat
– Most kids do not understand how to test and
modify something until it works
Teams!
Download