Group 4 Final Project - Voice Recognition
Partners: Fei Cai, Mitchell Goldenberg & Todd Peek
Objective: To create a voice recognition board and interface it with the Robot.
Introduction: Voice recognition simply put is the ability to recognize verbal commands. A device with voice recognition has the ability to store specific oral commands given by the user. Then when the user activates the device and says the command that the device understands a specific response is output by the device.
Our Sweet Project: For our project we used the Voice Direct 364 Speech Recognition Kit to create a board that could be interfaced with the DSP. The Voice Direct 364 module shown below handles all of the storing, processing and recognizing of voice commands.
There are 3 modes to which the module will interact with the user.
1.) Speaker Dependent - In this mode a button is pressed each time a word is to be recognized. Up to 15 different words can be stored.
2.) Continuous Listening - These is a word in which the module is listening for in order for it to be activated. Then an additional word is given.
3.) Multi-Word Continuous Listening - There are 3 words that the module is listening for in order for it to be activated. Each of these words corresponds to a bank of 5 words, giving a total of 15 words.
We set up our board for multi-word continuous listening to allow for 3 different banks of words to be stored. To build the voice activation circuit, we attached the module to a microphone and a speaker. The speaker is used to instruct the user when recording words.
4 Separate buttons were connected to the module and the purpose is as follows.
Button 1 - Reset: This button is hit to reset the module.
Button 2 - Train: This button is hit to train words in the 3 different banks.
Button 3 - Recognize: Hit after training the module to initiate continuous listening.
Button 4 - CL Train: This button is hit to train the three continuous listening words.
There are 8 outputs from the module, with each a different logic depending on what word was said. The outputs are active high. These outputs were wired to individual LED's and resistors for testing purposes. The outputs were also inverted, and sent to a chip in order reduce the output from 8 bits to 5 bits. Then these 5 output values were connected to the parallel port on the Robot. Power for the chips and the module was connected to a female plug which was connected to a male plug, using power from the DSP. A picture of the finished board can be seen below.
ROBOT:
Our board was attached to the back of the robot. Code was composed in order to have the robot respond to the output of the Voice Activation module. Our code took the input and made different cases depending on the bank and the specific word given to the voice activation module. Our code is given here:
Here is a picture of our finished robot.
A Special Thanks to:
DAN BLOCK
Karl
Sean
AND OF COURSE....
