Commit Graph

183 Commits

Author SHA1 Message Date
Andrew Tridgell 135f9b2c54 Plane: added STALL_PREVENTION option
this will allow users to disable it if it proves to be a problem with
no airspeed sensor
2014-11-13 14:06:00 +11:00
Andrew Tridgell 58fd72944d Plane: honor TKOFF_THR_MAX in set_servos()
fixes issue #1555
2014-11-13 11:35:28 +11:00
Andrew Tridgell c8060cb9f7 Plane: use load factor to limit nav_roll_cd
this calculates the aerodymanic load factor from smoothed airspeed and
uses it to limit roll to keep it below the level where the load factor
would take us past the aerodymanic limit of the airframe
2014-11-12 13:36:02 +11:00
Andrew Tridgell 71d786187e Plane: make auto takeoff independent of compass
this solves a problem of poor initial yaw due to poor compass offsets
causing a takeoff to not be in the direction the plane is pointing. A
summed gyro is used until the GPS speed is above 5m/s for 2 seconds,
then the GPS heading corrected by the summed gyro error is used for L1
based navigation for the rest of the takeoff
2014-10-07 07:17:46 +11:00
Andrew Tridgell 292517b88b Plane: only override takeoff/land flaps if non-zero 2014-08-30 05:16:42 +10:00
Andrew Tridgell 5c96838473 Plane: allow zero throttle in LAND_STAGE_FINAL 2014-08-30 05:15:25 +10:00
Andrew Tridgell 5af4cefff3 Plane: added FLAP_SLEWRATE parameter
makes for smoother transition of flaps
2014-08-29 20:31:03 +10:00
Andrew Tridgell f66039c9b4 Plane: added TKOFF_FLAP_PCNT and LAND_FLAP_PERCENT
easier control of flaps for takeoff and landing
2014-08-29 20:31:03 +10:00
Andrew Tridgell b94bc0c243 Plane: don't use ground steering until flare in landing
we need to be able to guide the plane fully in the landing approach
2014-08-29 20:31:03 +10:00
Andrew Tridgell b102c9d19c Plane: use ground steering logic for final stage of auto landing
this should improve runway tracking
2014-08-27 17:14:19 +10:00
Andrew Tridgell daa32f9b62 Plane: reset steering integrator on mode change and when not moving
this prevents an old integrator from causing problems on takeoff
2014-08-25 08:20:37 +10:00
Andrew Tridgell 2a288824c0 Plane: make STAB_PITCH_DOWN in degrees
try to avoid new centi-degrees parameters
2014-08-06 17:59:18 +10:00
Andrew Tridgell b64ab07ca4 Plane: added STAB_PITCH_DN_CD parameter
this adds some down trim when at throttle levels below the trim
throttle in FBWA mode.

