Commit Graph

2973 Commits

Author SHA1 Message Date
Michael du Breuil 876ffa351b Plane: Update L1 constructor for new arguments 2017-04-06 08:26:04 +10:00
Andrew Tridgell acaef22416 Plane: improve transition from QSTABILIZE to FBWA or QHOVER 2017-04-05 20:00:29 +10:00
Andrew Tridgell a9b8e4b5d3 Plane: prepare for 3.8.0beta4 2017-04-04 20:49:10 +10:00
Andrew Tridgell 36d8f730e1 Plane: setup better defaults for tailsitters 2017-04-04 10:15:08 +10:00
Andrew Tridgell 48ae2f2de0 Plane: changed default THR_MAX to 100
we have left it at 75 for far too long
2017-04-04 08:19:41 +10:00
Andrew Tridgell 6a90257d2a Plane: fixed attitude logging for tailsitters 2017-03-31 11:30:44 +11:00
Andrew Tridgell c76eadf4f6 Plane: add available memory to PM message 2017-03-27 14:35:21 +09:00
Andrew Tridgell 5d06e4238f Plane: make the quadplane motors var_info dynamic
this will allow for more quadplane motors class types
2017-03-25 16:22:10 +11:00
Michael du Breuil 649ef0fc16 Plane: Only consider a takeoff as begun if the safety switch has been pressed 2017-03-23 16:55:47 -07:00
Andrew Tridgell af97a3974b Plane: initialise target height correctly on quadplane transition
this fixes a bug where a plane in QSTABILIZE would drop suddenly if
switched to FBWA when the target altitude had not been initialised
2017-03-22 21:34:40 +11:00
Andrew Tridgell bb158a437e Plane: handle bad Q_FRAME_CLASS
default to quad with a warning. This prevents users getting stuck
without being able to set Q_ENABLE=1

thanks to Leonard for noticing
2017-03-18 22:10:20 +11:00
Andrew Tridgell e3a8d477f5 Plane: improve tiltrotor transition strategy
avoid running forward motors at high throttle when transitioning to a
VTOL mode
2017-03-14 14:42:20 +11:00
Andrew Tridgell 3f7e7d456f Plane: in fixed wing mode slave quadplane attitude rate controller
For quadplanes this uses the attitude controller from fixed wing
when using the multicopter controller to assist fixed wing
flight. This prevents a rate mismatch between the two controller
leading to oscillation
2017-03-14 14:42:20 +11:00
Andrew Tridgell 2db8589f49 Plane: smarter Z controller initialisation for quadplanes
this is more generic than the previous one used only for the full
position controller
2017-03-14 14:42:20 +11:00
Andrew Tridgell dd4f56dd98 Plane: added PIQ messages for quadplane PIDs
keep them separate from fixed wing PIDs, so we can watch the
interaction between the PIDs in transitions
2017-03-14 14:42:20 +11:00
Andrew Tridgell 0e175179a6 Plane: log home and origin on logging start 2017-03-14 10:51:15 +11:00
Andrey Kolobov 35d406aeab Plane: added a soaring controller to Arduplane 2017-03-14 08:53:10 +11:00
Michael du Breuil 9e893eacd1 Plane: Change some user facing statustexts 2017-03-08 00:59:56 -08:00
Michael du Breuil 041fe38ba6 Plane: Update build tools for deepstall PID dependency 2017-03-02 12:38:59 +11:00
Michael du Breuil cf10b7b841 Plane: Add support for landing PID's and servo control 2017-03-02 12:38:59 +11:00
Michael du Breuil 1bb806edb2 Plane: Use new landing interfaces 2017-03-02 12:38:59 +11:00
Andrew Tridgell abcc75009d Plane: move relay init earlier
allows relay pins to be used as pullups for other sensors (such as
LidarLiteV3)
2017-03-01 22:44:37 +11:00
Randy Mackay eb746eaeef Plane: fix SYSID_ENFORCE parameter description 2017-02-28 15:08:17 +09:00
Michael du Breuil fbf6050876 Plane: Reset home to AHRS position rather then snapshotting GPS 2017-02-28 11:33:53 +11:00
Randy Mackay c0f155fd27 Plane: use only downward facing rangefinder 2017-02-27 15:18:25 +09:00
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
Tom Pittenger 4ccd59f394 Plane: allow exiting loiter_to_alt in cases where you get stuck
- check for scenarios where updrafts can keep you from loitering down indefinitely.
2017-02-23 05:15:49 -08:00
Andrew Tridgell a4c5247fba Plane: prepare 3.8.0-beta3
key fix is the servo slew rate bug
2017-02-22 07:25:47 +11:00
Tom Pittenger 69a10042eb Plane: always stream RPM data over mavlink when enabled 2017-02-21 11:16:27 -08:00
Tom Pittenger 67486dc3f0 Plane: always log RPM when enabled 2017-02-21 04:20:01 -08:00
Peter Barker 97145f20fc Plane: fix startup of CLI menu system 2017-02-20 00:06:23 -08:00
Andrew Tridgell 07ab04897d Plane: reset roll/pitch integrators while tailsitter active
this prevents integrator buildup while flying in hover
2017-02-18 22:23:58 +11:00
Andrew Tridgell b3380ecfa7 Plane: support twin-engine planes
with differential thrust for yaw
2017-02-18 17:26:43 +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 4e4f5a7ac9 Plane: allow tailsitters to takeoff with any attitude 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
Peter Barker 1d7994e9ba Plane: create GCS_Plane subclass 2017-02-13 17:03:06 +11:00
Peter Barker 98c4b48161 Plane: not in log download upon log erase
erase is a synchronous operation
2017-02-13 11:36:16 +11:00
Peter Barker 49bf336539 Plane: Support for a GCS singleton 2017-02-13 09:32:01 +11:00
Peter Barker d060670ba3 Plane: rename gcs[] to gcs_chan[]
Wish to use gcs() to return the gcs singleton
2017-02-13 09:32:01 +11:00
Michael du Breuil 29b16dbafd Plane: Refactor to request relative altitudes from AHRS
Removes the need for plane to do the math for finding the relative height.

