Hi there people, a couple of guys in my college and I are planning to make this 'robot', which will dance to the music played to it. Basically, I'd thought of having the bot take in the sound input from a microphone, then amping it, passing it through a couple of filters for taking the bass and treble components from the music. The filter-output can then be passed to an Arduino uC in some form and thereon programming can take over.
I have a couple of doubts regarding this thingy:
First: what mic should I use for best results? Is using a normal music-player earphone backward as a mic sufficient? i read about electret mics.. is this the one I'd be needing?
And, wat filter design seems best? I guess active filters using op-amps would be the best bet, but I was told the 741 opamp is too noisy for this application.. suggestions?
Won't the mic pickup the mechanical sounds of the robot?
An electret mic is good, common and inexpensive. It must be powered through a 10k resistor from filtered 6V to 9V.
It must have a low-noise preamp made from a TL07x opamp. The remaining opamps in a TL07x can be active filters.
thanks audioguru, looks like i'll have to isolate the mic from the bot body itself..
I'm getting real disillusioned about the filter bit in this.. I mean, is it really feasible to isolate the bass part of the music (the beats) to such an extent as to get a sensible pulse-train to feed to the uc? Is there something else I'd be needing besides the active filters (i guess a second order, opamp based one might suffice)?
If you use amplitude discrimination, the circuit may be able to respond only to the high amplitude music beat and not other low frequency signals such as deep male voices.
You can use a severe low pass filter followed by a peak detector. Lots of simple music activated disco lights etc use that system, and you could probably even google for some schematics that would already be very close to what you need.
Well if that is the case, you could use a PC software to analyse the music wave file and generate a "playlist" file of motor control commands.
That would even give you the option of adding special dance moves at particular parts of the music, or a bow afterwards etc.
Robot dance seems pretty popular in the robot competitions, and that system would let you create a very impressive performance.
I want a little headbanging robot with a mullet wig and an air guitar arm, that rocks away in time with Metallica CDs.