# Lab 5: Class Challenge
Lab 5 is challenge day! Teams will present their strategies and compete to see which solution is the fastest. Note: the final evaluation of your solutions will assess the degree to which you have avoided using a hard-coded strategy (E.g., you should be able to easily modify your code for a challenge with different coin distances and wall gaps.)
To be done as a group. Submit your code and lab reports on the Omnivox course platform by the due date given.
# Challenge Guidelines
Teams will be scored based on the degree of completion of the task. The task must be completed in 30 seconds or less. Bonus will be given for the top 2 times. A time penalty for not finishing the challenge in under 30 seconds will result in a 2 point deduction.
- 5/10 = robot moves, no coins collected
- 5.5/10 = 1 coin
- 6/10 = top coins
- 6.5/10 = top coins + successful turn
- 7.5/10 = top coins + 2 right coins
- 8/10 = all coins collected in over 30 seconds
- 10/10 = all coins collected in 30 seconds or less.
- +0.5 = 2nd fastest time
- +1.0 = fastest time
# Code Submission
Submit clear, readable code with comments in *.ino format. Be sure to include all team member names. Follow suggested guidelines from Post-lab 4.
# Lab Reports
Note: An additional writeup will be required regarding the use of hardware. For now, focus on the virtual lab and use the following outline for a group lab report in 2-3 pages:
- Introduction: What was the challenge? Provide a short Arduino overview that includes the virtual lab "materials". How did you organize your team and collaborate?
- Analysis: Present your specific strategies used to solve the challenge. Make sure to reference your code (e.g., point to specific comments).
- Discussion: How did your team perform (e.g., simulation time)? Provide ideas for improving your solution. Discuss what minimal changes you would need to make to solve for a similar environment where the coin distances parallel to the walls and the gap between walls is changed. Do you expect your solution to work on real hardware? Explain why or why not.
- Conclusion: What you are most proud of about your solution? What did you find most difficult about the Arduino engineering robotics activities? Other concluding remarks.