defaults to 200 centi-degrees. I may adjust based on flight tests
2014-08-03 17:17:20 +10:00
Andrew Tridgell fe3c51d516 Plane: prevent integer underflow with comm_get_txspace() 2014-07-27 22:12:08 +10:00
Andrew Tridgell 3390224491 Plane: avoid some float conversion warnings 2014-07-08 20:26:07 +10:00
Andrew Tridgell ea086fa79c Plane: added MAV_CMD_DO_INVERTED_FLIGHT support
allows for mission control over inverted flight
2014-06-05 16:12:10 +10:00
Andrew Tridgell 24325a5c62 Plane: fixed takeoff throttle slew rate
when TKOFF_THR_SLEW is zero use the normal slew rate
2014-05-31 16:47:45 +10:00
Andrew Tridgell d87619c2f1 Plane: added 4 new parameters to control takeoff
this gives flexible control for taildragger takeoff
2014-05-23 07:30:58 +10:00
Andrew Tridgell f2556535da Plane: moved takeoff code to a new file 2014-05-23 07:30:58 +10:00
Andrew Tridgell 0306dbf5f1 Plane: moved auto mode variables to auto_state 2014-04-27 15:34:30 +10:00
Andrew Tridgell 2ab4ffef45 Plane: use new APM_OBC API 2014-04-21 11:52:53 +10:00
Andrew Tridgell 1bce4239a3 Plane: added AUTOTUNE flight mode
this is just like FBWA, but with automatic roll/pitch tuning
2014-04-12 14:12:14 +10:00
Andrew Tridgell d37f1a1376 Plane: updates for OBC API change 2014-04-11 16:47:40 +10:00
Andrew Tridgell 1efadb7a05 Plane: fixed some warnings 2014-04-03 12:48:06 +11:00
Andrew Tridgell 3c33eb3f09 Plane: use new channel output API 2014-04-03 12:19:11 +11:00
Andrew Tridgell e19341ca32 Plane: convert to new GPS driver API 2014-04-01 06:38:24 +11:00
Andrew Tridgell ff70c87f0b Plane: support 14 RC channels on PX4 2014-03-25 14:47:05 +11:00
Andrew Tridgell c9ebd6a175 Plane: improved RC failsafe handling
this forces all primary control inputs to the trim value on loss of RC
input, and reduces the timeout for loss of RC input to 1 second from 2
2014-03-08 16:20:54 +11:00
Andrew Tridgell 2cf98e476c Plane: added support for a separate steering channel
good for ground steering on larger aircraft
2014-03-05 12:57:50 +11:00
Andrew Tridgell 0d6064034a Plane: use percent_input() for flaps 2014-03-05 09:17:50 +11:00
Andrew Tridgell ae9201342a Plane: allow FLAP_IN_CHANNEL to control k_flap and k_flap_auto too 2014-02-06 14:09:49 +11:00
Andrew Tridgell c3b7e76c28 Plane: added flaperon support
this adds FLAPERON_OUTPUT and FLAP_IN_CHANNEL to allow both manual
and auto flap control for both normal flaps and flaperons
2014-02-06 12:38:59 +11:00
Andrew Tridgell c16e3a035f Plane: fixed disarmed throttle in HIL 2014-01-20 19:41:19 +11:00
Michael Day b0a0316dd6 Plane: Now using AP_Arming library. 2013-12-11 17:29:23 +11:00
Andrew Tridgell 17c9cedac1 Plane: send out HIL servo updates as soon as we can
this improves the servo responsiveness of HIL a lot
2013-11-23 18:50:57 +11:00
Andrew Tridgell 56f574684d Plane: fixed throttle failsafe with reversed throttle 2013-11-17 15:32:53 +11:00
Andrew Tridgell 231b5ab793 Plane: prevent too large combined pitch/roll angles
this reduces the roll limit by cos(pitch) and pitch minimum by
cos(roll). This prevents unreasonable attitudes in all stabilised
modes

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-11-04 21:21:42 +11:00
Andrew Tridgell 035ac3800a Plane: use G_Dt for acro angle integration
also cleanup some other uses of performance timing
2013-10-12 13:30:27 +11:00
Andrew Tridgell 536fbb4a30 Plane: if pilot gives aileron input then disable ground steering
otherwise it would be very tricky to do a low pass!
2013-10-05 07:46:27 +10:00
Andrew Tridgell d32e58db84 Plane: split out the channel stick mixing
makes code a bit clearer
2013-10-05 07:46:27 +10:00
Andrew Tridgell 3be939eb03 Plane: give manual steering when still
useful for servo testing
2013-10-05 07:46:27 +10:00
Andrew Tridgell d275f50539 Plane: added GROUND_STEER_ALT and GROUND_STEER_DPS
this uses the new AP_SteerController steering controller developed for
the rover code to allow for ground steering of planes
2013-10-05 07:46:27 +10:00
Andrew Tridgell 081510d37a Plane: added ACRO_LOCKING parameter
this enables/disables the attitude locking in acro mode, allowing acro
to be a pure rate controller
2013-10-05 07:45:12 +10:00
Kevin Hester 996eda0080 Plane: Report MAV_STATE_ACTIVE if flying, MAV_STATE_STANDBY otherwise
(There are also various error states MAV_STATE_CRITICAL that are unchanged
by this check in).

The is_flying() check is similar to the code in suppress_throttle, but
I wanted to make it very optimistic on thinking we are flying - which is
not what you want for set_throttle...

(AC has similar MAV_STATE_ACTIVE vs MAV_STATE_STANDBY behavior now)
2013-09-21 21:57:07 +10:00
Andrew Tridgell e455ee0a94 Plane: fixed throttle suppression for AUTO_FBW_STEER=1 2013-09-20 17:20:06 +10:00
Andrew Tridgell 1869cd52e1 Plane: fixed AUTO_FBW_STEER stick mixing 2013-09-20 17:20:06 +10:00
Andrew Tridgell 328e900364 Plane: changed TKOFF_THR_DELAY default to 2
this makes it safer for hand launch with pusher props
2013-09-19 21:42:21 +10:00
Paul Riseborough 43cf0736a3 Plane: Auto Takeoff Check updates
Adds additional launch angle protection and protection against early
exit from auto causing unexpected motor start on re-entry
2013-09-19 21:37:31 +10:00
Andrew Tridgell 43ffe91546 Plane: added FS_ACTION of 2 for glide
this allows people without specified settings in their receiver for
failsafe to choose FBWA zero throttle glide on throttle failsafe. That
can be a better choice when flying at a R/C club field
2013-09-15 15:05:39 +10:00
Andrew Tridgell cc6acac1dd Plane: added AUTO_FBW_STEER option
this is an unusual option that gives FBWA flight control in AUTO
mode. It is being added to support use of APM in an aerial robotics
competition where students need to pilot the plane, but they still
need waypoint triggering of payloads
2013-09-13 14:38:09 +10:00