Also caches the value at the same time we update current_loc, which is a
non behaviour change as that was the only time you could see a change in
the relative height propegate through the system anyways
2017-02-13 09:23:14 +11:00
Michael du Breuil f183a2618f Plane: Don't lock home altitude to AHRS origin 2017-02-13 09:23:14 +11:00
Michael du Breuil 7a1cbf76d3 Plane: Remove ALT_MIX
Closes #4998, and fix a tab/spaces error on the previous parameter
2017-02-13 09:18:52 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas c4419739c4 Plane: rename MSG_RADIO_OUT to MSG_SERVO_OUTPUT_RAW to better describe what it is 2017-02-07 11:41:12 +11:00
Andrew Tridgell 90d9e74054 Plane: fixed parameter path 2017-02-06 15:12:32 +11:00
Andrew Tridgell 287614b415 Plane: fixed auto-takeoff throttle trigger for inverted launch
quite an unusual setup, but has been done :-)
2017-02-01 16:31:49 -08:00
Tom Pittenger 9abb0bba7f Plane: use abs() instead of labs() for int16 2017-01-30 10:43:54 -08:00
Michael du Breuil 2326eee9a0 Plane: Move loiter_radius to vehicle 2017-01-30 10:43:54 -08:00
Andrew Tridgell 5baf37f7a3 Plane: release 3.8.0beta2 2017-01-30 10:29:01 +11:00
priseborough 013eb254a2 Plane: use standard unit descriptor for milliseconds 2017-01-27 16:57:42 +09:00
murata 2492b9db7e Plane: Unify from print or println to printf. 2017-01-27 18:20:22 +11:00
Tom Pittenger 1a34221db9 Plane: remove old commented code
- leftover from the AP_Landing stage refactor
2017-01-26 13:45:28 -08:00
Tom Pittenger bdafc2c025 AP_Landing: re/move complete flag into backend
the complete flag was only ever true during FLIGHT_LAND_FINAL so we just check for that now instead
2017-01-26 13:11:45 -08:00
Michael du Breuil 4cf1c74c62 AP_Landing + Plane: Check for land complete before requesting disarm 2017-01-26 13:11:44 -08:00
Tom Pittenger 2ccd91d88f AP_Landing: rename stage enum 2017-01-26 13:11:44 -08:00
Tom Pittenger 650e694eb1 Plane: move landing.reset to landing.do_land() 2017-01-26 13:11:44 -08:00
Tom Pittenger 61bc0a6206 Plane: check stage==LAND instead of landing.in_progress 2017-01-26 13:11:44 -08:00
Michael du Breuil 3e66dd10d7 Plane: Move landing stages inside AP_Landing and refactor 2017-01-26 13:11:44 -08:00
Tom Pittenger b570c11e26 AP_Landing: allow separate handling for verify_land() vs verify_abort() 2017-01-26 13:11:43 -08:00
Tom Pittenger e709705ab8 Plane: describe flight stages without using specific stage name 2017-01-26 13:11:43 -08:00
Tom Pittenger 6c0296ba13 AP_Landing: shadow copy of plane flight_stage into landing
.. and describe stages without using specific stage name
2017-01-26 13:11:43 -08: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 2feaa9926c Plane: prevent fwd motor when throttle in dead zone for tiltrotor
otherwise we end up with the SPIN_ARMED value
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
Michael du Breuil f017073077 Plane: Report battery failsafes via sys_status 2017-01-25 09:26:19 +09:00
Randy Mackay fc4741395d Plane: notify initialised after parameters loaded 2017-01-23 15:07:21 -08:00
Randy Mackay fad2ba608f Plane: send flight mode string to Notify 2017-01-23 15:07:21 -08:00
Randy Mackay af514eb101 Copter: remove some comments 2017-01-23 15:07:20 -08:00
Dmitry Prokhorov 497a4bd4a5 ArduPlane: Support for OLED display by Alexey Kozin
https://github.com/ArduPilot/ardupilot/pull/5135
2017-01-23 15:07:20 -08:00
Randy Mackay e906310b71 Plane: rudder_arming moved to AP_Arming_Plane 2017-01-17 11:45:08 +09:00
Randy Mackay 7cc8b7232c Plane: rename arming_checks to AP_Arming 2017-01-17 11:45:08 +09:00
Peter Barker fc28beacea Plane: AP_Arming: use callback in place of variable reference for home state 2017-01-17 11:45:08 +09:00
Tom Pittenger b8784e2c4a Plane: do not crosstrack after a land abort 2017-01-12 15:21:34 -08:00
Andrew Tridgell 3338b4295e Plane: use reload_defaults_file() 2017-01-12 17:39:37 +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 68504dbcbb Plane: auto-upgrade old parameters for SRV_Channel split 2017-01-12 17:39:37 +11:00
Andrew Tridgell cb4ebdd7b4 Plane: fixed throttle_percentage()
thanks to Buzz for noticing!
2017-01-12 17:39:37 +11:00
Andrew Tridgell 6b4e5304cf Plane: fixed mixer outputs 2017-01-12 17:39:37 +11:00
Andrew Tridgell 1879eddfa0 Plane: adjust for limit_slew_rate API change 2017-01-12 17:39:37 +11:00
Andrew Tridgell 081909bf6a Plane: removed use of pwm_to_angle() 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
Tom Pittenger 9a250c3bf4 Plane: clarify some variable names and protect against divide-by-zero 2017-01-06 17:35:44 -08:00
Eugene Shamaev ac2880db7c Plane: waypoint logic change for overflow/underflow 2017-01-06 17:35:44 -08:00
Peter Barker af9729c126 Plane: correct compilation when parachute disabled 2017-01-02 20:39:03 -08:00
Peter Barker d40187fac7 Plane: correct compilation when geofence disabled 2017-01-03 00:37:28 +00:00
Peter Barker 4865bec871 Plane: correct compilation when logging disabled 2017-01-02 16:01:29 +09:00
Tom Pittenger 063f517424 Plane, TECS, AP_Landing: rename stage LAND_ABORT to ABORT_LAND
this will reduce confusion when searching for FLIGHT_LAND_* and you get a bunch of takeoff related hits. It will also make more sense when the landing library fully manages the FLIGHT_LAND stage entirely because it will not mange FLIGHT_LAND_ABORT
2016-12-30 23:50:03 -08:00
Tom Pittenger 04f32b6ec6 Plane: simplify flight stage landing check to use landing.in_progress 2016-12-30 23:50:03 -08:00
Tom Pittenger 84e11fd899 Plane, AP_TECS: do not pass auto_land flag to TECS, it already knows it 2016-12-30 23:50:03 -08:00
Tom Pittenger c286ceba43 Plane: move enum FlightStages to AP_Vehicle::FixedWing 2016-12-30 23:50:03 -08:00
Tom Pittenger 90b2458a27 Plane: remove redundant flightstage update 2016-12-30 23:44:20 -08: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
Andrew Tridgell 4cf509a693 Plane: fixed EKF3 logging 2016-12-19 08:07:14 +11:00
priseborough 38ad778ff1 make.inc: Add EKF3 and remove EKF1 library from make.inc files 2016-12-19 08:07:10 +11:00
priseborough 38a0e8a6ae ArduPlane: Add EKF3 and remove EKF1 2016-12-19 08:07:09 +11:00
Tom Pittenger b7b56b94a3 Plane: convert landing.complete to landing.is_complete() 2016-12-14 04:32:30 -08:00
Tom Pittenger 4b683edac9 Plane: simplified logic where landing complete overrides the calc value 2016-12-14 04:32:30 -08:00
Tom Pittenger 83f0a8114b Plane: use a common reset for uniform landing wipe 2016-12-14 04:32:30 -08:00
Tom Pittenger 8c1509ad47 Plane: abstract land abort request method 2016-12-14 04:32:30 -08:00
Andrew Tridgell 3dcf4cfb55 Plane: removed resetting integrators on mode change
this removes the zero of roll, pitch and yaw integrator on mode
change, now only doing the steering integrator.

