R_Lefebvre
Arducopter Developer
Hi guys, I'm one of the developers, and am quite interested in what you're talking about with "smoothness" and performance with heavier machines. I'd be interested in seeing any kinda of info, descriptions, and logs that you can give me. I rebuilt the Acro mode so that it actually works well enough, but now I'd like to work on improving the "feel" of the controller.
Are you guys talking about flying in Stab mode, or Acro mode?
One of the things I'm actually working on right now is an angular acceleration rate damper. Basically, I think part of the problem with bigger machines, is that you need a really high PID settings to get it to hold position, particularly with the heavy camera hanging below. But the way things are now, those really high PID settings result in excessively "sharp" movements, which the copter has trouble controlling.
So what I'm doing is inserting some code that basically goes between the pilot's inputs, and the actual machine's target angle. And it dampens the rate at which you can accelerate or decelerate the roll-rate. It should eliminate any overshoot, and allow you to run higher PIDs so that actual position hold is better. My only concern is that some might think it feels "sluggish". I guess we'll have to wait and see. To be clear, we already have a maximum roll rate, which defaults to 180 deg/second. But now I'm working on the rate of change of the rate. A common setting might be 360 deg/sec/sec. So if you were hovering level, and then whack the stick over to 45° as hard as you can, it would take 1/2 second to accelerate to 180 deg/second, and then would smoothly take 1/2 second to decelerate back to 0 deg/sec, hitting the target angle of 45° perfectly.
One thing that could help me understand what you're seeing/feeling, is if you run the higher PID settings, and you're really smooth on the sticks, does the overshoot still happen?
Another thing you can do right now, is look at your Stab P setting. In Stabilize mode, this one is very important. You could try lowering it or increasing it. You could try going down to 2. But if you go above 5, be VERY careful with it with your heavier machines.
In the past, I have used very low settings like 2 on my large helicopter to make it's movements much more gentle. But this does affect it's ability to hold an angle. And the heli is much better balanced than a heavy Octo with a giant camera hanging underneath.
And I would like to warn you guys about "Autotune". This works very well on small sporty quads. But... I'm not even sure you should try it on your larger machines. There are a number of people with larger machines, particularly if you have large props, low kV pancake motors, high voltage (6S) and ESPECIALLY if you have Simonk firmware on the ESC (this is the biggest thing actually!). The Autotune procedure can actually jerk the machine so hard, that the ESC loses sync and the motor stalls out. This has caused a few crashes.
Now... it's not that Autotune actually *causes* the failure. Even if you don't run it, your machine might be vulnerable to it but you just don't know it yet. For example, it could happen just from you jerking the stick around too hard. It's just that the auto-tune automatically pushes things really hard, so it often finds the problem first, and then people blame auto-tune. But as I said, the problem always existed in these people's setups, they just never hit it yet.
AT was thoroughly tested in the beta releases, but beta testers tend to be running small sporty quads.
And if you're not running SimonK firmware, the risk is very low. In fact, I don't know if we've had any reports of this happening with non-SimonK firmware.
Are you guys talking about flying in Stab mode, or Acro mode?
One of the things I'm actually working on right now is an angular acceleration rate damper. Basically, I think part of the problem with bigger machines, is that you need a really high PID settings to get it to hold position, particularly with the heavy camera hanging below. But the way things are now, those really high PID settings result in excessively "sharp" movements, which the copter has trouble controlling.
So what I'm doing is inserting some code that basically goes between the pilot's inputs, and the actual machine's target angle. And it dampens the rate at which you can accelerate or decelerate the roll-rate. It should eliminate any overshoot, and allow you to run higher PIDs so that actual position hold is better. My only concern is that some might think it feels "sluggish". I guess we'll have to wait and see. To be clear, we already have a maximum roll rate, which defaults to 180 deg/second. But now I'm working on the rate of change of the rate. A common setting might be 360 deg/sec/sec. So if you were hovering level, and then whack the stick over to 45° as hard as you can, it would take 1/2 second to accelerate to 180 deg/second, and then would smoothly take 1/2 second to decelerate back to 0 deg/sec, hitting the target angle of 45° perfectly.
One thing that could help me understand what you're seeing/feeling, is if you run the higher PID settings, and you're really smooth on the sticks, does the overshoot still happen?
Another thing you can do right now, is look at your Stab P setting. In Stabilize mode, this one is very important. You could try lowering it or increasing it. You could try going down to 2. But if you go above 5, be VERY careful with it with your heavier machines.
In the past, I have used very low settings like 2 on my large helicopter to make it's movements much more gentle. But this does affect it's ability to hold an angle. And the heli is much better balanced than a heavy Octo with a giant camera hanging underneath.
And I would like to warn you guys about "Autotune". This works very well on small sporty quads. But... I'm not even sure you should try it on your larger machines. There are a number of people with larger machines, particularly if you have large props, low kV pancake motors, high voltage (6S) and ESPECIALLY if you have Simonk firmware on the ESC (this is the biggest thing actually!). The Autotune procedure can actually jerk the machine so hard, that the ESC loses sync and the motor stalls out. This has caused a few crashes.
Now... it's not that Autotune actually *causes* the failure. Even if you don't run it, your machine might be vulnerable to it but you just don't know it yet. For example, it could happen just from you jerking the stick around too hard. It's just that the auto-tune automatically pushes things really hard, so it often finds the problem first, and then people blame auto-tune. But as I said, the problem always existed in these people's setups, they just never hit it yet.
AT was thoroughly tested in the beta releases, but beta testers tend to be running small sporty quads.
And if you're not running SimonK firmware, the risk is very low. In fact, I don't know if we've had any reports of this happening with non-SimonK firmware.