[Tutorial] Obtaining motor and propeller efficiency for UAVs, quads and robots.

Hello fellow DIYer. Last February, my collegue and I posted a survey here asking if you'd be interested in a dynamometer for drone motors and propellers. We are now releasing the production version of the dynamometer!
For the release, here is a quick introduction to motor and propeller testing, as summarized in the video above.

Why testing your motors and propellers?

You must first ask yourself, what are your, or your end user's needs? This question is important, as it will help you know what parameters to optimize for.
  • Do you want to fly longer to film uninterrupted for longer periods?
  • Do you want to carry a larger payload?
  • Do you need more thrust and power to go faster, or to improve handling in strong winds?
  • Do you have overheating problems, and your application requires you to minimize failure rate?
The final choice of power system depends not only on the airframe and payload, but also on your application.

What parameters should I measure?

The motor

NTM propdrive 35-30 brushless motor and Quantum 13-4 carbon fibre prop.

To fully characterize a motor, you need to measure the following parameters.
  • Voltage (V)
  • Current (A)
  • Throttle input (%)
  • Motor load or torque (Nm)
  • Speed (RPM)
The RCbenchmark software automatically calculates the following parameters for you:

  • Mechanical power (Watts) = Torque (Nm) * Speed (rad/s)
  • Electrical power (Watts) = Voltage (V) * Current (A)
  • Motor Efficiency = Mechanical power / Electrical power

The output speed is function of the throttle, in %, and of the load (torque in Nm). If you want to completely characterize a motor, you will need to test it with multiple input voltages and different loads. The throttle is changed with the software, and the load is changed with the type and size of propeller.

The propeller

For extracting useful propeller data, you need to measure the following parameters:
  • Speed (RPM)
  • Torque
  • Thrust
The RCbenchmark software calculates the following parameters for you:
  • Mechanical power (Watts) = Torque (Nm) * Speed (rad/s) ← same as the motor
  • Propeller efficiency (g/Watts) =  Thrust (g) / Mechanical power (Watts)

Notice that the mechanical power is the same for the motor and propeller. That is because all the motor's mechanical power output goes into the propeller, since it is directly coupled to the motor's shaft.

The overall system

The overall performance of the system depends on a well balanced combination of motor and propeller. Your system will be very inefficient if these two parts don't match well together. Because these two parts have a common link (the shaft), the overall system efficiency is calculated as:
  • System efficiency (g/Watts) = Propeller efficiency (g/Watts) * Motor Efficiency
Where the system efficiency is in grams per watts of electrical power. Changing the motor, propeller, or even switching to another ESC will all contribute to changing this calculated system efficiency.

Moreover, the efficiency value will only be valid for a specific command input and mechanical load. In practice, this means that you will test you motor over a range of command inputs, and with multiple propellers to vary the mechanical load.

How to measure those parameters?

In summary, you need to simultaneously record voltage, current, torque, thrust, and motor speed, while at the same time control the motor's throttle. By combining these readings you can extract the electrical and mechanical power, which in turn will allow you to get the efficiency values.

The RCbenchmark motor test tool was built to reduce the time and cost associated with building a custom test rig. The tool is capable of measuring all the necessary parameters while controlling the ESC, and recording the data in a CSV file for analysis.

Dynamometer Thrust load cell

Test procedure for static tests

Dynamometer test of a brushless motor and a propeller

