We investigated speech recognition as a robotic control option. A Windows based program was written, which understood voice commands, but which was unemployable on Visionís Sun Ultra 1. The focus of the interface then became radio frequency communication with the robot, the processing of robot sensor data, control of the robotís movements, and integration with the vision and learning software modules.
Radio frequency communication with the robot was accomplished through use of Parallax 303.825 MHz DVP RF modules. These modules consisted of two transmitters and two receivers, one transmitter and one receiver each for the robot and the Sun Ultra 1 microcomputer.
RF communication proved to be one of the major hurdles the team confronted. A serial port driver, rf.c was written for the Sun Ultra 1. The transmitter and receiver connected to the serial port on the Sun machine were combined with a Maxim 232 analog/digital converter (to convert TTL [5 volt] to RS232 [12 volt] and vice versa), an inverter, and a power supply.
Rf.c was written to initialize and address the Sunís serial port as well as to test the data sent and received through the serial port and between the RF modules.
The problems encountered revolved around incomplete understanding of the signal and the conversion between analog and digital signals. Reusable test breadboards found at the laboratory and employed to develop test circuits proved unreliable. The use of these breadboards to create test circuits complicated and confused development and troubleshooting efforts.
An oscilloscope was employed to help sort things out. Once the use of the oscilloscope was mastered and a single byte of data could be displayed on the oscilloscope as it was passed between the units combined with a full understanding of how the RF transmitter and receiver operated, resolutions to our communication problems were quickly found.
Once reliable data communication between two Sun machines and two RF modules was achieved, rf.c was incorporated into the Interface software.
The completed vision module was incorporated into the Interface without much trouble.
The learning module was incorporated into the Interface, but certain problems arose with updating the Q-values and the V-values which, were fixed in a simulated maze environment.
Reliable data communication between the robot and the computer continued to be a vexing problem. There was a lot of "trash" or "noiseí received between them.
Interface.c may be found here.
Introduction | Overview | Maze | Interface | Learning | Vision | Robot | Integration | Bibliography