Commit Graph

2885 Commits

Author SHA1 Message Date
Michael du Breuil
bd32b5deb7 Plane: update isFlying() landing check
When we are landing a sink_rate < -0.2f means the vehicle is climbing,
which should never happen during an approach for any supported landing
type (slope or deepstall), and on hard impacts with the ground its
common for the vehicle altitude to be projected to low and climb back to
the correct altitude slowly (but at a higher rate). This changes the
check to only consider sinks while on approach as acceptable.
2017-11-07 08:57:15 +01:00
Tom Pittenger
8029a7f10e
Plane: add Tom Pittenger to developers list
Plane: add Tom Pittenger to developers list. He was added to main Plane.h as "Lead Developer" here *https://github.com/ArduPilot/ardupilot/blob/master/ArduPlane/Plane.h#L2) but never to the main ArduPilot.c file.
2017-11-06 13:46:32 +01:00
Andrew Tridgell
5843086760 Plane: update release notes for 3.8.3beta4 2017-11-05 21:47:15 +11:00
Andrew Tridgell
957c1f6d23 Plane: extend QLOITER transition pitch limit
use twice transition time for pitch envelope to reduce QLOITER
transition harshness
2017-11-05 21:35:32 +11:00
Andrew Tridgell
bbf98fae46 Plane: fixed a warning 2017-11-05 21:25:37 +11:00
Andrew Tridgell
9c8cd6c1cc Plane: added Q_TRANS_DECEL
this gives a deceleration rate for QRTL transition from RTL, and also
for transitions to QLOITER
2017-11-05 20:44:42 +11:00
Andrew Tridgell
e27c54a312 Plane: smooth out fwd tailsitter transition
use Q_TRANSITION_MS and the transition angle to pitch forward more
slowly
2017-11-05 17:25:00 +11:00
Andrew Tridgell
21164ef409 Plane: added tailsitter surface speed scaling
added scaling of control surfaces by throttle when in hover. This helps
the controller remain stable over a wide range of throttle levels, such
as when descending or rapidly climbing
2017-11-05 17:05:08 +11:00
Michael du Breuil
83decd1370 ArduPlane: Only run is_flying landing checks when in landing stage 2017-11-04 10:07:16 +11:00
Andrew Tridgell
126d5ce5d4 Plane: re-implement MIXING_OFFSET
this was lost in the conversion of SRV_Channels
2017-11-04 09:34:22 +11:00
Michael du Breuil
e63e39c411 Plane: Don't broadcast PWM value that tripped throttle failsafe 2017-11-02 16:46:08 -07:00
Michael du Breuil
d52f5155f0 Plane: Rename rc failsafe state members 2017-11-02 16:46:08 -07:00
nick2204
7d91755bd1 Plane: update Q_OPTIONS docs
Made q_options description a little clearer
2017-11-01 09:38:42 +11:00
Andrew Tridgell
1bee1dd210 Plane: log currently used airspeed
this logs whatever airspeed is being used for flight
2017-11-01 09:22:15 +11:00
Andrew Tridgell
43ee462813 Plane: prepare for 3.8.3beta2 2017-10-31 18:05:50 +11:00
Andrew Tridgell
f14f40d3ef Plane: fixed GUIDED loiter with Q_RTL_MODE=1
this was broken by the recent RTL_RADIUS changes

