AME 3623: Project 4: Beacon Following II
In project 2, we designed a robot
controller that followed a sequence of beacons; in project 3, we modified the beacons so that
they would transmit an 8-bit number. In this project we will bring
these two together.
Project Goals
- To gain experience in inter-processor communication
- To gain further experience in FSM control
Project Due Date
Deadline: Thursday, May 5th.
Task
- Beacons will transmit a data packet at a the same interval as
in project 3. The 8-bit number that is contained within the
packet will encode both the beacon's ID # and the ID # of
another beacon.
- The most significant 4 bits (bits 4-7) encode the beacon
ID (so the IDs range from 0 to 15)
- The least significant 4 bits encode the ID of another
beacon.
- The initial target beacon is ID=1.
- The robot will lock onto the target beacon and begin to move
toward it.
- While moving toward the target beacon, the robot will search
for a beacon that matches the second ID number. This beacon
may occur to the robot's left or right.
- Once the second beacon is found, it will become the target
beacon.
- If the beacon ID=0, then the robot will stop. Otherwise,
continue with step 3.
Hardware
Robot interface: the same as those used/developed in projects 2 and 3.
Inter-processor communication: there are two pins on the Mega8 that
can be configured to operate as serial input and output. The input
line is: PD0; the output line is: PD1. When you use any character
output routine (e.g., printf()), this will generate a signal on the
output line. Likewise, when you use a character input routine (e.g.,
scanf(), this will listen on the input line). See the
Standard
IO Facilities documentation for AVRlib for all of the detail.
Also - we will make some sample code available soon...
Hints
- You can "snoop" on the serial communication between the two
processors by connecting the output of one processor to the
through a max232 (this chip converts voltage levels for us) to
the serial input to your laptop. See
the partial circuit.
- Because the beacons are no longer transmitting constantly, you
may need to change how you interpret the beacon information for
steering purposes.
What to Hand In
Project Report
Your report should include the following:
- The names of the group members
- A circuit diagram
- A copy of your documented program (this may be handed in as a
separate file).
The reports are due at 5:00 on May 5th. We prefer that these
be turned in via the Blackboard drop-box (one copy per group) in
either postscript or pdf format.
Personal Reports
Your personal report must include the following information:
- Your name
- An estimate of your contribution to the project in terms of
percentage of effort.
- An estimate of the contribution of each of your fellow group
members.
The personal reports are due at 5:00 on May 5th. These must be
turned in via the Blackboard drop-box in raw text format.
fagg at ou.edu
Last modified: Wed Mar 30 18:17:35 2005