This course includes resources provided by the following:
LEGO Education
CS-STEM Network from Carnegie Mellon University
EV3-Scratch documentation provided by Raphael Holzer
Joe Olayvar & Evelyn Lindberg in association with the Washington State Library
🌏 Click here to access the LEGO Education website.
📑 Click here to access the EV3-Scratch documentation.
🎓 Click here to access the online EV3 course from CS2N.
📕 Click here to access the LEGO Mindstorms EV3 Programming Basics document in its entirety.
▶️ Click here to access the entire LEGO Mindstorms EV3 YouTube playlist from the Washington State Library.
The Final Challenge lessons introduce concepts such as flowcharts, iterative design, project planning, and the engineering process. At the end of the module, students need to solve the “Search and Rescue” challenge, where the robot will have to visit four different rooms and solve specific problems.
Install It
Before continuing, ensure that your computer has the EV3 Classroom app installed.
🔧 Build It
Before you continue, ensure that you have completed the following builds:
Color Cube (aka Cuboid)
Base Unit (aka Driving Base)
Ultrasonic Sensor
Medium Motor Arm
Color Sensor (aka Color Sensor Down)
Gyro Sensor
🎓 Learn It
Carefully read and/or watch the instructional media and respond to the related questions.
🔀️ Flowcharts
Question 1
1.
Question 2
2.
🔁 Iterative Design
Question 3
3.
📋 Project Planning
Question 4
4.
Question 5
5.
Question 6
6.
💻 Engineering Process
Question 7
7.
Question 8
8.
🏆 Challenge Overview
For this challenge, use concepts you have learned so far to create a program for the robot that will enter a 4-room building. The robot must perform 4 unique actions for 4 unique rooms that will be randomized to simulate hazardous areas where you can never know what will be encountered.
This challenge is divided up into 2 phases. Phase 1 includes writing 4 separate programs, one for each room. Phase 2 will combine the four projects in one program.
🌐 A virtual version of this challenge is available HERE.
Question 9
9.
Question 10
10.
🔥 ️Phase 1: Fire Room
The task of the Fire Room is to go to the red square, turn around 180 degrees, and back up over the "fire" (red square) area (BACKWARDS) with the (pretend) rear-mounted "fire extinguisher".
The "fire" area can be a sizeable square of red electrical tape or bright red paper that can detach from the table.
🔥 Fire Room - Planning the Program
In order to break the Challenge rooms into more manageable pieces, you will plan out the actions your robot will take before writing a program. This pseudocode can be as simple as the actions in the proper order or as complex as identifying the proper robot commands to perform the actions.
Now it’s your turn!
Complete the activity on the Formative canvas.
🏅PRO TIP:️ Remember that the canvas provides a variety of tools and media options. In addition to drawing, shapes, and text, you can add screenshots, photos, and other media to your pseudocode chart.
You may also print a copy of the Pseudocode Table, complete this activity on paper, and upload a picture of your page to the canvas.
👨💻Program It!
🔥 Fire Room
With your pseudocode in hand, write a program to solve the room.
100
20
20
Question 14
14.
🆘️Phase 1: Rescue Room
The task of the Rescue Room is to lift the Survivor with the EV3 Arm.
The Survivor can be any object that can be picked up by the robot's claw. Some commonly used items are PVC pipes, toilet paper tubes, or an object made of LEGOs. The object must be large enough for the ultrasonic distance sensor to detect.
🆘 Rescue Room - Planning the Program
In order to break the Challenge rooms into more manageable pieces, you will plan out the actions your robot will take before writing a program. This pseudocode can be as simple as the actions in the proper order or as complex as identifying the proper robot commands to perform the actions.
Now it’s your turn!
Complete the activity on the Formative canvas.
🏅PRO TIP:️ Remember that the canvas provides a variety of tools and media options. In addition to drawing, shapes, and text, you can add screenshots, photos, and other media to your pseudocode chart.
You may also print a copy of the Pseudocode Table, complete this activity on paper, and upload a picture of your page to the canvas.
👨💻Program It!
🆘 Rescue Room
With your pseudocode in hand, write a program to solve the room.
100
20
20
Question 18
18.
🧱️️Phase 1: Walled Room
The task of the Walled Room is to maneuver around the obstacle in the room.
The obstacle can be any solid object that blocks the robot's travel. If solid objects are not available the obstacle can be a piece of tape or colored paper. The robot must be able to navigate around the obstacle so make sure there is enough space when setting up the obstacle.
🧱 Walled Room - Planning the Program
In order to break the Challenge rooms into more manageable pieces, you will plan out the actions your robot will take before writing a program. This pseudocode can be as simple as the actions in the proper order or as complex as identifying the proper robot commands to perform the actions.
Now it’s your turn!
Complete the activity on the Formative canvas.
🏅PRO TIP:️ Remember that the canvas provides a variety of tools and media options. In addition to drawing, shapes, and text, you can add screenshots, photos, and other media to your pseudocode chart.
You may also print a copy of the Pseudocode Table, complete this activity on paper, and upload a picture of your page to the canvas.
👨💻Program It!
🧱 Walled Room
With your pseudocode in hand, write a program to solve the room.
100
20
20
Question 22
22.
✅️️Phase 1: Clear Room
The task of the Clear Room is to play the sound "Analyze" to indicate that the room is "all clear" and then exit the room.
✅ Clear Room - Planning the Program
In order to break the Challenge rooms into more manageable pieces, you will plan out the actions your robot will take before writing a program. This pseudocode can be as simple as the actions in the proper order or as complex as identifying the proper robot commands to perform the actions.
Now it’s your turn!
Complete the activity on the Formative canvas.
🏅PRO TIP:️ Remember that the canvas provides a variety of tools and media options. In addition to drawing, shapes, and text, you can add screenshots, photos, and other media to your pseudocode chart.
You may also print a copy of the Pseudocode Table, complete this activity on paper, and upload a picture of your page to the canvas.
👨💻Program It!
✅ Clear Room
With your pseudocode in hand, write a program to solve the room.
100
20
20
Question 26
26.
👨💻Program It!
⛑️️ ️Search and Rescue
With your pseudocode in hand, write a program to solve the room.
100
20
20
What is a Flowchart?
A graphical representation of a robot's plan of action, including decisions
The document that tracks the number of weeks left in the project cycle
A series of pipes and wires that illustrate electricity flow.
The overall map of a program's progress
Why are Flowcharts important?
Robots internally reprocess all instructions into flowcharts in order to think
They help programmers visualize the decision-making process on the robot
EV3 programs can be written in Flowcharts and loaded directly into the robot
The flowchart calculates the trajectory of the rejected plants
What method does this video recommend for building a solution to a problem?
Solve a part, add it to the solution, test the combined whole, then repeat
Solve all the parts separately, then combine them in one step
Construct the entire solution all at once
Build almost everything at once, then try to get the last part to fit
What main topic does this video address?
How a robot "thinks" about its surroundings
How to build a car out of LEGO bricks
How to coordinate a team of people working together on the same problem
How to write the most efficient program code
What does a Design Specification do?
Keep track of the days that people have shown up to work on the robot
Align team members' ideas of what is being built
Explain the importance of the problem being solved
Distribute the work evenly among team members
Which of the following can help your team finish its task on time? Select all that apply.
Working separately until the day the project is due
Prioritizing parts that need to be finished before other parts can be worked on
Assigning clear responsibility for each part to a specific team member
What main topic does this video address?
What engineering is, and how it works
Imagining the solution to a problem
How to coordinate a team of people working together on the same problem
Types of terrain that are most suitable for robot use
Which of the following is not an important element in a good Engineering Process?
Ignoring resource limitations
Prototyping the solution
Researching the problem
Testing the prototype
Planning the development
Commercializing the product
✍️ Pseudocoding Practice
Good pseudocoding practice involves the process of decomposing larger tasks into smaller steps. Remember, the best way to plan a program is iterative!
Practice pseudocoding at a deeper level by writing a plan to solve this maze by using the Ultrasonic Sensor. Let’s start by decomposing this task into steps. Using this chart, we can start with steps that are conceptual and simple and then work our way to adding more and more detail until we just have code in the last column.
The robot only needs a few behaviors to get through this maze. Keep breaking down each step with more details in the next column. By the last column, the steps should be detailed enough to be translated into code. You will know when you are done decomposing and iterating your pseudocode when it is so simple that a robot can do it!
Pseudocode Through the Maze
Fill out the chart with steps for the robot to solve the maze using its Ultrasonic Sensor. Start with more conceptual steps, written in just English, and then add more and more detail in each column until you have just coding language.
Now it’s your turn!
Complete the activity on the Formative canvas.
🏅PRO TIP:️ Remember that the canvas provides a variety of tools and media options. In addition to drawing, shapes, and text, you can add screenshots, photos, and other media to your pseudocode chart.
You may also print a copy of the Pseudocode Table, complete this activity on paper, and upload a picture of your page to the canvas.
Question 12
12.
📸 Document It: Capture a screenshot (or multiple screenshots) of your completed program and upload or paste it onto the Formative canvas.
Question 13
13.
⬆️ Upload It: Upload your completed program.
Question 16
16.
📸 Document It: Capture a screenshot (or multiple screenshots) of your completed program and upload or paste it onto the Formative canvas.
Question 17
17.
⬆️ Upload It: Upload your completed program.
Question 20
20.
📸 Document It: Capture a screenshot (or multiple screenshots) of your completed program and upload or paste it onto the Formative canvas.
Question 21
21.
⬆️ Upload It: Upload your completed program.
Question 24
24.
📸 Document It: Capture a screenshot (or multiple screenshots) of your completed program and upload or paste it onto the Formative canvas.
Question 25
25.
⬆️ Upload It: Upload your completed program.
⛑️️️Phase 2: Search and Rescue
Combine your robot’s capabilities from Phase 1, and build a robot that can distinguish and complete all 4 rooms in one run.
Write 1 program that will (have your robot) travel all 4 rooms.
The location of the rooms will be randomized each run.
The robot can start at any doorway, oriented to go either clockwise or vice versa.
The robot cannot travel through any of the marked walls at any time during its run.
The operator may not choose between different programs based on the configuration - the robot must always run the same program.
⛑️️️Search and Rescue - Planning the Program
Start by creating pseudocode to plan the actions and decisions your robot will need to make to solve the Search and Rescue Challenge.
Now it’s your turn!
Complete the activity on the Formative canvas.
🏅PRO TIP:️ Remember that the canvas provides a variety of tools and media options. In addition to drawing, shapes, and text, you can add screenshots, photos, and other media to your pseudocode chart.
You may also print a copy of the Pseudocode Table, complete this activity on paper, and upload a picture of your page to the canvas.
Question 28
28.
📸 Document It: Capture a screenshot (or multiple screenshots) of your completed program and upload or paste it onto the Formative canvas.