Commit Graph

140 Commits

Author SHA1 Message Date
Iampete1 a7bc844780 Plane: never stick mix without valid RC input 2022-03-09 18:26:30 +11:00
Iampete1 54e57ccff0 Plane: don't prevent stick mixing in none RC failsafe 2022-03-08 11:21:13 +11:00
Henry Wurzburg ea9d35c99d ArduPlane: extend nav_scripting to all modes 2022-02-07 21:19:28 +11:00
Andrew Tridgell fb019eb0f3 Plane: add a low pass filter to speed scaler
this is needed due to the filtering done on the target rate in
AC_PID. With a low filter rate in AC_PID a step in the speed scaler
results in a step in the FF output due to the mismatch in the
instantaneous SS and the filtered target rate
2021-12-29 18:36:05 +11:00
Andrew Tridgell 336b666f83 Plane: fixed stick mixing and throttle nudge in QRTL approach
thanks to Henry for noticing this
2021-12-28 16:04:12 +11:00
Andrew Tridgell e342ce0da4 Plane: fixed reset of steering locked course
reset when we have not been steering for 1s, to ensure that an old
locked course is not used
2021-12-04 07:41:35 +11:00
Andrew Tridgell 56870ad7d6 Plane: use yaw rate controller in NAV_SCRIPT_TIME 2021-11-30 16:19:26 +11:00
Andrew Tridgell 55d8afa1dd Plane: support autotune for yaw rate control 2021-11-30 16:19:26 +11:00
Andrew Tridgell b619ee4970 Plane: added support for rate yaw control
to enable for ACRO mode, set ACRO_YAW_RATE to desired maximum rate in
degrees/second, and set YAW_RATE_ENABLE=1 to enable PID tuning of yaw
rate controller

pair programmed with Andy Palmer and Matthew Hampsey
2021-11-30 16:19:26 +11:00
Hwurzburg 5cafccd447 ArduPlane: fix flare rc switch action with flight option bit 10 active 2021-11-21 21:00:04 +11:00
Peter Barker 70562021ac ArduPlane: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED 2021-11-15 20:27:40 +11:00
Iampete1 b9d240460b Plane: remove SpdHgt and use TECS direct 2021-11-13 08:05:39 +11:00
Andrew Tridgell 0c1e576544 Plane: added support for NAV_SCRIPT_TIME 2021-11-08 21:08:52 +11:00
Peter Barker 6a12d3f5d9 Plane: use enum class for StickMixing 2021-11-03 18:06:00 +11:00
Iampete1 f25e5087c0 Plane: attitude: use new transition class 2021-11-02 10:14:36 +11:00
Andrew Tridgell 9c617a18f4 Plane: suppress rate D terms in ground mode
this prevents a common oscillation issue on the ground
2021-10-30 18:45:53 +11:00
Iampete1 2f93c1f9e4 Plane: stabilizer roll and pitch to floats 2021-10-20 18:29:58 +11:00
Iampete1 b31ce6734a Plane: get throttle input return float 2021-10-20 18:29:58 +11:00
Iampete1 2f4661c52f Plane: use float for set/get output scaled 2021-10-20 18:29:58 +11:00
Peter Barker 3d34e061fe ArduPlane: add and use HAL_QUADPLANE_ENABLED 2021-09-14 11:23:18 +10:00
Iampete1 b18da48f39 Plane: remove AUTO_FBW_STEER 2021-09-12 22:12:32 -05:00
Iampete1 71e2e25313 Plane: attitude: in vtol modes call mode run and stabalize with surfaces 2021-09-08 18:06:58 +10:00
Iampete1 0eab3faf32 Plane: use new tailsiter class 2021-07-27 09:08:34 +10:00
Andrew Tridgell 1ae669bb01 Plane: added manual input expo for MANUAL, ACRO and TRAINING
this is easier than setting up mode specific expo in radios for flying
in manual modes
2021-07-23 14:47:14 +10:00
Andrew Tridgell 06cd077c36 Plane: fixed stick mixing with land reposition in quadplanes
prevent stick mixing overriding landing control
2021-06-10 13:50:29 +10:00
Andrew Tridgell f1f7f01300 Plane: slave fixed wing desired rate to multicopter desired rate
this ensures that the two rate controllers don't fight each other when
in a VTOL mode
2021-06-05 13:05:30 +10:00
Hwurzburg 09fb9a8e58 Plane: limit speed scaling in Autotakeoff wo AS sensor option 2021-04-20 09:07:09 +10:00
Andrew Tridgell e5308db8c2 Plane: added FLIGHT_OPTIONS bit to enable yaw control in ACRO mode
this allows for yaw damper in ACRO, which is important on some
vehicles with no vertical stabilize