The zeroing was from the early days when our controllers were not as
good. It should not be needed any more.
2016-12-14 20:22:56 +11:00
Randy Mackay c3b6fd4315 Plane: fix suppressing comment for case fall through
No functional change
eclipse stops complaining if no-break is used in place of fall-through
2016-12-14 13:22:15 +09:00
Randy Mackay 4efbc29490 Plane: pass HIL_GPS to gps driver 2016-12-08 15:52:26 +09:00
Tom Pittenger a3ccca17ff Plane: use fabsf instead of fabs 2016-12-06 17:38:47 -08:00
Tom Pittenger b299b9c0bb Plane: abstract out init_start_nav_cnd work to landing lib
This reverts commit 1380a35f70.
2016-12-06 03:45:14 -08:00
Peter Barker 669dc01b67 Plane: correct on_flight_line landing stage check 2016-12-06 03:24:41 -08:00
Andrew Tridgell 1380a35f70 Revert "Plane: abstract out init_start_nav_cnd work to landing lib"
This reverts commit e2288d5262.

doesn't build
2016-12-06 17:32:02 +11:00
Tom Pittenger e2288d5262 Plane: abstract out init_start_nav_cnd work to landing lib 2016-12-05 18:44:02 -08:00
Andrew Tridgell 1e691cdefc Plane: fixed build 2016-12-05 16:51:49 -08: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
Michael du Breuil da400dc643 Plane: Add compass cal capability bit 2016-12-04 19:17:01 -08:00
Tom Pittenger 9dd46aa03a Plane: post msg if aborting via throttle
fixes https://github.com/ArduPilot/ardupilot/issues/4906
2016-12-02 17:40:01 -08:00
Tom Pittenger 696828c144 Plane: increase landing airspeed scaled to headwind 2016-12-02 15:35:28 -08:00
Randy Mackay d95baf51c9 Plane: include AP_Beacon 2016-11-30 17:57:01 +09:00
Randy Mackay d9462d5dbc Plane: remove call to EKF1 logging 2016-11-30 17:57:00 +09:00
Randy Mackay 3587961be6 Plane: add AP_Beacon to build 2016-11-30 17:56:59 +09:00
Peter Barker f712dd5d7e Plane: add arming check for logging actually started 2016-11-29 15:14:09 -08:00
Peter Barker 784da9d1eb Plane: check CardInserted in AP_Arming 2016-11-29 15:14:09 -08:00
Peter Barker 98b5ab4656 Plane: remove incorrect comment about logging/in_mavlink-delay 2016-11-29 15:14:09 -08:00
Peter Barker d11578f203 Plane: do not reset LOG_BITMASK when no CardInserted
This really just confuses everyone
2016-11-29 15:14:09 -08:00
Peter Barker 17f5ef4610 Plane: inform dataflash of vehicle arm state 2016-11-28 09:42:09 -08:00
Tom Pittenger dc85ffa834 Plane: move jump_to_landing_sequence() to AP_Mission 2016-11-25 19:07:30 -08:00
Tom Pittenger ac1dced3bf Plane: set landing params as private and use accessors 2016-11-25 19:07:30 -08:00
Tom Pittenger 6544afbcba Plane: Migrate the rest of "LAND_" params from Plane to AP_Landing 2016-11-25 19:07:30 -08:00
Tom Pittenger 8a5a62cfdc Plane: migrate aparm "LAND_" params from plane to AP_Landing 2016-11-25 19:07:30 -08:00
Tom Pittenger 9f184a1490 Plane: migrate aparm "LAND_" params from plane to AP_Landing 2016-11-25 19:07:30 -08:00
Tom Pittenger bfbfc3ea3d Plane: migrate aparm "LAND_" params from plane to AP_Landing 2016-11-25 19:07:30 -08:00
Tom Pittenger fa991297db Plane: create new "LAND_" param block for AP_Landing 2016-11-25 19:07:30 -08:00
Tom Pittenger e919afad1e Plane: update comment and remove redundant work
- update_flight_stage is already called within restart_landing_sequence()
2016-11-25 19:07:30 -08:00
Tom Pittenger 1b0a263761 Plane: remove landing.cpp entirely 2016-11-25 19:07:30 -08:00
Tom Pittenger fc2f518f31 Plane: revert auto_state.checked_for_autoland back to Plane 2016-11-25 19:07:30 -08:00
Tom Pittenger db42252168 Plane: port the rest of plane/landing.cpp to AP_Landing 2016-11-25 19:07:30 -08:00
Tom Pittenger 9a79b79f1e AP_Landing: port more from plane 2016-11-25 19:07:30 -08:00
Tom Pittenger 10027b21d6 Plane/AP_Landing: port setup_landing_glide_slope() 2016-11-25 19:07:30 -08:00
Tom Pittenger f556f705e6 Plane: move various g params to aparms 2016-11-25 19:07:30 -08:00
Tom Pittenger 5dbb2d4c2a Plane: move two functions out of landing.cpp
- these two functions will be hard to port to AP_Landing due to complex dependancies so we'll defer them by moving them ArduPlane.cpp
2016-11-25 19:07:30 -08:00
Tom Pittenger d2376b7c8b Plane: migrate two helper functions to AP_Landing
- move functions restart_landing_sequence() and jump_to_landing_sequence() to AP_Landing
- NOTE: jump_to function can not set mode, so it is now done externally in vehicle
2016-11-25 19:07:30 -08:00
Tom Pittenger 896b931a7c Plane: Move auto_state variables to AP_landing members 2016-11-25 19:07:30 -08:00
Tom Pittenger 61b02cb41d AP_Landing: add new library for fixed wing landing abstraction 2016-11-25 19:07:30 -08:00
Tom Pittenger ce8db1fdba Plane: move struct Rangefinder_State to AP_Vehicle 2016-11-25 19:07:30 -08:00
Tom Pittenger 0ffeed644c Plane: remove define RANGEFINDER_ENABLED - always enabled 2016-11-25 19:07:30 -08:00
murata 0ee8edc29d Plane: Change from printf statement to print, println statement. 2016-11-25 15:57:15 -08:00
Francisco Ferreira 4c8d151190 Plane: support MAV_CMD_ACCELCAL_VEHICLE_POS 2016-11-15 11:42:54 -08:00
Michael du Breuil 4dae7a6f3d Plane: Simplify parameters
Remove a lot of cases where @Values and @Bitmask were encoding the same
information. @Value should only be used with @Bitmask when it is being
used to present a series of reasonable defaults that is some hybrid of
the @Bitmask fields. Enumerating each bit as 1, 2, 4, 8 is of no value.
2016-11-13 11:53:19 -08:00
Andrew Tridgell 5ed8418305 Plane: move radio init after boardconfig init
to ensure px4io is setup first
2016-11-13 14:55:35 +11:00
Tom Pittenger d12a55f33c Plane: fixed spelling
fixed spellling in gcs msg
2016-11-11 01:17:59 -08:00
Andrew Tridgell cb57945e9e Plane: use handle_common_message() 2016-11-09 17:08:09 +11:00
floaledm 6dc71beb1e Plane: move AP_Frsky_Telem for waf to ardupilotwaf 2016-11-08 07:42:39 +11:00
floaledm b2a6b93d30 Plane: send ahrs groundspeed estimate instead of GPS groundspeed in VFR_HUD message 2016-11-07 09:14:28 +11:00
floaledm bae9ce20c1 Plane: update sensor status error flags independently of sending a sys_status message 2016-11-02 08:36:58 +11:00
murata ab99ea54eb Plane: To nullptr from NULL. 2016-10-29 10:32:05 -03:00
Peter Barker 98ae6c776a Plane: support for AP_Stats (flight time, bootcount, runtime) 2016-10-29 14:53:25 +09:00
Peter Barker 33b7750c7d Plane: remove duplicate parameter metadata 2016-10-27 09:15:03 -07:00
Andrew Tridgell b65c559558 Plane: updates for EKF API changes 2016-10-27 17:09:06 +11:00
priseborough 72db2ebd81 Plane: Add compensation for optical flow sensor body position offset 2016-10-27 14:54:42 +11:00
expntly 0d1e50b50b Plane: fix typo, check wp_nav is initialized 2016-10-27 14:39:50 +11:00
Michael du Breuil fd24e944b8 Plane: Allow compass calibrator to manage size of buffer 2016-10-27 14:04:33 +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 5ac62c27e2 Plane: reduce change of false rangefinder readings triggering a flare
This doesn't count repeated readings towards the rangefinder count,
and resets the counter if the change is more than 20% of full
range. This greatly reduces the impact of poor sonar sensors for
landing
2016-10-23 15:53:12 +11:00
Andrew Tridgell 32a74e37d2 Plane: update version to 3.8.0beta1 2016-10-21 13:16:36 +11:00
Andrew Tridgell 8dd122e6df Plane: updated release notes for 3.7.1 2016-10-21 13:15:51 +11:00
Ricardo de Almeida Gonzaga 3d1db89655 ArduPlane: Fix typos 2016-10-20 08:14:37 -07:00
Andrew Tridgell 15d6c77087 Plane: fixed vtail rudder only planes 2016-10-20 17:49:05 +11:00
Tom Pittenger 350ed20460 Plane: ensure rangefinder last_time resets
ensure rangefinder_state.last_correction_time_ms resets to zero via memset(&rangefinder_state, 0..)
2016-10-17 14:34:00 -07:00
William Liu 8a64106faa Plane: return false when throttle is not suppressed 2016-10-17 09:50:25 +11:00
Ferrin Benjamin Katz 38581669ec Plane: slow down home update
Moved the code theat updates the home position while the aircraft is
unarmed from 10hz loop to one second loop and ensured that is does not
update more then once every 5 seconds. Closes issue 4311.
2016-10-17 09:50:25 +11:00
Andrew Tridgell c3aaff122b Plane: fixed startup order of setting mavlink system ID 2016-10-17 09:20:55 +11:00
Andrew Tridgell 5724aef8b3 Plane: support automatic servo trimming
now that we have separated RC input from servo output with
SERVO_RNG_ENABLE=1 we can do full automatic servo trimming as an
option
2016-10-16 15:20:47 +11:00
Andrew Tridgell 70375720f3 Plane: fixed throttle slew handling with SERVO_RNG_ENABLE=1 2016-10-15 21:42:39 +11:00
Andrew Tridgell 29f4fe2398 Plane: fixed accel based launch with timer enabled
when both timer and accel set should meet both conditions
2016-10-15 21:42:38 +11:00
Andrew Tridgell 6878a9a270 Plane: use handle_rc_bind 2016-10-15 21:42:38 +11:00
Andrew Tridgell 3a8e38ee12 Plane: added SYSID_ENFORCE parameter
this allows safer sharing of telemetry links between aircraft
2016-10-15 17:12:13 +11:00
Andrew Tridgell be1109174e Plane: apply elevon and vtail mixers after SRV_Channel remap
this is needed to ensure that changes in RCn_MIN/MAX don't cause
changes in the output handling for elevon nd vtail planes
2016-10-15 16:59:36 +11:00
Andrew Tridgell a369b4833a Plane: fixed throttle channel during startup failsafe 2016-10-15 16:59:36 +11:00
Andrew Tridgell d49f50db4b Plane: don't output aux channels on termination 2016-10-15 16:59:36 +11:00
Andrew Tridgell 856b4f4d14 Plane: disable AUX passthrough during termination 2016-10-15 16:59:36 +11:00
Andrew Tridgell 57ddc8f58f Plane: use SRV_Channels set_esc_scaling()
this fixes throttle range on Disco with SERVO_RNG_ENABLE=1
2016-10-15 16:59:36 +11:00
Andrew Tridgell fcd98e2c44 Plane: implement AUTO_TRIM for SERVO_RNG_ENABLE=1
automatically adjust servo trims
2016-10-15 16:59:35 +11:00
Andrew Tridgell a23c373f16 Plane: fixed servo mixing for AFS and failsafe case 2016-10-15 16:59:35 +11:00
Andrew Tridgell 8170df7ba8 Plane: added servo remapping object 2016-10-15 16:59:35 +11:00
Andrew Tridgell c7f738c284 Plane: separate out the output channel mixing
this provides a framework for other output mixing types
2016-10-15 16:59:35 +11:00
Andrew Tridgell eb67c97bb2 Plane: split out flap output functions 2016-10-15 16:59:34 +11:00
Andrew Tridgell a2cdd75870 Plane: removed THROTTLE_OUT define
this can be achieved with THR_MAX parameter instead
2016-10-15 16:59:34 +11:00
Andrew Tridgell 40c6ebf61a Plane: refactor more of servos output code to be easier to read 2016-10-15 16:59:34 +11:00
Andrew Tridgell 6aa3ded666 Plane: split main servo output functions into a separate file 2016-10-15 16:59:34 +11:00
Andrew Tridgell b5a2bf2c6f Plane: only revert a tuning parameter if it has been set
fixes a 2nd transmitter tuning bug found by expntly
2016-10-14 08:34:54 +11:00
Randy Mackay f0f4322500 Plane: add AP_Proximity to build
Required because quadplane uses copter's navigation libraries which interact with AC_Avoidance which now supports AP_Proximity
2016-10-13 20:21:07 +09:00
Randy Mackay 574976a3b7 Plane: include AP_Proximity in quadplane 2016-10-13 20:21:07 +09:00
Andrew Tridgell 70265f9100 Plane: fixed bug in transmitter tuning
This bug affects transmitter tuning of parameters that have never been
saved to eeprom and don't have a default value in the AP_Param
tables. When reverting these parameters became zero which could lead
to a crash

