2: Obstacle course

In teams of two, you will design algorithms using flowcharts to create an automated, driverless vehicle that can navigate an obstacle course. You will then adapt your code to use a touch sensor and an ultrasonic sensor to complete the same course, and make comparisons between the solutions.

This challenge features a sequence of turns that the robot must perform in order to get to the “end” of the course. The robot must begin at the starting point and get to the goal area by completing turning and forward movement behaviours. The robot must not cross any lines.

EV3 vehicle with ultrasonic sensor

Task description

You will need to complete all the following sections as part of your collaborative presentation:

1. Traverse course

Traverse the course without using any sensors.

  • Design a flowchart for the automated, driverless vehicle to reach the goal.
  • Working code with comments.
  • Validation video.

2. Wall detection with touch sensor

Use a touch sensor to detect the boundaries (walls) of the course while moving.

  • Design a flowchart for the automated, driverless vehicle to reach the goal using a touch sensor.
  • Working code with comments.
  • Validation video.

3. Wall detection with ultrasonic sensor

Use an ultrasonic sensor to detect the boundaries (walls) of the course while moving.

  • Design a flowchart for the automated, driverless vehicle to reach the goal using an ultrasonic sensor.
  • Working code with comments.
  • Validation video.

4. Connection to our world

Discuss the following questions:

  1. What differences were there between the touch and ultrasonic sensors in relation to your code and the driverless vehicle? Explain.
  2. How do modern vehicles use these two sensors?

To Be Successful

  • Use appropriate protocols when taking photos/videos of others.
  • Acknowledge sources appropriately including source of graphics.
  • Plan and implement consistent and logical navigation.
  • Include hyperlinks to navigate the presentation.
  • Reference sources appropriately.
  • Complete all 3 sections of this task including questions.
  • Work collaboratively with your partner.

Learning Behaviours

This task provides the following opportunities to develop and demonstrate the Learner Behaviours:

Driven
Engages in Python coding challenges with persistence and learns from their mistakes and willingly completes the extension activities.
Curious
Explores and tests ideas by asking questions, researching and through trial and error when learning new skills or developing solutions
Collaborative
Works in teams to solve problems and create new information. Willingly shares new skills and knowledge and assists others and seeks assistance from peers.
Connected
Connects programming constructs and data structures to real life applications and is able to explore and discuss issues and ethical implications of their solution
Flexible Thinker
Applies new knowledge and skills to solve problems and is able to adapt and recognize patterns in other solutions
Disciplined
Motivated learner who demonstrates initiative by following a project management process to complete a project