Archive for the sound Category

We got it this time!

Posted in analog, sound on April 27, 2010 by raphaelabrams

See that black rectangular blob in the middle of the picture above? That’s an operational amplifier, or op-amp. It’s a very common device that has a whole bunch of uses in the analog domain. Here I have it configured as a simple non-inverting amplifier, with a basic envelope follower circuit on its positive input. The envelope follower strips out the frequency from the microphone signal and outputs a voltage that is proportional to the amplitude of the original signal. This is almost enough to solve our problem, but the output signal is too weak for the AVR to read correctly. That’s where the op-amp comes in. It amplifies the signal before it goes into the AVR, overcoming noise issues. Fifty cents well spent! Now, instead of rapidly reading and analyzing the waveform, all the AVR needs to do is sample the output from the op-amp once in a very leisurely 11 milliseconds or so.

I was a little afraid of going back to 1970s era analog circuitry to solve this problem, but I’m glad I did. It works amazingly well. Now we get convincing, smooth servo response. And we don’t have to glue a pile of mechanical sensors to the dancer’s faces every two hours!

Here’s the circuit, drawn in SHARPIE CAD:

We’re trying something else!

Posted in robotics, sound on April 27, 2010 by raphaelabrams

Now we’re getting somewhere! We dropped the whole mechanical approach to gathering facial movement data. Instead we’re trying to use the sounds themselves as the control.

Step one is to attach a microphone. I found a nice little package with a built in preamp and low impedance output. Oh, and it’s really really small:

See the rectangle with the black dot? That’s it. The rest of that is mostly hot glue and wires that I applied, just so we could get a grip on it. It’s about 1/10″ thick. Thankfully it only has four solder pads so it’s reasonably easy to deal with despite its size.

It’s a Sisonic from Knowles. I think it’s neat-o!

Great! Now we have a decent analog voltage to read into one of the analog-to-digital channels of the AVR chip. All we need to do is read that signal, look for peaks and troughs in the waveform and measure their amplitude.

UPDATE: NOISE! ARGH! STILL TOO MUCH NOISE!!!!

Wiggly minions, I bring you LIFE!

Posted in analog, arduino, robotics, servos, sound, Uncategorized, update on April 26, 2010 by raphaelabrams

Hi folks! This is Raphael Abrams here! I’m an artist living in Brooklyn, doing all kinds of odd skilled labor to make a living. I teach electronics at NYC Resistor (I’m a co-founder), design open source electronic kits, do contract electrical engineering and when I get the chance I try to make art.

This blog will serve as a record of my new adventures in animatronics and puppetry. I’ll be sharing what I learn, and I hope you might be able to find something useful!