I just pushed Arducopter 2.2 to the Mission planner. This version went through extensive testing by a brave group of flyers and with both HIL and SIL testing.
See this link for more:
If you run into any problems please let me know here. If you find a reproducible bug, please add it to the issues list.
If you run into Loiter issues, try adjusting LOITER_P. It's 2.0 right now which may or may not be to aggressive for your copter. Nav is no longer used in Loiter control, which should make tuning easier.
If you run into a circling issue, try lowering LOITER_I to 0 and see if it goes away. If not, check your compass declination. A negative error will produce CCW rotations, a positive error CW.
If you have issues with alt hold, try lowering your THROTTLE_P, it may be too high for higher thrust copters.
If you have wobbles and can't seem to get rid of them, there is a new term called STAB_D, which is a derivative term used to tune out the wobbles. You can increase it until they stop, but just like driving a cadillac, you loose some performance and handling. In the CLI "tune 16" in setup will let you control this in flight, and "tune" in test menu will let you see the value printed out interactively before flight. See the wiki for more detail.
Many testers gave me a thumbs up on the code, so if you have an issues please post the flash log from the copter. The tLog isn't that much help to me for debugging as it doesn't capture the needed values at high enough rates.
(Remember, if you'd rather pull the code from the repository and load it with Arduino, you must use the "relaxpatch" version of Arduino in our downloads section.)
I believe I found the simple mode error. It was a bug that was working OK until Tridge fixed it so it was declared properly. Then the bug became active. I made the Simple mode function internal variables static and this should fix it hopefully.
I updated alt hold to not use dampener for now until we get more testing. Some folks saw a latency induced oscillation which was pumped up by the D term.
I added the automatic throttle cruise or hold value as a compile time option for testers. This basically looks at your throttle and climb rate while in stabilize or acro and determines your optimal hover value. This means you can enter any autopilot mode and not have to worry about your throttle position. It should make alt hold more reliable if it works. This is off by default until we get good field tests back.
Update pushed to GIT.
Just some refinements. I added JLN's throttle curve mod for landing. Hopefully that's correctly implemented.
Made the landing delay from RTL user settable
removed the ADC gyro filter, I was doing a lot of testing and determined it wasn't worth it.
Enabled the auto-throttle control by default. Please test in the sim
Altitude no longer resets when flying in Loiter mode
Pitch and roll dampening is smoother now. try values up to .08 for very dampened flight.
Mavlink can now trigger auto-land
I'll push a hex when I hear some good news from HIL testers.
OK, 2.2b6 is on GIT. The Mission planner is going to be out of sync until the release code. until then you can use the APM_Config.h or the parameters list in the Mission planner.
STAB_D : This is the gyro accretion dampener. This can remove small wobbles during sharp changes in angle commands. Making this too high can have a negative effect in performance and add a memory effect that can cause temporary loss in control. The in flight tuning is ranged so you are just below that effect.
If you haven't noticed before the control loops are in two stages. The first is a PI stage that converts some sort of position or angle error into a desired rate. These generally do not need to be tuned. They are more of a user preference on how fast you want the copter to perform a motion.
The second stage is the actual PID loop that needs to be tuned for the copter. This converts the desired rate into a motor command of some sort. I added a D term based on Igor's recommendation to the PI's for each rate controller. These should show up soon in the mission planner for the release. I cannot give you a concrete answer for how to tune the D terms, because they each depend on their function such as alt hold or loiter, etc.
Still, the absolute most important term is always the Rate_P term for each loop. Start tuning here.
The default PIDs are in the what flies great for a stock jDrones/3DR Quad with the purple motors in X mode.
No worries :)
@ Rui – love the spreadsheet – are you going to post it somewhere so we can fill in our findings?
@ Chris – I’ve followed many multicopter threads before mainly lurking until now – for a community project we are very lucky, the people who post here are great, they really have made me feel part of it and want to give back. 1024 comments... I say great! We just have to make sure that when the final release is here we condense all the fabulous info contained within into some proper documentation – and by that i mean I’m happy to help.
@ Ellison – love the new interface idea, I am also trying to do a close in video of what happens to a stable quad when you mess with each of the ‘mystery’ parameters. IO know its just a careful balance between sloppily floating about and shaking like crazy and the balance inbetween. But if you were like me this was all a bit of a black art – until I actually got something i was really happy with. I understand it much more now, but with a slider like you suggest (slide right if airframe ‘sloppy’ by increase recovery from tipping over, slide left if airframe is shaky/ over corrects) etc etc. Some of igors tips could be incorporated – ‘slide this till airframe shakes – then back off 30%’, I’ll give it more thought. It’s quite a task that though!
Also agree on the rants and raves page
@ everyone, if you’ve not tried PIDT1 yet I hope this will demonstrate why I’m so pleased with it
Right, now to check all these new threads, i knew i shouldn’t have gone out last night J
thanks for the work you've done
I'm also trying the PIDT1, rain permitting
good idea of the helmet! you've got some ideas to protect your hands?
I tried leather motorbike gloves but i couldn't get a good enough grip. I can grab it very tightly very quickly with my bare hands and even at full throttle on 3 motors i can easily stop it turning over. Its only 5kg thrust to deal with max, and I'm a big boy! I do intend to get a pair of those gel-tipped builders gloves see if they are any better, just in case.
I've just noticed b6 is out - i think i have to give it a go. When I've had a play I'll return to PIDT1 and see how it all compares.
Thanks Dave C. It would make my life easier to have this kind of "parametric" tuning tool. I would implement it for myself, and hopefully it will be useful to others.
Is it a problem if the motor coil can move inside the motor? If I hold where the wires enter the housing I can move it side to side about 1.5 - 2mm. I'm wondering if this can affect it when ti is running? And how?
Well none of mine do that, except one that sounds like a bag of spanners falling down the stairs.
If it sounds ok and runs ok try seeing how much current it pulls compared to other motors at the same throttle, if its drawing more then its defo time to replace it
they are relatively new Dave and were like that when I got them. out of 9 motors I think three do this and a few do it very slightly. I'm wondering if the funny noise I'm getting is due to this. http://www.youtube.com/watch?v=vGw1Vdhw2M4
Either your bearing is shot (that should be audible) or try tightening the bell - depends on the motor you are using.
how is the mounting of the coil on a brush-less motor to the housing related to the bearings?
I bet he meant the whole bell moving on the shaft - cheap ($8 AN) motors need tightening regularly for some reason. I threw them away.