|
The overall goal of the robot is to conduct a guided tour of the APL room. Coordinates
of various stations in the room are stored, and the robot moves successively from station to station. At each
station, it gives an explanation of that station. To move between stations, the robot make several steps,
localizing itself at each step and recalculating the way to the next station.
The files required for sound localization are:
- soundlocROBOTx.m -- main program
- tdoamap3.m -- calculates maximum delays
- tdoamap_mex.c -- (needs to be compiled in matlab's c compiler)
- tdoa4_mex.c -- calculates delays between microphones (needs to be compiled in matlab's c compiler)
- syn.txt -- to synchronize communications
- coordinates.txt -- to return coordinates from the localization
- localize.m -- makes the robot speak a phrase and outputs the localization
- findmax.m -- finds the location of the maximum value in an array
The files required for robot navigation are:
- tour.m -- main program, instructs robot to travel from station to station
- traverseMain.m -- main traversal function to go between two stations, uses a long step, then a final exact step
- traverseLoop.m -- sub-traversal function, uses constant length steps to get within a certain radius of the destination
- localize.m -- same as for sound localization
- direction.m -- calculates direction (angle) between 2 points
- randomSentence.m -- outputs a random sentence for each localization step
- checkAhead.m -- checks ahead of robot's intended step for known obstacles
- avoidObstacle.m -- moves away when an obstacle is encountered
- avoidObstacleAhead.m -- adjusts course when known obstacle is ahead
- findDirectionOfTurn.m -- finds direction to turn (left or right) when obstacles need to be avoided
- talk.m -- instructs robot's speech synthesizer to speak, then clears serial buffer
- traverseAngle.m -- calculates angle from x-axis between two points
As the robot moves, its position at each step of the way is plotted on a map of the room. This visual representation is useful for debugging, and since the cumulative path is plotted, is convenient for assessing the overall success of the robot's runs.
The files required are:
- plotPath.m
- aplmap.bmp
- plotObstacle.m
|