Commit Graph

163 Commits

Author SHA1 Message Date
Andrew Tridgell 4ff5bf5af5 Plane: zero integrators and set throttle mix
this zeros fixed wing integrators during TRANSITION_AIRSPEED_WAIT and
uses a zero throttle mix during TRANSITION_TIMER. This should allow
the fixed wing controller more time to adapt to forward flight
2017-02-26 09:20:51 +11:00
Andrew Tridgell c061d5615b Plane: added manual input mask for tailsitter prop-hang
This adds new parameters Q_TAILSIT_MASK and Q_TAILSIT_MASKCH. These
parameters allow a user to use the tailsitter capabilities of a 3D
plane to teach themselves to prop-hang.

It works by allowing the user to setup a switch on their transmitter
to enable manual pass-thru of a set of the input channels to outputs
when in tailsitter hover. The user can then use that switch to allow
learning of hover control in a 3D plane one channel (or two channels)
at a time.
2017-02-26 09:20:13 +11:00
Andrew Tridgell 3bb25eb194 Plane: added Q_TAILSIT_INPUT
this allows the user to control tailsitters either in body frame (like
a plane) or in earth frame (like a multicopter). This is useful for
people wanting to learn to fly prop-hang on 3D planes
2017-02-26 09:20:13 +11:00
Andrew Tridgell ea5186340b Plane: added Q_TILT_RATE_UP and Q_TILT_RATE_DN as separate parameters
allow control of tilt rate separately for UP and DOWN

always allow at least 90 degrees/second for switching to MANUAL
2017-02-25 17:53:26 +11:00
Andrew Tridgell e8b11924f8 Plane: split out the tailsitter transition complete code
use both roll and pitch to trigger completion of transition. This
copes with situations where the plane has managed to get itself rolled
over far enough that it can't recover into hover
2017-02-18 17:26:43 +11:00
Andrew Tridgell d5a3f844f1 Plane: changes for AC_WPNav 2017-02-18 17:26:43 +11:00
Andrew Tridgell c787f4c56f Plane: initial support for tailsitter transitions 2017-02-18 17:26:43 +11:00
Andrew Tridgell 83f3cee99e Plane: initial hooks for tailsitter support 2017-02-18 17:26:43 +11:00
Andrew Tridgell 0fc04b0158 Plane: setup plane frame type parameter flags 2017-02-14 19:50:01 +11:00
Andrew Tridgell c294519925 Plane: lower default Q_M_SPOOL_TIME to 0.25 2017-02-14 09:23:17 +09:00
priseborough 013eb254a2 Plane: use standard unit descriptor for milliseconds 2017-01-27 16:57:42 +09:00
Andrew Tridgell 07cedd8a66 Plane: prevent stability shutdown in transition
this prevents the vertical motors from shutting down while
transitioning if the desired throttle was too low at the start of the
transition
2017-01-25 19:01:15 +11:00
Andrew Tridgell 0d4405106f Plane: removed forcing of trim for motors in quadplane
this caused problems with tricopter tail servos
2017-01-25 19:01:15 +11:00
Andrew Tridgell 5c820adad4 Plane: fixed tilt transition with binary tilt servo
once the tilt is fully fwd then force transition as done at any
airspeed
2017-01-25 19:01:15 +11:00
Andrew Tridgell 586f8a9ca8 Plane: fixes for tilt quadplane after rebase 2017-01-25 19:01:15 +11:00
Andrew Tridgell 54bca768b8 Plane: added Q_TILT_TYPE for retract servo tiltrotors 2017-01-25 19:01:15 +11:00
Andrew Tridgell 2f100b0804 Plane: removed separate tricopter quadplane build
can all be done with one build now
2017-01-12 17:39:37 +11:00
Andrew Tridgell b83f50be0f Plane: use new SRV_Channels API 2017-01-12 17:39:37 +11:00
Andrew Tridgell 1c4bf77cf6 Plane: added custom conversion of Q_FRAME_CLASS parameter 2016-12-31 10:56:01 +09:00
Randy Mackay 934ef55338 Plane: quadplane instantiates motor matrix outside of case
Thanks to khancyr for noticing this
2016-12-31 10:55:23 +09:00
Randy Mackay c6dec5c3f6 Plane: quad plane uses consolidated multicopter classes 2016-12-31 10:55:23 +09:00
Pierre Kancir da1f784e78 Plane : quadplane change to float to avoid the loss of a fractional part 2016-12-05 12:39:31 -08:00
Tom Pittenger f556f705e6 Plane: move various g params to aparms 2016-11-25 19:07:30 -08:00
expntly 0d1e50b50b Plane: fix typo, check wp_nav is initialized 2016-10-27 14:39:50 +11:00
Mathieu OTHACEHE 152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Andrew Tridgell 0445b51143 Plane: fixed throttle slew rate in manual for quadplanes 2016-10-12 09:55:37 +11:00
murata b3eecb87ac Plane: To define the same wording. 2016-10-06 10:03:23 -07:00
Andrew Tridgell cb61840ad2 Plane: tell TECS to use synthetic airspeed during transition 2016-10-05 11:52:52 +11:00
Andrew Tridgell 4e017bf5b3 Plane: fixed loiter mode when Q_GUIDED_MODE=1
This fixes the fixed wing behaviour of LOITER mode whne
Q_GUIDED_MODE=1.

