Upload Arduino code to robot rover that will allow the rover to navigate around a "defense" tub and knock over a goal block under a lamp

A-path Lab

You will be shown a robot rover that can run around a field enclosure (about 12 ft square) by detecting walls and turning into the field. You should understand how the battery pack on the rover can be recharged; it will run about an hour one a full charge.

For the LabZilla test we will place a weighted tub about some distance beyond a goal block of wood about 2" x 6"x 8" in size; the goal block will be underneath an incandescent light bulb. Your programmed rover must start from a chalked-in square on the side of the weighted tub away from the goal. Once you flip on the "V-switch" on the back of your rover it will start and run autonomously, perhaps "bouncing" off walls or being "attracted" to the light bulb. If your rover knocks over the block within 40 seconds of starting you are a winner and can have LabZilla signed off.

By "knocks over" we mean the wooden block rotates in the roll or pitch axis 90 deg and falls flat on the field. The rover can't just bump or push the block, or allow the block to come to rest against a wall.

You are allowed to move the weighted tub with your rover, but you can't score by knocking over the goal with tub.

The referee will set the tub and goal and light in place, and chalk in the area your rover can start from, and (s)he will keep time for your trial.

Your team can have two trials per day.

Your FTQ will be to explain how, if at all, you modified the default code to improve the rover's performance.


If the V-switch is accidentally switched off by contact with a wall or the defense box, your trial is over.

You may need to press the reset button on the Arduino card to successfully restart the rover.

Initially the Lab4 Arduino default code will have been uploaded to the rover card. Now the tone library sends out clock signals to the stepping motors on the rover to control their speed. To increase speed, increase the tone clock rate.

The default code does not have the phototransistors involved in controlling motor direction. You do have code for that, from Lab4Lam.