Paul Riseborough
cd5714d059
ArduPlane: Allow EKF dead reckoning to continue after loss of GPS
2020-05-14 10:40:48 +10:00
Paul Riseborough
40cc5a5006
ArduPlane: Improve EKF failsafe in VTOL modes
...
Replicates Copter behaviour with a three step process if the EKF sustains a loss of navigation as detected by high GPS innovation test ratios:
1) Attempts a yaw reset using the GSF estimate if available
2) Attempts a lane switch
3) Falls back to a non-position mode
2020-05-14 10:40:48 +10:00
Peter Barker
f17ea78a6c
Plane: move sending of WIND message to GCS namespace
2020-05-05 10:29:13 +10:00
Peter Barker
e75fa6fb15
Plane: move sending of AOA_SSA message to GCS namespace
2020-05-05 10:29:13 +10:00
Iampete1
3ded030fa8
Plane: compensate forward throttle for battery voltage drop
2020-05-05 09:46:41 +10:00
Andrew Tridgell
156fe0846f
Plane: fixed plane landing gear to obey LGR_OPTIONS bits
...
we forced landing gear retract/deploy on takeoff and landing when we
should be following the options bits
2020-04-15 17:10:31 +10:00
Samuel Tabor
298088268a
Plane: Soaring, don't wait for heading if too low, and add timeout otherwise.
2020-04-08 09:11:54 +10:00
Rishabh
a76d0e3002
Plane: Remove SONR messages logging
2020-04-01 17:11:48 +11:00
Andrew Tridgell
9f92aad711
Plane: implement get and set target location
2020-03-12 08:36:40 +11:00
Peter Barker
5ff1630c63
ArduPlane: move initialisation of serial and gcs to AP_Vehicle
2020-02-25 11:50:55 +11:00
Peter Barker
58d45ef04a
Plane: let AP_Vehicle handle loop()
2020-02-06 14:41:06 +11:00
Peter Barker
a5a75e61da
ArduPlane: move some common init_ardupilot code up to AP_Vehicle
2020-01-28 11:34:51 +11:00
Peter Barker
a45abc7762
Plane: move setup method up to AP_Vehicle base class
2020-01-28 11:34:51 +11:00
Peter Barker
024c86bdab
Plane: let AP_Vehicle base class worry about scheduler delay callback
2020-01-21 11:37:28 +11:00
Tatsuya Yamaguchi
1f9f84044c
Plane: allow scripts to get modes
2020-01-14 11:16:29 +11:00
Peter Barker
71017cb288
Plane: vehicle parent class now instantiates AHRS
2019-12-02 09:16:22 +11:00
Andrew Tridgell
d872ca27ce
Plane: added dynamic harmonic notch support
2019-11-19 07:08:01 +08:00
Andrew Tridgell
2b27cd2ce9
Plane: Add EFI Support
2019-11-17 20:10:54 +11:00
Peter Barker
0626f1fc2f
Plane: stop providing current location to mount
2019-11-05 19:55:45 +11:00
Michael du Breuil
ee96ec7f0d
Plane: Support new AP_Vehicle::set_mode
2019-10-25 08:48:22 +08:00
Andrew Tridgell
ff400243e0
Plane: added a new TAKEOFF flight mode
...
takeoff then circle in direction of takeoff
2019-10-17 12:19:43 +11:00
Peter Barker
5d405896f8
Plane: move many members up to base class
2019-10-08 11:26:04 +11:00
Peter Barker
a252aad39b
Plane: become an AP_Vehicle
2019-10-08 11:26:04 +11:00
Michael du Breuil
562b155f63
Plane: Remove unused geofence enable reason
2019-09-23 17:31:33 -06:00
Michael du Breuil
af0dfb6d8b
Plane: Remove unneeded state from geofence
2019-09-23 17:31:33 -06:00
Andrew Tridgell
6572700baa
Plane: fixed an issue with landing on rising ground
...
when landing on rising ground we don't want to use the terrain look
fwd correction for the flare calculation as otherwise we will flare
too early (and thus too high)
2019-09-16 12:52:00 +10:00
Michael du Breuil
cf58f68e49
Plane: Rearrange header to save flash
...
Saves 392 bytes of flash on CubeBlack builds without increasing RAM
consumption at all. This also translates to a speed up as some of these
are looked up every loop multiple times.
2019-09-10 06:43:34 +10:00
Andrew Tridgell
296ce5a409
Plane: fixed throttle failsafe for FS_SHORT_ACTN=3
...
this is a replacement for #12043
many thanks to @Jaaaky for finding this issue
2019-08-26 17:20:24 +10:00
Andrew Tridgell
1b775c96f5
Plane: added rangefinder correction by terrain data
...
allows for landing approach with terrain changes
2019-08-06 09:36:02 +10:00
Peter Barker
7c88eb670c
Plane: RangeFinder uses AP_SerialManager singleton
2019-07-16 09:29:48 +10:00
Peter Barker
38e303389b
Plane: avoidance no longer takes ahrs in constructor
2019-07-16 09:29:48 +10:00
Peter Barker
769e862807
Plane: stop passing relay and ahrs into camera constructor
2019-07-09 09:32:39 +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
Peter Barker
3ab266b751
Plane: ServoRelayEvents uses Relay singleton
2019-07-03 23:59:24 -07:00
Michael du Breuil
1d379dd0b3
Plane: Update for AFS interface
2019-06-18 10:02:05 +10:00
Andrew Tridgell
5076058459
Plane: added FENCE_AUTOENABLE=3 option
...
this enables the fence when arming. If the vehicle is outside the
fence or it can't be enabled then arming fails
2019-06-11 06:58:47 +10:00
Peter Barker
400aa53654
Plane: move arming-related functionality into parent classes
...
Logging moves up
arming via mavlink moves up
arming via switch moves up
2019-05-30 07:37:30 +09:00
Tom Pittenger
6970a66cad
Plane: refactor stick_mixing to library
2019-05-03 13:14:11 -07:00
Vinicius Knabben
99ad94ec49
Plane: Added parachute release on critcal sink rate and battery failsafe actions
...
Signed-off-by: Vinicius Knabben <viniciusknabben@hotmail.com>
2019-04-30 10:04:58 +10:00
Peter Barker
ad16f31e11
Plane: call compass cal routine directly from sched table
2019-04-23 10:06:17 +10:00
Peter Barker
3a4cbdd41f
Plane: remove pointless update_notify shim
2019-04-11 05:31:43 -07:00
Michael du Breuil
ea031d720a
Plane: Fix RangeFinder init
2019-04-06 09:15:22 +11:00
Tom Pittenger
ade6281923
Plane: use #if ADVANCED_FAILSAFE == ENABLED just like Rover and Copter
2019-04-03 17:46:50 -07:00
Tom Pittenger
ca40c7f2d5
Plane: create afs_plane.h to match copter and rover structure
2019-04-03 17:46:50 -07:00
Tom Pittenger
0270c57530
Plane: massive refactor and creation of Mode class
2019-04-02 16:28:52 +11:00
Peter Barker
6c5c14381f
Plane: move devo telemetry handling to GCS
2019-03-19 14:39:14 +11:00
Peter Barker
1a55f0ffab
Plane: FrSky support has moved to GCS
2019-03-19 14:39:14 +11:00
Andrew Tridgell
3907466f9d
Plane: added TKOFF_TIMEOUT parameter
...
this allows for a timeout on auto-takeoff. This can be combined with
other takeoff parameters to allow the user to abort a hand-launch
after the motor has started without GCS interaction.
The 4m/s threshold is a bit arbitrary. We could make that a parameter
in the future if it is needed
2019-03-18 14:48:08 +11:00
Peter Barker
0edba9070f
Plane: move sending of RPM message up
2019-03-16 10:33:01 +09:00
Peter Barker
ca7566fff9
Plane: use enum class for ArmingMethod and ArmingRequired
2019-03-12 19:48:14 +11:00
Peter Barker
bd444d97dc
Plane: move sending of airspeed_autocal into AP_AirSpeed
2019-03-06 11:32:52 +11:00
Peter Barker
94899bd2ed
Plane: move sending of send_pid_tuning up
2019-03-05 10:41:56 +11:00
Andrew Tridgell
cd1f21b806
Plane: removed some px4 specific code and docs
2019-02-27 20:32:37 +11:00
Peter Barker
cdde2b7d64
Plane: Rally no longer takes ahrs in constructor
2019-02-20 18:03:38 +11:00
Peter Barker
34853fb1bf
Plane: move update_sensor_status_flags into GCS subclasses
2019-02-19 14:09:59 +11:00
Peter Barker
33541dcbf6
Plane: GCS_MAVLink takes care of mavlink capabilities
2019-02-19 13:14:52 +11:00
Peter Barker
5690a0ea4a
Plane: move try_send_message of nav_controller_output up
2019-02-19 10:08:00 +11:00
Mark Whitehorn
95b3a5bacd
ArduPlane: implement hover throttle learning for quadplanes
...
disable by default
check quadplane.enable in update_hover_learn
2019-02-16 19:04:13 -08:00
Peter Barker
b6bf8d8368
Plane: make setting of home boolean in preparation for sanity checks
2019-02-15 08:28:45 +11:00
Peter Barker
5a19f447a7
Plane: devo telemetry no long requires singleton classes to be passed in
2019-02-13 19:24:07 +00:00
Peter Barker
30671a6743
Plane: move handling of command-int MAV_CMD_DO_SET_HOME up
...
Plane: eliminate set_home shim around AP_AHRS::set_home
2019-02-13 09:42:26 +11:00
Peter Barker
cfb3dfc4e5
Plane: AP_Frsky_Telem uses singletons
2019-02-12 17:53:23 +00:00
Peter Barker
b48cb1e367
Plane: move sending of sys_status message up
2019-02-05 11:07:39 +11:00
Andrew Tridgell
5dbf603450
Plane: separate out slew limit logic for left/right throttles
2019-02-03 05:06:37 -08:00
Peter Barker
68b9e64077
Plane: remove old, unfulfilled method declarations
2019-01-30 09:03:52 +09:00
Peter Barker
40856fef56
Plane: remove vestiges of old PX4_MIXER code
2019-01-19 19:31:03 +11:00
Peter Barker
b47733142f
GLOBAL: rename DataFlash_Class to AP_Logger
2019-01-18 18:08:20 +11:00
Peter Barker
129762d3af
Plane: APM_Control uses DataFlash singleton, stop passing it
2019-01-18 14:14:22 +11:00
IamPete1
eaed0a2d47
Plane: make rudder differnal thrust global
2019-01-15 10:19:19 +11:00
Peter Barker
5c90a2dab2
Plane: Terrain uses rally singleton
2019-01-09 10:14:16 +11:00
Michael du Breuil
09f6ec8a00
Plane: Remove unneeded AP_Buffer include
2018-12-31 11:41:43 +09:00
Michael du Breuil
47dfafd670
Plane: Ensure that the plane is an appropriate distance out before starting the approach
2018-12-18 10:11:22 +11:00
Michael du Breuil
f1154a6e7c
Plane: Pass the mission command around rather then fetching it
2018-12-18 10:11:22 +11:00
Nikhil Upadhye
d1e93bae83
Plane: adding new mode QAUTOTUNE
...
copter like autotune support for quadplanes and tailsitter in VTOL mode.
cleanup
2018-12-14 16:33:11 +11:00
Peter Barker
d1727d26a1
Plane: rename send_extended_status1 to send_sys_status
2018-12-10 12:52:41 +09:00
Peter Barker
ba3a369651
Plane: remove update_events scheduler shim
2018-11-27 10:07:13 +11:00
Michael du Breuil
1e220d3d37
Plane: Add support for mode change to QLand as a failsafe
2018-11-24 14:37:04 -08:00
Peter Barker
d4e88bc6ba
Plane: remove pointless wrappers around RC_Channels functions
2018-11-23 10:56:17 +11:00
Peter Barker
03b71e1123
Plane: remove pointless wrappers around gcs functions
2018-11-23 10:56:17 +11:00
Andrew Tridgell
03f1deca9f
Plane: support REVERSE_THROTTLE rc option
...
this provides a more convenient way to setup for reverse throttle
2018-11-16 08:33:35 +11:00
Andrew Tridgell
da69bf3391
Plane: added an abstraction for reverse thrust
...
use have_reverse_thrust() and get_throttle_input()
2018-11-16 08:33:35 +11:00
Peter Barker
a5c34f6172
Plane: OpticalFlow takes care of its own logging
2018-11-13 10:40:23 +11:00
Peter Barker
e53a009a35
Plane: do not pass ahrs to opticalflow constructor
2018-11-13 10:40:23 +11:00
Andrew Tridgell
432d786f82
Plane: pass height to landing gear update
2018-11-10 21:24:19 +11:00
Michael du Breuil
8e906e0ba0
Plane: Add support for a loiter to alt approach to VTOL landing
2018-11-10 18:58:54 +11:00
Eugene Shamaev
01178a75e9
Plane: added landing gear support
2018-11-09 14:35:14 +11:00
Peter Barker
818bb8d56d
Plane: don't pass ahrs to terrain constructor
2018-11-08 20:59:45 +11:00
Peter Barker
4b68ca79dc
Plane: stop passing ahrs to Mission constructor
2018-11-08 10:01:16 +09:00
Andrew Tridgell
a00e06ea13
Plane: added TKOFF_ACCEL_CNT for multi-shake to start
...
this allows you to setup shake to start with a lower accel threshold,
but with multiple fwd/back movements needed.
This implements https://github.com/ArduPilot/ardupilot/issues/2221
2018-10-31 18:53:36 +11:00
Peter Barker
27b444f4e8
Plane: move handling of gimbal messages up
...
Plane: move handling of mav_cmd_do_mount_control up
Plane: move handling of deprecated mount messages up
Plane: move handling of command_do_set_roi up
Plane: mount no longer takes ahrs in constructor
2018-10-30 17:19:14 +11:00
Peter Barker
7890fbeaa1
Plane: let AP_Mission handle common camera commands
2018-10-30 15:37:18 +11:00
Michael du Breuil
3aed07a83a
Plane: Create a scripting object
2018-10-09 10:08:52 +11:00
Peter Barker
4ad1869f43
Plane: add arm/disarm on aux switch
2018-09-06 08:26:50 +10:00
Peter Barker
901664ce09
Plane: add support for RCn_OPTION (servorelay,camera)
...
Closes #7071
Closes #7666
2018-09-05 13:44:07 +10:00
Michael du Breuil
8417bcc7d5
Plane: Add flight options bitmask
2018-08-28 09:40:53 +10:00
Michael du Breuil
e4bbcd5ee3
Plane: Don't initilize motors with a trim value
2018-08-23 13:19:08 +10:00
Alexander Malishev
001948d40c
Plane: publish navigation info to OSD
2018-08-16 10:26:34 +10:00
Randy Mackay
903d00c4b2
Plane: remove compass accumulate
2018-08-06 11:05:34 +10:00
Peter Barker
9ce02bc504
Plane: minimal support for inheritting from RC_Channel
2018-08-01 12:11:30 +09:00
Andrew Tridgell
1d675390ab
Plane: make soaring an optional build feature
...
this disables soaring on px4-v2, saving 5k of flash
This is needed to consider pr #9042 , which takes a lot of flash space
2018-07-30 13:09:15 +10:00
Michael du Breuil
f25726fbb1
Plane: Remove unused ADC include
2018-07-17 09:29:50 +10:00
Peter Barker
85f339caae
Plane: remove annoying ice_update shim
2018-07-04 21:08:47 +01:00
Peter Barker
e404562544
Plane: remove vexing button_update shim
2018-07-04 21:08:47 +01:00
Peter Barker
c42fb6d797
Plane: remove pointless rangefinder_init shim function
2018-07-04 21:08:47 +01:00
Peter Barker
3bfa4c8678
Plane: use singletons in AP_Arming
2018-07-03 13:44:11 +10:00
Andrew Tridgell
bc503cc600
Plane: moved OSD to top level params
...
this is to give lots of depth for OSD params (which will be very
complex)
2018-06-27 14:55:00 +10:00
Alexander Malishev
75bf6984f5
Plane: added OSD support
2018-06-27 14:55:00 +10:00
Michael du Breuil
1c276e6af7
Plane: Remove unneeded wrapper functions
...
Also removes unneeded battery failsafe flag clearing
2018-06-27 11:39:35 +10:00
Peter Barker
f5e241af01
Plane: option to force arm, bypassing checks
2018-06-20 11:43:38 +10:00
Peter Barker
2b7f9247e8
Plane: use AP_FWVersion singleton
2018-06-18 19:10:37 +01:00
Michael du Breuil
12da35220c
Plane: Simplify radio trimming, improve MAVLink report
2018-06-11 16:29:36 -07:00
Peter Barker
22306c370b
Plane: factor out a Plane::set_home
2018-05-29 14:38:45 +10:00
Peter Barker
8b4ffb11f5
Plane: move sending of vfr_hud up
2018-05-29 13:00:40 +10:00
Peter Barker
ef77bea4eb
Plane: move sending of simstate up
2018-05-23 18:36:50 +10:00
Peter Barker
cdf4128900
Plane: move sending of POSITION_TARGET_GLOBAL_INT up
2018-05-18 20:26:37 +10:00
Peter Barker
5aefb90e61
Plane: move sending of GLOBAL_POSITION_INT up to GCS_MAVLINK
2018-05-17 15:48:06 +01:00
Peter Barker
6f8339028e
Plane: move send_attitude into GCS_MAVLINK_Plane
2018-05-17 18:28:43 +10:00
Peter Barker
7afd056e98
Plane: handle setting of ekf origin in GCS_MAVLink
2018-05-17 10:13:42 +10:00
Peter Barker
052b76d017
Plane: move Log_Write_Home_And_Origin into AP_AHRS
2018-05-17 10:13:42 +10:00
Michael du Breuil
b479f3760a
Plane: Remove some unneeded logging indirection
...
Saves 32 bytes on make px4-v2
2018-05-16 20:34:00 +10:00
Peter Barker
e10c23bd43
Plane: make scheduler track whether it has called the delay callback
2018-05-09 16:15:38 +10:00
Peter Barker
68497f27fa
Plane: move try_send_message handling of RC_CHANNELS up
2018-05-08 12:33:32 +01:00
Peter Barker
2e3a7fc5b6
Plane: remove rcmap member from AP_AdvancedFailsafe
2018-05-05 18:06:31 +09:00
night-ghost
aa53832a70
ArduPlane: devo telemetry support (RX705/707)
2018-04-24 10:44:28 +10:00
Peter Barker
5ef417a669
Plane: GPS now logs its own data
2018-04-18 13:50:55 +09:00
Michael du Breuil
7b7f5e242b
Plane: Simplify channel reading
2018-04-14 14:05:20 +10:00
Peter Barker
2b54113334
Plane: Baro does its own dataflash logging
2018-04-12 19:12:12 +01:00
Peter Barker
f6a185a3c3
Plane: factor vehicle's mavlink send_heartbeat
2018-04-03 13:05:19 +01:00
Peter Barker
58d41e40d3
Plane: let GCS_MAVLink calibrate airspeed sensor
...
Also remove useless zero_airspeed function
2018-04-02 23:25:05 +01:00
Peter Barker
65893cfca5
Plane: tidy handling of barometer calibrations
2018-04-02 23:25:05 +01:00
Michael du Breuil
7405bb7b85
Plane: Support new battery failsafes
2018-03-27 22:12:21 +01:00
Peter Barker
7fd859da65
Plane: move home state into AP_AHRS
2018-03-19 10:32:37 +09:00
Peter Barker
7c86c4fe61
Plane: use ins singleton
2018-03-16 00:37:35 -07:00
Peter Barker
f558bbca2e
Plane: use baro singleton
2018-03-08 21:20:05 -08:00
Peter Barker
0862d1454e
Plane: use AP::ahrs() for ADSB
2018-03-07 12:34:39 +00:00
Michael du Breuil
faea5d285c
Plane: Consolidate some of the PID logging details
2018-03-03 17:34:18 +12:00
Andrew Tridgell
27e4953ad8
Plane: disable HIL on px4-v2
...
this saves enough flash for px4-v2 to fit again
2018-03-03 13:35:39 +11:00
David Ingraham
a6aeebad4b
Plane: Add support for AP_Gripper
2018-03-01 14:14:43 +11:00
Peter Barker
3859e5dfb1
Plane: eliminate update_perf_logging scheduler table shim
2018-02-13 17:15:05 +11:00
Peter Barker
02540fdbf9
Plane: use AP_Scheduler's loop() function
2018-02-13 17:15:05 +11:00
Peter Barker
73092c3c30
Plane: use scheduler ticks in place of mainloop_count
2018-02-13 17:15:05 +11:00
Peter Barker
519e6c31d2
Plane: use AP::PerfInfo library
2018-02-13 17:15:05 +11:00
Andrew Tridgell
2fb6113098
Plane: use AP:PerfInfo class
2018-02-10 10:50:22 +11:00
Michael du Breuil
43972f8e56
Plane: Move battery logging code to AP_BattMonitor
2018-02-06 00:11:32 +00:00
Tom Pittenger
39a200b83f
Plane: allow control_mode enum to be in arbitrary order
...
never use control_mode >= BLAH. This requires the order to be important which greatly increases chance for unexpected behavior
Closes https://github.com/ArduPilot/ardupilot/issues/4656
2018-01-09 17:05:04 -08:00
Peter Barker
c4c6b3cc70
Plane: AP_AHRS no longer requires GPS in constructor
2017-12-27 00:58:02 +00:00
Andrew Tridgell
30e224e705
Plane: removed create() method for objects
...
See discussion here:
https://github.com/ArduPilot/ardupilot/issues/7331
we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach
Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Tom Pittenger
512b327cd4
Plane: failsafe events to use enums instead of magical numbers : Non-functional change
2017-12-07 00:19:32 -08:00
Tom Pittenger
3d6cc59a6b
Plane: cleanup geofence warnings
2017-11-27 18:35:49 -08:00
Michael du Breuil
1a3ca43e86
Plane: Don't check FS_SHORT_TIMEOUT if it's disabled
...
Also renames the check_minimum_altitude() to reflect that it's only used
for FBWB.
2017-11-24 09:58:01 -08:00