Go Down

Topic: How to reduce acoustic Noise cause by PWM Drive of DC motor  (Read 211 times) previous topic - next topic

hamisu-anguan


Any idea how to reduce acoustic noise generated by driving of DC motor with L293 with a PWM ?

Electrical noise can be reduce by ceramic capacitor, how about acoustic noise that we can hear. 


avr_fred

Ear plugs?

Seriously, some of the things you could do would be either enclose the motor (beware of the temperature rise!) or raise the carrier frequency in the inverter. If you cannot raise the frequency, you can use a randomized carrier frequency with dstribution over a ~400/500 Hz range which should significantly lower the audible signature.

ted


vinceherman

Or raise the PWM frequency outside of the human hearing range.

MarkT

Or raise the PWM frequency outside of the human hearing range.
Not easy with a darlington driver, they switch off too slowly(*).  A MOSFET H-bridge is what you
need for ultrasonic PWM.

(*) the L293D datasheet says its not suitable for more than 5kHz PWM frequency, for instance.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

hamisu-anguan

Thanks for all the comments.

I am using ATTiny85 with 1 MHz default frequency without prescaler setting. So the default frequency after divide 256 tick shall be 1MHz/256 = 3.9KHz.  So, If I adjust the frequency by Timer/Counter method to higher than 5kHz by bootloaded with 8MHz. The frequency can easily more than 20KHz hearing range.

So, I need to change to MOSFET driver ?  Is there L293D in build in MOSFET as I seen many brand L293 datasheet show it is build with Bipolar.  or shall I use something like LM18298 ?

Those LM18298 seem to be higher spec than I need.  I just need max 0.8A for each DC motor。   

polymorph

I would not use an L293D for a 0.8A motor, it is rated at only 600mA. I'd go for double that current rating, so 2A for the LM18298 seems about right.

Why not just use the A4988? The IC is rated for 2A with heat sink and active cooling, Pololu claims no problems with 1A with no heatsink or active cooling. I automatically add a heat sink, the simplest are those stick-on RAM heat sinks.

Pololu has the A4988 on a board with all you need including current set potentiometer for just $6 USD each. Just feed it Pulse and Direction signal.
https://www.pololu.com/product/1182
Steve Greenfield AE7HD
Drawing Schematics: tinyurl.com/23mo9pf - tinyurl.com/o97ysyx - https://tinyurl.com/Technote8
Multitasking: forum.arduino.cc/index.php?topic=223286.0
gammon.com.au/blink - gammon.com.au/serial - gammon.com.au/interrupts

polymorph

Hm. I just realized you probably want to control the PWM percentage to a DC brushed with the Arduino.
Steve Greenfield AE7HD
Drawing Schematics: tinyurl.com/23mo9pf - tinyurl.com/o97ysyx - https://tinyurl.com/Technote8
Multitasking: forum.arduino.cc/index.php?topic=223286.0
gammon.com.au/blink - gammon.com.au/serial - gammon.com.au/interrupts

MarkT

Why not just use the A4988? The IC is rated for 2A with heat sink and active cooling, Pololu claims no problems with 1A with no heatsink or active cooling. I automatically add a heat sink, the simplest are those stick-on RAM heat sinks.
The A4988 is only for stepper motors, not DC motors.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

MarkT

Another approach is to modulate the PWM frequency to play a tune, making a feature out of a problem!
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

Go Up