OZOBOT BASIC TRAINING LESSON 5 CODING AND GEOMETRY

Similar documents
OZOBLOCKLY BASIC TRAINING LESSON 1 SHAPE TRACER 1

OZOBOT BASIC TRAINING LESSON 1 WHAT IS OZOBOT?

Getting Started with Osmo Coding Jam. Updated

Introduction to programming with Fable

Rainbow Logic Squares

An Introduction to ScratchJr

Your EdVenture into Robotics 10 Lesson plans

Ozobot Art OzoArt! Created by. Richard Born Associate Professor Emeritus Northern Illinois University Topics

The light sensor, rotation sensor, and motors may all be monitored using the view function on the RCX.

Mind Explorer. -Community Resources for Science

A Day in the Life CTE Enrichment Grades 3-5 mblock Robotics - Simple Programs

BASIC TRAINING SERIES: COLOR CODES. Grade K-2 Computer Science Robotics Beginner

All Levels. Solving the Rubik s Cube

Table of Contents. Creating Your First Project 4. Enhancing Your Slides 8. Adding Interactivity 12. Recording a Software Simulation 19

During What could you do to the angles to reliably compare their measures?

CHATS Meals On Wheels Online Ordering User Guide

Hexagons for Art and Illusion Part II Get ready Start a new project FILE New Open Faced Cube Import the hexagon block LIBRARIES

Quick Start Training Guide

The Folded Rectangle Construction

A - Debris on the Track

A - Debris on the Track

Scratch Coding And Geometry

Trial code included!

Next Back Save Project Save Project Save your Story

ParentZone. Your guide to accessing your child s account and their learning journey.

Practicing with Ableton: Click Tracks and Reference Tracks

INTERACTIVE BUILDING BLOCK SYSTEMS

Duplicate Layer 1 by dragging it and dropping it on top of the New Layer icon in the Layer s Palette. You should now have two layers rename the top la

Blue-Bot TEACHER GUIDE

21st Century Learning Skills

COPYRIGHT NATIONAL DESIGN ACADEMY

Scratch for Beginners Workbook

Percentage: Teacher Guide

Lab book. Exploring Robotics (CORC3303)

PowerPoint Pro: Grouping and Aligning Objects

Grade 3 Area and Perimeter Unit Overview

Robotic Manipulation Lab 1: Getting Acquainted with the Denso Robot Arms Fall 2010

EE-110 Introduction to Engineering & Laboratory Experience Saeid Rahimi, Ph.D. Labs Introduction to Arduino

Understanding Similarity

Programming I (mblock)

To solve a problem (perform a task) in a virtual world, we must accomplish the following:

Create a game in which you have to guide a parrot through scrolling pipes to score points.

Lesson 1 Getting Started. 1. What are the different ways you interact with computers?

ADDENDUM 10 - Borders and Matching Corner Designs

Ozobot Bit Classroom Application: Calculating Areas of Common Geometric Figures

Contents TABLE OF CONTENTS Math Guide 6-72 Overview NTCM Standards (Grades 3-5) 4-5 Lessons and Terms Vocabulary Flash Cards 45-72

Table of Contents. Game 2-8 Chunks Make It Easy Fluency Using Multiples of Ten (+/-)

Math Pacing Guide. 2 nd Grade

Unit. Drawing Accurately OVERVIEW OBJECTIVES INTRODUCTION 8-1

Ev3 Robotics Programming 101

STUDENT'S BOOKLET. Shapes, Bees and Balloons. Meeting 20 Student s Booklet. Contents. April 27 UCI

Evo OzoBlockly Lesson: Emergency Automatic Breaking

Land use in my neighborhood Part I.

Lesson 6 2D Sketch Panel Tools

Program.

Hour of Code at Box Island! Curriculum

Okay, that s enough talking. Let s get things started. Here s the photo I m going to be using in this tutorial: The original photo.

Angle Measure and Plane Figures

1 Day Robot Building (MC40A + Aluminum Base) for Edubot 2.0

Lesson Focus & Standards p Review Prior Stages... p. 3. Lesson Content p Review.. p. 9. Math Connection. p. 9. Vocabulary... p.

1. Creating geometry based on sketches 2. Using sketch lines as reference 3. Using sketches to drive changes in geometry

CAD Orientation (Mechanical and Architectural CAD)

