This project allows our 3D Printed robot arm to hold a conversation by responding to microphone input with sign language.
Credit for Cleverbot.py
goes to rpbeltran
- Python 2.7
- SpeechRecognition (Not required for server usage)
pip install SpeechRecognition
- PyAudio (Not required for server usage)
- On Windows/Linux:
pip install pyaudio
- On Linux, it can be installed through APT, but is usually behind in version development
- On OSX:
brew install portaudio && sudo brew link portaudio && pip install pyaudio
- On Windows/Linux:
- Selenium
pip install selenium
- Phantomjs
- Place the executable on your PATH
The arm can be operated through the use of a server or through the use of a sole python script. The server crashes fairly often, and is in the process of being replaced. The python script is still in development and has not been fully tested yet. For either, you will need a microphone.
- Power Arduino Motor Controller
- Plug the Arduino Into Computer
- Upload
serial.ino
onto the arduino - Open the Arduino Environment and go to
tools/port
in the top menu bar to see wht port the Arduino is using - Open the code for
server_to_serial.py
and change the value ofarduino_port
on line 4 to the port name the Arduino Environment is showing. - Run the
bot_to_serial.py
script - Talk to it, and it will respond
- Power Arduino Motor Controller
- Plug Arduino Into Computer
- Start Webserver. If on Unix or Linux, install mono and run server with
mono NetServer.exe
- Open the Arduino Environment and go to
tools/port
in the top menu bar to see wht port the Arduino is using - Upload
serial.ino
onto the arduino - Open the code for
server_to_serial.py
and change the value ofarduino_port
on line 4 to the port name the Arduino Environment is showing. - Run the
server_to_serial.py
script - Open the web interface in a recent version of Chrome. Web Speech API wants chrome.
- Make sure that the interface has permission to access your microphone
- Talk to it, and it will respond.
NetServer.exe
needs to get phased out eventually.- If the whole thing crashes, starting the steps over from scratch usually works
- If the web interface hangs, restart it. This is web speech API acting up.