many thanks to expntly for finding this bug!
2016-10-13 22:08:13 +11:00
Andrew Tridgell a2aa89dc1e Plane: deprecate RC_CHANNELS_RAW 2016-10-13 21:23:56 +11:00
Andrew Tridgell 0445b51143 Plane: fixed throttle slew rate in manual for quadplanes 2016-10-12 09:55:37 +11:00
Michael du Breuil 05d0696b0d Plane: Support GPS_RTCM_DATA 2016-10-11 11:00:36 +11:00
Andrew Tridgell 2b144d5c3d Plane: allow rudder arming in CRUISE and FBWB modes 2016-10-08 08:01:55 +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
murata 2f18d1de73 Plane: To add a judgment of 0 degrees longitude. 2016-10-04 08:15:23 -07: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
Lucas De Marchi 0f000efc6f ArduPlane: Fix use of logical op instead of bitwise op
../../ArduCopter/GCS_Mavlink.cpp: In member function 'void Copter::send_extended_status1(mavlink_channel_t)':
../../ArduCopter/GCS_Mavlink.cpp:281:37: error: suggest parentheses around operand of '!' or change '&' to '&&' or '!' to '~' [-Werror=parentheses]
     uint32_t sensors_error_flags = !control_sensors_health & control_sensors_enabled & control_sensors_present;
                                     ^