BEST PRACTICES COURSE WEEK 14 PART 2 Advanced Mouse Constraints and the Control Box

Assessment: Reverse Engineering

Refer to Blackboard for Activities and/or Resources

Snail Math Races. -Community Resources for Science

Standards for Mathematical Practice

Problem of the Month: Between the Lines

Robot Programming Manual

Problem of the Month: Between the Lines

Ornamental Pro 2010 Component Drawing Manual

Tech Tips from Mr G Introducing Libby - The New Face of OverDrive

App Inventor meets NXT

Session 3: Getting to Know Photoshop Elements. Keep in mind that there are many others ways of solving the problems.

Scratch LED Rainbow Matrix. Teacher Guide. Product Code: EL Scratch LED Rainbow Matrix - Teacher Guide

Colorizing A Photo With Multiple Colors In Photoshop

GETTING STARTED WITH GOOGLE S SCIENCE JOURNAL

Audacity 5EBI Manual

Lesson 5: Area of Composite Shape Subject: Math Unit: Area Time needed: 60 minutes Grade: 6 th Date: 2 nd

Addendum 27: Personalized Meander

UNIT VI. Current approaches to programming are classified as into two major categories:

Whispers from the Past

User Guide. Version 1.2. Copyright Favor Software. Revised:

with MultiMedia CD Randy H. Shih Jack Zecher SDC PUBLICATIONS Schroff Development Corporation

Introduction to Autodesk Inventor for F1 in Schools (Australian Version)

2012 COMMON CORE STATE STANDARDS ALIGNED MODULES 2012 COMMON CORE STATE STANDARDS ALIGNED MODULES

User Guide. Version 1.4. Copyright Favor Software. Revised:

SURREALISM IN PHOTOSHOP

Wordy Problems for MathyTeachers

Grade 3 Unit Unit Title Lesson Day

Introduction.

NX 7.5. Table of Contents. Lesson 3 More Features

Rubik s Revenge Solution Hints Booklet. Revenge - The Ultimate Challenge 2. Meet Your Revenge 3. Twisting Hints 5. General Hints 8. Notation System 12

Moving Beyond Geometric Shapes: Other Connections Between Mathematics and the Arts for Elementary-grade Teachers

Have FUN Creating a Pretty Linen Pillow on Your

Lesson 1 Introductory Geometry: Measurement

knitcompanion NextGen for ios Reference Guide

Outline. Paradigms for interaction. Introduction. Chapter 5 : Paradigms. Introduction Paradigms for interaction (15)

Stitching Sampler

Unit 9: May/June Solid Shapes

Transcription:

OZOBOT BASIC TRAINING LESSON 5 CODING AND GEOMETRY What students will learn Programming Ozobot using moves/functions Analyze and decompose geometric figures and translate them into Ozobot s movements Topics Computer science: programs and functions Robotics: programming Ozobot and executing the program Math: geometry, decomposing a geometric drawing into a series of movements Challenge Write, debug and run a program composed of several functions to make Ozobot go in a path that forms the letters OZO Real-life connection What are the jobs computer scientists do? Age Grades 3-12 Ozobot skill level Beginner STEM topics Computer science: programs and subroutines Inter-disciplinary concept: use robotics to study programming and math Common Core Standards CCSS.MATH.PRACTICE.MP1 Make sense of problems and persevere in solving them. CCSS.MATH.PRACTICE.MP2 Reason abstractly and quantitatively. CCSS.MATH.PRACTICE.MP5 Use appropriate tools strategically. 1

CCSS.MATH.CONTENT.3.G.A.2 Reason with shapes and their attributes. CCSS.MATH.CONTENT.4.G.A.2 Draw and identify lines and angles, and classify shapes by properties of their lines and angles. Materials Ozobots (about 1 per group of 3 students), charged Digital tablet (ios or Android operating system), charged and screen brightness set to 100% (one tablet per ozobot/group of students) OzoGroove app (download for free on ios app store or google play, go to settings and select: keep tablet awake ) Printout #1, one per group Optional: printout of lesson PDF, one per group, if students are learning self-guided Note Students need to see the diagrams in order to do the exercises. You can print out the entire lesson (without printout #1) which includes the diagrams if you want the students to read along. Otherwise, just print out printout #1 only, without the lesson plan. Age Grades 3-12 Ozobot skill level Beginner STEM topics Computer science: programs and subroutines Inter-disciplinary concept: use robotics to study programming and math Estimated duration 1 or 2 class sessions 2

