Programming with Gestures
Create a way for young children to program the Finch!
ADVANCED: Going Further
Required lessons: Control Structures & Line Tracking, Variables, Lists
In this project, you will create a way for young children to program the Finch. The Finch will have two modes. In the recording mode, a child can tilt the Finch in different directions. Your program will save this sequence of tilts in a list. In the play mode, the Finch will translate the sequence of tilts into a sequence of movements.
First, write a script that will control the Finch when it is in record mode. In this mode, the user will tilt the Finch in different directions: Beak Up, Beak Down, Tilt Left, Tilt Right, and Other. Your goal is to record this sequence of tilts in a list called listOfOrientations. The requirements for record mode are listed below.
- At the beginning of the record script, listOfOrientations should be set to an empty list.
- In record mode, the robot should record the Finch’s orientation every second. This orientation should be added to the end of listOfOrientations.
- The Finch should stop recording after 30 seconds.
- When the Finch is in record mode, its beak and tail should be red.
- When the Finch leaves record mode, its lights should turn off.
Next, write a script that will control the Finch when it is in play mode. The script for this mode should move through listOfOrientations. For each orientation in the list, the Finch should make a movement. The requirements for play mode are listed below.
- The script should move through each item in listOfOrientations.
- The Finch orientations in the list should correspond to different movements of the robot. For example, Beak Down could correspond to moving the Finch forward. You should make the four orientations correspond to these four Finch movements: forward, backward, turn right, and turn left. You may choose which orientation corresponds to each movement. The robot should do nothing for the Other orientation.
- When the Finch is in play mode, its beak and tail should be green.
- When the Finch leaves play mode, its lights should turn off.
When you have a working project, be sure to find some younger students to try it out!
Extension 1: Choose new movements to correspond to different tilts of the Finch, or maybe you would prefer to add lights and sound to your program. Use your imagination!
Extension 2: Instead of recording the Finch orientation, record the x and y values of the accelerometer and use those measurements with the Finch Wheels block to control the motion of the Finch in play mode. This gives you more control over the speed of the Finch. When doing this, you will want to record more frequently during the record mode (every 0.1 s) so that the speed changes more smoothly in play mode.