compilation terminated due to -Wfatal-errors.
cc1plus: all warnings being treated as errors

Thanks to Ralph Campbell <ralphcampbell1@gmail.com> for the bug report.
2016-09-29 11:36:23 -03:00
Andrew Tridgell 841828541d Plane: fixed auto ICE engine cut in QLAND final 2016-09-29 05:18:55 +10:00
Pierre Kancir 64a2fca812 Arduplane: simply invalid cmd msg 2016-09-27 07:45:48 -07:00
Pierre Kancir 04ee4141e0 ArduPlane: uniformize verify_command
Add all handle message,
Change MAV_CMD_NAV_ROI to MAV_CMD_DO_SET_ROI
Reformate comments,
2016-09-27 07:45:48 -07:00
Andrew Tridgell 6d09897b19 Plane: fixed VTOL motor termination in AFS 2016-09-27 11:53:45 +10:00
Peter Barker 31321b3b60 Plane: log to dataflash statustext messages from my_gcs 2016-09-26 00:06:07 -07:00
Tom Pittenger 94f83c3e78 Plane: frsky telem init to utilize default arguments 2016-09-25 10:42:02 -07:00
floaledm 4f6a8a017c Plane: consolidate into a single frsky.init() 2016-09-25 10:42:02 -07:00
floaledm 68df5b7606 Plane: change sensor health check to prevent false positive 2016-09-22 13:56:59 -05:00
Tom Pittenger b8d53e1c58 Plane: change how is_flying bool is assignment in fysky lib
Florent had this correct on his PR but I incorrectly advised him to change it. This commit changes it back to his original method which was correct.
2016-09-21 15:38:58 -07:00
floaledm 0b666d4933 Plane: Plane support for Frsky passthrough protocol 2016-09-21 12:12:37 -07: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 08dc5fab12 Plane: fixed pilot throttle based motor test 2016-09-15 18:09:35 +10:00
Andrew Tridgell d6890495aa Plane: added swapped channel version of elevon/vtail/flaperon output
this makes it possible to setup an elevon plane without changing the
transmitter reversals
2016-09-14 11:48:05 +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 2e240699e6 Plane: final release notes for 3.7.0 2016-09-09 10:13:38 +10:00
Tom Pittenger e13d5fa0bf ArduPlane: updated Mixer error message 2016-09-06 00:25:15 -07:00
Michael du Breuil f0247a7be1 Plane: always check that the mixer has been configured as arming check 2016-09-06 00:03:13 -07:00
Michael du Breuil d0da7411b2 Plane: Fetch mixer status for assessing mixer success 2016-09-06 08:42:16 +10:00
Andrew Tridgell d50bf93ac9 Plane: update 3.7.0 release notes 2016-09-06 07:11:13 +10:00
Michael du Breuil 2843e266b5 Plane: Return RESULT_FAILED for GET_CMD_HOME if home is unset 2016-09-03 16:54:14 +09:00
Andrew Tridgell d149a2e613 Plane: updated release notes for 3.7.0 2016-09-02 16:52:24 +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 47c030c4a8 Plane: prepare for 3.7.0beta1 release 2016-08-30 08:39:56 +10: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
Randy Mackay d3f8b1b846 Plane: TELEM_DELAY parameter range to 30sec
No functional change
2016-08-29 15:29:18 +09:00
Andrew Tridgell a0fb426a34 Plane: fixes for Fraky_Telem API changes 2016-08-25 10:16:20 +10:00
Andrew Tridgell a5f20d8c44 Plane: fix for AP_FrSky_Telem API change 2016-08-25 10:16:19 +10:00
floaledm 43006a31a3 Plane: compatibility with revised AP_Frsky_Telem class 2016-08-25 10:16:18 +10:00
floaledm 71921f3aa4 Plane: removed frsky_telemetry_send scheduled task 2016-08-25 10:16:17 +10:00
murata e6bef2526c Plane: By multiple bit synthetic, can this method once access. 2016-08-24 11:27:27 -03:00
murata 0e17cff099 Plane: if statements is simple. 2016-08-24 11:26:28 -03:00
Gustavo Jose de Sousa b8e518a533 waf: use ap_library tool
That way we avoid recompiling source files that don't depend on vehicles.
Change notes:
- UTILITY_SOURCE_EXTS: moved to ap_library
- Task generators indexes: ap_library handles that now and in a better way
- Use of AP_STLIB_FEATURES: it doesn't make sense anymore, since the stlib
  taskgen has empty source list
- Flags and defines: passed down to ap_library through AP_LIBRARIES_OBJECTS_KW
- Set use='mavlink' in AP_LIBRARIES_OBJECTS_KW instead of calls to
  bld.ap_stlib().
2016-08-24 10:46:23 -03:00
Andrew Tridgell d26af6c25b Plane: change is_flying() groundspeed threshold to 1.5m/s 2016-08-23 12:50:41 +10:00
Andrew Tridgell cbbc4d6774 Plane: don't flare due to crash detection unless crash detection enabled
this fixes the issue in this bug report:

