AC Drive China Forum
Forum » Servo Control » how to control servo motor by giving sound as input
Topics: how to control servo motor by giving sound as input on Servo Control
#1
Start by
Jeffin K Koottummel
09-19-2013 10:56 AM

how to control servo motor by giving sound as input

I am trying to find out how to control servo motor by giving sound as input,plz give me a solution
09-19-2013 01:50 PM
Top #2
Jeffrey Lowe
09-19-2013 01:50 PM
Use a microphone to convert sound to an electrical signal and apply that to the input of your servo amplifier. That said, can you tell me what you are really trying to accomplish?
09-19-2013 04:20 PM
Top #3
Jeffin K Koottummel
09-19-2013 04:20 PM
My plan is creating a gui app in vc++ mfc to connect serial port of pc with a servo controller, then play a music ,according to the music the servo motor should run.I think convert the music into freq and each freq is giving as input to each motor.Is it possible.I expecting your reply.I dont have much experience in this field,so plz help me
09-19-2013 06:35 PM
Top #4
Bill Kazlauskas
09-19-2013 06:35 PM
A position loop controller Servo has about 50Hz band width, velocity controller about 150Hz. It's not going to do much in the way of responding to audio signals. So there was a special motor invented for such purposes - a voice coil. You can find it on on almost every loud speaker.
09-19-2013 09:15 PM
Top #5
Jeffin K Koottummel
09-19-2013 09:15 PM
Is it possible to use a two-stage low pass filter to cutoff 1Khz sample, and then performed Fast Walsh Transforms on the sound source to split the sounds into different frequency ranges. Is it work?
09-19-2013 11:25 PM
Top #6
Barry Payne
09-19-2013 11:25 PM
If you had a slight delay before sending the music to the speakers you might be able to have a servo respond to the beat. Filter out all but the bass and have the servo make a move in time with the beat coming out of the speakers. Like a robot tapping it's foot to the beat.

Having the program find the beat could be difficult in some music. It might be easier to have a library of songs where the programmer has the filters tuned for each song to block out all but the beat. Most digital music recordings now have title information included.
09-20-2013 01:55 AM
Top #7
Jeffin K Koottummel
09-20-2013 01:55 AM
Thanks for the reply,can anyone suggest a similar project working with servo motor & music ,when I search the net, I found a rain drop sculpture in Singapore airport,can anyone explain its working.
09-20-2013 04:17 AM
Top #8
James Garber
09-20-2013 04:17 AM
Jeffin, you need to go back in time for this project! I'd recommend using a resolver input to deal with the audio sine wave. Then program your initial logic like the gain stages and hi/lo pass filters in a tube amplifier. Then jump back to the present day, use a servo amp capable of position control, and scale the output of your wave filter to assign the value of the destination input to a MoveAbsolute function block. You could even filter an audio track to sense time signature, and vary the ramps and reference speed in accordance. Also, it might even be easier to translate the audio to MIDI. I've never interfaced MIDI style serial to a PLC, but I imagine it could be done cheaply with an Arduino as a translator.
I think I might need to play with this a little bit, thanks for the inspiration!
09-20-2013 07:12 AM
Top #9
Jeffin K Koottummel
09-20-2013 07:12 AM
James thanks for the reply,I also planned to do this with a mcu,but I have no idea which mcu is better for this,you mentioned the Arduino here,let me know is it a good for this project.I have no plan with PLC programming.If you are working with this please help me.
I didnt get your idea well,please explain it once again.
09-20-2013 09:30 AM
Top #10
Andrew Boniface
09-20-2013 09:30 AM
Do you mean to turn the sound signal to motion? As pointed out above, one is frequency limited to exteme bass, except for very special "motors" like speaker coils or a phonograph cutting stylus.

Do you want to turn a volume signal into motion? In this case the signal must be rectified (or squared) to yield a signal which does not swing negative. The signal should then be low pass filtered for the motor signal. In some cases the motor response itself will do this acceptably.

If working in software, from a digitized signal, one can take absolute value (full wave rectification) or square the signal, then apply a low pass filter. The digital signal must then be converted to analog. The D to A conversion is included in some hardware.
09-20-2013 12:11 PM
Top #11
Jeffin K Koottummel
09-20-2013 12:11 PM
hai sir,i got the idea,but i have one doubt is whats the difference b/w sound sg & volume sg.
& you mentioned here abt the digitized signal,my doubt why do i apply here the DAC conversion.
Suppose I draw a waveform(anyshape) ,then how can I turn a servo motor according to the waveform.
Reply to Thread