Commit Graph

3274 Commits

Author SHA1 Message Date
Michael du Breuil fa1ad09a3b Plane: Remove unneeded rudder set 2018-08-21 08:32:56 +10:00
Andrew Tridgell b11552e945 Plane: update release notes for 3.9.1beta2
# Conflicts:
#	ArduPlane/release-notes.txt
2018-08-17 20:43:02 +10:00
Alexander Malishev 001948d40c Plane: publish navigation info to OSD 2018-08-16 10:26:34 +10:00
Michael du Breuil c8cb5b9e0f Plane: Log target airspeed to NTUN messages 2018-08-09 11:53:05 +10:00
Michael du Breuil 3d923d0572 Plane: Send a quadplane version of NAV_CONTROLLER_OUTPUT 2018-08-07 09:49:01 +10:00
Randy Mackay 903d00c4b2 Plane: remove compass accumulate 2018-08-06 11:05:34 +10:00
Andrew Tridgell 690bbcdaad Plane: release notes for 3.9.0 2018-08-06 10:44:29 +10:00
Andrew Tridgell c964a393c0 Plane: fixed RC_Channels parameter docs 2018-08-04 12:28:38 +10:00
Peter Barker 9ce02bc504 Plane: minimal support for inheritting from RC_Channel 2018-08-01 12:11:30 +09:00
Michael du Breuil eea8267704 Plane: Update notify initilization 2018-08-01 09:22:09 +10:00
Andrew Tridgell 4f2508d89f Plane: updated release notes for 3.9.0beta6 2018-07-30 18:18:53 +10: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
Andrew Tridgell 16c7ab81dc Plane: pass rc_speed to motor backend constructors
this sets the right speed as early as possible
2018-07-28 15:25:57 +10:00
Andrew Tridgell a4d3b08d87 Plane: release notes for 3.9.0beta5 2018-07-19 12:42:27 +10:00
IamPete1 20c67019b0 Plane: added Q_TAILSIT_THSCMX
this provides more flexibility in tailsitter throttle scaling
2018-07-19 09:48:25 +10:00
Andrew Tridgell 149a6af48f Plane: releases notes for plane 3.9.0beta4 2018-07-18 20:45:02 +10:00
Andrew Tridgell 07187f7797 Plane: fixed ARMING_REQUIRE=2 for dual-motor planes
many thanks to Marco for finding this bug!
2018-07-18 19:58:02 +10:00
Michael du Breuil f25726fbb1 Plane: Remove unused ADC include 2018-07-17 09:29:50 +10:00
Andrew Tridgell ad55605605 Plane: update version to 3.10.0-dev 2018-07-06 11:01:05 +10:00
Andrew Tridgell db1f1a42d6 Plane: updated 3.9.0beta2 release notes 2018-07-06 10:59:55 +10:00
Peter Barker 94ad85a67d Plane: handle MAV_CMD_ACCELCAL_VEHICLE_POS in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker d077723028 Plane: handle command_int in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker d76e7d210b Plane: handle command_long in GCS base class 2018-07-06 09:43:09 +10:00
Andrew Tridgell 1d91f18177 Plane: fixed version for enums 2018-07-05 11:10:31 +10:00
Andrew Tridgell bd4515947a Plane: updated release notes 2018-07-05 11:10:27 +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 4502fd21c3 Plane: use compass singleton for logging 2018-07-04 20:11:27 +01:00
Peter Barker 3bfa4c8678 Plane: use singletons in AP_Arming 2018-07-03 13:44:11 +10:00
Peter Barker 320e24af65 Plane: move mavlink reboot code up to base class 2018-07-03 12:12:25 +10:00
Jacob Walser 4eb00ac779 Plane: refactor output_test -> output_test_seq 2018-07-02 11:31:58 -04:00
Lucas De Marchi 1a45aa12f5 AP_Param: warn on last pass only about unknown parameters
Do not warn about unknown parameters on the first pass, i.e. when
AP_Param:load_all() is called. This is because we may still not know
about dynamically loaded parameters. When we call the second (last)
time, we expect to already know all possible parameters, so print a
warning to both console and the debug terminal.
2018-06-28 10:18:19 -07:00
Lucas De Marchi 7f0d5ddf21 AP_Param: stop panic()'ing on unknown parameters
Our track record on keeping parameters up to date with master is not
great and panic()'ing when loading them apparently is not helping
because every and each vehicle has a different file.

