Senior Design Project
Author: Chi Yeuing
Advisor: Dr. Zecevec
Nov. 30, 1998
Computer Controlled Robot
Our goal for the senior design project was originally developed from the thought
of creating a micro-robot, a robot that finds its way in a maze. But since this project was
accomplished by last year’s class, we set out to do something more with the robot. This
Robot is going to be controlled from a computer with a wide range of functions that we
are going to be discussed below.
The robot will be controlled from a computer terminal. The user can use the
computer to control as many as 17 functions by using different keys on the computer and
the joystick. The joystick or keys on the computer tell the robot to move forward or
reverse, turn right or left, or stop. Some keys enable the robot to produce sound effects
thorough a built-in piezoelectric speaker mounted on the robot. And other keys flash the
robot’s LED headlights.
The Robot also has an onboard 16-Kilobit, non-volatile memory that enables it to
remember movement sequences. There are six selectable memory banks, each with 127
steps of memory. This means that we can have the Robot repeat its movement and
produce sound effects automatically. We can store six sequences each with up to 127
steps and, with a press of a button, the Robot will replay the sequence. Sequences are
stored and remembered even if the power is temporarily turned off or the batteries die.
The on-board infrared receiver is sensitive enough for a control range of up to 25
feet. We are also planning to put a video camera on the robot and sending the video
signal on the robot to computer so that the user knows what exactly the Robot is heading.
But this part is only implemented if time permits. We can also select two speeds: a high
range and a low range. As a credited class at Santa Clara University, our senior design
has some additional constraints. We must fully document our progress to assure that we
have learned the proper procedures for the original design of the Robot and successfully
Lastly, we have our self-assigned requirements. The three of us want to make
certain that our project is a sufficient challenge and that the final product will be
something in which we can be proud of. This decision, which we recently came to, has
changed the scope of our project to the construction of our own transmitter-receiver, and
the Robot, as opposed to purchasing a pre packaged transmitter-receiver and interface it
with a computer.
In these days people don’t have enough time to do the house-works such as
mowing the lawn because of having busy working schedule. In such a case a smart robot
becomes very handy. Therefore, we developed an idea to build a robot that does more
than just move in a maze. Since making the robot that can memorize up to six sequences
can help in fixing the boundary limits of a lawn mower. With up to six sequences, this
designed robot can be used in a wide range of areas with different helpful purposes. For
example, the robot can be programmed to help elderly person or patient such as being a
reminder or medicine giver.
Having a video signal makes this Robot very useful as a vehicle used for
searching and exploring places that human being is limited to such as detecting mines and
exploring the unsafe environment. Controlling the robot from different computer
terminals through the internet gives the user flexibility to access it from any computer
terminal at any place.
In order to design the Computer-Controlled-Robot, we have considered some
possibilities in designing approaches. There are three major parts:
1. The micro-controller (for robot)
2. The wireless transmitter-receiver (between robot and computer terminal)
3. The video signal if time permits (between two computer terminals)
Each major part is guided by two approaches: a first choice and backup plan. In
part 1, we can use either the micro-controller PIC16C622 or 87C752. Even though we
have experienced with the 87C752, we choose to use the PIC16C622 because this chip
satisfies our need and is easy to find on the market. In part 2, we will build the wireless
transmitter and receiver. This approach is selected because we want to build devices that
meet our specifications and to make interfacing with other devices (micro-controller and
computer terminal) easier. The second approach is to purchase the set (transmitter and
receiver) in case of facing difficulty. The video signal in the last major part is considered
to be optional. If time permits, we will try to transmit the video signal from the robot
indirectly to the third computer terminal. This task can be accomplished by software,
using either the PC-Anywhere or SDK.252 (SDK.252 is sponsored by ACER LAB). Our
choice is the SDK.252 for the supporting of ACER LAB.
The “brain” of this robot is a Microchip Technology PIC16C622 eight-bit CMOS
micro-controller with built-in EPROM. The PIC16C622 is housed in an 18-pin DIP
package that contains a central processor, EPROM, RAM, a timer, and 13 TTL/CMOS-
compatible input/output lines. The micro-controller is interfaced with the receiver.
The transmitting signal from the transmitter to the receiver is by using an infrared
light. The commands will be sent from the transmitter that is interfaced to the computer
terminal to the receiver on the robot. The receiver module outputs a low-level TTL-
compatible signal whenever it receives a pulse of infrared light. Therefore, whenever a
button is pushed or the joystick is pushed to one direction, the receiver module outputs a
serial bit-stream unique to that particular button. The receiver module then feeds the bit
stream to micro-controller input. Then this input informs the micro-controller what
action to take.
The transmitter we are going to use for this design will generate IR (infrared) light
pulses at a frequency of 320-Hz. The pulses arrive at the collector of the phototransistor
and are amplified by a 2N2222 transistor. An NE567 is tuned to 320-Hz, so if pulses of
any other frequency arrive at the phototransistor, the NE567’s output will remain high.
When the 320 Hz signal enters the phototransistor, the NE567 recognizes this frequency
and puts its output low. We can change the operating frequency since NE567 will work
between 100Hz and 1kHz.