I’ve been flying multirotors for 5 years now and have done tuning with FPV racers to larger craft with 28’’ props running custom firmware.So I’m not that much of a stranger to tuning, but recently I’ve been working with the ArduPilot software for which I have the least experience.
The PID tuning doesn’t make much sense to me neither from the Mission Planner or QGC perspective. I’m hoping someone here is able to at least explain to me about which are the key components in tuning with ArduCopter.
I did test the autotune, but I don’t really think it accomplished its mission very well.
Previously the tune seemed very loose as throttle inputs would have caused the craft to wobble in either pitch or roll or both axes. After autotune, I’d say the Acro flight mode seems to work relatively well, but the rates are super low, so movement is smooth, but slow- making it hard to try some harder manouvers to test the tune. Yet Stabilize is erratic and twitchy and Loiter seems somewhere inbetween, being a little softer than Stabilize, but nowhere near as smooth as Acro.
How does ArduCopter even achieve different behavior for these flight modes regarding the tuning.
This is what my tune looks like right now. I’m running a roughly 3.5kg 18’’ prop X-quad with 520kv motors.
-
In BetaFlight or other race quad softwares, we have rates separately as the speed at which the quad will make it’s desired state change (deg/s) for each axis. In ArduCopter the phrase Rate seems to have a different meaning as it’s paired with PID somehow. So you can adjust Rate Roll PID. Which makes no sense to me. Would love to understand this.
-
In the picture posted above, you can see the Stabilize Roll / Pitch / Yaw (Error to Rate) + Position XY(Dist to Speed) - Can anyone explain what is this? Are these just P gains per axis? If that’s so where are the I and D terms for this? What does the ACCEL MA field stand for, I’ve never seen that before, usually it’s just the P gains which I always assumed are like rates in BetaFlight or other FPV FC softwares. And the other new field for me is the Position XY(Dist to Speed). Where can I get an understanding about what this does or why it’s there?
-
The middle section seems to be the most usual looking, yet there are the field of IMAX and FILT, which I don’t understand either.
What is IMAX? - The maximum I gain? Why is that necessary?
What is FILT? - A filter? Which type? What’s the unit of the value I should enter? Doesn’t seem to be a field to enter Hz values? -
What is Velocity XY (Vel to Accel) - Totally foreign object to me regarding PID control loops. Again would love to understand why it’s there and what is its purpose.
EDIT: I’m quite perplexed as to why there’s this notion of keeping kP and kI values locked together in Arducopter. In the BetaFlight type PID controller world, the kP and kI are very different and not linked to each others values. What does ArduCopter do different that it seems almost to be a rule that you should follow.
Thanks in advance!