Adding Speech Control To An Old Robotic Arm

[Joris Laurenssen] has been hanging onto this robotic arm for about twenty years. His most recent project uses some familiar tools to add voice control for each of the arm’s joints.

The arm has its own controller which connects via a DB-25 port. [Joris’] first task was to figure out what type of commands are being sent through the connection. He did some testing to establish the levels of the signals, then hooked up his Arduino and had it read out the values coming through the standard parallel connection. This let him quickly establish the simple ASCII character syntax used to command movement from the device. There’s only eight command sets, and it didn’t take much work to whip up a sketch that can now drive the device.

The second portion of the project is to use voice commands to push these parallel signals to the arm. Instead of reinventing the wheel he decided to use the speech recognition feature of his Android phone. He used Scripting Layer for Android (SL4A) and a Python script to interpret commands, push them to his computer via Telnet, and finally drive the arm. We’ve embedded the video demo after the break. He gives the commands in Dutch but he overlaid comments in English so you can tell what’s going on.

Continue reading “Adding Speech Control To An Old Robotic Arm”

Forget Siri – Make Wolfram Alpha Your Personal Assistant

So you can spend a bundle on a new phone and it comes with a voice-activated digital assistant. But let’s be honest, it’s much more satisfying if you coded up this feature yourself. Here’s a guide on doing just that by combining an Asterisk server with the Wolfram Alpha API.

Asterisk is a package we are already familiar with. It’s an open source Private Branch Exchange suite that lets you build your own telephone network. Chances are, you’re not going to build one just for this project, but if you do make sure to document the process and let us know about it. With the Asterisk server in place you just need to give the assistant script an extension (in this case it’s 4747).

But then there’s the problem of translating your speech into text which can be submitted as a Wolfram query. There’s an API for that too which uses Google to do that translation. From there you can tweak abbreviations and other parameters, but all-in-all your new assistant is ready to go. Call it up and ask what to do when you have a flat tire (yeah, that commercial drives us crazy too).

[Thanks M]

Robot Takes Voice Commands Via Open Source CSR

This is Chippu, a robot that [Achu] has been working on for some time. His most recent addition was to give the robot the ability to respond to voice commands. This is accomplished using a variation of the open source Continuous Speech Recognition package called Julius.

The package depends on two main parts, a set of acoustic models which let it match incoming sounds and a reference library of grammar which is built from those sounds. [Achu] published another post which goes into detail about using Julius on a Linux box. It seems like this is possible with less robust hardware (ie: on an embedded system) if you narrow down the number of acoustic and grammer models that need to be matched.

For now, Chippu is getting commands from a computer that runs the CSR. But this was only used as a proof-of-concept and [Achu] plans to transition the bot over to smaller hardware like the BeagleBoard.

Check out the demonstration of Chippu responding to voice commands in the video after the break.

Continue reading “Robot Takes Voice Commands Via Open Source CSR”