Motor Load Matching

Below is the performance curve of the v5 motor with a 100 rpm motor cartridge. I was wondering what is the voltage being sent to the motor that is producing this curve?

This needs to be specified to do motor load matching analysis on various gearboxes.

1 Like

That’s why I posted this question on the forum as there are people like @jpearman

I don’t know who created that curve, it’s probably theoretical, idk.

but the motor is not really being given a fixed voltage, the green and blue traces showing torque and current are flat because the voltage to the motor internally is being limited by the firmware. The maximum voltage we send to the motor is 12V, so it may be possible to recreate the curve by setting that in test code and then varying the load on the motor to take measurements, but even then, there will be other factors (temperature) that will have an impact on how the motor performs.


I got this graph from this website:

It looks like the motor is being given a fixed voltage from around 50 rpm to the end of the graph. Correspondingly, the load that the motor can handle starts to drop at that point. That portion of the graph looks a lot like some fixed voltage DC motor curves I’ve seen because the relationship between torque and speed is linear.


yes, I know the graph comes from the VEX website. What I mean’t is that I don’t know who inside VEX created it and whether it’s just a theoretical curve or if measurements were made on a motor (which I doubt). With a typical DC motor performance graphs generally look like this.

They are usually created using known parameters of the motor, stall torque, stall current and no load current. It’s possible to measure these parameters with a DC motor even if they are not known. But the V5 motor has firmware between the input values you give it and the drive to the actual motor, so creating that type of graph for a V5 motor is harder.


Short answer: There is no single voltage being used to generate this graph due to V5 Smart Motor firmware throttling motor performance to ensure it remains under a 2.5 A current limit.

Long answer: From above ~50 RPM until max RPM, the motor is running at a constant maximum voltage (that is software limited below nominal battery voltage to ensure that even near dead batteries can supply a consistent voltage to the motor).

Normally, as you stall a motor further (below ~50 RPM), the current draw and torque will continue to increase. Torque is directly proportional to electrical current draw in DC brushed motors, and power at any given point on the motor curve is torque x rotational speed. Thus, on an unclipped motor, you’d expect straight lines for torque and current curves, and a parabola for power, like on this CIM Motor graph.

What this means in reality, is that if you command a V5 Smart Motor to spin at 20 RPM, the actual voltage driving the motor can vary quite a lot depending on how much the motor is loaded.

If you let the motor free spin, it won’t take a lot of voltage to make the motor spin at 20 RPM.

But if you start loading the motor further, the firmware on the V5 Smart Motor will start sending a progressively higher voltage to the motor. With higher voltages, the motor can thus draw higher current, thus enabling it to output more torque, which finally enables it to try to overcome this higher load.

The V5 Smart Motor will do this automagically behind the scenes until it hits the 2.5 A current limit, at which point the V5 Smart Motor firmware will cap performance (at least until you hit the temperature cutoff, at which point it will lower output even further to prevent damage).

These firmware limits are the reason why the lines on the motor performance chart are perfectly linear below ~ 50 RPM.

Lastly, between ~50 RPM and free speed, the motor can throttle voltage below the maximum voltage based upon motor load, but there’s a lot less headway here. At these levels, the motor can only vary voltage until the motor current draw reaches the point on the current draw curve. So at a commanded speed of ~80 RPM, the V5 Smart Motor can draw anywhere between ~0.1 A and ~1.25 A.

Lastly, this graph was the result of us testing an assortment of V5 Smart Motors on our dynometer and averaging the results, hence the reason why the graphics are slightly noisy and not perfectly straight / parabolic above ~50 RPM.


I’m curious about this kind of scenario. So, because the motor can run at max voltage at and after about 50 rpm (and max power output is at about 60 rpm). If you give the motor a load of about 1.85 [Nm] (this value was estimated off the graph) and supply the motor with maximum voltage (and consequently maximum current output) –– will the motor naturally spin at 60 rpm or do you to set it to spin at 60 rpm? I assume doing the latter will still mean maxing out the voltage because the load on the motor is maxed out for the given speed and thus will need maximum voltage to perform optimally.

Another question –– what does running the motor at maximum power output mean in practice? Will the motor be running more efficiently since efficiency = mechanical output power / electrical input power and what will the benefits of that be in practice? In other words, is it really worthwhile to invest time getting the motor to run at a maximum power output with the corresponding load through a gearbox if the v5 firmware can interefere with it?

1 Like