On aerofc load_defaults_file() is used in the same way as
load_embedded_param_defaults() is in which the panic() behavior has been
previously removed.

This finishes the removal of the panic param and add warnings to the
debug console when reading the parameters (rather than when counting
them).
2018-06-28 10:18:19 -07: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 23919daf11 Plane: use arming check_failed function 2018-06-23 15:33:19 +10:00
Andrew Tridgell d454bc555e Plane: added ESC_TELEMETRY to mavlink streams 2018-06-21 10:48:02 +10:00
Peter Barker f984e5e31d Plane: use magic force arm/disarm definitions 2018-06-20 11:43:38 +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
Peter Barker 9824832523 Plane: use AP_RTC
Plane: AP_GPS now sets the system time directly
2018-06-15 08:01:22 +10:00
Michael du Breuil 12da35220c Plane: Simplify radio trimming, improve MAVLink report 2018-06-11 16:29:36 -07:00
Michael du Breuil fae8d1e489 Plane: Log navigation target location
Closes #4358
2018-06-12 09:08:58 +10:00
Peter Barker 2cdcca2841 Plane: move handling of MAV_CMD_DO_GRIPPER up 2018-06-11 19:07:39 +01:00
Andrew Tridgell d8a7618e15 Plane: update use of AC_Loiter controller for quadplane
this changes the way the loiter controller is initialised for QLOITER,
after discussions with Leonard.

The way we were doing it could cause a sudden acceleration demand when
switching into QLOITER.