LESSON Differentiation: This lesson can be taught to students of many different ages all of them should be very comfortable with the programming even if they don t have any prior programming knowledge. You can vary the level of difficulty by giving students none, a few, or all of the hints in chapter 3 and for the challenge. Note: Prerequisite for this lesson is lesson 4 Coding Basics 1. Make a square! This lesson is all about making Ozobot go in certain formations: squares, letters and so on. It s much like choreographing a dance we did in the last lesson, but without the music. In fact, we will be using the same app OzoGroove to program Ozobot! Get your tablet ready and open OzoGroove. Don t forget to set the screen brightness to 100% and calibrate your Ozobot on the tablet (just in case you don t remember, the calibration can be done in the Ozobot Tuneup in OzoGroove). We are going to use the move creator to make Ozobot go in a square, so go to OzoGroove s main menu and choose Move Creator on the bottom of the screen. In the creator, tap Create a new move in the popup and select No music in the next popup. We want to make Ozobot move according to the following diagram (also on printout #1, part 1) 2 1 START/END 5 30 3 4 3

Ozobot is supposed to start at point 1 and go in a square counter-clockwise to end back at the start. Each side of the square is to be 30 units long. Suppose Ozobot starts out at point 1 looking west, i.e in direction of point 2. The first move should be going forward 30 units. Choose the Forward category in the editor and you will see the instruction Forward 30 in the menu below. Drag and drop the instructions into the timeline, right after the start. At this point, Ozobot would arrive at point 2, but to continue the square, we have to make Ozobot turn to face point 3. If Ozobot turns left, then Ozobot would have to turn a right angle, which is 90 degrees (a quarter of a full 360 degree circle). Choose the Left Turns category and drag and drop the instruction Left 90 into the timeline, right after the Forward 30 instruction. Continue assembling your move in this manner until your instructions make Ozobot reach point 5. Note that you don t have to turn Ozobot when reaching point 5. To test if your program is correct, save it first (for example under the name Square 1 in a new category lesson 5 ), then press Dance. On the dancefloor, tap the pod you want to use and place Ozobot on the pod. Make sure that Ozobot s middle color sensor is centered on the pod, but adjust Ozobot s position to be ready to start the square. This means turn Ozobot so that Ozobot is facing west, like sitting on point 1 facing point 2. Unselect the Loop Dance slider since we want Ozobot to walk the square only once. Now press Load Ozobot and when the loading is done, tap Dance and watch Ozobot move. Is Ozobot moving like you thought it would? If not, debug your program by going back to the editor, making changes, saving and returning to the dancefloor to check if your program is correct. Repeat this until you got it right. If you want to double-check your program, you can compare it to solution 1 at the end of this lesson. 4

2. Now make a butterfly! Now we are ready to make Ozobot go in a more complex shape like this (also on printout #1, part 2) 8 7 30 2 9 5 1 6 START/END 3 4 If you use your imagination you may be able to see the wings of a butterfly, so let s call it that for now. This time we will construct a program using the Square 1 move we just created. So go to the main menu and select the Dance Editor. As before, create a new dance and select No Music. Take a look back at the butterfly diagram above. The first 5 points are arranged in exactly the same way as in the move Square 1, so it would be good if we could reuse this move here. To add the move to your program, scroll the categories all the way to the right end to find Lesson 5. Select it and you will see the Square 1 move right below. You can now drag and drop this move into the timeline right after the start. 5

Now imagine how Ozobot moves along the path. After completing Square 1, Ozobot will arrive at point 5 facing up to point 8. But this is not the way Ozobot is supposed to go. What kind of turn do we need to add to the timeline so Ozobot will be facing right to point 6? If you know, drag and drop the turn into the timeline. If you need help, please see solution 2 at the end of this lesson. Now Ozobot is positioned properly for the second wing of the butterfly. Turn the page with the diagram upside-down. What can you see now? How does the second wing compare to the first one? You will notice that, looking at it upside-down, the second wing is exactly the same as the first one. Imagine Ozobot executing the instructions from square 1 starting at point 5 facing point 6. Those moves will bring Ozobot to the end (point 9), so let s add another Square 1 move to the timeline. It s now time to try out our program. Save the dance for example as Butterfly and try it out on the dancefloor. Remember to turn off Loop Dance again. Does Ozobot s move resemble the butterfly outline? If not, make changes in the editor and try again until it s just right. Notice that we have used the Square 1 move twice for the Butterfly. In programming, we would call the Butterfly the program and Square 1 its subroutine or function. It is a separate unit of the code that performs a specific task. It can be called (i.e. used) in the program whenever needed. It can be used as many times as necessary and you can see that in our case we have used it twice. 6

3. Back to Square 1 Imagine the following drawing shows the map of the electricity wires on a grid in your neighborhood (also on printout #1, part 3): 60 Not to scale The electrical wires are the red lines on the big square. Ozobot is in charge of checking the wires. Ozobot s task is: To check the wires by going along every side of the big square Ozobot has to drive along the entire red outer square, but not necessarily all at once in a continous motion (i.e. Ozobot may turn onto a black line in at any time) Ozobot must go on each part of the outer red lines only ONCE Ozobot can go on the black inner lines as often as needed And, making it very difficult, Ozobot can only move using the Square 1 subroutine combined with left and right turns Ozobot can start and end on any corner or intersection of the grid 7

You are the computer programmer and in charge of programming Ozobot for this task. Assemble your program in the Pro Dance Editor (without music just like in the Butterfly exercise). Make sure Ozobot follows the guidelines above! If you want, read the following hints. Or, for a challenge, skip ahead to the next paragraph. Notice that the black lines are dividing the big square into four smaller squares When dividing a square into four equal squares like this, all small squares are the same size The smaller squares are the same size as the square we used for Square 1 When dividing a square into smaller squares, all angles are still right angles (90 degrees) You might want to start Ozobot on the center intersection When you are ready to try out your program, save it (for example as Electricity Square ), go to the dancefloor, turn off Loop Dance, and tap Dance. Ozobot will execute your commands on the tablet. Does it look like Ozobot is making a big square just like in the diagram? If not, debug your code as before by going back to the editor and making your adjustments. There are several solutions to this problem. For an example of one of them, see solution 3 at the end of this lesson. 4. Computer science careers Writing programs like we just did are the very basic forms of what programmers are doing as part of their jobs. After studying Computer Science at the university, there are many different jobs that can be done with that degree. Here are just some of them: Software developers write programs for all kinds of different purposes, for example for banks, hospitals, other companies, and for many things we use at home (like apps for computers, tablets and phones). Database administrators develop ways to store, go through and understand very big amounts of data (i.e. information). Computer hardware engineers design and test computer components. Web developers create and program the technical structure of websites and make sure that web pages function properly. 8

Challenge The final challenge is for Ozobot to go in a path that resembles the outline of OZO, i.e. like in the following diagram (also on printout #1, part 4) START 30 You are again in charge of programming Ozobot. Make sure that Ozobot traces every line ONCE and only ONCE. Ozobot has to start at the indicated starting point and face west (i.e. to the left). It will be easier if you try to use the subroutine Square 1 as often as possible. Start creating your program now using the same methods of writing and debugging as for the Electricity Square of chapter 3. You may want to read through the hints in the next paragraph first if you need help to get started. There are several solutions to this problem. Once you re done, you can see an example of one of these in part 4 of the solutions at the end of this lesson. Hints: There are two squares in this diagram, try to find them! Can you use your Square 1 subroutine for both of them? Look at the Z in the middle. What are all of the angles? These angles determine which turns to take. You may have to use two instructions to make one turn. The diagonal line of the Z is actually a bit longer than 30 units (how long exactly?), but for this exercise it s ok to use Forward 30 Have fun! 9

Printout #1 1. 2 1 5 START/END 2. 8 7 30 30 3 4 2 9 5 6 START/END 3 4 3. 60 4. 30 10

Solutions Solution 1 Place Ozobot looking west. Forward 30, Left 90, Forward 30, Left 90, Forward 30, Left 90, Forward 30 Solution 2 Place Ozobot looking west. Square 1, Right 90, Square 1 Solution 3 Place Ozobot looking west. Square 1, Left 180, Square 1, Right 180, Square 1, Left 180, Square 1 Solution 4 Place Ozobot looking west. Square 1, Right 90, Forward 30, Right 90, Right 45, Forward 30, Left 45, Left 90, Forward 30, Square 1 11

These are the angles for Z: 45 45 90 135 45 45 90 135 This is the path Ozobot is going in the solution above START 12