thanks to Nick for noticing this!
2017-10-31 18:02:31 +11:00
Andrew Tridgell
84e5cd7e14 Plane: update release notes for 3.8.3beta1 2017-10-30 18:46:51 +11:00
Andrew Tridgell
1085069851 Plane: use WP_LOITER_RAD if RTL_RADIUS is 0 for QRTL 2017-10-30 16:52:19 +11:00
Andrew Tridgell
aa430a6e2c Plane: use RTL_RADIUS for QRTL threshold
when Q_RTL_MODE=1 in a quadplane use RTL_RADIUS as the distance to
switch to QRTL mode. We navigate to the destination using direct
waypoint navigation instead of using a loiter circle.
2017-10-30 16:30:38 +11:00
Andrew Tridgell
552faa8f67 Plane: smoother tailsitter transitions
this smooths out tailsitter transitions in both directions, adding a
new FW to VTOL transition state
2017-10-30 16:30:38 +11:00
Andrew Tridgell
c24ee9192b Plane: prevent a float exception at pitch 90
this can happen with a tailsitter
2017-10-30 16:30:38 +11:00
Andrew Tridgell
214434a2d7 Plane: fixed tailsitter ANGLE_WAIT transition
we need vtol control during transition from hover to fwd flight
2017-10-30 16:30:38 +11:00
Andrew Tridgell
af893ddde7 Plane: implement Q_OPTIONS
this allows for NAV_TAKEOFF to be treated as NAV_VTOL_TAKEOFF in
quadplanes, and for level flight to be maintained during quadplane
transitions
2017-10-30 16:30:10 +11:00
Andrew Tridgell
02f8d888c3 Plane: relax controllers when disarmed
this prevents any remaining integrator from a previous flight stage from
affecting flight across a disarm
2017-10-30 16:30:10 +11:00
Peter Barker
d49be616da Plane: call ins's periodic function 2017-10-27 16:33:45 +11:00
Tom Pittenger
8adacfeea3 Plane: always log MODE and include reason when logging is enabled 2017-10-25 21:18:29 +11:00
Andrew Tridgell
92ee05b925 Plane: fixed motor channel handling 2017-10-25 11:39:11 +11:00
Peter Barker
4ce051af82 Plane: ensure we're in short failsafe before using failsafe.ch3_timer_ms 2017-10-24 09:28:13 +11:00
Peter Barker
ff88b0dfda Plane: remove redundant failsafe string 2017-10-24 09:28:13 +11:00
Peter Barker
7feef72b34 Plane: improve failsafe notifications 2017-10-24 09:28:13 +11:00
Peter Barker
01d8c506d2 Plane: add option to entirely disable short failsafe 2017-10-24 09:28:13 +11:00
Andrew Tridgell
6526ff504d Plane: fix for changes to AP_Motors API 2017-10-22 15:52:50 +11:00
Andrew Tridgell
e008559b6e Plane: support LOITER_TO_ALT in quadplanes 2017-10-21 18:50:01 +11:00
Andrew Tridgell
8178ab4037 Plane: make mav_type in HEARTBEAT configurable
needed for qgc to setup for quadplanes
2017-10-20 15:41:06 +11:00
Andrew Tridgell
0aed5a9a57 Plane: prevent controller windup on ground
when on the ground in an auto-throttle mode lik FBWB or CRUISE, we may
have the throttle suppressed. In that case we should not run the
multicopter controller on quadplanes, or it may build up control which
will then apply on takeoff. This is particularly severe for aircraft
that are not level on the ground, such as taildragger quadplanes

Fixes https://discuss.ardupilot.org/t/quadplane-flips-on-takeoff/22095

many thanks to Sriram for reporting
2017-10-20 15:41:04 +11:00
Andrew Tridgell
1a95dcbdd7 Plane: update docs for Q_YAW_RATE_MAX 2017-10-20 15:40:58 +11:00
Michael du Breuil
615f6dfadb Plane: Don't log PIDL messages 2017-10-17 14:37:11 -07:00
Michael du Breuil
cc55e5a8fa Plane: Don't log SONR if there are no rangefinders 2017-10-16 10:10:26 -07:00
Andrew Tridgell
f81ec9b1b3 Plane: support simple accelcal 2017-10-10 10:57:38 +11:00
Andrew Tridgell
f5b4d8d99c Plane: added frame type 11 for FlreFlyY6 2017-10-06 11:36:34 +11:00
Michael du Breuil
52fc2c82af Plane: Report GPS health 2017-09-27 19:29:32 +01:00
Lucas De Marchi
a2b67ed615 ArduPlane: use static method to construct AP_Landing 2017-09-26 03:01:21 +01:00
Lucas De Marchi
e10c60e492 ArduPlane: use static method to construct controllers 2017-09-26 03:01:21 +01:00
Lucas De Marchi
05c870a4d4 ArduPlane: use static method to construct AP_TECS 2017-09-26 03:01:21 +01:00
Lucas De Marchi
bfd13dfe87 global: use static method to construct AP_AHRS_DCM 2017-09-26 03:01:21 +01:00
Lucas De Marchi
beabae6a98 global: use static method to construct AP_AHRS_NavEKF 2017-09-26 03:01:21 +01:00
Lucas De Marchi
c9fbf7b722 global: use static method to construct AP_NavEKF3 2017-09-26 03:01:21 +01:00
Lucas De Marchi
e2fe36357a global: use static method to construct AP_NavEKF2 2017-09-26 03:01:21 +01:00
Lucas De Marchi
6781a44046 global: use static method to construct AP_Avoidance_* 2017-09-26 03:01:21 +01:00
Lucas De Marchi
119e82f32e ArduPlane: add static create method for AP_Avoidance_* 2017-09-26 03:01:21 +01:00