GOAL
To learn about robots and how to write code to control them
Robotics
Intro to Coding and
Virtual Robot Navigation
2025-08-18_v1.0
2
Breakout Development Team
JULIAN CENTENO
College: SUNY Polytechnic Institute
Major: Mechanical Engineering Technology
KIERA MALLINSON
College: Notre Dame
Major: Electrical Engineering
KRISTINE BUDILL
College: Yale and MIT
Major: Electrical Engineering, BS & MS
Industry Experience: General Electric Aircraft Engines, ITT Fluid Technology, Haemonetics
EMMA O’SHEA
College: Bucknell
Major: Biomedical Engineering
3
Breakout Redevelopment Team
JOSHUA FELICIANO
College: MIT ‘24
Major: Electrical Engineering and Computer Science
BRIANNA MAHON
College: University of Miami ‘26
Major: Civil Engineering
College: University of Notre Dame ‘25
Major: Chemical Engineering
GRACE MARKOVICH
MOLLY TRICKETT
College: University of Notre Dame ‘26
Major: Computer Science
PAT MARSHALL
College: University of Illinois at Urbana-Champaign
Major: Civil Engineering
Industry Experience: Road Construction, Wastewater Treatment
4
Outline:
the Maze
Extension Activities
We would like to see most students be able to finish through the Maze Challenge in the allotted time frame! If you finish, feel free to try our extension activities.
5
PART 1
Introduction to Robots
ANSWER ME!
Define the three criteria used to define an object as a robot or not:
Type your answer here.
What is a Robot?
In what situations/locations might robots be useful?
Type your answer here.
This video will help you understand more about robots.
6
7
ANSWER ME!
Using this definition, can you name some examples of robots or robotic systems in everyday life?
Type your answer here.
Definition of a Robot
8
8
Examples of Robotic Systems We See in Our Everyday Lives
AMAZON ALEXA
REMOTE VACUUMS
SMART WASHING MACHINES
ANSWER ME!
What sensors allowed the car to function?
Type your answer here.
Autonomous Vehicles
How can we teach a car to use sensor information?
Type your answer here.
Another example of a robot is an autonomous vehicle. This video will help you better understand how autonomous vehicles operate.
9
10
Benefits of Robots
Robots can be helpful in a number of ways. They can increase safety, productivity, and accuracy.
SAFETY
Robots can lift heavy loads and perform tasks in environments not safe for humans.
PRODUCTIVITY
Robots can perform monotonous tasks over and over again. Their rate of performing a task remains constant throughout the day.
ACCURACY
Robots can be accurate to within a fraction of an inch when performing a task. Unlike humans, they have sensors and actuators that accurately sense and perform tasks. This can reduce wasted materials.
11
The Essential Question
Now that you know a bit about robots, you are ready to learn how to write code to control them!
You will be introduced to the coding design process and learn how to write block based code so that you can solve the challenge:
Robot recap:
Machine that interacts with its environment, makes decisions based on its surroundings, and carries out jobs related to its goal
Key features of robots include:
Applications include:
How can I write code to successfully move a virtual robot through a maze?
12
PART 2
Coding Robotic Systems
13
13
The Coding Design Process
Write code that follows the design made in the previous step.
Write Code
How can you go about addressing goals and/or fixing the problems?
Design
Analyze your new code and look for what can be improved.
Identify Problems
NOTE:
Development of code follows a process very much like the engineering design process that includes iterative rounds of design, building, and testing before the final product is released.
Possible improvements:
Remember:
Designing before coding
leads to better and more efficient code.
14
Introduction to Block Coding
CODING:
TEXT BASED vs BLOCK BASED
15
15
Getting Started with VexVR
FOLLOW THESE DIRECTIONS
16
16
Writing Your First Program
SAMPLE PROGRAM
Let’s make a vehicle move forward, turn right and move forward again as seen in the code on the right
17
17
Hard-Coding*
FOLLOW THESE DIRECTIONS
Take your existing code and change it so that your bot moves in a square that is 2 blocks by 2 blocks. What do you think we need to change?
“You want to move forward, turn right, move forward, turn right, move forward, turn right so you are back where you began pointing up”
NOTE: THERE IS AN EASIER WAY TO COMPLETE THIS TAKE WHICH YOU WILL LEARN IN FOLLOWING SLIDES :)
18
Show us your code and drawing!
ANSWER ME!
Take a screenshot of your code and shape that you draw.
Remember: it is important to explicitly tell the robot everything you want it to do, as it cannot think for itself.
19
19
Solutions
Move in a square
Draw a square
NOTE: THERE IS AN EASIER WAY TO COMPLETE THIS TAKE WHICH YOU WILL LEARN IN FOLLOWING SLIDES :)
20
20
Quick Challenge: Make an Equilateral Triangle
AN EXAMPLE OF A LOOP TO DRAW A SHAPE…
21
Show us your code and drawing!
ANSWER ME!
Take a screenshot of your code and shape that you draw.
Remember: it is important to explicitly tell the robot everything you want it to do, as it cannot think for itself.
22
22
Loops
In your previous square code you may have noticed repetitive lines of code.
A cleaner way to code something like that is to take some lines of code and put them in a loop and have it repeat as many times as needed
AN EXAMPLE OF A LOOP TO DRAW A SHAPE…
Repeating 4x Block
23
23
Quick Challenge: Make a rectangle using a loop
24
24
Loops: An Extra Challenge! (Optional)
Loops can be manipulated in a variety of ways to make even more complicated designs.
On the right is an example of a complex loop that continuously layers shapes on top of each other to create a design.
Feel free to take on this challenge and attempt to create your own version of this example!
If you choose to complete this code, submit additional screenshots to the following slide.
AN EXAMPLE OF A COMPLEX SHAPE DRAWING…
25
Show us your code and drawing!
ANSWER ME!
Take a screenshot of your code and shape that you draw.
Remember: it is important to explicitly tell the robot everything you want it to do, as it cannot think for itself.
26
26
Variables (Optional)
We can use variables in VexVR to develop more advanced and detailed code! If you have previous python experience, feel free to use variables to to make a program that can draw a shape of any number of sides.
FOLLOW THESE DIRECTIONS
THE SETUP FOR YOUR VARIABLE SHAPE-DRAWING PROGRAM…
Using Variables to solve is optional. You can still code a solution to the later challenges without them.
27
27
Conditionals Introduction
Let’s make a program that uses a conditional statement!
We will put your robot in a field with obstacles and try to avoid them
FOLLOW THESE DIRECTIONS
Change the camera angle for a different point of view
Disc Mover Playground
28
28
Conditionals Example #1
Change the camera angle for a different point of view
Disc Mover Playground
29
29
Hard Code a path through the Maze
Choose your adventure:
Maze
30
Turn your code and drawing in
ANSWER ME!
Take a screenshot of your code and shape that you draw.
Remember: it is important to explicitly tell the robot everything you want it to do, as it cannot think for itself.
31
31
Use Conditionals to “Find” your path
Maze
32
Reflection
What programming tools have you learned so far?
How could you use these tools to guide a sprite through a maze?
32
33
PART 3
Putting it all Together:
Can you trace out your birth date? Choose a date in history, who can trace it the fastest?
Can you code your bot to knock down as many blocks as possible no matter where they appear (dynamic).
BEGINNER
INTERMEDIATE
EXPERT
Navigate the dynamic mazes as quickly as you can. Think about what iterations (checks) help your bot decide where to go.
34
Now that you have developed your robotics coding skills, it’s time to put them to the test !
The main challenge of this lab is to code your robot to successfully navigate the different variations of the Dynamic Wall Maze. If you feel like you need more practice before you start, start off with the beginner or intermediate challenges.
The instructions for the different challenge levels are on the following slides
PART 3
Putting it all together
BEGINNER
INTERMEDIATE
EXPERT
35
Can you trace out your birth date? Choose a date in history, who can trace it the fastest?
Can you code your bot to knock down as many blocks as possible no matter where they appear (dynamic).
BEGINNER
INTERMEDIATE
36
36
36
EXPERT
Navigate the dynamic mazes as quickly as you can. Think about what iterations (checks) help your bot decide where to go.
RECALL:
Pseudocode is simply describing what your code should do in English before you try and work it out with real code.
EX: “Go forward 20 steps then turn left…”
Robot Components
Used to pick up disks
Visualize your virtual robot as a real physical body by checking out these labeled images:
Example of Robot seen in VEXcode VR
Example of First Robotics Robot
37
38
Continue to Explore
IF YOU LIKED TODAY’S BREAKOUT, �YOU MAY BE INTERESTED IN THESE TOPICS:
TYPES OF ENGINEERING RELEVANT TO TODAY’S ROBOTICS BREAKOUT:
39
https://www.youtube.com/watch?v=FA27O7yy90Q
Additional Resources to Check Out
Related Links
BATTLEBOTS
ROBOT DOG COMPETITION
ROBOTS DANCING
40
Reflect on Your Design and Results
ANSWER ME!
Write your answer here
What do you think went well when completing this activity?
Write your answer here
What is something you would do differently if you were to do this again?
Complete the mandatory 5-minute Exit Ticket by clicking here!
Further Extension Activities
Any text here?
Python Coding
Virtual Robotics
42
EXTENSION 1:
Coding a Maze in Python
43
Extension 1: Maze Mayhem with Python
Your Challenge:
Pro tip: If you cannot figure out a command in Python, go back to your block code and hit </> on the right side of the screen and it will show you your block code in Python!
from mblock import event
# initialize variables
@event.greenflag
def on_greenflag():
sprite.clear()
sprite.pendown()
sprite.direction = 90
while True:
If sprite.touching_color('#000000'):
sprite.forward(-0.5)
sprite.right(10)
else:
sprite.left(8)
sprite.forward(2)
43
44
Turn your code in
ANSWER ME!
Take a screenshot of your code in python. Copy and paste the screenshot of your block code from before.
Remember: it is important to use the correct syntax and wording in python.
45
ANSWER ME! What was challenging about coding in python? �What are the pros and cons of using python?
Write your answer here.
Analysis: Python Coding
46
Further Extension Activities
Any text here?
Python Coding
Virtual Robotics
47
EXTENSION 2:
FIRST Virtual Robotics
48
Taking it to the next level
FIRST Robotics is a International Competition with many age levels from elementary to college. This is their online robotic simulator.
You can build your own robots and test them in an arena
Compete with sensors and game elements.
This is quite a bit more advanced than what we have done and might take some research before you feel successful.
Thank you!
Any text here?