Lesson: Flight Training
Time: 40+ mins
IntroductionLet's get ready to program drones using code! In this lesson, students will learn the basics of how to make a drone take off, land, move in different directions (forward, up, down), and more. They'll begin by reviewing sequencing concepts as they write steps on how to make a drone fly forward for 1 second in today's warm-up activity. Next, they'll move onto the coding activities where they'll solve puzzle modules.
The puzzle modules don't require a Parrot drone. For now, students will only use the Tynker platform to practice using code blocks as they learn how to program a virtual drone. The last module is a multiple-choice quiz that reviews concepts from this lesson. You can find quiz and module solutions in the "Answer Key" section of this teacher guide.
Note: You can structure this course in different ways depending on the devices that are available to you. Parts of the course can only be completed on a computer (laptop, desktop, or Chromebook) and parts of the course require a tablet to test out your code on a drone.
New Code Blocks
: Start the program when the play button is selected. : Make the drone take off into the air. : Make the drone land. : Move the drone in the direction it is facing for a specific amount of seconds. : Move the drone right at the specified speed. Speed values range from : Make the drone fly upwards for a specific amount of seconds. : Make the drone fly downwards for a specific amount of seconds.
- Code: The language that tells an electronic device (e.g., computer) what to do
- Actor: A Tynker character or object that can talk and interact with others
- Stage: The background of the project where the Actors are placed
- Sequence: The order in which steps or events happen
- Command: A specific action or instruction that tells the computer to do something
- Drone: A robot that can fly and is remote controlled.
- Speed: How fast the drone is moving. In this course, students will use percentages to set the speed of their drone.
- Altitude: How high the drone is above the ground.
- Use code blocks to solve puzzle modules
- Apply coding concepts to make a virtual drone take off, move in different directions (forward, up, down), and land
- Set the speed of the drone
- Calculate how many seconds the drone needs to move based on its speed and distance
- For web: Computers, laptops, or Chromebooks (1 per student)
- For mobile: iPads or Android tablets (1 per student)
Warm-Up (5 minutes)Tell students that in today's lesson, they'll learn how to program a virtual drone. Pair up students, then ask them to discuss the following with their partner:
- What are the necessary steps to make a drone fly forward for 1 second?
Step 1: Make the drone take off from the ground.
Step 2: Make the drone fly forward for 1 second.
Step 3: Make the drone land.
Point out to students that they just practiced sequencing! They'll need to apply this concept in today's coding adventure as they navigate a virtual drone in the puzzle modules.
Activities (40+ minutes)Facilitate as students complete the Flight Training modules on their own:
1. First Flight (Concept)
- Students will watch a short animation of a friendly scientist introducing the Drones 101 course.
- If this is your students' first time using Tynker…
- Explain that Tynker is a creative platform that will allow them to bring their projects and games to life through code!
- Inform them that anything attached to the "on start" code block will happen as soon as they press the Play button.
- Point out to that event blocks are important because their code will not run unless blocks are attached to an even block. They can identify an event block by its special shape: rounded on the top with a notch on the bottom. An example of an event block is the "on start" block.
- Students will learn about the "take off" and "land" drone blocks, which are two essential blocks they need to use as they code their drone.
- The "take off" code block should be the first thing students add in their code. Without it, the other code blocks will not do anything.
- Make sure students understand the difference between the "take off" and "land" code blocks: The "take off" block launches a drone in the air, whereas the "land" code block makes the drone descend until it touches the ground. Also point out that the drone must take off before it can use the "land" block. They'll need to know this for the quiz.
- Inform students that in the next lesson, they'll learn how to use an iPad or Android tablet to program the drone. For now, they will need to practice using code blocks to program a virtual drone.
- To solve this puzzle, students need to add two blocks: "take off" and "land".
- Inform students that the puzzle modules will increase in level of difficulty as they progress through the lesson.
- Students will learn how to move the drone using the "forward" block.
- Inform students that the "forward" block moves the drone in the direction it is facing for a specific amount of seconds. The provided example will move the drone forward for 1 second.
- Students will also learn how to adjust the speed of the drone using the "set speed to" code block.
- Inform students that the default speed of the drone is 50%.
- Check for understanding by asking students, "True or false: A drone traveling at a speed of 50% for 1 second will move a different distance than a drone traveling at a speed of 100% for 1 second" (Answer: True)
- To solve this module, students need to program the drone to land on platform B.
- Give a hint: Ask students…
- What's the first step the drone needs to do? (Answer: take off)
- Once the drone takes off, what does it need to do? (Answer: move forward for 1 second)
- What code block makes the drone land? (Answer: land)
- Inform students that in future puzzles, they'll need to calculate how many seconds the drone needs to move forward based on the drone's speed.
- This puzzle is similar to the previous module, but students will need to program the drone to move a further distance.
- Are students struggling? Ask them to change the value in the "forward" block.
- Optional: If students finish early, ask them to find a different solution. (Example: take off - fly forward for 1 second - fly forward for 1 second- fly forward for 1 second - land) Next, ask students to define an "optimal" solution. Why is using one "fly forward" block set to 3 seconds more optimal than using 3 "fly forward for 1 second" code blocks?
- Unlike previous puzzle modules, students need to set the drone's speed and calculate how many seconds the drone needs to move to get to its destination.
- Encourage students to experiment with different speeds. See if they can set the speed to a value higher than 50% and guess how many seconds they need to make the drone move forward. This will allow them to become familiar with how the drone speed works.
- Point out the squares on the background. Students can use them as a counting reference.
- Are students using different speeds? If they choose a speed of 75%, they'll need to move the drone forward for 2 seconds. If they choose a speed of 100%, they'll need to move the drone forward for 1 second.
- Now it's time to navigate the drone through moving obstacles!
- Are students struggling? Ask them to use 2 "set speed to" code blocks and 2 "forward" code blocks. Make sure they're using different values for each code block.
- If students still need practice setting the speed to calculate how many seconds the drone needs to move, encourage them to guess and check their code one at a time. How did their changes affect the code's output?
- Students will learn how to move the drone up and down using the "up" and "down" code blocks.
- Make sure students click the provided blocks and see how it affects the virtual drone.
- Students can practice using the "up" and "down" code blocks in the next puzzle modules.
- To solve this puzzle module, students will need to program the drone to navigate around the obstacle and land on platform B.
- Check for understanding by asking students, "Why do you need the 'land' and 'down' code blocks?" Make sure students understand what each block can do that the other can't. For example, the "land" block turns off the drone's engines once it touches the ground. The "land" block also moves the drone down until a condition (touching the ground) has been met, whereas the "down" block only moves the drone down a specific amount of seconds.
- Encourage students to calculate (not guess) the time or distance the drone travels.
- At 100% speed, the drone will move 4 squares in 1 second
- At 75% speed, the drone will move 3 squares in 1 second
- At 50% speed, the drone will move 2 squares in 1 second
- At 25% speed, the drone will move 1 square in 1 second
- Inform students that they can also use non-integer numbers. For example, if they set the drone to 100% speed and move it up for .5 seconds, the drone will move 2 blocks.
- Are students struggling? Ask them to figure out the number of blocks they'll need to move before they set the speed of the drone. Encourage them to think out loud through their steps.
- In this puzzle module, the obstacles are moving!
- Inform students that they need to navigate the drone around the moving obstacles. Give a hint: Tell students to avoid the area with the moving obstacles.
- Are students struggling to calculate how many seconds to set the "up" and "forward" blocks to? Ask them to set the speed to 25%, which will move the drone one square per second. Students can then count the number of squares the drone needs.
- This puzzle module is more complex than previous puzzles.
- Make sure students avoid the moving obstacles.
- Are students struggling? Ask them to write down how many squares the drone needs to move up and forward. Remind them to set their speed to 25%, which will move the drone one square per second.
- Students will be asked multiple-choice quiz questions to review concepts from this lesson.
Extended ActivitiesReview today’s coding adventure by leading a discussion. Ask students:
- Whenever you're programming a drone, which 2 drone blocks should you always include in your code? (Answer: "take off" and "land")
- What are some benefits of using drones? (Answers will vary)
- What advice would you give someone coding a drone on Tynker for the first time? (Answers will vary)
- CCSS-ELA: SL.5.1, 6-8.RST.3, 6-8.RST.4, 6-8.RST.7, RI.7.4, RI.8.4
- CCSS-Math: MP.1
- CSTA: 1B-CS-02, 1B-CS-03, 1B-AP-11, 1B-AP-12, 1B-AP-15, 2-CS-02, 2-CS-03, 2-AP-10, 2-AP-11, 2-AP-13, 2-AP-14, 2-AP-15, 2-AP-16
- CS CA: 3-5.AP.10, 3-5.AP.13, 3-5.AP.14, 3-5.AP.17, 3-5.CS.2, 3-5.CS.3, 6-8.CS.2, 6-8.AP.13, 6-8.AP.16, 6-8.CS.2, 6-8.CS.3
- ISTE: 1.c, 1.d, 4.d, 5.c, 5.d, 6.b
National Curriculum in England (computing):
Key Stage 2 (Years 4-6)
- Design, write and debug programs that accomplish specific goals, including controlling or simulating physical systems; solve problems by decomposing them into smaller parts
- Use logical reasoning to explain how some simple algorithms work and to detect and correct errors in algorithms and programs
- Understand computer networks, including the internet; how they can provide multiple services, such as the World Wide Web, and the opportunities they offer for communication and collaboration
- Use technology safely, respectfully and responsibly; recognise acceptable/unacceptable behaviour; identify a range of ways to report concerns about content and contact
These student-facing slide presentations help educators seamlessly run Tynker lessons in a virtual or physical classroom setting. Each lesson has its own set of slides that introduce the big ideas, suggest unplugged activities, and include a section for each activity module. While running lesson slides, you can switch back and forth between the activity, the slides, answer keys and other lesson materials.
A sample slide presentation is available for your review. Please log in to view all the class presentations available with your plan..
Fly by Feel
Virtual Pilot 2
Grabber and Cannon