AC_InputManager_Heli: collective transition ramp
Adds 0.5s ramp on the collective output when switching to (and between) manual modes. Also involves a rework of the pre-existent stabilize mode to acro mode collective transitioning
Is it too late or would it be possible to make the ramp time configurable? If its still taking collective changes at the same speed as input and just sorta sliding from what the output would be in one mode to what it would be in another mode it seems like a peram to adjust and tune this would be nice. If the input is locked during transition than I guess this would not matter and be safer to just make it static at what ever has been tested as safe.
Im trying to learn to read more of this in code but not there yet at all.
Either way, I'm super stoked for this!
Hi @MattKear, the issue is the "jump" in collective output when switching from non manual to manual throttle modes. Currently the switching happens instantaneously without any blending, things get even worst if the pilot has the collective in non centered position and switch to stabilize or acro. Depending on the parametrization of the vertical speed controller the abrupt change in collective output can have unpleasant outcomes. Overall I think it is a good approach to have blending when there is a mode switch.
I'm sure other aircraft types would benefit from this. I'm honestly shocked this isn't already part of ardupilot for all vehicles.
Here is a video from The Mach Initiative from months ago where they had a crash on a fixed wing plane they suspect is caused by the same mode transition problems that we have on heli.
TIME STAMP LINK: https://youtu.be/Fun1ahjo1bM?t=461
That said, I'm very eager to get this for heli on the test branch so I can try it out.
I'm sure other aircraft types would benefit from this. I'm honestly shocked this isn't already part of ardupilot for all vehicles.
Smooth remapping is pretty hard as it needs to work across multiple subsystems and requires calculating required initial input to match previous mode output which is pretty hard when changing between direct, rate and value control modes.
Here is a video from The Mach Initiative from months ago where they had a crash on a fixed wing plane they suspect is caused by the same mode transition problems that we have on heli.
The issue is caused by poor performance of unturned control loops and attempted stall recovery in acro with unturned controller. IIRC recommend setup process involves configuring parameters and doing AUTOTUNE as soon as possible after having configured airspeed sensor if present or if not, setting all throttle related parameters. N or testing other modes.
Heli acro<->stabilize transition is pretty much the only place where you have simple rescaling of an axis between modes. Even recommend multirotor setup has hover throttle at ~50% stick in acro.
@LupusTheCanine Just to clarify, this PR aims at fixing the switch between rate controlled collective outputs and manual outputs. It is a blending between the last output of previous flight mode and the current mode output. So your statement about helis is not correct as it's not doing a rescaling, again, it's doing a blending of the outputs (even for case of switching between manual modes).
My somewhat general comment is that I am not a big fan of re-implementing functionality like low-pass filters in our own way in heli
Hi @MattKear I have removed that part and corrected the missing whitespaces, thanks