See
https://discuss.ardupilot.org/t/rudderless-split-rudder-flying-wing/69273/4
2021-04-15 06:22:29 +10:00
Peter Hall 33f9e3d4b6 plane: add tailsitter transision rates, give more info in transision complete messages 2021-04-07 17:55:48 +10:00
Dr.-Ing. Amilcar do Carmo Lucas fef8b37b11 Plane: Address Randy review comments 2021-03-05 14:52:46 +11:00
James O'Shannessy aae092b88f ArduPlane: Remove all unused geofence capability
ArduPlane: Remove missed geofence logic
2021-03-05 14:52:46 +11:00
James O'Shannessy 17fb585bf1 ArduPlane: Add support for AC_Fence
ArduPlane: Remove some geofence logic from ArduPlane

ArduPlane: Refactor action and mode return implementation

ArduPlane: Use polyfence to find the return point.
2021-03-05 14:52:46 +11:00
Andrew Tridgell c913d8134d Plane: use ahrs.groundspeed() instead of gps call
this fixes a zero of integrator when dead-reckoning after GPS has died
2021-02-21 09:13:31 +11:00
Peter Barker 6baaf03c8c Plane: move auto_throttle_mode to being a method on each mode 2021-01-10 16:04:30 +11:00
Peter Barker f6cb1b5ad6 Plane: use a method on Mode for auto-navigation-mode
Avoids the state getting stale, which it will with a failed attempt to
go into qautotune, for example.
2021-01-10 16:04:30 +11:00
Iampete1 2d80dcd937 Plane: remove tailsitter VTOL transition race condition 2020-11-04 18:34:00 +11:00
Hwurzburg cf055fd1e0 Plane: add midposition to flare RC option sw 2020-10-27 10:47:07 +11:00
Hwurzburg b61ee34b6b ArduPlane: add RC option for landing flare 2020-10-13 11:36:19 +11:00
Andy Piper d16872cca5 Plane: compile out ADSB mode if required 2020-09-24 08:22:16 -07:00
Andrew Tridgell d9358b4ac2 Plane: don't allow a zero speed_scaler
this fixes an issue with yaw damper on quadplanes when at zero
airspeed

Thanks to Vladi Portnoy for reporting this
2020-06-29 20:09:41 +10:00
Buzz 0f5177b291 Plane: Support a set of offboard MAVLink guided controls with rates
+ 3 rounds of fixes
2020-05-20 15:03:21 +10:00
Michael du Breuil 37be15b3cd Plane: When stick mixing is disabled do not apply stick mixing to quadplane modes 2020-04-04 10:12:22 +11:00
Peter Hall a2e72de5ae Plane: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Andrew Tridgell 470a60f828 Plane: reset steering in MANUAL or when not stabilising 2019-08-22 20:10:09 +10:00
Andrew Tridgell aa18c75689 Plane: decay fw rate integrators when at low airspeed
this prevents large fixed wing control surface integrators from
causing issues when we have wind from behind in hover
2019-07-07 18:16:47 +10:00
Andrew Tridgell ebe2278f5d Plane: reset rate controller integrators if not run for 2s
this prevents a bug where integrator buildup can happen from a
previous flight mode
2019-07-07 18:16:47 +10:00
Tom Pittenger 6970a66cad Plane: refactor stick_mixing to library 2019-05-03 13:14:11 -07:00
Tom Pittenger 0270c57530 Plane: massive refactor and creation of Mode class 2019-04-02 16:28:52 +11:00
Mark Whitehorn 487ad7a90f Plane: add QACRO mode for quadplanes
use acro_r/p/y_rate params in qacro
port ACRO throttle handling from copter

handle non-tailsitter controls
2019-03-05 10:13:20 +11:00
Michael du Breuil 843c92ced5 Plane: Remove some redundant code/state resets 2019-01-15 10:45:50 +11:00