For now, we will only cover static tests (we won't talk about dynamic tests involving angular acceleration, estimating stall torque, etc...). Before starting your tests, we recommend:

  • Installing your propeller in pusher configuration, to reduce ground effects with the motor mounting plate
  • Have a reasonable distance between the propeller and other objects, again, to avoid ground effects
  • Having all safety measures in place to protect the people in the same room
  • Configuring your dynamometer to automatically cutoff the system should any parameter exceed its safe limit
A simple but effective test consists of ramping up the throttle in small steps, and recording a sample after every step. Before taking the sample after each step, we allow the system to stabilize for few seconds.

In the video above, we manually varied the throttle from 0 to 100% in 10 steps. This procedure could also have been performed using the RCbenchmark's automatic test or scripting feature, which we will cover in another tutorial.

The results obtained are shown in this CSV file.

How to use the efficiency results?

You can summarize a lot of data points using any plotting software. Here is an example obtained using the CSV file linked above:

plot trust and propeller efficiency

You can than compare this plot with other plots generated using the same method. Try comparing two plots, all with the same parameters identical expect one element changed, for example switching propeller.

What next?

We want to publish more tutorials, with more details about certain aspects, such as automatic tests, installation, automatic kV testing and pole counting, motor theory, dynamic tests, scripting, etc. Anything in particular you would like to learn about?

If you are interested by our dynamometer, have a look here. We offer 15% off until November 15 for DIYdrones readers using the code "DIY15".

It is an exciting time for my collegue and I, as this release is the results of almost a year of work! Please comment below, I will do my best to answer your questions!

Views: 2583

Comment by Brian Greeson on November 5, 2015 at 11:14am

Great work guys!

Comment by Gabriel Sölvi Windels on November 5, 2015 at 11:19am

Excellent. I find it distasteful as hell when I see Manufacturers not linking any efficiency info, or even thrust measurements whatsoever, It's as if they expect someone to buy a motor from looking at a picture of it.

Comment by Charles Blouin on November 5, 2015 at 12:33pm


@Gabriel. I agree, buying motors is frustrating. I guess that is why there is so much work put on motor finish and anodizing!

Comment by Chris Card on November 5, 2015 at 12:45pm

That's really nice!  I think I know what Santa is getting me this year  :O

I must say that using a watts-up meter & a digital fish weigh scale to measure prop thrust for my airplanes gets 'old' pretty quickly.. Not mention that my data logger is a pencil & paper.

Your 'dyno' looks like it would would also be excellent for characterizing/comparing the effect of different ESC timing advance and output PWM frequencies with a given motor, too.

I followed your link and had a quick look for the general specs...

So, It measures..  up to 5Kg thrust , 2kg torque , accepts up to 35 volts maximum input.

What is the maximum current ?  Is it using a hall-effect current sensor?

I noticed some other unused connectors . What might they be for?


Comment by Chris Card on November 5, 2015 at 12:54pm

Oh just found it ...40 Amps current limit.

Comment by Charles Blouin on November 5, 2015 at 1:11pm

@Chris: The specs are:

  • Voltage (0-35 V)
  • Current (0-40 A)
  • Thrust (±3 kg)
  • Torque (±1.5 Nm)
  • Rotations per minute (up to 190000 erpm)
  • Motor winding resistance (0.003 to 240 Ohm)
  • Accelerometer on PCB

You can also look at the datasheet and installation manual for more info.

May I ask where you read 5kg for the thrust? We will have to clarify that part, the thrust load cell is 5kg, but we limit it to 3kg in the software for safety and since there may be a torque applied on it.

The current is measured with precision resistances (0.00075 Ohms), precise at 0.5%, rounded to 1% in the datasheet due to the ADC precision. The power also actually has a very good time precision, as it is calculated on the board by a dedicated power chip.

There are a few other connectors:

2 plugs are a precision ohmmeter to measure the motors' internal resistance, great to check a motor for shorts, and for those rewinding motors. Most multimeters are not precise enough for measuring such low resistance.

There are also three plugs for temperature measurements (1wire interface) and 3 I2C plugs. We plan to offer more sensors and functionalities in the future. Those are also great for hackers, as our software is open source!

Finally, you can also control up to three servos. It works as a servo tester, but it could also be useful for other hacks such as testing small helicopter swash plates and blades.


Comment by Chris Card on November 5, 2015 at 1:45pm


My bad..I saw in the assembly manual where it made reference to load cells and I made an assumption..


Comment by Charles Blouin on November 5, 2015 at 1:48pm

@No, thanks for the feedback, we are always trying to improve our documentation!

Comment by Patrick Poirier on November 5, 2015 at 1:57pm

Great Job,

It would be great if every motor and propeler manufacturers make use of this , so we can get real numbers...

Keep on the good job... Lâchez-pas !!

Comment by BacklashRC on November 5, 2015 at 2:13pm

This is really excellent work Charles Blouin.  I share the frustration that others have expressed concerning manufacturers and their poorly published tech specs.

My only wish is that you would make a future revision that has higher power handling capabilities.  I have many motors and almost all of them draw 42 amps or more at full throttle. (Several draw as much as 80 amps.)

With that said, your device would still be very useful as it is for characterizing these larger motors at "cruise" speeds.  Again, excellent work!


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service