Author: Ambra Hook
School/Organization:
Hill-Freedman World Academy
Year: 2014
Seminar: Robotics for Everyone!
Grade Level: 7
Keywords: coding, gaming, Lego, Mindstorm, NXT, programming sprites, robotics, Scratch, STEM
School Subject(s): Science
Beginning in September 2012, Hill-Freedman Middle School established the only Philadelphia public school Multi-Year STEM Program for students in grades 6-9. Students take three separate year-long STEM courses every year (mathematics, science and our NEW combined engineering/technology course). As the STEM teacher, I am very interested in introducing my students to robotics and beginner level computer programming that would be engaging and age appropriate. The national workforce pipeline for computer programmers is in high demand and many students do not have the opportunity to take a programming course until college. My goal for this unit is to offer age appropriate content focused on engineering and computer concepts contented to coding and robotics.
I plan is to offer this unit as apart of my 7th grade course. Our school follows an International Baccalaureate (IB) curriculum model and each teacher is responsible for infuses at least two IB level units into their course each year. I foresee this unit on robotics and computer programming as great addition to my IB curriculum portfolio.
My expectations for students engaged in this unit are not only to gain new knowledge about computer programming and robotics, but also to make career connections along the way as they gain more understandings to new concepts.
Download Unit: Hook-Ambra-unit-1.pdf
Did you try this unit in your classroom? Give us your feedback here.
Many technological things such as robots tend to seem very sophisticated and something too difficult to try and understands, but students can be taught to ask enough questions, run enough investigations to gain an understanding of most technological devices that are in our daily lives. Robots are built out of physical parts, gears and multiple motors and computer programs make all the motors all work together in order for the robot to complete a task. Building the robot is one level of understanding but programming the robot is a higher level of understanding. Programming Robots fit under the umbrella of computer science. Computer science develops students’ computational and critical thinking skills and shows them how to create, not simply use, new technologies. This fundamental knowledge is needed to prepare students for the 21st century, regardless of their ultimate field of study or occupation. Many middle school students only have computer courses that teach them to be “good users” of already existing programs and not “how to think logically and create” new programs or technology. If more students were exposed to the various career areas of computer science and engineering early on, more of them might be interested in studies on these subjects once in college.
Students will be able to connect basic computer logic codes together using the drag and drop method of coding in order to control the logical movements of various characters in a web-based interactive gaming environment. Introduce students to programming mobile robots using Lego Mindstorms NXT that focuses them on using the graphical programming language, motors and rotation integrated with the use of various sensors (sound, light, touch and ultrasonic). Students will practice robot navigation and path planning as well as following a design plan in order to create and build a robot according to a set plan.
There are two seventh grade STEM sections that I teach. When I introduce a new activity, challenge or concept, I will use a combination of short lectures, videos and textual reference information so that all of my student have an opportunity to gain a clear understanding of what they need to know in order to move forward successfully to complete their task at each level. Both sections of seventh grade have 33 students. Both classes consist of students from diverse ethnic backgrounds and students that have an IEP. For these students I will differentiate the instruction by breaking down the steps of the task and spend more time with them to ensure that they understand the task at hand and the content material. For the students in these sections that are mentally gifted, I will have them serve as a guide for others in the classroom. When they finish the task at hand, they go around the class to assist others with any questions they may have. I will also have these students answer more in depth questions related to the content material in order to differentiate the instruction.
Part I: Introduction to Coding Lesson One: Review of Tech-Lab Safety Practice Big Ideas/ Concept Compare and Contrast Lab Safety Practices (school vs. real world). It is important to provide time and guidance for students to practice the safety precautions you expect them to follow in your Tech Lab. Teaching students how to be responsible and giving them the opportunity to be responsible is an important step in successfully completing any tech lab project. Students will work in pairs to create a concept map to compare and contrast safety rules in our schools vs. safety rules practiced by real engineering and computer programmers. Pass out a Venn diagram worksheet with three interconnecting circles. Have students label the circles School Tech Lab, College Level Tech Lab and Job Site Tech Lab. Have the student list all of the existing school safety tech lab rules in the proper circle and than do research to complete the other two circles. Share finding from each pair of students as a whole class activity. Lesson Objectives Students will work in pairs in order to research and create a concept map to compare and contrast tech lab safety rules in our schools vs. safety rules practiced by real tech labs either at the college level or a job site. Materials and Technology Lesson Procedure The students will be working in pairs for this lesson. They will be responsible for researching and comparing our school safety rules and procedures to real laboratory worksites. The lesson will start off by showing one short 5 minute video clip related to safety at the workplace. Students will be able to watch this video again and two additional video on their own at the following link: https://www.youtube.com/watch?v=RKdb2SDU-Zk [1](school) https://www.youtube.com/watch?v=GQLkSiegHKI [2](college) https://www.youtube.com/watch?v=6zU0ETIri_s [3](job site) Video Discussions Questions: After watching just the first video I will ask a set of questions such as: Tech lab? Site tech lab? Pass out a Venn diagram worksheet with three interconnecting circles. Have students label the circles School Lab, College Lab and Job Site Lab. Have the student list all of our existing tech lab safety rules in the proper circle and then research online to complete the other two circles. Lesson Two: Introduction to Scratch – A Guided Tour Big Ideas/Concept Student will explore all of the features within Scratch in order to learn how to navigate through this interactive web-based environment and make use of all the logic commands and tools. Lesson Objective Students will examine several examples of completed Scratch project (animations, games and stories) in order to understand the possibilities of what can be created within this web-based environment. Materials and Technology Lesson Procedure After examining several completed on-line projects as a class, students will select one example from the teacher’s list and explore what happens when they make small modifications to the script. Students will track their changes in their notebooks and record what happened in the example after a change has been made. Video Tutorial Link – Getting Starting – www.vimeo.com/80961102[4] Lesson Three: Working with Sprites Big Idea/Concept Children will make a sprite and experiment with the different drawing tools within the Scratch program. They will resize the finished sprite, duplicate it and move it around the screen. More sprites can be added and located on the screen before finishing off the drawing with a background. Sprites and backgrounds can be imported from existing graphics files located on the drive Lesson Objective Students will explore the tools found in the Sprite Editor within Scratch in order to modify existing sprites found in the graphic files, or create their own sprite characters and costumes (back view, left view and right view) for that same sprite. Materials and Technology Lesson Procedure Teacher will demonstrate how to use the tools within Scratch in order to create a new original sprite. Students will also receive a set of step-by-step instructions (shallwelearn.com) for creating a Scratch sprite and costumes. Students will start with a simple stick drawing and progressively learn more advanced use of drawing tools in a sequential manner. Video Tutorial Link-Introduction to Scratch – http://shallwelearn.com/blog/category/scratch/[5] Lesson Four: Animating Sprites Big Idea/ Concept Create the illusion of motion by creating code and using four different pictures of the same object. Lesson Objective Student will use their sprite and the four different costumes created in order to script code for their sprite to become animated. Materials and Technology Procedure Through guided instruction students will create a script for each of the four sprite costumes that will result in a short animated motion featuring their sprite. After students have created their first set of scripts that work successfully, they will save them and begin to independently create more sprites with costumes and scripts in order to add them to their first animation. If students need a review they may watch the video tutorial. Video Tutorial Link Animating a Sprite- http://shallwelearn.com/blog/category/scratch/ Lesson Five: Creating a Music Sprite Big Ideas/ Concepts Student will sync their animated sprites to the beat of the music by creating a code using the logic navigation within Scratch that will allow this to happen. Lesson Objective: Students will create code that will allow their sprite to dance to the beat of the music. Materials and Technology Lesson Procedure Teacher will demonstrate how to use the tools within Scratch in order to create code for their sprite to move to the beat of the music. In pairs students will work with a step-by-step set of directions (shallwelearn.com) for making their sprites dance to the beat of the music. Starting with their original dance scripts and sprites from the previous lesson as the foundation, they will create additional costumes; make modifications to their first scripts so that the sprite now dances to the beat of the music. Students may select the music from the teachers approved music list. If needed students may watch the video tutorial for review. Video Tutorial Link Dance To The Beat- http://shallwelearn.com/blog/category/scratch/ Lesson Six: Stage Coordinates Big Ideas/ Concepts There is a certain amount of workspace within Scratch that is called the stage. In order to successfully animate larger projects or have sprites move to and from a precise location on the stage, student will need to understand how the X-Y axis locations on can be used as a guide to assist them. Lesson Objective Students will create codes to control their sprites movement to certain X-Y axis locations on the Scratch Stage. Materials and Technology Lesson Procedure Teacher will demonstrate how to use the stage controls within Scratch in order to have their sprite move to exact locations on the stage. Students will also receive a set of step-by-step instructions (shallwelearn.com) for working with the stage controls. Students will start with an already existing game and progressively learn more advanced use of the stage controls in order to create a revised game. If students need a review they may watch the video tutorial for working with the stage. Video Tutorial Link Work With The Stage- http://shallwelearn.com/blog/category/scratch/ Lesson Seven: The Pong Game Big Ideas/ Concepts Changing the randomness of a game can be accomplished by changing the value in “pick random? to?” block. Students will investigate how increasing or decreasing the range of the degree within the random block can make a game easier or more difficult to play. Lesson Objective Students will make modifications to an already existing game in order to gain an understanding of how the random block works as well as how to add a scoreboard. Materials and Technology Lesson Procedure The teacher will demonstrate how to how to create a simple game within Scratch in order to introduce the “random block”. Students will also receive a set of step-by-step instructions (shallwelearn.com) for modifying an already existing game within Scratch. Students will start with modifying the values in the random block one at a time and make connections as to how the game changes when a value is changed. Part I Performance Assessment As a culminating task for part I of this unit, student will create new sprites and code for their own beginner level game for other classmates to play. The game must have at least three sprites and a scoreboard. Part II: Computer Programming and Robotics Robotics Rationale In the previous lessons students were introduce to free web-based interactive programs that taught them the drag and drop method of computer programming. Having students now transition from the web-based drag and drop programs to LEGO* Mindstorms NXT programming that also uses the drag and drop method will provide a very seamless transition. Programming robots at the middle school level does not necessarily require students to know any type of computer programming language as a prerequisite. There are several middle school educational programs that offer students the opportunity to learn about the physical application of the programming as they develop basic skills in thinking logically and problem solving. Part II of this unit will provide an introduction to robotics for students with no programming background using LEGO* MINDSTORMS NXT kits. Lesson Eight: What can Robots Do? Big Ideas/ Concept The importance of the lessons in part II of the unit are to familiarize students with what a Robot is, what it can do and how it can help daily lives or us in. This lesson will provide students with research of potential future career choices that may interest them (i.e. computer programmer and software engineer). Lesson Objectives Student will research 3 different types of robots and how they work in order to gain a better understanding of the jobs robots can do. Materials and Technology Lesson Procedure Student will work in pairs to search on the Internet to identify three different types of robots and the types of task that they do. Student pairs will create a mini-PowerPoint presentation that includes photos and research facts about their three robots. Student will present their findings to the class. Lesson Nine: Building an NXT Robot (2 Days) Big Idea/Concepts Students will work in pairs and select robot designs from the teacher’s design list to build. The student will learn to program this robot in future lessons to complete various tasks. Lesson Objectives Students will be able to explain the components of the Mind Storm and how the interact and create a robotic design according to a design plan. Students will independently build a robot that is designed to move forward, backward and make left or right turns. Materials Procedure The teacher will identify all of component inside the Mindstorm kits and explain each components function. If students need a review they may watch the video tutorial at any time. Students will work in pairs to research on the Internet various intermediate level robot designs that can be built using kit #9797 and select one of the Build Blueprint. Students are allowed to make design modifications to the blueprint while building their own robot. It is important for students to manage their materials kit and time so that component pieces are not lost or mixed with another group. Time needs to be built-in for proper clean and storage of all materials. Video Tutorial http://www.ortop.org/NXT_Tutorial/Introduction.html [6] Lesson Ten: Programming of an NXT Robot to Drive in a Square (2 Days) Big Idea/Concepts The goal of this activity is for teams to problem solve through experimentation with the drag and drop logic commands within the NXT software in order to control the precise movement of a robot, so that it will complete specific tasks. Lesson Objectives Students will use the Lego NXT programming software to practice precise navigation using their choice of strategies and constructing a graphic representation of a circuit that drives their robot in a square shape floor pattern. Communicate in an effective manner with others in the group for effective programming. Materials Procedure operate them in order to control the robot’s movement. Have student practice by creating a move forward program for their robot. practical so that the robots can complete their paths. angles. 4. Each NXT brick should be programmed in Mindstorms NXT, by the students. changes to the program’s parameters. program, or what could be done to the robot itself to make it more able to complete a square and return to where it started. 8.Try out some of the ideas from the group discussion. Lesson Eleven: Programming of an NXT Robot – Drive on a “Z” Path (3 Days) Big Idea/Concepts The goal of this activity is for teams to problem solve through experimentation with the drag and drop logic commands within the NXT software in order to control the precise movement of a robot, so that it will complete specific tasks. Lesson Objectives Students will use the Lego NXT programming software to practice precise navigation using their choice of strategies and constructing a graphic representation of a circuit that drives their robot within the lines of the “Z” shape floor pattern. Communicate in an effective manner with others in the group for effective programming. Materials Procedure a “Z” that is outlined on the floor in duct tape (see photo #1 in appendix). Partners will test run their robots until they have successfully completed the task. points. practical so that the robots can complete their paths. changes to the program’s parameters. program, or what could be done to the robot itself to make it more able to complete this task. Lesson Eleven: Programming of an NXT Robot – Parallel Parking – A (2 Days) Big Idea/Concepts The goal of this activity is for teams to problem solve through experimentation with the drag and drop logic commands within the NXT software in order to control the precise movement of a robot, so that it will complete specific tasks. Lesson Objectives Students will use the Lego NXT programming software to practice precise navigation needed to parallel park their robot (from a further distance) in a specific spot. Students may use their choice of strategies and constructing a graphic representation of a circuit representing their solution. Communicate in an effective manner with others in the group for effective programming Materials Procedure parallel park floor pattern (refer to photo #2 and look for the “#1 starting point”. Partners will test run their robots until they have successfully completed the task. practical so that the robots can complete their paths. changes to the program’s parameters. program, or what could be done to the robot itself to make it more able to complete this task. 7.Try out some of the new ideas from the group discussion. Lesson Twelve: Programming of an NXT Robot – Parallel Parking – B (1 Day) Big Idea/Concepts The goal of this activity is for teams to problem solve through experimentation with the drag and drop logic commands within the NXT software in order to control the precise movement of a robot, so that it will complete specific tasks. Lesson Objectives Students will practice precise navigation using an increased amount of distance and rotations in order to parallel park their robot in a specific spot. Communicate in an effective manner with others in the group for effective programming Materials Procedure their robot in a specific spot starting from a “different” starting point (see photo #2 in appendix and look for the new starting point identified by the star shape). practical so that the robots can complete their paths. changes to the program’s parameters or robot’s design. program, or what could be done to the robot itself to make it more able to complete this task. 7.Try out some of the ideas from the group discussion. Lesson Thirteen: Programming of an NXT Robot – Adding a Touch Sensor (1 Day) Big Idea/Concept Students will modify their original parallel park program to drive and parallel park their robot in a specific spot using a touch sensor. Lesson Objectives Students will work in pairs to modify their robot and add a sensor control and program it to effectively and consistently give correct robotics responses to sensory inputs. Materials Procedure their robot in a specific spot using a touch sensor. changes to the program’s parameters. program, or what could be done to the robot itself to make it more able to complete a square and return to where it started. Part II Performance Assessment (2 days): For a culminating task for part II of this unit, student will create a program using two sensors completing a task of their choice. “Safety in school shops – YouTube.” 2011. 9 May. 2014 <http://www.youtube.com/watch?v=GQLkSiegHKI> 4 “Tech-ed safety rules video – YouTube.” 2012. 9 May. 2014 <http://www.youtube.com/watch?v=RKdb2SDU-Zk> [3] “Michigan Tech Chemical Engineering Lab Safety … – YouTube.” 2013. 9 May. 2014 <http://www.youtube.com/watch?v=6zU0ETIri_s> [4] “Getting Started with Scratch on Vimeo.” 2013. 9 May. 2014 <http://vimeo.com/80961102> [5] Jessica Chiang. “Shall We Learn » Category » scratch.” 2013. 9 May. 2014 <http://shallwelearn.com/blog/category/scratch/> [6] “NXT Tutorial – STEMcentric.” 2012. 9 May. 2014 <http://www.stemcentric.com/nxt-tutorial/>
“Exploring Computer Science.” Exploring Computer Science. N.p., n.d. Web. 11 May 2014. <http://www.exploringcs.org>. The mission of this website originally was to increase and enhance the computer science learning opportunities for both teachers and students in California, but is useful to anyone. This website is sponsored by the National Science Foundation. “Scratch – Imagine, Program, Share.” Scratch – Imagine, Program, Share. N.p., n.d. Web. 11 May 2014. <http://scratch.mit.edu/>. This website offers a free online account to the Scratch Program along with examples and video tutorials of how to use it and what types of projects can be created. “Scratch.” Shall We Learn. N.p., n.d. Web. 11 May 2014. <http://shallwelearn.com/blog/category/scratch/>. Teachers can find the step-by-step activity handouts mentions in this lesson for their students. “LEGO®.” LEGO.com Mindstorms. N.p., n.d. Web. 11 May 2014. <http://mindstorms.lego.com/>. A resource of ideas, projects and lessons that are for the Mindstorms system can be accessed at this site. “NXT Tutorial.” NXT Tutorial. N.p., n.d. Web. 11 May 2014. <http://www.stemcentric.com/nxt-tutorial/>. This site offers free Mindstorm NXT video tutorials for teachers. It was created and maintained by Catlin Gabel School in Portland Oregon, which is involved in teaching other teachers about topics in STEM education. “Square lesson plan – NXT-G (PDF) – LEGOengineering.” 2013. 11 May. 2014 <http://www.legoengineering.com/wp-content/uploads/2013/06/Square-NXT.pdf>. This site offers a step-by-step worksheet for teachers on how to program robots using the NXT software to move in a square pattern. “Tech-ed safety rules video – YouTube.” 2012. 9 May. 2014 <http://www.youtube.com/watch?v=RKdb2SDU-Zk>. This is a short video explaining the rules of Tech-ed safety. “Safety in school shops-YouTube”2011.9.May.2014 < http://www.youtube.com/watch?v=GOLkSiegHKI>. This is a short video that reviews the rules of a school level Tech-ed class. “Michigan Tech Chemical Engineering Lab Safety…-YouTube.”2013.9May.2014 <http://www.youtube.com/watch?v=6zU0ETIri s>. This video explains the rules of a real world Engineering Lab. “Philadelphia Citizenship.” Penn Engineering. N.p., n.d. Web. 11 May 2014. <http://www.seas.upenn.edu/community/philadelphia-citizen.php>. This is a University of Pennsylvania website dedicated to getting more schools involved with First Lego League Robotics (FLL). Contact information can be found at this site for schools interested in learning more about FLL or how to obtain an FLL kit.
Photos Photo #1 – Z Floor Pattern Photo #2 – Parallel Parking
Common Core (CCSS) CCSS.ELA.Literacy.CCRA.R.7 Read and comprehend complex literary and informational texts independently and proficiently. Next Generation Science Standards (NGSS) NGSS: ETS1.B: Developing Possible Solutions National Education Technology Standards (NETS) NETS: Critical Thinking, Problem Solving and Decision Making: Students apply their process skills to gather, evaluate, and use information NETS: Creativity and Innovation: Students demonstrate creative thinking, construct knowledge, and develop innovative products STEM Education Concepts: Engineering process, Time management, Project management, Problem solving and teamwork.