This also changes the default loiter parameters to reduce the maximum
acceleration that will be applied in QLOITER. Many thanks to Leonard for
the advice
2018-06-11 08:40:58 +09:00
Michael du Breuil 47c0048499 Plane: Remove manual polling of flap input channel 2018-06-05 09:51:09 +10:00
Michael du Breuil a98a8d0789 Plane: Update to support new RC_Overrides conventions 2018-06-05 09:51:09 +10:00
Michael du Breuil 749861f8ad Plane: Only send healthy airspeed reports 2018-06-05 09:27:19 +10:00
Michael du Breuil 44f2a652f3 Plane: Remove software type param 2018-06-05 09:14:12 +10:00
Peter Barker 9437e893e5 Plane: move try_send_message handling of EKF_STATUS_REPORT up 2018-06-01 16:12:45 +01:00
Peter Barker ac729f4614 Plane: lock home when it is set from the GCS 2018-05-29 14:38:45 +10:00
Peter Barker 18c4823427 Plane: return MAV_RESULT_ACCEPTED for setting home to current location 2018-05-29 14:38:45 +10:00
Peter Barker bc9df01d21 Plane: remove sending of statustext for home location 2018-05-29 14:38:45 +10:00
Peter Barker 22306c370b Plane: factor out a Plane::set_home 2018-05-29 14:38:45 +10:00
Peter Barker ad600fff68 Plane: split home-set and home-locked state 2018-05-29 14:38:45 +10:00
Peter Barker 5a087ee7e2 Plane: create persist_streamrates() callback to indicate persistence 2018-05-29 13:08:29 +10:00
Peter Barker 8b4ffb11f5 Plane: move sending of vfr_hud up 2018-05-29 13:00:40 +10:00
Tom Pittenger 4dca1c48f2 Plane: update vehicle max_speed to ADSB library 2018-05-23 14:02:45 -07:00
Peter Barker ef77bea4eb Plane: move sending of simstate up 2018-05-23 18:36:50 +10:00
Peter Barker 2a68eca273 Plane: add type-correctness for stream messages 2018-05-22 11:21:25 +10:00
Peter Barker 2112d76b75 Plane: move try_send_message of servo-output-raw up 2018-05-21 19:08:08 +01:00
Andrew Tridgell ce73918873 Plane: fixed throttle_percentage for twin engine planes
there is no servo output for function 70 - use the scaled value
2018-05-21 14:39:56 +10:00
Andrew Tridgell 805b159fd4 Plane: update release notes for 3.9.0 2018-05-21 14:38:35 +10:00
Peter Barker cdf4128900 Plane: move sending of POSITION_TARGET_GLOBAL_INT up 2018-05-18 20:26:37 +10:00
Peter Barker 57cc0cac97 Plane: GCS_MAVLink base class now uses same ekf call to get alt 2018-05-17 15:48:06 +01: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 1545b9b161 Plane: remove arguments to send_home and send_ekf_origin 2018-05-17 20:42:36 +10:00
Peter Barker 6f8339028e Plane: move send_attitude into GCS_MAVLINK_Plane 2018-05-17 18:28:43 +10:00
Peter Barker 1f9d1ee5a2 Plane: move try_send_message sending of scaled_pressure up 2018-05-17 15:37:14 +10:00
Peter Barker 0e3ad3f023 Plane: move try_send_message sending of sensor offsets up 2018-05-17 15:37:14 +10:00
Peter Barker e6411c6804 Plane: move try_send_message of RAW_IMU up to GCS_MAVLINK 2018-05-17 15:37:14 +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 fcf6c69a5b Plane: AP_Proximity is now a common library 2018-05-16 23:21:41 +01:00
Michael du Breuil 499df8e0b3 Plane: Move MAVLink rangefinder up to parent 2018-05-16 23:21:41 +01:00
Michael du Breuil 8afc96097b Plane: Send all distance sensors 2018-05-16 23:21:41 +01: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 eb026e0a5f Plane: correct compilation when logging is disabled 2018-05-10 17:55:13 +09:00
Peter Barker 8da8c616f6 Plane: move sending of battery data up 2018-05-09 11:40:31 -07:00
Peter Barker 0fec702ba6 Plane: move data stream send up 2018-05-09 16:15:38 +10:00
Peter Barker e10c23bd43 Plane: make scheduler track whether it has called the delay callback 2018-05-09 16:15:38 +10:00
Andrew Tridgell 8d996112ec Plane: don't do throttle ESC scaling for quadplanes 2018-05-09 14:17:15 +10:00
Peter Barker 1dcd731005 Plane: AP_RSSI is included in build for all vehicles 2018-05-08 12:33:32 +01:00
Peter Barker 68497f27fa Plane: move try_send_message handling of RC_CHANNELS up 2018-05-08 12:33:32 +01:00
Peter Barker 8df625e81a Plane: move try_send_message of heartbeats up to GCS_MAVLINK 2018-05-07 11:30:13 -06:00
Peter Barker c1680d90a6 Plane: move try_send_message handling of VIBRATION up 2018-05-07 11:23:28 -06:00
Peter Barker 2e3a7fc5b6 Plane: remove rcmap member from AP_AdvancedFailsafe 2018-05-05 18:06:31 +09:00
Andrew Tridgell c20351202d Plane: document TKOFF_THR_SLEW = -1 for takeoff 2018-04-26 15:59:06 +10:00
Andrew Tridgell badea86fbd Plane: remove old pde file
this was here for upgrading very old MissionPlanner versions. We can
remove it now
2018-04-26 14:25:01 +10:00
Michael du Breuil 2deac7238c Plane: Support new RC_Channels::read_input() 2018-04-26 08:00:09 +10:00
Andrew Tridgell 7208fe96d5 Plane: update release notes for 3.8.5 2018-04-25 20:05:50 +10:00
Andrew Tridgell d07f8aa42b Plane: fixed a bug in transition to QSTABILIZE for tailsitters
this bug was found bug Marco on his tailsitter. It resulted in zero
throttle for 2s in transition from FBWA to QSTABILIZE
2018-04-25 18:01:12 +10:00
night-ghost aa53832a70 ArduPlane: devo telemetry support (RX705/707) 2018-04-24 10:44:28 +10:00
Peter Barker 5cc98a9733 Plane: use AP_ServoRelayEvents singleton 2018-04-18 20:31:55 +09: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
Michael du Breuil 3e4288d604 Plane: Use RC_Channels instead of hal.rcin 2018-04-11 21:47:07 +01:00
Michael du Breuil 1af2155641 Plane: Check MANUAL_CONTROL target 2018-04-10 16:54:34 +01:00
Randy Mackay 840a6e4147 Plane: quadplane uses AC_Loiter
includes param conversion
2018-04-04 10:45:10 +09:00
Francisco Ferreira bbe3e41162
Plane: fix method shadowing 2018-04-03 16:29:33 +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
Peter Barker 71bc3f5def Plane: move common calibration functions up 2018-04-02 23:25:05 +01:00
Peter Barker 91c2ece7a2 Plane: factor out preflight calibration function 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 8a75a804e7 Plane: allow DataFlash to handle log sending 2018-03-26 09:22:47 +09:00
Przemek Lekston e5a9ac84e7 [Plane] Fix verify_loiter_heading acceptance criteria. 2018-03-20 10:25:35 -07:00
Peter Barker 5572d83ce9 Plane: move handling of get_home_position up 2018-03-19 10:32:37 +09: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
Randy Mackay 548a7f8fcf Plane: add minor comment to quadplane 2018-03-16 13:50:57 +09:00
Leonard Hall ee745d2cd2 Plane: quad plane uses rate-control control during transitions 2018-03-16 13:50:57 +09:00
Leonard Hall a16d4ddad7 Plane: quadplane uses poscontrol instead of loiter 2018-03-16 13:50:57 +09:00
Randy Mackay c5d838125b Plane: quadplane logs PSC message 2018-03-16 13:50:57 +09:00
Randy Mackay 09cad7c59d Plane: quadplane integrates attitude control inertial_frame_reset 2018-03-16 13:50:57 +09:00
Randy Mackay 03c162432e Plane: quadplane provides dt to AC_WPNav::set_pilot_desired_acceleration 2018-03-16 13:50:57 +09:00
Randy Mackay a0a9a68fbc Plane: quadplane smoothing gain replaced by Q_A_INPUT_TC
Q_A_INPUT_TC parameter allows this to be tuned and a single value (which defaults to a value between the two previously used values) is used for all modes
2018-03-16 13:50:57 +09:00
Leonard Hall aa47b19dea Plane: remove quadplane calls to multicopter poscontrol's freeze_ff_xy 2018-03-16 13:50:57 +09:00
Peter Barker f558bbca2e Plane: use baro singleton 2018-03-08 21:20:05 -08:00
Peter Barker 4104d40130 Plane: delete correct assignment operator 2018-03-08 21:20:05 -08:00
Peter Barker 5671b3173e Plane: use AHRS singleton in GCS_MAVLink 2018-03-07 12:34:39 +00:00
Peter Barker 0862d1454e Plane: use AP::ahrs() for ADSB 2018-03-07 12:34:39 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas 33288fa676 Plane: NFC adapt to new AP_Battery method name 2018-03-03 17:19:13 +00:00
Tom Pittenger 6820531e2a Plane: fixed error string spelling 2018-03-02 21:37:11 -08: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
night-ghost 98b8a61ca8 Plane: allow AP_Stats to be optional 2018-03-02 07:23:35 +11:00
David Ingraham a6aeebad4b Plane: Add support for AP_Gripper 2018-03-01 14:14:43 +11:00
David Ingraham 9419cc3b32 Plane: Fix param docs for quadplane attitude control
Docs aren't currently being generated for plane for AC_AttitudeControl.cpp. I believe this will fix that.
2018-02-20 16:38:27 +11:00
Andrew Tridgell e6cebdecd1 Plane: use scheduler.get_last_loop_time_s() 2018-02-13 17:15:05 +11:00
Peter Barker 3859e5dfb1 Plane: eliminate update_perf_logging scheduler table shim 2018-02-13 17:15:05 +11:00
Andrew Tridgell 36660b2124 Plane: use filtered loop time 2018-02-13 17:15:05 +11:00
Peter Barker 4586b892f2 Plane: pass log-performance-bit at init time rather than update time 2018-02-13 17:15:05 +11:00
Peter Barker 8cae776448 Plane: move logging of PM and PERF messages to AP_Scheduler 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
Randy Mackay dd6755f486 Plane: fix global-pos-int velocity direction to NED 2018-02-13 08:52:48 +09:00
Andrew Tridgell 2fb6113098 Plane: use AP:PerfInfo class 2018-02-10 10:50:22 +11:00
Andrew Tridgell ac196b8e0a Plane: fixed build error 2018-02-10 08:00:24 +11:00
Tom Pittenger 50a2d824c4
Plane: crash detection hard landing detection should skip debounce
closes https://github.com/ArduPilot/ardupilot/issues/7683
2018-02-09 11:40:12 -08:00
Andrew Tridgell d1e11a5bde Plane: fixed build (remove learn_offsets call) 2018-02-08 17:36:33 +11:00
Michael du Breuil 43972f8e56 Plane: Move battery logging code to AP_BattMonitor 2018-02-06 00:11:32 +00:00
Randy Mackay ddcd08d6b6 Plane: PSC_ACCZ param name shortened 2018-01-31 08:48:21 +09:00
Michael du Breuil aec7521da4 Plane: Fix truncation of a time interval
Truncating the a millisecond time delta to uint16_t causes it to wrap
every 65 seconds, which could momentarily reset the desired climb rate
2018-01-25 14:30:49 +11:00
Randy Mackay d579e086cf Plane: quadplane param index comment for moved PIDs 2018-01-24 21:14:53 +09:00
Andrew Tridgell 20b05e4228 Plane: added conversion code for PID layout change
this copes with the move of multicopter PIDs inside the position
controller
2018-01-24 18:23:59 +11:00
Tom Pittenger 518abfe1d0 Plane: Allow GUIDED mode to take advantage of crosstrack flag. 2018-01-22 19:17:09 -08:00
Randy Mackay 7b1157e2d8 Plane: remove setting accel_z PID controller's dt
This is handled within pos-controller's set_dt function
2018-01-23 12:00:43 +09:00
Randy Mackay f41f4dc6e5 Plane: move pos-control pids to pos-control library 2018-01-23 12:00:43 +09:00
Randy Mackay 017e71a748 Plane: quadplane velocity pi moves to position control library 2018-01-23 12:00:43 +09:00
Michael du Breuil ff85f5e9bd Plane: Support AP_BattMonitor_Params 2018-01-17 22:21:55 +00:00
Andrew Tridgell 5614fd1ccc Plane: use calloc in preferance to malloc 2018-01-17 11:22:05 +11:00
Andrew Tridgell 2c6a004a67 Plane: mark version as 3.9.0-dev 2018-01-16 11:04:55 +11:00
Andrew Tridgell be0d2229c1 Plane: update release notes 2018-01-16 11:03:26 +11:00
Andrew Tridgell 31d7d9f909 Plane: change airspeed parameter prefix
this makes for clearer parameter names with dual sensors
2018-01-16 07:14:20 +11:00
Andrew Tridgell c1cbbf9203 Plane: check all airspeed sensors are healthy 2018-01-16 07:14:20 +11:00
Tom Pittenger 746ca91649 Plane: reset groundspeed_undershoot value when GPS is lost
If we lose GPS lock the gndspd undershoot value gets stuck at the last calculated value forever (until GPS locks again)
2018-01-09 17:05:04 -08:00
Tom Pittenger 1ef0f27786 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
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
Peter Barker c5ae01fc6d Plane: use GPS singleton 2017-12-27 00:58:02 +00:00
luweikxy 25224cd261 Plane: remove dead code from do_vtol_land 2017-12-14 20:52:18 +09: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
Michael Oborne 9ed3ca3d35 ArduPlane: update version number 2017-12-13 18:00:03 +11:00
Ubuntu 16.04 VM 624aef401d Plane: Enforce THR_MIN/THR_MAX in VTOL modes 2017-12-11 22:18:39 -08: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
Peter Barker af007c5f0f Plane: tighten handleMessage result type 2017-12-01 17:01:10 +00:00
Tom Pittenger 3d6cc59a6b Plane: cleanup geofence warnings 2017-11-27 18:35:49 -08:00
Andrew Tridgell 2a81792b41 Plane: don't disable compass on one bad reading
the compass can go back for a short time and recover

