First
assignment
Finding
the summit
We're all set and
ready to go:
This photograph shows the messy
wiring that connects sensors and
motors to the onboard computer.
The computer's LCD displays
program execution and the
operating system's "heartbeat".
The motion sequence is initiated by the press of the Start button on the computer. For this activity, the robot was to be able to find its way through the board to the ramp, determine when it had reached the center of it, and stop there.
The black line on the board
was chosen as the most practical means of navigating to the ramp.
This was accomplished by placing two eyes (photoresistors) on the
front of the robot very close to one another, which can be seen
in this picture behind the front bumper. These sensors read the
luminosity on the floor and allow the robot to "see"
the line. The algorithm implemented to make the robot follow the
line is rather simple. The robot advances while constantly
getting readings from the eyes, and if a substantial decrease in
luminosity is detected on one of these sensors, then a line has
been "touched" on that side, and that a trajectory
adjustment is made in that direction.
Two other luminosity sensors were attached on the outer edges. Although the sensors described above were successful at guiding the robot through wide turns, a straight angle turn was on many occassions too hard for these sensors to handle alone. The outer sensors detect if the black line abruptly changed direction to one of the sides and ensure that the robot never runs past the turn.
After completing the course,
the access to the ramp is finally reached, and color is again
used to identify it. If the robot is aligned with the ramp, the
simultaneous decrease in luminosity on the sensors will let it
know that the ramp is there. Otherwise, it will start scanning
the surface with the two outer sensors by turning its body, and
then align itself accordingly before increasing its speed and
climbing. The robot will maintain this speed for the amount of
time necessary to reach the center, and the end of the program
will be reached.
The Interactive C code developed for this assignment is presented
here.
Alejandro J. Trejo
University of Texas at El Paso
Last update: 09 Apr 1999.