http://discuss.ardupilot.org/t/auto-landing-bug-crash-with-3d-video-and-logs-ardupilot-3-6-0
2016-08-23 12:19:03 +10:00
Tom Pittenger 2da33e41e9 Plane: add Avoid_ADSB support to plane 2016-08-17 22:38:54 -07:00
Tom Pittenger b187e1f9a6 Plane: add reason to set_mode() 2016-08-17 22:38:54 -07:00
Tom Pittenger 285e41bac6 Plane: add avoidance_adsb framework for object avoidance 2016-08-17 22:38:54 -07:00
Tom Pittenger 399fa195bb Plane: add comment to FLTMODE param to include AVOID_ADSB 2016-08-17 22:38:54 -07:00
Tom Pittenger ca32bcc58d Plane: add new flight mode AVOID_ADSB to mimic GUIDED 2016-08-17 22:38:54 -07:00
Tom Pittenger c4460a285c Plane: remove adsb sensor library based avoidance
adsb based avoidance has been moved to AP_Avoidance library
2016-08-17 22:38:54 -07:00
Tom Pittenger 8b021c2498 Plane: pre-arm check includes adsb failsafe 2016-08-17 22:38:54 -07:00
Tom Pittenger fa326de7fa Plane: add adsb to failsafe structure and report in heartbeat to GCS 2016-08-17 22:38:54 -07:00
Tom Pittenger b564616db0 Plane: GCS_MAVLink passes packets to AP_Avoidance
This allows treating GLOBAL_POSITION_INT packets from other vehicles in the same way as ADSB packets
2016-08-17 22:38:54 -07:00
Tom Pittenger 46ec812d6c Plane: add AP_Avoidance to build 2016-08-17 22:38:54 -07:00
Tom Pittenger 7445fac577 Plane: move mavlink msg handling into library 2016-08-16 16:33:36 -07:00
Andrew Tridgell d482c7f4b7 Plane: decode correct ADSB packet 2016-08-16 16:33:36 -07:00
Andrew Tridgell c4c7a3051a Plane: added support for secondary throttles 2016-08-16 16:14:48 +10:00
Andrew Tridgell 7ce7eb5a60 Plane: added Q modes to parameter docs 2016-08-16 13:15:41 +10:00
Andrew Tridgell b29b609bcc Plane: added AFS support for quadplanes 2016-08-16 12:56:12 +10:00
Andrew Tridgell adb5a3ee1f Plane: re-work AFS for new AP_AdvancedFailsafe API 2016-08-16 12:55:51 +10:00
Andrew Tridgell 5d6dfd927b Plane: changes for AP_AdvancedFailsafe naming 2016-08-16 12:55:50 +10:00
Andrew Tridgell b357a254f6 Plane: use force_safety_no_wait() when re-enabling safety off in mixer 2016-08-16 12:53:34 +10:00
Andrew Tridgell 31fb4cc427 Plane: force trims for VTOL motors 2016-08-16 12:53:34 +10:00
Andrew Tridgell 76b6cbbda1 Plane: prevent motor startup on reboot in quadplanes
we need to prevent RC overrides within px4io from running
2016-08-16 12:53:34 +10:00
Peter Barker cb7686001f Plane: add dataflash as a bit for the mavlink SYS_STATUS message 2016-08-11 17:48:44 -03:00
Andrew Tridgell 82382a7e9c Plane: changed startup order
this allows BoardConfig to report errors in a way that allows for
BRD_TYPE to be changed by the user
2016-08-10 19:54:01 +10:00
Tom Pittenger e0136dc545 Plane: remove AP_Vehicle::FixedWing dependency in ap_airspeed 2016-08-08 00:02:42 -07:00
Tom Pittenger f85fc7c1dc Plane: pass in max airspeed via function call instead of using aparm 2016-08-08 00:02:42 -07: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
Tom Pittenger 8dad05d12e Revert "Airspeed: store reference in libraries and populate it"
This reverts commit c090ba2257.
2016-08-07 17:54:24 -07:00
Tom Pittenger 5fd3c79202 Plane: Fix typos 2016-08-04 11:42:41 -07:00
Ricardo de Almeida Gonzaga 7a9fe95ccb ArduPlane: Fix typos 2016-08-04 11:41:18 -07:00
Tom Pittenger c090ba2257 Airspeed: store reference in libraries and populate it
- also had to move the initial definition in plane.h so it happened before the others.
2016-08-04 11:06:44 -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
Gustavo Jose de Sousa f2dec971e7 waf: add "ap_" prefix to keywords "libraries" and "vehicle"
As an effort to keep things specific to ardupilot API in the build system
consistent and easy way to identify.
2016-08-01 22:04:16 -03:00
Tom Pittenger f90957e7ed Plane: remove all threat logic in adsb lib in favor of avoidance lib 2016-08-01 15:27:41 -07:00
mirkix 5f5c200625 ArduPlane: Fix filename in header 2016-07-28 18:24:24 -03:00
Lucas De Marchi c27ebd10c2 ArduPlane: Remove i2c lockup count
This was returned only for a single bus and on all supported platforms
this is hardcoded to 0.
2016-07-28 18:03:09 -03: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 37f71bc6d6 AP_Mission: support DO_ENGINE_CONTROL 2016-07-25 10:06:03 +10:00
Andrew Tridgell 327a057ee0 Plane: added internal combustion engine support
this allows for automatic engine start and restart
2016-07-25 10:06:03 +10:00
Andrew Tridgell 02babb71b3 ArduPlane: adjust for 16 channels in SERVO_OUTPUT_RAW 2016-07-25 10:06:02 +10:00
Andrew Tridgell 9602d208a2 Plane: fixed disarm by rudder in quadplane 2016-07-25 06:08:36 +10:00
Tom Pittenger 3f195df9f0 Plane: handle ADSB-Out packets 2016-07-22 13:38:58 -07:00
Tom Pittenger 5c3cca7911 Plane: handle incoming ADSB transceiver packet 2016-07-22 12:20:39 -07:00
Andrew Tridgell 3f0a8d1761 Plane: added AP_Button support for plane
this also adds the g2 parameter table
2016-07-22 15:01:20 +10:00
Andrew Tridgell 7b147e3941 Plane: handle PLAY_TUNE message 2016-07-22 15:00:17 +10:00
Grant Morphett b8011fd46c Rover|Plane: Just fixing a spelling mistake. 2016-07-22 08:23:07 +10:00
Tom Pittenger 3177dc2f31 Plane: ADSB service needs to run at 10Hz for dynamic ADSB data 2016-07-20 22:46:51 -07:00
Tom Pittenger ab38b12f2c Plane: adsb specific status updates 2016-07-20 22:40:14 -07:00
Tom Pittenger 26efd90603 Plane: allow landing height adjustment on wp before land (aka approach wp) 2016-07-20 22:29:31 -07:00
Andrew Tridgell 4da3236c07 Plane: separate out landing height adjustment from barometer changes
this stores a landing height adjustment for an aborted landing
without adjusting barometer readings, applying them only on landing
2016-07-20 22:04:21 -07:00
Andrew Tridgell 9e812d3bda Plane: don't auto-update home and baro on large height change
if we land at a remote location with a different height we should not
update baro and home. This also prevents us updating baro and home if
we disarm in flight
2016-07-20 13:22:00 +10:00
Andrew Tridgell 569cc1c108 Plane: support the LED_CONTROL MAVLink message 2016-07-19 13:37:14 +10:00
Tom Pittenger 601ab9dad0 Plane: remove GCS send_statustext spam
Plane: remove GCS send_statustext spam when recalculating glide slope
2016-07-18 18:56:59 -07:00
Allan Matthew c479fcab39 Plane: support GPS_INPUT mavlink message 2016-07-12 15:35:09 +09:00
Tom Pittenger 7751bee3be Revert "Plane: coverity scan - variables not initialized in constructor"
This reverts commit 9b807fa8a5.
2016-07-11 22:02:30 -07:00
Andrew Tridgell e8976d3a89 Plane: check for optflow enable in more places 2016-07-12 09:05:52 +10:00
mirkix d018a32545 Plane: Only init optflow when enabled by parameter 2016-07-12 09:00:46 +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 b6f58bdd98 Plane: don't give tuning errors when VTOL inactive 2016-07-06 14:41:49 +10:00
Tom Pittenger 9b807fa8a5 Plane: coverity scan - variables not initialized in constructor 2016-07-05 13:31:51 -07:00
Andrew Tridgell 96d785f1c6 Plane: added auto_navigation_mode flag
this fixes a problem where modes like loiter and auto would allow for
rudder stick mixing even with STICK_MIXING=0
2016-07-05 12:52:13 +10:00
Randy Mackay 2484486999 Plane: log rally points on startup 2016-07-04 11:17:15 +09:00
Tom Pittenger 0597dbd033 Plane: allow SET_ATTITUDE_TARGET to set rpy and throttle 2016-07-01 08:28:53 -07:00
Tom Pittenger 85afd9e245 Plane: remove guided roll flag, handle it with timer=0 2016-06-30 07:48:37 -07:00
Michael Day 8ac433f991 Plane: Can now command roll from a companion computer. 2016-06-30 10:27:44 -04:00
Andrew Tridgell ec367d4a09 Plane: re-order channel initialisation
this fixes a problem with spurious throttle output during board
startup. Many thanks to Marco for finding this!
2016-06-30 16:48:30 +10:00
Andrew Tridgell 8fd31111ad Plane: fixed waf build with tricopter quadplane 2016-06-30 14:16:52 +10:00
Andrew Tridgell bf2e30f858 Plane: removed demo_servos()
this really didn't help much and slows down startup
2016-06-27 10:19:26 +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
Andrew Tridgell 1256c2f351 Plane: changed for AP_Vehicle API change 2016-06-24 11:39:23 +10:00
Tom Pittenger d2365c25c6 Plane: increase update_waypoint() distance threshold during update_loiter()
- outside this radius of a loiter waypoint is where crosstracking is available
2016-06-23 12:43:03 -07:00
Andrew Tridgell f514e76f52 Plane: reset ground_start_count if we lose 3D fix
thanks to Michael for this suggestion
2016-06-22 21:25:11 +10:00
Randy Mackay 82bd847e11 Plane: add AC_Avoidance, AC_Fence to build 2016-06-22 11:38:15 +09:00
Randy Mackay 9201a57c83 QuadPlane: include AC_Avoidance, AC_Fence
This is required because of AC_WPNav's use of the new avoidance library to stop at the fence
2016-06-22 11:38:15 +09:00
Tom Pittenger 9b973fb899 Plane: add ADSB_streamrate 2016-06-19 11:24:31 -07:00
Randy Mackay ef1385c9ed QuadPlane: add comment that eeprom 28 and 41 were used for THR_MIN, MID 2016-06-18 11:55:49 +09:00
Randy Mackay 413f82bac1 Plane: remove unused definitions 2016-06-18 11:55:49 +09:00
Randy Mackay b456a38432 QuadPlane: remove throttle_mid
motor's hover throttle is automatically updated
2016-06-18 11:55:49 +09:00
Randy Mackay 2523ba892b QuadPlane: set attitude vs throttle priority in attitude controller 2016-06-18 11:55:49 +09:00
Randy Mackay f2b0f09d6f QuadPlane: remove THR_MIN 2016-06-18 11:55:49 +09:00
Tom Pittenger f05c698176 Plane: fix compile error for RANGEFINDER_ENABLED
Plane: #define check for rangefinder enabled in relative_ground_altitude()
2016-06-16 14:19:10 -07:00
Andrew Tridgell 40db90cebe Plane: limit roll and pitch to Q_ANGLE_MAX in Q modes
planes often have large LIM_ROLL_CD
2016-06-16 22:00:04 +10:00
Andrew Tridgell b1b73e2d99 Plane: improved quadplane landing detector
look for no vertical position change for 5s as well as low motors
2016-06-16 18:17:56 +10:00
Tom Pittenger 773962940c Plane: quadplane for fwd_throttle integrator inhibit reverse thrust and allow min>0 for petrol 2016-06-13 14:31:50 -07:00
Tom Pittenger b6196dfa92 Plane: compiler warning in print: float to double promotion 2016-06-13 14:03:40 -07:00
Andrew Tridgell 107691b7a7 Plane: fixed initial descent rate in quadplane auto land 2016-06-11 14:37:44 +10:00
Andrew Tridgell f8e0e91cbd Plane: prepare for 3.6.0 2016-06-11 09:20:05 +10:00
Andrew Tridgell eb8cd13a50 Plane: update release notes for 3.6.0 2016-06-11 09:19:13 +10:00
Andrew Tridgell e05c7b3367 Plane: check if terrain following is enabled in AGL calculation 2016-06-10 17:48:32 +10:00
Andrew Tridgell 19834c12e2 Plane: log start of quadplane transition 2016-06-10 17:48:32 +10:00
Andrew Tridgell 8156b3f7de Plane: fixed quadplane landing transition altitude 2016-06-10 17:48:32 +10:00
Andrew Tridgell 07564aa03f Plane: fixed an attitude control bug in quadplane transition
The motors would briefly spike at the end of the transition which
could cause a major pitch deviation
2016-06-10 17:48:32 +10:00
Tom Pittenger 69f29b51d1 Plane: new param Q_VFWD_ALT to disable VFWD motor below this altitude. Also uses rangefinder 2016-06-10 17:48:31 +10:00
Andrew Tridgell 021aebeac0 Plane: check for high ratio of rmsD to rmsP in tuning 2016-06-10 17:48:31 +10:00
Tom Pittenger 65e0e31a7a Plane: parachute low-alt check should not require auto mode to ever be set 2016-06-08 08:15:11 -07:00
Tom Pittenger 204abfd45e Plane: set heartbeat.system_status to Critical for low-battery failsafe events 2016-06-07 17:14:51 -07:00
Tom Pittenger 263931b4b1 Plane: allow manual parachute releases on the ground 2016-06-07 09:02:09 -07:00
Tom Pittenger ef3d17cc4c Plane: parachute code can not rely on is_flying() because it is unreliable in a stalled aircraft 2016-06-07 09:01:29 -07:00
Tom Pittenger 3140ce6ab6 Plane: change MAVLINK_MSG_ID_SET_POSITION_TARGET_GLOBAL_INT gcs msg to remove abbreviations. Hope it fits! 2016-06-07 08:28:35 -07:00
Tom Pittenger bd270720da Plane: whitespace formatting 2016-06-07 08:27:40 -07:00
Michael Day 429e348824 Plane: Can now change current WP alt via mavlink.
Uses the mavlink msg SET_POSITION_TARGET_GLOBAL_INT
2016-06-07 08:16:39 -07:00
Tom Pittenger 01e636065d Plane: non-functional: mostly whitespace and removed extra set result statement 2016-06-07 08:11:05 -07:00
Michael Day 2c0f0a04d8 Plane: Only allow speed changes in GUIDED and AUTO modes. 2016-06-07 08:22:44 -04:00
Michael Day cdeef9d692 Plane: Fence breaches can go to RTL mode with new FENCE_ACTION setting. 2016-06-07 15:46:52 +10:00
E Thomas 7d824247af Differential spoilers support, elevon offset
Fixed differential spoilers support, added elevon offset
See PR #2935
2016-06-06 21:55:50 -07:00
Michael du Breuil 037a7980d6 Plane: fix calculation of override PWM 2016-06-06 16:23:43 -07:00
Tom Pittenger ee29f38cdf Plane: moved takeoff flap check to NORMAL checks.
TODP: add new flight stage FLIGHT_PRE_TAKEOFF to put this sort of thing into
2016-06-06 14:51:24 -07:00
Samuel Rosenstein 296b279f0d Plane: fixed issue with preflight flaps. Flaps now go down in preflight mode 2016-06-06 14:18:44 -07:00
Michael du Breuil 41bb237799 Plane: remove throttle surpressed message 2016-06-06 15:24:18 +10:00
Andrew Tridgell 5a544002cb Plane: fixed memory leak in mixer setup 2016-06-06 15:21:17 +10:00
Michael du Breuil bb9086b87f Plane: setup mixer in the one second loop when disarmed 2016-06-06 15:17:37 +10:00
Michael du Breuil fc3ab7b691 Plane: rename var to avoid a var with the name of a c++ keyword 2016-06-06 15:17:15 +10:00
Andrew Tridgell c54d553df1 Plane: prevent continually loading the mixer 2016-06-06 15:14:28 +10:00
Michael du Breuil 7f73da535a Plane: if setting a mixer fails then clear the last crc so that it will be attempted again 2016-06-06 07:50:43 +10:00
Andrew Tridgell eae2bf54ca Plane: fixed gcc 6.1 build error 2016-06-06 07:43:45 +10:00
Andrew Tridgell 8d3a58f0a2 Plane: allow tuning of more parameter sets 2016-06-04 19:20:31 +10:00
Andrew Tridgell 835235127c Plane: prevent divide by zero in SITL
harmless on PX4
2016-06-04 19:20:18 +10:00
Tom Pittenger b9cee76bbe Plane: fix quadplane integrator to always clip to at least 0 to throttle_max 2016-06-03 23:46:18 -07:00
Tom Pittenger 82763ec8a9 Plane quadplane to use relative_ground_altitude() to take advantage of rangefinder easier 2016-06-03 23:44:21 -07:00
Tom Pittenger f3ceee5389 Plane: use relative_ground_altitude 2016-06-03 23:43:54 -07:00
Tom Pittenger b3f182157c Plane: take advantage of rangefinder support in relative_ground_altitude() 2016-06-03 23:43:43 -07:00
Andrew Tridgell 77b7852ff0 Plane: adjust recommend ranges for quadplane Q_VFWD_GAIN and Q_WVANE_GAIN 2016-06-04 11:04:15 +10:00
Tom Pittenger a596aa5907 Plane: do not log CURR.Throttle because it's already logged elsewhere 2016-06-02 16:59:13 -07:00
Tom Pittenger f83a6ca1ff Plane: fixed variable misspelling 2016-06-02 15:10:51 -07:00
Andrew Tridgell 978a89efa6 Plane: added new ESC calibration method 2016-06-02 18:10:37 +10:00
Andrew Tridgell 860587ece7 Plane: disable parachute checks when min alt is zero 2016-06-02 18:07:16 +10:00
Peter Barker ee5290c178 Plane: avoid switch statement for enabling fence if no fence present 2016-06-02 14:37:21 +10:00
Tom Pittenger 954c987075 Plane: do not parse GEOFENCE packets when geofence is disabled via compile option 2016-06-01 17:38:52 -07:00
Tom Pittenger af1407a155 Plane: disable parachute code when not enabled via compile option 2016-06-01 17:38:51 -07:00
Tom Pittenger ea9e39212f Plane: use new check_latlng helper 2016-06-01 17:38:51 -07:00
Andrew Tridgell da5ce37bbc Plane: fixed gain on -ve stick mixing past 50%
fixed a sign error in calculating gain on -ve stick mixing beyond 50%
input

