The arducopter tuning guide.
This guide was written at the time of the release of Arducopter 2.8.1 FW. It is a compilation of everything I have gathered from the experts in the field of flight controller tuning. It will help give you an understanding of how to tune any rotor based flight controller, but its specific to Arducopter and this firmware release.
I will update this as necessary, or if you can convince me any of it is incorrect just post below and I’ll update this text.
There is a summary/quick reference at the bottom, so once you’ve read this rather rambling explanation you won’t have to again, other than to check details :D
Tuning your flight controller is essential for a perfect flight. Even a fully stock frame will fly better if you tune. The default params will be close, but your battery or motors might be performing differently, your air maybe ‘thinner’ compared to the developer that last published the default params, so you should tune.
What we are trying to achieve is control. We start to accomplish this by modifying the amount of P, I and D in our control loops. All three react to our stick inputs and the errors created by measurements from our sensors, and all three will help us fly better. If we do not have enough of any of the params the copter will not feel like it’s under control, it will wander about, not resist wind and be hard to fly. Too much of any of the params and the copter will seem to have a mind of its own. It will over-react. At best you will see it oscillate, very fast, not so fast or somewhere in between, depending on which parameter has been overclocked. At worst it will simple flip over on take-off or be very unpredictable in flight.
We need to find a balance. You can tune each param up individually, but one will have an effect on another. Therefore we must tune one, then another, then go back and see if we can retune the first one again, this is the balance.
And this is where we adjust those parameters – Mission planner config page:
Before you start:
So let’s start tuning
Everything you read below will be demonstrated in the tuning video further down, so you know what to look for, and at the bottom is a summary for quick reference. I think, however, it’s important to include as much information here as possible as anyone starting into this hobby will often find this process to be a bit of a black art.
I’ve found the quickest way to tune the arducopter is to start with rate_D, (but you simply can’t do this unless you can hold your beast in hand or in a jig as the copter won’t fly without any rate_P or I) so a more universal way to start, and actually a more informative way is to start with rate_P.
Since this is about learning for everyone, let’s do it that way. I’ll give a brief low-down on the ‘rate_D’ tune (or Dave C tune, as it’s become known) ‘ later. (BTW, that’s very flattering but I’m only relaying info from the real experts, but hey, if I’m gonna be famous, why not for doing something I love :)) Anyway....
STEP ONE - Tuning rate_P
STEP TWO – Tuning rate_D
NOTE: once you have found your rate_D you can try something interesting - you will have to hold onto your bird for this obviously. Set rate_P to zero, then crank up your rate_D as you just have. You will discover that these fast oscillations occur at pretty much the same level of rate_D, no matter what you have set rate_P to. This is why I think it’s more than possible to start tuning rate_D then move on to P. But that’s a shortcut, and this is not what this guide is all about.
STEP THREE – Tuning rate_P even more
Congratulations, your copter should be flying better than it ever has done before.
STEP FIVE - HEAD OUTSIDE!!!
For now set Stab_P at 3.0 - 3.5, closer to 3.0 if you have a high power machine, just to get you flying in stab mode. Then spend your time tuning rate_I and stab_P.
If you find your set up immediately too harsh, back off on rate_P and rate_D by 10% each, and try a lower i-term, if it's still too harsh do that again!
All that’s left is to watch the video below so you can see what I’m describing and head outside for fine tuning. Oh, and await part two of the guide and amendments from any discussions raised, then we will have a proper tuning guide that will be integrated into the wiki advanced tuning guide :D
Results for tuning in this video were
Oh and as promised, below is Part One of the Summary Guide. I aim this to be on one sheet of A4 and tell you everything you need know ‘in the field’.
Summary of what you are looking for
Too much rate P will oscillate quickly, and cause to copter to sound angry under stick input, bouncing rather than smoothly following your inputs. It will also shake more at full throttle and under hard turning.
Not enough you will not feel like you have full control. It will feel sloppy and be very easy to over correct with your inputs. It will feel delayed.
Perfect is where it feels locked in, stiff in the air, but not shaky. (although if I’m sport flying I turn it up a bit for maximum ‘wang’ and just tolerate the slight oscillations)
Too much rate_I will oscillate if you get high enough (a much slower oscillation than a rate_P shake). But quite a long while before it oscillates it will have other detrimental effects on flight performance, like a sluggish feeling or a tendancy to flip over on take-off. This is why I suggest tuning this in flight rather than in your hand/jig.
Not enough will cause the copter to get pushed by a constant wind, then it will fight back using just P. It will not hold a very firm angle during forward flight and will need more correction. This will not be as smooth as it could be in either case.
The perfect amount will cause the copter to lean gracefully into a constant wind, but also allow you to set a lean angle and stay there as you fly about. As you dial rate_i in pay close attention to the feel of the copter, you are not looking to create oscillations here at all, you should notice a strange ‘feel’ long before this point.
Too much rate_D will oscillate very fast, you will see a twitch forming then a fast buzzing oscillation
Not enough rate_D will simply mean you can’t dial enough rate_P and so you will suffer the effects of having rate_P too low.
A perfect rate_D will help fight the wind and follow your sticks as its fast to react, but will also allow you to reach a maximum rate_P level for you frame, thus giving better control.
Dont want to take up any more of Daves excellent tuning guide but I have just discovered why I coudnt get my copter stable with bigger props. Motor problem.
Ahh the principles of flight, always a good one to pickle your head.
If we had higher pressure above the wings then we would be pushed down. In theory we have faster moving air above, due to the greater distance to travel, therefore it's lower pressure (think stretched out). However this is not the whole story, in fact it's a bit of a myth, flat sheets at an angle create lift. Also, isnt the lower surface facing the on-coming air more? I know my tape peels off the lower surface fast!
A bit of food for thought, there is so much more our very own DIYdrones site
I gave this some thought the first time i got the tape out. I couldn't make my mind up, so tried it. I find it much easier to balance the prop from the top, I get to a state of none shaking quicker by adding bits of tape, they don't fly off and seem to work. I just had nothing but trouble underneath.
It may just have been the props i was using at the time, so i could be wrong. Why don't we try it? So get equal bits of tape each side of each prop, on top at the front, below at the rear!
Sometimes a step on the top surface will trigger the flow to separate and sometimes it will trigger it to turn into turbulent flow and stick much better to the surface. It depends on airfoil and Reynolds number. If you like to experiment with that stuff try the excellent free program XFLR5 which runs XFOIL.
Will certainly avoid a stiff neck sticking the tape on top.
Yep sorry my mistake and correct the higher pressure is generated at the bottom not the top. (long day at the grind yesterday) But even this happens with a flat sheet as it travels forward at an angle with the front edge up. The air is compressed on the underside and a slight vacuum is created on the top side. Although when I was a kid I use to think that the air pushing underneath lift the plate and I still think this has some relevance. After all, do the same in a medium that doesn't compress like water and it works as well.
I prefer the nail polish to tap becasue its easier to put on the right amount or wipe it off if its to much. I find tap is so fiddly.
Have to interject here: aerodynamic lift from a foil is based on the difference in the amount of time for air molecules to exert force. The faster flowing air over the top doesn't interact for as long and thus doesn't generate as much force as the slower flowing bottom air because of the time factor. Higher speed = less time to exert force. The air flows further in the same amount of time over the top of a foil therefore higher relative speed. So actually both top and bottom surfaces of a foil are crucial to lift as is the relationship between them (along with angle of attack, foil ratios, blah blah blah). Experiments have been done shredding the boundary layer on the leading edge of the top of a foil to add lift- it works. Keep the bottom flow smooth and laminar tho. Aerodynamic lift is not friction based drag lift from an angled surface into oncoming flow to create a side force. A propeller is a mixture of both concepts- it is carving off a constant spiral of air and throwing down almost the weight of a craft like ours in air to reactively push our crafts up.
Another note: I really think using higher cost but stiffer, stronger and more rigid, pre-balanced three blade props will make many other problems go away by removing vibrations. My airframe is smooth as silk, quiet and snappy in performance. Three blade props will vibrate at much higher resonant frequencies than a two blade of the same length.
Turbulence delays flow separation.
To the air moving around it, a flat plate is hardly "flat". Most real world flat plates have either a rounded, or a square LE. So the location of the flow stagnation point will shift up and down the LE depending on angle of attack. This modifies the geometry over which the flow must travel.
Further, a flat plate with a sharp LE (knife edge) will have a fixed stagnation point, but still create appreciable lift (compared to most rocks anyways). Why? Flat plates have a somewhat large flow separation bubble near the LE on top; flow readily reattaches to the wing due to high turbulence. This bubble of relatively stagnant air near the LE creates an invisible airfoil cross section, which the incoming flow must travel around. There is no separation on the bottom; so the flow on top travels farther.
Nice, good info all, can you tell I'm a biologist ;)
Good news is I've got a box of graupners arriving today, so I shouldn't need any tape or anything else Woohooo!
I'll try to balance my 3 bladers too - they've been sat around too long now!
Thanks Dave, I can vouch for tutorial.
Can you do another for loiter and stabilize?
Great work, it makes it easier to understand.
Thanks Barry, I'm in the process of a re-write, to make it easier to understand funnily enough, and include throttle hold and alt-hold, loiter etc. Trouble is I only have an hour a day at the moment to indulge in DIY so it's slow going, and the code just keeps on evolving (with no complaints from me ;))
Also, there are a number of changes due in 2.9 so I'll hold fire until then!
Oh and stab mode is easy.
Get rate set right, with stab_P set to 4 for a normal quad, 3 for a scary beast to begin with.
Take off in stab, get into a nice hover, then shove it hard forward then hard back into a hover, or left to right. Do this over a short a distance as you can, then do it again over 30 feet. If stab_P is too low it will feel a little sluggish in the forward/back, left/right transition.
If stab_P is to high it will wobble (quite slowly) like it's sitting on a jelly. It's a slower oscillation than too much rate_P. If you are not sure if its wobbling keep tuning it up (in SMALL increments) you will soon know what a stab_P oscillation looks like.
As always, if you can completely eliminate vibration from your APM you will be able to tune it higher without suffering oscillation. But to be honest I enjoy a softly tuned 'on rails' aerial machine just as much as an all out power-tuned acro beast. Sometimes ;)
I will try and monitor this thread also to take some of the weight off you...