I'm trying create a simple 4wd robot controlled from web, I'm using Arduino uno and an L289 from itead studio, and I've notice a lot of noise and motors are running under 150 speed with pwd. I've search for ways to reduce or eliminate this noise, I'm already using an ceramic capacitor without notice any reduce of noise. However when I've try a electronic with much more capacity I've notice some noise reduce, but still have some noise.
There is a way to compete remove this noise at low speed with pwm?
Your video is rather confusing as far as sound is concerned.
If you are referring to the high-pitched whine, that is caused by the frequency of the PWM. You can change the frequency by changing the value in the TCCRxx register which controls the relevant hardware Timer. Different Timers are used depending on which pins you use for PWM. Have a look at the relevant Atmega datasheet.
You may need to experiment to see if it is better to increase of decrease the frequency.
Putting that large electrolytic capacitor across the motor will risk destroying the motor
driver and blowing up the capacitor - its acting as a dead-short to the driver and will be reverse
biased when the motor changes direction (and then go BANG!).
You can add a few nF of ceramic capacitance (at the motor terminals) to reduce RFI, but never
any more than that.
Which PWM pins are you using? - only pins 5 and 6 use timer0 which is used for micros(), millis()
and delay().