thanks to Doug Weibel for a log that showed this effect
2016-06-02 08:07:55 +10:00
Andrew Tridgell b17c800f44 Plane: use axis specific tuning controller error
this gives user feedback on the axis they are tuning
2016-06-01 17:19:33 +10:00
Tom Pittenger a80a87eb09 Plane: simplify TECS prep logic by utilizing auto_state.land_in_progress 2016-05-31 09:46:52 -07:00
Tom Pittenger 4db5b80b37 Plane: add flag for auto_state.land_in_progress 2016-05-31 09:46:51 -07:00
Tom Pittenger 4ebaab86ec Plane: override is_flying for quadplane 2016-05-31 09:46:50 -07:00
Peter Barker 28361afc2a Plane: move telemetry_delayed up into base class 2016-05-31 08:46:09 +10:00
Peter Barker 9ee62aac30 Plane: move adjust_rate_for_stream up 2016-05-29 19:38:50 +10:00
Peter Barker af5a52e2aa Plane: subclass GCS_MAVLink in place of defining its functions for it 2016-05-29 16:21:21 +10:00
Andrew Tridgell f96836ab9a Plane: prevent a discrepancy between EKF origin and home for altitude 2016-05-29 15:47:26 +10:00
Andrew Tridgell ba3576f027 Plane: added tuning error reporting for quadplanes 2016-05-28 17:33:30 +10:00
Andrew Tridgell b56d784ae4 Plane: limit to zero pitch in quadplane on initial transition 2016-05-28 15:08:46 +10:00
Andrew Tridgell 20cf326093 Plane: lower throttle threshold for quadplane is_flying 2016-05-28 07:10:13 +10:00
Tom Pittenger e3930b45df Plane: force the safety_state immediately because we want it to be in effect while we make mixer changes 2016-05-27 21:34:40 +10:00
Tom Pittenger 4785650c95 Plane: remove redundant calls to safety_state 2016-05-27 21:34:40 +10:00
Andrew Tridgell 9933069679 Plane: fixed motor test by percentage in quadplane 2016-05-27 11:53:20 +10:00
Andrew Tridgell 191d6df0ea Plane: moved EKF2 to a new parameter index
the meanings of many of the parameters have changed. Best to use a new
index to prevent old parameters from causing crashes
2016-05-25 19:35:17 +10:00
Andrew Tridgell 6e4c0dd3d7 Plane: allow non-blocking calibrations while armed 2016-05-24 17:10:41 +10:00
Andrew Tridgell 0f50f483b8 Plane: update for new airspeed calibration 2016-05-24 17:00:56 +10:00
Andrew Tridgell d3494d1369 Plane: don't stall EKF during baro cal 2016-05-24 17:00:56 +10:00
Andrew Tridgell 5b4bbf08fd Plane: use send_heartbeat wrapper 2016-05-21 15:25:18 +10:00
Andrew Tridgell 4a7dea0c5b Plane: simplify UART setup 2016-05-21 15:25:16 +10:00
Andrew Tridgell 9f47e6417b Plane: always build with MAVLink2 headers 2016-05-21 15:25:16 +10:00
Andrew Tridgell 309dbef2ec Plane: fixed mavlink1 dependency on px4 2016-05-21 15:25:15 +10:00