jdl

  • ***
  • 131
AlwaysStabilizeWhenArmed (ASWA) on FixedWings
« on: October 15, 2019, 04:34:54 pm »
AlwaysStabilizeWhenArmed is especially useful on racing or freestyle multirotors that are usually flown in Rate or Acro+.

However, it can be successfully used on a FixedWing!

When setting up the Revo FC for a plane, the "Zero the integral when throttle is low" setting in Stabilization Tab is usually left checked (ON). This helps to avoid stabilization PIDs windup before take-off when the take-off is not performed immediately after arming.

However, just leaving "Zero the integral when throttle is low" ON during flight gives poor results when gliding in stabilized modes with zero throttle (planes with folding props, for example).

Here comes AlwaysStabilizeWhenArmed. If properly setup for a plane, the pilot can safely take-off in Attitude, taking benefits of "Zero the integral when throttle is low"=ON and later during flight enjoy gliding without power and fully stabilized.

And, contrary to multirotors, there are no issues when landing in ASWA ;)

There are at least two ways for setup ASWA on a plane:

1. ASWA and ARMING are controlled with one and same switch of the RC Transmitter. Thus, after arming, ASWA is inactive while throttle is kept below a preset threshold (20% is by default, I suggest 60% as a better value to allow gentle prop/motor tests (throttle kept below 60%) before takeoff). "Zero the integral when throttle is low"=ON prevents PIDs windup.

On take-off, or when already airborn, when throttle > 60% (preset threshold) is applied the ASWA is activated. While ASWA is active, it supresses applying "Zero the integral when throttle is low"=ON :)  (flight\modules\Stabilization\innerloop.c). ASWA is deactivated on DISARMING.

2. ARMING and ASWA are controlled with different switches. Then ASWA can be switched off during flight if desired. A variation of this can be ASWA to be bound to FlightModesSwitch (FMS) and to be active for some flight modes and inactive for others. Ideas how to make such a setup are already discussed for multirotors.


I've still not performed a real flight with ASWA setup on plane but don't expect any implications. On-the-ground tests passed OK. The actuators do react as expected in stabilized modes: while ARMED but ASWA still not active (stabSettings.innerPids[t].iAccumulator are kept to zero), and then, when (ARMED) ASWA is activated after throttle burst over the preset threshold (effects of PIDs windup are evident).
I'll report back the results of a real test flight when ready.


Also pay attention to this thread! https://forum.librepilot.org/index.php?topic=3558.0
Enabling ASWA will invalidate one of the supposed work arounds (for beginners one) of the issue discussed!

-----------------------------------------------------------

Steps to set ASWA for a FixedWing:

1. Check in Stabilization form if "Zero the integral when throttle is low"=ON (default).
2. Setup in Input form / Arming Settings: "Arm airframe using throttle off and:" Accessory x (x=0..3). (if not already done)

In the Objects Explorer (System Tab):
3. Check if Settings / ActuatorSettings / LowThrottleZeroAxis / Roll,Pitch,Yaw set to false (default).
4. Change (optional) Settings / FlightModeSettings / AlwaysStabilizeWhenArmedThrottleThreshold to 0,6.
5. Set Settings / FlightModeSettings / AlwaysStabilizeWhenArmedSwitch to the desired Accessory (0..3).

jdl

  • ***
  • 131
Re: AlwaysStabilizeWhenArmed (ASWA) on FixedWings
« Reply #1 on: October 17, 2019, 01:44:29 pm »
I've still not performed a real flight with ASWA setup on plane but don't expect any implications. On-the-ground tests passed OK. The actuators do react as expected in stabilized modes: while ARMED but ASWA still not active (stabSettings.innerPids[t].iAccumulator are kept to zero), and then, when (ARMED) ASWA is activated after throttle burst over the preset threshold (effects of PIDs windup are evident).
I'll report back the results of a real test flight when ready.


Just did a test flight. Results: Excellent, this setup works flawlessly!

Easy launch, "Zero the integral when throttle is low"=ON does its job until throttle is raised over the threshold on take-off.

After that, AlwaysStabilizeWhenArmed gets active and disables "Zero the integral when throttle is low". Gliding without throttle in rate or attitude benefits full stabilization.