During this lab, you will combine the previous laboratory assignments and program your robot to autonomously navigate through a maze. On the last day of the lab, each section will hold a competition to see who can solve the maze the fastest. The fastest time in ECE 382 will have their name engraved on a plaque in the lab. Believe it or not, the main goal of this lab is for you to have some fun with computer engineering!
You must write a program that autonomously navigates your robot through a maze (Figure 1) while meeting the following requirements:
Do not step onto the maze since the floor will not support your weight. You will notice the maze floor is cracked from cadets who ignored this advice.
Figure 1: Diagram of the maze your robot must navigate. Your demonstration grade depends on which door you go through.
All the laboratory requirements above are required to be met for the maze, with the following differences:
Print out your grading sheet.
Consider your maze navigation strategy. Provide pseudocode and/or a flowchart that shows what your main program loop will do.
Include whatever other information from this lab you think will be useful in creating your program.
How do you avoid hitting a wall? Below are some questions for your consideration.
If your robot does not naturally drive perfectly straight, how can you correct this "drift"?
How fast does your robot move? How far can it move in one full timing cycle? What is a good way to figure this out?
How fast can you determine "distance" on each side of your robot (think worst case while moving)? Should one side have more scanning priority, and how do you determine the priority?
If you follow a wall, what is a good range of distances to attempt to be within?
Only the door you are trying to get functionality for will be open - all others will be closed. We can't expect our robot to know to skip openings!
If you get A Functionality, you get credit for Required and B Functionality. There is no need to complete the maze through all doors.
There are a variety of techniques that cadets have used in the past to solve the maze. Here are a few:
Additional hints are on the Notes page.
Provide a printable Lab 8 Cutsheet if another instructor checks your functionality.
|Item||Points||Out of||Verified by||Due|
|Required Functionality||50||COB L40|
|Door 2 Functionality||15||COB L40|
|Door 3 Functionality||15||COB L40|
|Bonus Functionality||5||COB L40|
|Competition Bonus||15||EOC L40|
|Code (Required)||10||COB L40|
All Required lab work must be completed NLT COB Lesson 40. Otherwise a final course grade of b Incomplete b Controllableb (IC) will be assigned.