found by Michael
2017-11-28 09:02:24 +11:00
Andrew Tridgell 49cb245ea6 Plane: use a min airspeed for is_flying test
in VTOLs setting min airspeed to zero can be useful
2017-11-28 09:02:24 +11: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
Tom Pittenger 7271586a47 Plane: invert auto_state.no_crosstrack flag to be auto_state.crosstrack. Non-functional change 2017-11-23 09:25:18 -08:00
Peter Barker 6ed0d645a3 Plane: support for units on fields 2017-11-23 10:40:30 +11:00
Guy Tzoler a6c7890c74 Plane: use cork/push wrapper 2017-11-21 14:10:54 +11:00
Michael du Breuil 9720fcb8cc Plane: Only update home when not armed, rather then not soft armed
Plane supports being armed, in takeoff logic and not spinning the motor
until the moment the safety button has been pressed. Unfortunately
because the safety button is required to be pressed for soft arming this
results in the plane updating home position while the user moves the
vehicle or is holding it to throw the vehicle which will can result in
several meters of altitude error from where the user expected home to
be.

Because the normal approach to plane is to have activated the safety
button before arming the aircraft this is not expected to be a behaviour
change for most users, but an improvement for people who use the button
to initiate a takeoff.
2017-11-21 11:45:15 +11:00
Andrew Tridgell f7a735b990 Plane: fixed transitions for tailsitters after auto-takeoff
need to use angle wait
2017-11-19 16:06:02 +11:00
Andrew Tridgell 85573b3ff3 Plane: fixed a division by zero
if min airspeed is zero
2017-11-19 16:04:40 +11:00
Andrew Tridgell e06f160dc9 Plane: disable rudder scaling in tailsitters
this is most often implemented as dual-motor differential thrust, and
we don't want to do surface speed scaling for that.

