Still confused about VNH5019 + 25D HP 12V Motor at low driving voltages

Hi
So I am assuming that there is just some fundamental fact about how motors and drivers work that I am misunderstanding.

About 2 years back, I started a robot project, and I have since then purchased 6 25D HP 12V 75:1 motors with 3 dual VNH5019 controllers. I steer each of the dual motor controllers with an Arduino Nano Every. All of this is quite quite the investment. As my project nears completion, the issue I have is getting more and more worrisome.

My issue is that I do not seem capable of running the motors at low RPMs, and by low I mean less than a quarter of the speed which they run on when driving them with 12V. if I try to drive them slower, they don’t start and occasionally stall. All of the below measurements are done with a 12V supply voltage.

This is what I have seen:
If I set the PWM to 1/4 duty cycle or above, all is fine and the motor runs. The speed vs voltage curve is highly nonlinear, though.

If I set the duty cycle to 1/8, then the motor just buzzes at what I assume to be the PWM frequency of the Arduino. If I give the motor a bit of a kick, then it starts spinning. Once started, if I add some physical resistance, then the motor will stall.

As an experiment, I measured the voltage over the motor using a regular voltage meter while driving it at 1/8 duty cycle. What I noticed was weird, to me. When the motor stalls, the voltage drops down to about 0.9V. But if I give it a kick and the motor starts spinning and the voltage goes up to about 3V. If I apply some resistance so the motor slows, I see that the voltage drops significantly. If I stall the motor, it drops down again to 0.9V.

My assumption was that the motor would draw current as I applied more resistance to keep moving. And with the VH5019 rated at 30A, and my input voltage not fluctuating more than a few tens of a millivolt, I don’t see how there could be a current limitation on the supply side at play here.

So what is going on here? With all of these massive amounts of current available, why does the motor simply not run and why does the VNH5019 allow the voltage to drop so significantly?

Here is my original question on the same topic: Am I missing something obvious regarding low duty cycles with this setup?

Hello.

I suspect that the “fundamental fact” about motor operation that you are missing is that the minimum achievable speed of a brushed DC motor like your 25D gearmotor is limited by its cogging torque, which depends on the strength of the motor’s permanent magnets. The high-power (HP) 25D motors have particularly strong magnets for theirs size, so the minimum starting torque (and by extension the minimum voltage or duty cycle) to get them moving from rest is relatively high.

There is always going to be some minimum speed where a motor’s cogging torque will make it difficult to operate, but here are a few options for extending the range of accessible speeds. Usually after overcoming the starting torque you should be able to slow the motor down to slower speeds, so you could pulse your motor at a higher duty cycle for a little while to get it going then slow down from there. This is basically doing the same thing as when you physically give the motor a kick. A more complete solution is to implement closed-loop speed control, which you could do with feedback from a tachometer or encoder. If it is acceptable to reduce the top speed or maximum torque in your application, switching to a higher ratio gearmotor or a lower-power motor might also be options.

As far as your observations about the voltage you are measuring and its nonlinearity, those are probably caused by a combination of the back-EMF from the motor affecting your readings once the motor gets moving and the drive/coast functionality of the VNH5019 driver as discussed in more detail in this thread.

- Patrick

Hi.
Thanks. This was a clear answer.

I now see that for my application, these motors are in fact not what I really should have had. What I really need is a high-diameter low-KV brushless DC motor with a low gear reduction. But that will probably be prohibitively expensive… Oh well.

1 Like