The ROBOTC Graphical: Introduction to Program LEGO MINDSTORMS EV3 software includes videos, animations, and step-by-step lessons designed to help beginners learn behavior-based programing using the LEGO MINDSTORMS EV3 hardware and ROBOTC 4.x for LEGO MINDSTORMS.
Designed for Students and Instructors – Designed to encourage independent learning and problem solving in pursuit of a goal. All lessons are self-contained, require a minimum of instructor supervision, and include many built-in opportunities to self-assess progress. Prior robotics experience not required or assumed!
What is the ROBOTC Graphical Introduction to Programming EV3 Curriculum?
Each project comprises a self-contained instructional unit in the sequence, and provides students with:
• An introduction to a real-world robot and the context in which it operates
• A LEGO EV3 – scale version of the problem to solve with a EV3 robot
• Step-by-step guided video instruction that introduces key lesson concepts (e.g. Loops) by building simple programs that progress toward the end of unit programming challenge
• Built-in questions that give students instant feedback on whether they understood each step correctly, to aid in reflection and self-pacing
• Semi-guided “Try It!” exploration activities that expose additional uses for and variants on each robot behavior
• Semi-open-ended Mini-Challenges which ask students to use the skill they have just learned to solve a relevant small portion of the final unit challenge
• The Unit Challenge based on the original robot’s problem, for students to solve in teams as an exercise and demonstration of their mastery of the concept
• Robot Virtual World extension activities that are designed to significantly enhance student’s programming opportunities allowing them to program robots underwater, on an island, or in an outer space environment using the same commands that they use to program their LEGO EV3 physical robot.
Below are topics covered by the curriculum
• How to control basic robot movements
1. Robot math
2. Sequences of commands
• Sensors and how they work
1. Touch sensor, sonar sensor, gyro sensor, and color sensor
• Intermediate concepts of programming
1. Program Flow Model
2. Wait Until Commands
3. Decision-Making Structures
• Repeated Decisions
• Teach troubleshooting strategies and engineering practices
1. Problem-solving strategies
What are the Learning Objectives of the ROBOTC Graphical Introduction to Programming EV3 Curriculum?
• Basic concepts of programming
• Sequences of commands
• Intermediate concepts of programming
• Program Flow Model
• Simple (Wait For) Sensor behaviors
• Decision-Making Structures
• Engineering practices
• Building solutions to real-world problems
• Problem-solving strategies
How do I use the ROBOTC Graphical Introduction to Programming EV3 curriculum in my class?
Introduction to Programming is designed for student self-pacing in small groups, preferably pairs. Each pair of students should work together at one computer, with one EV3 robot.
Curriculum tasks are designed to involve some – but not extensive – mechanical consideration, so that hands-on design tasks may remain authentic without becoming logistically difficult.
Solutions will not require parts in excess of those included in the 45544 EV3 Core set, so it is sufficient to leave each team with one kit (although access to additional parts may allow students to construct more creative solutions to problems).
A typical plan for an Introduction to Programming chapter is:
1. View the introductory video as a class, or in individual groups, then review the challenge task for the unit
• In a group, identify and note key capabilities the robot must develop, and problems that must be solved in individual engineering journals or class logs (e.g. on sticky paper posted on the walls)
2. Groups proceed through the video trainer materials at their own pace, following the video instruction directly, and constructing solutions to the Try It! and Mini-Challenge steps as they go
3. Each group constructs its own solution to the Unit Challenge
• Groups may be asked to document their solutions in journals or logs, and especially to explain how they overcame the key problems identified at the start of the unit
4. Assign the Reflective Question for the chapter
• Students answer the Reflection Question for the chapter individually, as an in-class or homework assignment
• Reflection Questions for each chapter can be found in the Reproducibles section of this Teacher’s Guide
When to use ROBOTC Graphical Introduction to Programming: LEGO MINDSTORMS EV3 curriculum?
ROBOTC Graphical Introduction to Programming the EV3 is well-suited for use at the beginning of a robotics class, as it will allow students to engage immediately and begin building core programming and problem-solving skills before undertaking more ambitious open-ended projects later in the course. This curriculum module should take approximately 6 weeks.
What is the general layout of ROBOTC Graphical Introduction of Programming LEGO MINDSTORMS EV3 curriculum?
Below is the main menu of the curriculum. Users are able to click a section to begin, or jump right to a section by selecting a page number.
• System Configuration: Set up the robot and learn about its basic operation and maintenance
• Your First Program (Physical Robot): Configuring the robot and updating firmware for the physical robot
• Your First Program (Virtual Robot): Learn how to use the Virtual Brick and program with the virtual robot
• Expedition Atlantis
• Moving Forward: Program the robot with basic forward and backward moments
• Turning: Learn to turn the robot
• The Ruins of Atlantis
• Forward Until Touch: Learn about the Touch Sensor
• Forward Until Near: Learn about the Ultrasonic Sensor
• Turn For Angle: Learn about the Gyro Sensor
• Forward Until Color: Learn about the Color Sensor
• Palm Island
• Loops: Using loops to repeat behaviors
• If/Else: Using If/Else statements to make decisions
• Repeated Decision: Using a combination of loops and switches to control the program with smarter decisions
• Line Tracking: Create a general line-tracking behavior
• Search and Rescue: Combine all techniques learned to complete the final challenge
• Operation Reset
What Standards does the ROBOTC Graphical Introduction to Programming LEGO MINDSTORMS EV3 curriculum address?
The curriculum touches on standards across five categories:
1. Common Core Mathematics Practices
2. Common Core Mathematics Content
3. Common Core English Language Arts
4. Next Generation science Standards (NGSS)
5. Computer Science Principles Framework (CSP)
|Standard (CCSS Math Practice)||Introduction to Programming the EV3|
|MP1 Make sense of problems and persevere in solving them||Chapters are all based around solving real-world robot problems; students must make sense of the problems to inform their solutions|
|MP2 Reason abstractly and quantitatively||Programming requires students to reason about physical quantities in the world to plan a solution, then calculate or estimate them for the robot|
|MP4 Model with mathematics||Many processes, including the process of programming itself, must be systematically modeled on both explicit and implicit levels|
|MP6 Attend to precision||Robots require precise (and accurate) input, or their output action will be correspondingly sloppy|
|MP7 Look for and make use of structure||Understanding the structure of the physical environment, the interrelated components of robot hardware and software, and commands within a program are vital to successful solutions|
|MP8 Look for and express regularity in repeated reasoning||Any programmed solution to a class of problems relies on the programmer recognizing and exploiting important patterns in the problem structure. There is also an emphasis throughout the module on recognizing common programmatic patterns, as well as patterns within a solution that invite the use of Loops.|
|Standard (CCSS Math Content)||Introduction to Programming the EV3|
|6.RP.A.1 Understand the concept of a ratio and use ratio language to describe a ratio relationship between two quantities||Students use ratio language to describe and make use of the relationship between quantities such as Wheel Rotations and Distance Traveled|
|6.RP.A.2 Understand the concept of a unit rate a/b associated with a ratio a:b with b!=0, and use rate language in the context of a ratio relationship||The relationship between Wheel Rotations and Distance Traveled is a rate, customarily understood through a unit rate such as “# cm per rotation”|
|6.R.A.3 Use ratio and rate reasoning to solve real-world and mathematical problems||Students are required to apply ratios and rates when they build their prototype examples of their real world robots|
|7.RP.A.3 Use proportional relationships to solve multistep ratio and percent problems||Comparisons between rate-derived quantities|
|Standard (CCSS ELA-Literacy)||Introduction to Programming the EV3|
|WHST.6-8.1 Write arguments focused on discipline-specific content [See also: WHST.6-8.1.a to WHST.6-8.1.e]||Reflection Questions ask students to analyze, evaluate, and synthesize arguments in response to robotics and programming problems|
|WHST.6-8.4 Produce clear and coherent writing in which the development, organization, and style are appropriate to task, purpose, and audience.||Reflection Question tasks include composing technical critiques, technical recommendations, and creative synthesis.|
|Standard||Introduction to Programming the EV3|
|MS-ETS1-2. Evaluate competing design solutions using a systematic process to determine how well they meet the criteria and constraints of the problem.||Solving challenges requires students to create and evaluate both hardware and software designs according to scenario scoring criteria. Some Reflection Questions require students to make recommendations between competing alternatives based on criteria that they define.|
|MS-ETS1-4. Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved.||When solving more difficult and complex challenges, students are guided toward iterative testing and refinement processes. Students must optimize program parameters and design.|
|HS-ETS1-2. Design a solution to a complex real-world problem by breaking it down into smaller, more manageable problems that can be solved through engineering.||Problem Solving methodology for challenges directs students to break down large problems into smaller solvable ones, and build solutions up accordingly; challenges give students opportunities to practice, each of which is based on a real-world robot|
|HS-ETS1-3. Evaluate a solution to a complex real-world problem based on prioritized criteria and trade-offs that account for a range of constraints, including cost, safety, reliability, and aesthetics as well as possible social, cultural, and environmental impacts.||Some Reflection Questions require students to make recommendations about real-world policies (e.g. requiring sensors on automobiles) based on the impact of that decision|
|Learning Objective||Introduction to Programming the EV3|
|1.1.1 Use computing tools and techniques to create artifacts. [P2]||Challenge activities result in the creation of a (simple) algorithmic solution and an accompanying program that implements it.|
|1.1.2 Collaborate in the creation of computational artifacts. [P6]||Students work in teams to accomplish tasks.|
|1.1.3 Analyze computational artifacts. [P4]||Students perform debugging on their own code, as well as analyze and evaluate others’ code and suggested code in Reflection Questions.|
|1.3.1 Use programming as a creative tool. [P2]||Students use programming to solve model challenges based on challenges real robots face.|
|2.2.1 Develop an abstraction. [P2]||Robots gather information about the world through sensors, which turn physical qualities of the world into digital abstractions. Students must understand and work with this data to develop then implement their solution algorithms.|
|2.3.1 Use models and simulations to raise and answer questions. [P3]||Students construct and use a “program flow” model of programming itself to understand how the robot uses data to make decisions and control the flow of its own commands.|
|4.1.1 Develop an algorithm designed to be implemented to run on a computer. [P2]||Students develop solution algorithms to each challenge and mini-challenge problem before implementing them as code. Reflection Questions also ask students to evaluate algorithms expressed as pseudocode.|
|4.2.1 Express an algorithm in a language. [P5]||Students develop code to robotics challenges in the EV3 Programming Language.|
|5.1.1 Explain how programs implement algorithms. [P3]||Students must communicate solution ideas within groups and as part of class discussion, as well as in Reflection Questions.|
|5.3.1 Evaluate a program for correctness. [P4]||Students test and debug their own code, and evaluate others’ in the Reflection Questions.|
|5.3.2 Develop a correct program. [P2]||Programmed solutions to challenges must work.|
|5.3.3 Collaborate to solve a problem using programming. [P6]||Students develop solutions in teams.|
|5.4.1 Employ appropriate mathematical and logical concepts in programming. [P1]||Relationships such as “distance per wheel rotation” are important to making solutions work.|
|7.4.1 Connect computing within economic, social, and cultural contexts. [P1]||Reflection Questions ask students to make evaluative recommendations based on the impacts of robotic solutions in context.|
- Windows XP, Vista, 7 or 8 | MAC OSX 10.8 or later.
- Internet Explorer 9.0 or later, Safari, Chrome, Mozilla Firefox 24.0 or later (Firefox for Mac currently not supported).
- For use with LEGO MINDSTORMS EV3 Robotics Systems (sold separately).