Finding the right driver for my motors

Hi there,

I'd like to hear some advice on choosing the right motor driver for my motors. My situation is the following:

I would like to drive

  • 3x 24V 2.1A 30W DC motors
  • 3x 12V 0.9A 11W DC motors
  • 2x 12V 0.2A brake solenoids

All of these are part of a robot arm I'm working on.
Up until now I've been using multiple L298 dual H-Bridge drivers. But these are rather antique (as I've heard) and can't drive the 24V motors.

I control the drivers using an Arduino Mega, which I will perhaps switch out as well but that's for another thread.

So which one should I use instead? I found two more-or-less suitable ones on Polulu.com:
MAX14870
TB9051FTG

The MAX14870 has a max. continous current value of 1.7A per channel without additional cooling. Could I reach the 2.1A I need by adding heat sinks and a fan? The datasheet wouldn't really tell me :frowning: but I might not have understood it properly as english isn't my mother language.

The TB9051FTG has the needed characteristics but is twice as expensive. Should I use the MAX for the small motors and the brakes and the TB for the big motors?

I am also having problems with the motors giving off annoying sounds due to the PWM making them vibrate. I "fixed" it by increasing the frequency of the PWM-frequency above audible values. This in turn made the motors run alot worse. The power consumption decreased and so did torque and speed. Was this an issue of the L298 not being able to turn on and off fast enough or are the coils of the motors the troublemaker here?
I then put capacitors in parallel which made it a lot better but it's not perfect (still some sounds) and I would like to ditch them if they're not ultimately necessary.

Are there motor drivers that output a direct analog voltage? And are they affordable?

I know this is a lot to answer and I'm really grateful for all answers even if they cover only part of my questions.

Regards,
Smagel

I would choose a driver that can work at your required voltage and which will handle at least 20% more current than the stall current for your motor. The stall current can be 10 or 20 times the normal running current. If the driver is protected against overloads and short circuits you could probably get away with a lower max current, but I suggest at least 100% more than the normal running current. It is never a good idea to run electronic components at their limit.

Also choose a driver that uses MOSFETs as they are much more efficient.

After that your attitude to price can be applied.

...R

The most critical information is the stall current, so check the motor data sheet.

Thank you for your lightning-quick responses! That already helped me a lot!

But I'm still a little confused here :confused: :

If the driver is protected against overloads and short circuits you could probably get away with a lower max current, but I suggest at least 100% more than the normal running current

So let's pretend I have a driver that has an overload protection and can handle my voltage. The motor draws 2.1A max while unobstructedly turning. Which of the current ratings of the driver need to be 4.2A (2.1A + 100%) now? The current it can continuously handle, the peak current or the current that makes the overload protection trigger?

Thank you very much :slight_smile:

The motor draws 2.1A max while unobstructedly turning.

The driver needs to easily support the stall current, possibly as high as 20 Amps for that motor. Neither of the drivers linked in the OP can do that.

Smagel:
So let's pretend I have a driver that has an overload protection and can handle my voltage. The motor draws 2.1A max while unobstructedly turning. Which of the current ratings of the driver need to be 4.2A (2.1A + 100%) now?

I would choose a driver with a continuous output of about twice the max running current. The stall current will be much higher and if the motor is stalled the driver would cut out and protect itself.

HOWEVER (life is never simple) if the motor must start with a heavy load it may draw close to the stall current for a brief period at startup and a driver that would cut out would cause problems.

Another thing to keep in mind is that many motors cannot withstand their stall current for more than few seconds so a driver that acts as a cut-out can also protect the motor.

...R

If the driver cannot handle the stall current, it will burn out.

MarkT:
If the driver cannot handle the stall current, it will burn out.

Not if the driver has short circuit protection.

...R

It is really a bad idea and a waste of money to buy a motor driver that cannot easily handle the stall current. Fuses, not motor drivers, are the preferred way of protecting electronics and motors from overcurrent conditions.

It is also a really bad idea to run a motor at stall or near stall conditions, unless it is specifically designed for that.

Robin2:
Not if the driver has short circuit protection.

...R

Even worse, the driver cuts out, resets, cuts out, resets, cuts out, resets, cuts out, resets, .....

Motor supplies and drivers need to handle stall currents or at least overload gracefully (constant current,
not foldback).

MarkT:
Even worse, the driver cuts out, resets, cuts out, resets, cuts out, resets, cuts out, resets, .....

I believe I covered that situation in Reply #5

...R

Ok, I think I know now how to pick out the right driver. I'll learn about protecting my power supply and maybe put a fuse between motor and driver as well to prevent situations where the overcurrent protection indefinitely kicks in and resests.

Big thanks to all of you!

You've really helped me out on my problem here! :slight_smile: