Hey guys, just kicking around a stability improvement idea in my head.  Thought I'd put it out to the group and get some opinions before I got whole hog on it.

A little background:
Some of you may be familiar with AeroQuad code.  I feel from a flying standpoint, they are much better at maintaining stability.  I think some of that has to do with the in flight levelling that they do.  Essentially, they do sensor calibration, on take off.  Assuming that all props are balanced, the craft will go up level, and the calibration will zeroes the accelerometer readings.
My proposal:
What I was thinking was to take this one step further.  Rather than just zeroing out the accelerometer readings on take off, I would run a motor calibration routine.  Since we all may have different motors and frame weights and sizes, and even within the same equipment there may be variance, the calibration routine would use the accelerometers to figure out the weight and power of the motors, and apply this to the stability routines.
The calibration would basically something like this:
1- Place the drone on level ground.
2- Start the motors at the lowest level, and sample the accelerometers.
3- Increase the motor speed, which sampling the accelerometers, and record the readings and pwm to the motors. (making sure that we don't get too high that we take off)
The result is that we now have a power to weight curve, and we now know how much motor power will result in how much force, as well as which motors are stronger than another.  We can now apply a correction vector to account for any motor or frame imbalance to the DCM matrix.  We can also predict what angle the drone will be when we apply roll and pitch, because we know how much force each motor can apply, and the weight of the drone.
What do you folks think?  Will this work, and increase stability and possibly improve the leans problem, which is due to no knowing the difference between inertial acceleration due to motor force, and gravity?(since we now know what force the motor applies for a particular pwm value)

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • Are you trying to assess the vibration for some sort of nulling so the accelerometer readings don't need to be filtered so much before use?

    Vibration aside, if the frame doesn't physically move the the accelerometer readings will be constant.

    Strain sensors on the arms or some other way of measuring the force applied by the motors to the frame would be required to measure motor mechanical output with a stationary frame.

This reply was deleted.


Liam left a comment on Agricultural UAVs
I'm Liam from T-MOTOR. I would like to reach out to see if there is any possibility for us to work together.
We are a propulsion system manufacturer who offers motors, propellers and ESCs for all kinds of drone applications which vary from secur…"
Jun 30
Richard Cox left a comment on Australia
"Anyone in the DIYDRONES Australian subgroup based in Alice Springs, NT?
I am experimenting with Ardupilot (standard Arduplane), Pixhawk 4 FC in a 4-ch
RC "AXN Floater Jet" foamy plane..."
Jun 29
Omar Sykes left a comment on Australia
"Hi everyone, I am looking for someone who is good at drone building, repair and software in Adelaide. Please give me a call on 0477 319 219."
Jun 29