BEGINNER
PROGRAMMING
LESSON
EV3 CLASSROOM:
Basic Line Follower
By Sanjay and Arvind Seshan
LESSON OBJECTIVES
1. Learn how humans and robots follow lines
2. Learn how to get a robot to follow a line using Color Mode on
the EV3 Color Sensor
3. Learn how to follow a line until a sensor is activated
4. Learn how to follow a line for a particular distance
5. Learn how to combine sensors, loops and switches
© [Link] 2020 (Last edit: 12/21/2019) 2
TEACHER INSTRUCTIONS
• Slides 4-7 are animated. For students to better understand how a
line follower works and how a human and a robot follow a line, we
recommend that you play the animation
• Give each student/team a copy of the worksheet.
• Challenge 1 begins on slide 10 and Challenge 2 on Slide 13
• Discussion Guide is on Slide 16
• More advanced students might be interested in other line followers
on [Link]
© [Link] 2020 (Last edit: 12/21/2019) 3
FOLLOW THE MIDDLE?
Humans want to follow the line in the
middle.
Let’s have the robot do the same thing
using the Color Sensor
What type of questions can we ask using
this sensor
• Are you on line or not?
© [Link] 2020 (Last edit: 12/21/2019) 4
1. If we are on black, keep
going straight
2. If we are on white, turn
left to get back to the
line
Seems to work fine here…
5
© [Link] 2020 (Last edit: 12/21/2019)
1. If we are on black, keep going
straight
2. If we are on white, turn left to get
back to the line
OH NO… my robot is running
away….
When the robot leaves the left
side of the line, the program no
longer works!
6
© [Link] 2020 (Last edit: 12/21/2019)
LINE FOLLOWING: ROBOT
STYLE
Why could the Human follow the middle?:
• They can see ahead.
• They can see the whole line and its surroundings
• They see both sides and which side they left
Why can’t the Robot do the same thing?:
• Can’t tell right or left side of the line
• How do we make sure the robot always veers off on the
SAME SIDE of the line?
• Instead of the middle, could the robot follow the “edge”?
• So now the robot will fall off only the same side.
• We will now show you how this works!
© [Link] 2020 (Last edit: 12/21/2019) 7
ROBOT LINE FOLLOWING
HAPPENS ON THE EDGES
Left side line following Right side line following
If on If on
black, black,
turn left. The robot has to
turn
If on choose which right.
white way to turn when If on
turn white
right. the color sensor turn left.
sees a different
color.
The answer
depends on what
side of the line
you are following!
© [Link] 2020 (Last edit: 12/21/2019) 8
STARTING THE ROBOT ON THE
CORRECT SIDE
© [Link] 2020 (Last edit: 12/21/2019) 9
LINE FOLLOWER CHALLENGE 1
Step 1: Write a program that follows the RIGHT edge
of a line.
Hints: If your sensor sees black, turn right. If your
sensor sees white, turn left. Use loops and switches!
Step 2: Try it out on different lines.
Did your line follower work the same on
straight and curved lines?
Step 3: If not, instead of turn Steering = 50, try
smaller values.
Is it better on the curved lines now?
C
C
B
B
© [Link] 2020 (Last edit: 12/21/2019) 10
LINE FOLLOWING CHALLENGE
SOLUTION
When sensors sees black turn
right
When sensors sees white turn
left
Q. Does this program follow the Right or Left side of a line?
A. The robot is following the Right Side of the line.
© [Link] 2020 (Last edit: 12/21/2019) 11
CHALLENGE 1 SOLUTION
Repeat forever
Line follow on right side of the
line
Q. This line follower goes forever. How do we make this stop?
A. Change which loop block you picked
© [Link] 2020 (Last edit: 12/21/2019) 12
LINE FOLLOWER CHALLENGE 2
Part 1: Make a line follower that stops when you
press the touch sensor
Part 2: Make a line follower that stops after it
travels 1500 degrees
© [Link] 2020 (Last edit: 12/21/2019) 13
CHALLENGE 2 SOLUTION:
SENSOR
Repeat until Touch Sensor is
pressed
Line follow on right side of the
line
Stop motors
© [Link] 2020 (Last edit: 12/21/2019) 14
CHALLENGE 2 SOLUTION:
PARTICULAR DISTANCE
Reset rotation sensor (Reset
Degrees Counted) on Motor C
Repeat until rotation sensor has
moved 1500 degreed
Line follow on right side of the
line
Stop motors
© [Link] 2020 (Last edit: 12/21/2019) 15
DISCUSSION GUIDE
Why is it important for the robot to follow the same side of the
line?
The robot only knows to check if it is on or off the line.
This is a basic line follower. What are some things that were not
good about this line follower? Do you think the line follower can
be improved?
It wiggles a lot. Smoother line followers are described in the
Advanced lessons
What sensor measures how far you have travelled?
The rotation sensor used in Challenge 2 solution measures
how much the wheels have turned
How would you write a line follower that will stop when it sees a
line? Or another color?
Change the loop exit condition to use the color sensor.
© [Link] 2020 (Last edit: 12/21/2019) 16
CREDITS
• This tutorial was created by Sanjay Seshan and Arvind Seshan
• More lessons are available at [Link]
This work is licensed under a Creative Commons Attribution-
NonCommercial-ShareAlike 4.0 International License.
© [Link] 2020 (Last edit: 12/21/2019) 17