Many thanks to the PertUAV team for finding and reporting this bug
2016-10-01 08:37:17 +10:00
Andrew Tridgell 841828541d Plane: fixed auto ICE engine cut in QLAND final 2016-09-29 05:18:55 +10:00
Andrew Tridgell 6d09897b19 Plane: fixed VTOL motor termination in AFS 2016-09-27 11:53:45 +10:00
Andrew Tridgell dac7f45326 Plane: fixed use of multicopter mix_max
we need a settable mix_max for some vehicles
2016-09-21 12:23:19 +10:00
Andrew Tridgell 9b83781b4f Plane: fixed mixer arming error with FMUv4
thanks to Tim Gold for reporting this
2016-09-11 08:25:40 +10:00
Andrew Tridgell 6849f2223d Plane: set initial alt target on takeoff completion
this prevents a sudden motor spike at the start of the transition
2016-09-02 11:12:19 +10:00
Randy Mackay 3052e8f80b Plane: quadplane calls attitude control parameter check 2016-09-02 09:27:19 +09:00
Andrew Tridgell 3d0516fd57 Plane: added Q_ASSIST_ANGLE
this automatically provides quadplane assistance if the angular error
is over the given value for 1 second while flying faster than
Q_ASSIST_SPEED
2016-08-30 08:35:18 +10:00
Andrew Tridgell 33f17588b2 Plane: added auto fence enable on VTOL takeoff
fixes issue#724
2016-08-29 18:04:42 +10:00
Andrew Tridgell c81d8364ac Plane: check for safety switch state in quadplane motor output
get_soft_armed() will be false if safety on
2016-08-29 17:55:35 +10:00
Tom Pittenger ca32bcc58d Plane: add new flight mode AVOID_ADSB to mimic GUIDED 2016-08-17 22:38:54 -07:00
Andrew Tridgell b29b609bcc Plane: added AFS support for quadplanes 2016-08-16 12:56:12 +10:00
Andrew Tridgell 31fb4cc427 Plane: force trims for VTOL motors 2016-08-16 12:53:34 +10:00
Tom Pittenger fc50f145ce Revert "ArduPlane: Convert references to AP_Airspeed. Added automatic migration of ARSPD_FBW_MIN and ARSPD_FBW_MAX (plane parameter) to ARSPD_FBW_MIN and ARSPD_FBW_MAX (library parameter)."
This reverts commit da1b18d918.
2016-08-07 17:54:24 -07:00
AndersonRayner da1b18d918 ArduPlane: Convert references to AP_Airspeed. Added automatic migration of ARSPD_FBW_MIN and ARSPD_FBW_MAX (plane parameter) to ARSPD_FBW_MIN and ARSPD_FBW_MAX (library parameter). 2016-08-04 10:09:04 -07:00
Andrew Tridgell 63317e9430 Plane: added throttle suppression for quadplanes
this tries to prevent motor start when on ground. Motors instead go
into spin_when_armed state
2016-08-04 09:43:40 -07:00
Andrew Tridgell 388b7ad6bd Plane: fixed is_flying_vtol() for non-quadplane 2016-07-27 07:43:16 +10:00
Andrew Tridgell f65b46385c Plane: added engine cut on land final in quadplane 2016-07-25 15:46:17 +10:00
Andrew Tridgell 9602d208a2 Plane: fixed disarm by rudder in quadplane 2016-07-25 06:08:36 +10:00
Andrew Tridgell c926d7d41f Plane: fixed typo in quadplane landing detector
thanks to Paul for spotting this!
2016-07-08 18:38:43 +10:00
Andrew Tridgell 66e43bf6a2 Plane: start with low integrator on back quadplane transition
When changing to alt_hold controller in quadplane with significant
airspeed set the initial integrator to minus the hover throttle to
allow the accel controller to climb slowly
2016-06-27 10:18:20 +10:00
Leonard Hall f1bca63094 Plane: consolidate input_euler_angle calls to use smoothing gain 2016-06-24 17:17:19 +09:00