Learn to Program Self-Driving Cars (and Help Duckies Commute) With Duckietown Robotics

Extensions Advanced Programming Ideas

EV3 MicroPython Program Solutions

Recording One Action to Make the Robot Move

Students can work with pythonev3 software 

Recording Multiple Actions to Make the Robot Move

Students can work with pythonev3 software 

Language Arts Extension

Option 1

Using Text-Based Programming:

o Have the students explore text-based programming solutions so they can compare different programming languages.

Option 2

In this lesson, your students created a driverless car that operated according to the instructions given to it in an array.

What if the driverless cars of the future could be programmed to override input from their human drivers?

To incorporate language arts skills development, have your students:

o Write an argument supporting the claim that driverless cars shouldn't be able to autonomously control their speed despite passenger input

o Include specific evidence to support the validity of this claim, citing situational examples where this could leave the passenger at a disadvantage

o Make sure to address the counterclaim that autonomous speed control by driverless cars could be an effective strategy for increasing driver or traffic safety

Math extension

In this lesson, your students created a turn-by-turn sequence of instructions for a driverless car. Using sensors and machine learning, driverless cars can follow instructions and modify the execution of these instructions based on new conditions.

To incorporate math skills development, and explore machine learning applications for driverless cars, give your students a "budget" of a certain number of turns. Then have them:

o Create a grid representing city streets (e.g., five streets that go east to west and five streets that go north to south)

o Pick a starting point and destination · Keeping in mind that the path with the fewest turns represents the best path, analyze three intersections between the starting point and destination

o Determine the probability that their vehicle will get to the destination “under budget” in a random direction

For students who wish to work in advanced programming, introduce Duckietown