Projects completed for CS 330: Robotics at Francis Marion University during Spring 2017. For each project I have listed the goals required to complete the assignment along with the code used to acheive these goals. Individual projects are available to download via DownGit in the links below.
-
Cycle the power button from red to green in 16 even steps. Show each
color for 1 second. -
While cycling, if the left bumper is pressed, light the robot's Check Robot LED while
the bumper is depressed. -
While cycling, if the right bumper is pressed, light the robot's Debris LED while the
bumper is depressed.
Note checking and responding to bumpers should not disrupt 1 second timer.
-
Read the Wall Signal Sensor, and map it's value to the Power LED Color value of the LED command.
Hint: mapping will not be 1-to-1. -
Read the Bump Sensor. Given the response respond as follows:
- If both sensors are pressed, then drive straight backwards until sensors are deactivated.
- If one sensor is pressed, then drive away from the activated sensor with an ICC = 1m until
the sensor is deactivated.
-
Drive in a square pattern. With side length = 1m.
-
If the bumped, stop and wait 1/10 second; repeat until bump is
no longer detected. Delay should not effect distance Roomba must travel!
-
Start with Roomba some distance from a wall.
Have the Roomba drive into (bump) and correct itself. -
Follow the wall maintaining a distance X.
-
Should be able to handle a concave or convex corner.
Roomba will start in the center of a square (side length = 4ft).
It's job will be to find X notecards will be placed randomly throughout the square.
Discovery of a notecard will be indicated by flashing an LED(s) or playing a tone.
Upon discovery of all X notecards, stop the Roomba and play a song.