In the future we'll move this scaling so it can be done on rudders for
3D planes
2017-11-18 10:38:46 +11:00
Peter Barker ee5f550475 Plane: AP_Camera uses GPS singleton 2017-11-16 15:28:37 +00:00
Peter Barker b4294c00f6 Plane: use gps singleton for GCS functions 2017-11-15 13:43:03 +00:00
André Kjellstrup 1d27e21d83 Plane: Option to trig by distance only when in AUTO mode 2017-11-14 00:10:22 +00:00
Andrew Tridgell bf1aa64345 Plane: updated release notes for 3.8.3 2017-11-13 15:06:42 +11:00
Andrew Tridgell 271373e1e8 Plane: added a not on min slew rate for throttle 2017-11-13 10:29:46 +11:00
Michael du Breuil 767018b1d4 Plane: Support unlocking cruise heading with rudder 2017-11-09 09:39:44 +11:00
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
Lucas De Marchi 6d009cdf6e global: use static method to construct AP_ADSB 2017-09-26 03:01:21 +01:00
Lucas De Marchi cf6ea9642e global: use static method to construct AP_Terrain 2017-09-26 03:01:21 +01:00
Lucas De Marchi 31db77e47b global: use static method to construct AP_Parachute 2017-09-26 03:01:21 +01:00
Lucas De Marchi eadd650d78 global: use static method to construct AP_RSSI 2017-09-26 03:01:21 +01:00
Lucas De Marchi b05610870c global: use static method to construct AP_Rally 2017-09-26 03:01:21 +01:00
Lucas De Marchi 18aa88b329 global: use static method to construct AP_Mount 2017-09-26 03:01:21 +01:00
Lucas De Marchi c3647f0185 global: use static method to construct AP_Camera 2017-09-26 03:01:21 +01:00
Lucas De Marchi cc53e7bc4b global: use static method to construct AP_ServoRelayEvents 2017-09-26 03:01:21 +01:00
Lucas De Marchi 13d7f58036 global: use static method to construct AP_Relay 2017-09-26 03:01:21 +01:00
Lucas De Marchi 9ce6019138 global: use static method to construct AP_Frsky_Telem 2017-09-26 03:01:21 +01:00
Lucas De Marchi b022c02029 global: use static method to construct AP_BattMonitor 2017-09-26 03:01:21 +01:00