CSCI 235: Intelligent Robotics
Project 6: Sonars, Conditions, and Modes
Part 1: Sonar
- Download the two Arduino sonar programs from Moodle
- Determine the usable range of each of the three sonars. Be sure to record those values and the process by which you obtained them.
- Experiment with the sonar to motor program. It will convert sonar values to motor commands. Try it with each of your three sonars. Experiment with different power level ranges as well. Try different values to go forward or backward. Take notes about each of your experiments.
Part 2: Conditions and Modes
Setup
- Install Arduino Bot Mark II on your robot's Arduino board.
- Obtain the GoCode app from Dr. Ferrer.
Implementation
Create a controller using GoCode that enables the robot to drive forward
while avoiding obstacles. Iteratively experiment with your controller until
you consider its performance to be satisfactory.
Report
Write a report that answers the following questions:
- With a two-wheeled robot, three different styles of turns are possible. What are the three styles? For each style, in what situations is it beneficial? Detrimental? Support your answers with evidence from experimenting with your robots.
- When creating an obstacle-avoiding robot that uses the ultrasonic sensor, what is the minimum distance at which to begin a safe turn? This value may vary depending upon the turning style; be sure to specify a value for each one.
- What numerical metrics are appropriate for quantifying the performance of an obstacle-avoiding robot? How are they measured? How do they conform with our intuitions?
- How did you employ your metrics to iteratively create your best obstacle-avoiding robot?
- Is your best obstacle-avoiding robot intelligent? Why or why not?
Submit your report via Moodle.
Record a video of your robot driving around and avoiding obstacles. Include
several different shots of the robot that highlight its behavior in different
situations. Submit your video via Moodle.