Joe's Robot pages.

I am looking at applicatons of signal processing to robot sensors, communications, and control. My first couple of projects are

Robot testbed For a testbed, I decided to use a couple of cordless screwdrivers as the motors. They are cheap ($10 each), have plenty of torque, come complete with nice gears to get the speed into the right range, and the shaft is nice for mounting wheels.

The speed is controlled with a custom pulse-width modulator based on a Atmel AVR micro. Speed is variable from OFF to ON in 16 steps. It's controlled by a serial interface. Communications uses a wireless RS-232 link that I picked up surplus a long time ago. Eventually, I want to move to something more modern, but it works for now. Click here for more information about the testbed, including a bigger photo.

Gyros

Robot testbed (Click here for more information about the gyro board.) Recently, I was able to get a few Analog Devices ADXRS150 micromachined gyros. The samples I have right now are test rejects. They all work, but are probably out of spec. Their output is an analog voltage (0 to 5v), where the midpoint represents rest, and deviations indicate rotation about the center of the package.

My plan is to initially use one for directional control of the robot. By integrating the output, it should be possible to keep track of changes in direction. This way, I don't have to worry about wheel slippage and things like that. At least, that's the theory. We'll see how it works in practice.

It is also possible to build a full six-degrees-of-freedom inertial navigation system using 3 of these babies with a couple of AD 2-axis accelerometers. Sounds like a nice package for a robot sub or plane. That's for the future.

As of September 2002, I have the gyro testbed designed and fabricated. It's pretty simple. The gyro just needs a few capacitors to control it's bandwidth and for it's internal circuits. The outputs are captured by an ATMEL AVR4433 micro. This chip has a 10-bit built-in A/D, so it's connected directly to the gyro. Samples are captured by the micro and sent to a host PC using the UART. I have a simple RS-232 level translator on the test board, so it can connect directly to a PC. The plan is to test and debug the algorithms using a PC, then put the code into the micro.

Update, Dec 2002: I now have samples of the production version of the gyro, and have a working daughter board with the gyro and an ADXL202E accelerometer. I have also been asked to give a talk about the use of it at the Boston section of the IEEE robotics group on Jan 7. See www.robotics-boston.org for meeting info. I plan to post more info here soon.

Update, Jan 2003: The new board uses an ATmega8 processor (replacement for the AVR4433), and supports 3 daughter boards, for a full 6-axis setup. The software is still in development. My presentation from the Jan 7 meeting is now online. pres030107.html The presentation was generated with OpenOffice, and exported as an html presentation (uses JavaScript).

Voice control.

My plan is to have voice recognition running on a Linux-based PC. The PC will do the word recognition and translate the spoken commands into the proper motor controls. I am planning to use Mississippi State University ISIP package to develop the control software. This is a Hidden Markov Model based recognizer. which is pretty close to the state of the art.

As of September 2002, I have the code compiled and installed. The next step is to define the grammar, collect a data base, and build the HMM's.


www.myown1.com home
© 2002 Joseph Rothweiler
Last modified $Date: 2003/01/13 19:26:02 $