what to expect in each chapter
getting help: the companion website
1
collecting the equipment for your robot
the NXT-G programming software
building tip: friction and nonfriction pins
using the NXT buttons to navigate on the NXT brick
3
creating and modifying programs
working with the NXT-G software
controlling the robot remotely
4
working with programming blocks: move, sound, and display
what do programming blocks do?
using blocks to create programs
using different programming blocks
seeing the move block in action
understanding the configuration panel
understanding the configuration icons
understanding the sound block configurations
seeing the sound block in action
Discovery #5: Which Direction Did You Say?!
understanding the display block configurations
seeing the display block in action
Discovery #10: W8 for the Explorer!
Building Discovery #1: Exploring Art!
5
waiting, repeating, and other programming techniques
understanding the wait block settings
seeing the wait block in action
more on the move block: moving unlimited
the duration unlimited setting in action
problems with moving unlimited
understanding the loop block settings
seeing the loop block in action
Discovery #13: Guard the Room!
using loop blocks within loop blocks
making your own blocks: the my block
using parallel sequences in a program
Discovery #17: Let’s Multitask!
Discovery #18: Complex Figures!
Building Discovery #2: Mr. Explorer!
PART II BUILDING AND PROGRAMMING ROBOTS WITH SENSORS
understanding the sensors in the NXT 2.0 kit
Discovery #19: Mind Your Head!
understanding the ultrasonic sensor
creating the ultrasonic sensor attachment
Discovery #20: Hello and Goodbye!
Discovery #21: Avoid Walls and a Bad Mood!
Discovery #24: See the Distance!
Discovery #26: Intruder Alarm!
Building Discovery #3: Railroad Crossing!
7
using the touch, color, and rotation sensors
creating the bumper attachment with touch sensors
programming with the touch sensor
avoiding walls with touch sensors
Discovery #28: Only Two Is Enough!
Discovery #29: Smart Decisions!
creating the color sensor attachment
using the view mode to poll the color sensor
programming with the color sensor
Building Discovery #4: Clean That Test Pad!
Discovery #30: Tell Me What You See!
Discovery #31: Expert Line Following!
Discovery #32: Which Button Did You Press?!
using the NXT buttons as sensors
using the view mode to poll the rotation sensor
making programs with rotation sensors
Discovery #34: Circling Degrees!
Discovery #35: Rotational Music!
Discovery #36: Color the Ball!
Discovery #37: Ultrasonic Line Following!
Building Discovery #5: Automatic House!
8
shot-roller: a robotic defense system
Discovery #38: A Colored Voice!
Discovery #39: A Motor Block Task!
Discovery #40: Dangerous Intruder Alarm!
Discovery #41: Combining Sensor Power!
Discovery #42: Research with the NXT!
Building Discovery #6: Look Before You Shoot!
Building Discovery #7: Catapult!
9
strider: the six-legged walking creature
understanding strider’s walking technique
creating the walk-forward my block
creating the walk-left and walk-right my blocks
using the my blocks in an interactive program
Discovery #43: Triangle Time, Again!
Discovery #44: Walking in Six Directions!
creating the scared strider program
Discovery #45: Walking at the Speed of Light!
Building Discovery #8: Tired of Walking?!
Discovery #46: Remote Control!
Building Discovery #9: A Pair of Eyes in the Back!
PART III CREATING ADVANCED PROGRAMS
10
using data hubs and data wires
a program to get started with data wires
understanding the sample program
how do data hubs and data wires work?
creating a second example program with data wires and data hubs
using data plugs: input and output
block configurations when using data wires
Discovery #47: Growing Circles!
configuring a touch sensor block
configuring a color sensor block
configuring a rotation sensor block
Discovery #50: Touch Sensor Wires!
Discovery #51: Read the Sensor Readings!
multiple data wire connections
connecting multiple wires to different plugs
connecting multiple wires to one data plug
using settings with both input and output plugs
Discovery #52: Multifunctional Wires!
using data wires across your program
Discovery #53: Looking for Help!
Discovery #54: Turn Up the Volume!
Discovery #55: Control the Throttle!
Discovery #56: SmartBot Is Watching You!
Building Discovery #10: A Polite SmartBot!
11
using data blocks and using data wires with loops and switches
Discovery #59: And, Or, XOr, or Not?
configuring switch blocks with data wires
using number and text data wires and switch blocks
connecting data wires to inside switch blocks
Discovery #61: Press Any Key to Continue!
Discovery #62: Arithmetic Rotations!
Building Discovery #11: Bionic Hand!
12
using variables, constants, and playing games on the NXT
creating a program with a variable
Discovery #64: Smarter Count Program!
creating a program with constants
step 1: displaying a target randomly
step 2: waiting until a button is pressed
step 3: storing which button is pressed
step 4: comparing the position and button variables
step 6: displaying the current score
step 7: making the program repeat for 30 seconds
Discovery #65: Smart-Game Program Advanced!
Building Discovery #12: Whack-a-Mole!
PART IV ADVANCED ROBOT PROJECTS
13
snatcher: the autonomous robotic arm
Discovery #67: I Don’t Like Blue!
Discovery #68: Light in a Corner!
Building Discovery #13: Tabletop Cleaner!
14
hybrid brick sorter: sort bricks by color and size
understanding the sorting technique
building the hybrid brick sorter
finding bricks to use with your sorter
programming the hybrid brick sorter
Discovery #69: High-Speed Sorting!
Discovery #70: Quatro Brick Sorter!
Discovery #71: Intelligent Sorting!
Building Discovery #14: Hybrid Brick Shooter!
15
CCC: the compact chimney climber
understanding the climbing technique
staying balanced on the x-axis
building the compact chimney climber
programming the compact chimney climber
step 2: climbing and staying balanced
step 3: going down, staying balanced, and stopping
Building Discovery #15: Aerial Tram!
appendix
troubleshooting and solving connection problems
using the NXT controller to download programs to the NXT
problems connecting to an NXT with USB
problems downloading programs to the NXT
using Bluetooth to download programs to the NXT
connecting to the NXT with Bluetooth