Commit Graph

3747 Commits

Author SHA1 Message Date
Iampete1 6710bab006 Plane: add Q_OPTIONS to defaut to Qassist force enabled 2020-07-09 06:49:24 +10:00
Henry Wurzburg 4115603f13 ArduPlane: add terrain follow disable switch for CRUISE/FBWB 2020-07-08 13:39:42 +10:00
Paul Riseborough e5bd99a66f ArduPlane: Signal EKF to expect takeoff start to improve GSF yaw estimate 2020-07-07 15:33:58 +10:00
Michael du Breuil 955a05c4d5 Plane: Refactor mav_cmd_do_reposition to be consistent with copter 2020-07-07 10:34:19 +10:00
Mark Whitehorn 2af6e255d1 RC_Channel: add RC option for VTOL manual forward throttle
fix RC_OPTION metadata for 209: Forward Throttle
2020-07-07 08:37:46 +10:00
Mark Whitehorn d5b1b20274 Plane: implement manual forward throttle for QACRO, QSTABILIZE and QHOVER
add parameter Q_FWD_THR_MAX for scaling manual throttle
allow forward motor tilt when disarmed
add FWD_THR_CH as an RC option
change Q_FWD_THR_MAX to percent
change RC_OPTION FWD_THR to 209
move assignment of rc_fwd_thr_ch to one_second_loop
move arming check from forward_throttle_pct to set_servos
change Q_FWD_THR_MAX TO Q_FWD_MANTHR_MAX
expand description of Q_FWD_MANTHR_MAX
add pre-arm check for VTOL manual forward throttle
change VTOL fwd throttle input to percent
2020-07-07 08:37:46 +10:00
Peter Barker ee2118f93a Plane: add support for AP_Generator 2020-07-03 08:21:42 +09:00
Peter Barker d47569ccef Plane: correct ASSIST_ANGLE description 2020-07-01 20:57:32 +10:00
Andrew Tridgell 3a0538449c Plane: added Q_ASSIST_DELAY parameter
this allows tuning of the time between assistance thresholds being met
and assistance kicking in. It also changes the default delay from 1s
down to 0.5s based on analysis of a flight where assistance was too
slow
2020-07-01 20:57:32 +10:00
Andrew Tridgell d9358b4ac2 Plane: don't allow a zero speed_scaler
this fixes an issue with yaw damper on quadplanes when at zero
airspeed

Thanks to Vladi Portnoy for reporting this
2020-06-29 20:09:41 +10:00
Andy Piper 9077d41df1 Plane: add support for tracking fft peaks and individual motor rpms with harmonic notches
log harmonic notch even if FFT is disabled. Fallback to throttle notch for BLHeli
move harmonic notch update to AP_Vehicle
2020-06-21 19:09:35 +10:00
Michael du Breuil 43526e718e Plane: Remove the use of RTL_RADIUS from LOITER_UNLIM mission items 2020-06-19 11:10:29 -07:00
Mark Whitehorn ab2eb6185f Plane: also limit throttle during quadplane transitions 2020-06-16 11:43:18 +10:00
Peter Barker 1206df6f0c ArduPlane: remove use of Vector2 as function 2020-06-16 11:00:44 +10:00
Paul Riseborough 97d7d563c4 ArduPlane: Improve parameter description for FWD_BAT_VOLT_MAX/MIN 2020-06-16 10:17:33 +10:00
Paul Riseborough fdb4f908bb ArduPlane: Fix bug in forward throttle voltage compensation
The existing code does not adjust the upper and lower throttle limits with the result that at and of discharge climb and reverse thrust performance is significantly degraded.
2020-06-16 10:17:33 +10:00
vierfuffzig 147ebb74f4 Plane Parameters: fix THR_MAX param description
makes clear that thr is constrained in stabilized modes too unless passthrough is set, aligns with THR_MIN description.
2020-06-12 10:23:41 +10:00
Peter Barker 6c4812e408 ArduPlane: rename 'enum aux_switch_pos_t' to 'enum class AuxSwitchPos' 2020-06-12 08:11:46 +10:00
Peter Barker f59d2fdbf4 ArduPlane: add and use accessor for last-RADIO_STATUS.remrssi-ms 2020-06-09 10:20:29 +10:00
Iampete1 2121ddf736 Plane: drop unneeded call to calc_pwm 2020-06-09 09:04:14 +10:00
Andrew Tridgell fbd774fde9 Plane: set pressure alt for vtol motors 2020-06-05 11:35:53 +10:00
Iampete1 4b7d45e549 Plane: label and sort plane.h functions 2020-06-05 09:32:31 +10:00
Andrew Tridgell 568e13fbb9 Plane: allow for continue after land for quadplanes
this allows for a new takeoff after a quadplane auto landing
2020-06-02 09:12:22 +09:00
Michael du Breuil 911570e9f3 Plane: Protect against a divide by 0 when calculating the forward throttle compensation 2020-06-02 09:38:51 +10:00
Andrew Tridgell ebcbc6d449 Plane: update release notes for 4.0.6beta1 2020-05-27 13:27:27 +10:00
Peter Hall 7688430029 Plane: allow Qassit for fw to vtol transision 2020-05-26 09:01:47 +10:00
Peter Hall 87cd9a4791 Plane: allow Qassist for tailsitters 2020-05-26 09:01:47 +10:00
Peter Hall 2467d7b5c7 Plane: add Qassist switch 2020-05-26 09:01:47 +10:00
Tom Pittenger 0a5021fdcf Plane: bugfix: never reset auto_state.sink_rate 2020-05-23 18:49:12 -07:00
Andrew Tridgell 26c2555c3c Plane: increased allowed time for mavlink send to 750us
this is to allow more time to get streams out at low loop rates
2020-05-23 11:54:41 +10:00
Buzz 0f5177b291 Plane: Support a set of offboard MAVLink guided controls with rates
+ 3 rounds of fixes
2020-05-20 15:03:21 +10:00
Buzz d4df145b4b ArduPlane: option to keep landing throttle at thr_min during flare and touchdown, not zero. 2020-05-20 11:29:45 +10:00
Iampete1 f9ff8e5f11 Plane: align GCS PID with logged 2020-05-19 09:04:16 +10:00
Andrew Tridgell 8b21f5117a Plane: implement RTL_CLIMB_MIN parameter
this allows for an initial climb on RTL where roll is limited to
LEVEL_ROLL_LIMIT
2020-05-18 13:04:04 +10:00
Paul Riseborough 0c9433873c ArduPlane: Modify ekf failsafe checks
Restore velocity check and make the logic closer to what ArduCopter does.
Remove unnecessary initialisation.
2020-05-14 10:40:48 +10:00
Paul Riseborough 85e53d53e1 ArduPlane: Don't use optical flow health when assessing EKF nav health
Plane currently doesn't use optical flow for navigation - it is used fo terrain height estimation.
2020-05-14 10:40:48 +10:00
Paul Riseborough 3a10838c65 ArduPlane: Don't check variances if not available 2020-05-14 10:40:48 +10:00
Paul Riseborough 70a02f31ab ArduPlane: More efficient type use 2020-05-14 10:40:48 +10:00
Paul Riseborough 5b312e9f09 ArduPlane: Fix logic error 2020-05-14 10:40:48 +10:00
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
Randy Mackay 59a2667870 Plane: quadplane's throttle mix uses filtered accelerations 2020-05-12 09:56:09 +10:00
Michael du Breuil 9eaf7f5528 Plane: Fix VTOL yaw for STICK_MIXING 0 2020-05-08 08:44:03 +10:00
Peter Barker 8222b5db62 Plane: AP_Soaring no longer takes AHRS in constructor 2020-05-05 17:35:14 +10:00
Tom Pittenger 87c75332e7 Plane: ignore guided cmds from mavlink if we're in avoidADSB.
This change makes it behave like MAVLINK_MSG_ID_SET_POSITION_TARGET_LOCAL_NED
2020-05-05 10:51:16 +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
Peter Barker 86c765d8c9 ArduPlane: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Andrew Tridgell d0a509eef1 ArduPlane: invalidate param count when changing param tree structure 2020-04-29 07:36:55 +10:00
Paul Riseborough 0efdb2b66b ArduPlane: Send default airspeed to estimators 2020-04-24 09:43:23 +10:00
Randy Mackay 9a43a31f24 Plane: do not send ahrs3 mavlink message 2020-04-22 14:11:17 +09:00
Henry Wurzburg 3397bce235 Plane: Quadplane tailsit transition to FW throttle level change 2020-04-21 09:51:47 +10:00
Henry Wurzburg 6c730ccfec Plane: start tailsitter forward transition from current pitch angle 2020-04-21 09:50:57 +10:00
Rishabh 0c5d68dfeb Plane: Replace update_vel_controller_xy() with update_xy_controller() 2020-04-21 09:22:45 +10:00
Mark Whitehorn bada075daa Plane: expand description of CTUN.Aspd to indicate when estimate or measurement is reported 2020-04-18 15:33:43 +10:00
Peter Barker f5f4576835 ArduPlane: remove comment for already-removed in-delay-callback function
These are now attached to completely unrelated functions, which is
pretty bad.
2020-04-16 15:11:35 +09: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
Rishabh 6989cb0131 Plane: Use AHRS for heading in mode loiter 2020-04-10 12:18:35 +10:00
Samuel Tabor b9daae062c AP_Soaring: Use enum class rather than typedef enum for states and hide details of these. 2020-04-08 09:11:54 +10:00
Samuel Tabor d7ce3ff72e AP_Soaring: Don't check throttle status on entry to loiter, because it is automatically set on first pass in update_soaring. 2020-04-08 09:11:54 +10:00
Samuel Tabor 36a90cf443 Plane: Remove unused isHeadingLinedUp function, and rename functions to avoid confusion. 2020-04-08 09:11:54 +10:00
Samuel Tabor 170b599469 Plane: Required changes for conditional soaring compilation (fmuv2). 2020-04-08 09:11:54 +10:00
Samuel Tabor e1f7122566 AP_Soaring: Improve tracking of enabled/disabled status. 2020-04-08 09:11:54 +10:00
Samuel Tabor e7418637ee Plane: In FBWB make target alt track current if soaring is enabled and suppressing throttle. 2020-04-08 09:11:54 +10:00
Samuel Tabor ed7e359f4d Plane: Make target altitude track current altitude when gliding. 2020-04-08 09:11:54 +10:00
Samuel Tabor 2260fda4ec AP_Soaring: Detect changes in active parameter/switch position. 2020-04-08 09:11:54 +10:00
Samuel Tabor 650b464831 AP_Soaring: Move drift check to separate function and check drift with reference to mission segment, allowing drift in right direction. LOITER target, not current position, is now used. 2020-04-08 09:11:54 +10:00
Samuel Tabor 5963164a22 Plane: Soaring, make zero SOAR_MAX_RADIUS always RTL, and -1 never. 2020-04-08 09:11:54 +10:00
Samuel Tabor 75f772b269 AP_Soaring: Add SOAR_MAX_RADIUS parameter, that defines when a RTL will be used when exiting LOITER. 2020-04-08 09:11:54 +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
Samuel Tabor 684ee11fc3 AP_TECS: Add flags to indicate gliding flight, and use these with AP_Soaring. 2020-04-08 09:11:54 +10:00
Samuel Tabor 013628bd1d Plane: Soaring - better reporting of exit due to drift. 2020-04-08 09:11:54 +10:00
Samuel Tabor 96bc0e1e03 Plane: Soaring: Reset loiter.sum_cd when good to continue thermalling, so that exit heading acceptance criteria does not grow. 2020-04-08 09:11:54 +10:00
Samuel Tabor e7736fb5e7 AP_Soaring: Line up on current, not next, nav command. 2020-04-08 09:11:54 +10:00
Samuel Tabor a56b1dadb9 Plane: fix bug with headingLinedUp when loiter.sum_cd was negative. 2020-04-08 09:11:54 +10:00
Tom Pittenger 394fbb1a50 Plane: unified soaring exit behavior: auto heads to next wp, cruise continues cruise heading, FBW to home 2020-04-08 09:11:54 +10:00
Tom Pittenger ce9450846b Plane: fix soaring typo 2020-04-08 09:11:54 +10:00
Tom Pittenger ec8f82422a Plane: move loiter heading init for auto into auto helper, and properly reset it in loiter mode enter 2020-04-08 09:11:54 +10:00
Tom Pittenger fd4b7c823e Plane: improved soaring exit options 2020-04-08 09:11:54 +10:00
Tom Pittenger f397c168e8 Plane: refactor loiter heading exit logic 2020-04-08 09:11:54 +10:00
Tom Pittenger f6396d7a6d Plane: add reason to exit Thermal loiter and adjust LOW alt reaon to cause RTL 2020-04-08 09:11:54 +10:00
Michael du Breuil 9600eea394 Plane: Report what channel is used for rudder arming 2020-04-07 14:01:12 -07:00
Rishabh a9cacc8756 Plane: Logger documentation TimeUS fix 2020-04-07 18:57:01 +10:00
Michael du Breuil 37be15b3cd Plane: When stick mixing is disabled do not apply stick mixing to quadplane modes 2020-04-04 10:12:22 +11:00
Mark Whitehorn cbce94005b Plane: expand description of QTUN.Sscl log message field 2020-04-03 08:36:55 +11:00
Rishabh a76d0e3002 Plane: Remove SONR messages logging 2020-04-01 17:11:48 +11:00
Rishabh ac6b04c21b Plane: Spelling fix in logger documentation 2020-03-31 10:07:50 +11:00
Rishabh aea2cdb0c9 Plane: added logger documentation 2020-03-31 10:07:50 +11:00
Peter Barker ab557662cc Plane: check channel space before sending servo output raw in SITL CPU failsafe 2020-03-26 15:12:50 +11:00
Henry Wurzburg 4d2c5ebbaa ArduPlane: update logger meta-data, add to gitignore 2020-03-25 14:20:53 +11:00
Andrew Tridgell bd341691e2 Plane: fixed flaperon auto-trim
fixed direction of flaperon automatic trim with SERVO_AUTO_TRIM
2020-03-23 15:20:08 +11:00
Peter Barker 383cfb3b11 Plane: remove bad trailing backslashes in log structure definition
These are required in LogStructure as it's a massive #define.  This is
just a plane C struct definition so doesn't need them
2020-03-22 18:35:14 +11:00
Henry Wurzburg 3914ae23ca ArduPlane: fix typos in logger message meta-data 2020-03-22 10:04:53 +11:00
Peter Barker 9bc6790723 Plane: add CTUNi QTUN and PIQ? log information 2020-03-21 09:34:43 +11:00
Peter Barker b810a0de23 Plane: add logger documentation for NTUN 2020-03-20 13:05:46 +11:00
Peter Barker 5a7d52fa0d Plane: send SERVO_OUTPUT_RAW message when in cpu failsafe under SITL
This allows us to test that rc inputs are copied to the outputs in CPU
failsafe in autotest
2020-03-20 12:19:21 +11:00
Andrew Tridgell 9f92aad711 Plane: implement get and set target location 2020-03-12 08:36:40 +11:00
Andrew Tridgell 8aaefea2a4 Plane: convert to new get_rpm() API 2020-03-12 08:36:40 +11:00
Peter Barker 4fac8c9e16 ArduPlane: move AP_PARM_KEY_DUMP function up to AP_Vehicle base class
Common to all vehicles now, including Tracker
2020-03-10 11:00:14 +11:00
Henry Wurzburg 7828274c72 Plane: prevent jump to Circle upon Takeoff mode entry unless flying >10s 2020-03-03 18:25:02 +11:00
Andrew Tridgell c6a6427d6a Plane: prevent lidar glitches from triggering land final
this prevents short term lidar glitches from triggering the change
from descend to final in quadplane
2020-02-27 13:15:46 +11:00
Randy Mackay f2ab428cdd Plane: rename update_throttle_mix
was called update_throttle_thr_mix
also minor format fixes
2020-02-25 16:52:40 +09:00
Peter Barker 5ff1630c63 ArduPlane: move initialisation of serial and gcs to AP_Vehicle 2020-02-25 11:50:55 +11:00
Rishabh 0b01bb531d Plane: Remove unutilized case 2020-02-25 11:02:43 +11:00
Rishabh 30fd915312 Plane: Update CRASH_DETECT param 2020-02-25 11:02:43 +11:00
Gone4Dirt e02a9890b3 Plane: force mission resume on RTL when DO_LAND_START in mission 2020-02-25 10:05:12 +11:00
Andrew Tridgell 2b24e922a7 Plane: updated release notes for 4.0.5beta1 2020-02-23 08:20:50 +11:00
Peter Barker 74dbcac40e ArduPlane: log disarm method 2020-02-22 12:16:29 +11:00
Andy Piper 3832bc455d Plane: dynamic notch setting via FFT 2020-02-22 11:15:37 +11:00
Andy Piper 04792b23a9 ArduPlane: add gyro fft logging 2020-02-22 11:15:37 +11:00
Gone4Dirt e2f3cb7ee8 Plane: Support added for DO_LAND_START FS fix 2020-02-18 21:03:29 +11:00
Peter Barker 19bc60b690 Plane: correct missing EFI parameter docs 2020-02-18 13:28:03 +11:00
Andrew Tridgell cd673b5ffd Plane: updated release notes for 4.0.4 2020-02-16 17:05:18 +11:00
Andrew Tridgell 7a14992cce Plane: reset TECS at end of auto VTOL takeoff 2020-02-16 17:04:07 +11:00
Andrew Tridgell 0bfab20bd0 Plane: fixed a bug in LOITER_TURNS in quadplanes
if NAV_LOITER_TURNS is used with Q_GUIDED_MODE=1 then we would orbit
forever. This ensures we do exit the loiter
2020-02-12 13:52:32 +11:00
Peter Barker 58d45ef04a Plane: let AP_Vehicle handle loop() 2020-02-06 14:41:06 +11:00
Andrew Tridgell 4e457c1ebb Plane: update release notes for 4.0.4beta1 2020-02-05 12:15:52 +11:00
Peter Hall 2898b5e2fb Plane: report FENCE_MITIGATE_NONE 2020-02-04 10:24:33 +09:00
Andrew Tridgell 56044b8b04 Plane: fix for updated mavlink extensions 2020-01-29 08:17:13 +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 de423a945f Plane: move rssi initialisation into init_ardupilot
This makes it the same as Rover and Copter.
2020-01-28 11:34:51 +11:00
Peter Barker e358677f85 Plane: allow NavEKFs to be compiled out 2020-01-21 11:53:18 +11:00
Peter Barker 9364181772 Plane: EKF objects have moved into AP_AHRS_NavEKF 2020-01-21 11:53:18 +11:00
Peter Barker 024c86bdab Plane: let AP_Vehicle base class worry about scheduler delay callback 2020-01-21 11:37:28 +11:00
Peter Hall 807c05c715 Plane: tilitrotor: allow motor test 2020-01-21 10:11:16 +11:00
Peter Hall 90494c9de6 Plane: tailsitter: allow motor test 2020-01-21 10:11:16 +11:00
Andrew Tridgell 3e930baf89 Plane: update release notes for 4.0.3 2020-01-21 08:13:23 +11:00
Andrew Tridgell 671a4d7673 Plane: update release notes for 4.0.3beta2 2020-01-18 21:40:26 +11:00
Andrew Tridgell 1854e73788 Plane: use HAL_PARACHUTE_ENABLED 2020-01-18 13:48:48 +11:00
Andrew Tridgell 2e1b4cadc2 Plane: removed AP_Stats 2020-01-16 20:36:54 +11:00
Peter Hall a2e72de5ae Plane: move to airspeed_estimate with pointer 2020-01-14 22:34:37 -07:00
Peter Hall fbba3f4035 Plane: set_likely_flying in vehicle 2020-01-14 22:34:37 -07:00
Andrew Tridgell a90c16e60e Plane: update for new SRV_Channels parameter conversion call 2020-01-14 14:23:11 +11:00
Peter Barker a74d754720 Plane: AP_Arming now logs arm/disarm events 2020-01-14 11:39:36 +11:00
Tatsuya Yamaguchi 1f9f84044c Plane: allow scripts to get modes 2020-01-14 11:16:29 +11:00
Andrew Tridgell 0f7fbfae77 Plane: update release notes for 4.0.3beta1 2020-01-10 19:41:12 +11:00
Peter Barker a50b777179 ArduPlane: let RC_Channel indicate AUX_FUNC::ARMDISARM needs no initialisation
All users set this.
2020-01-08 18:36:02 +11:00
Henry Wurzburg 040a1b7fbe Plane:fix typo in ARSPD_FBW_MAX param description 2020-01-02 12:00:52 -07:00
Peter Hall 660c9a8a60 Plane: move from FLAP_IN_CHANNEL to RCx_Option 2020-01-01 08:11:01 +11:00
Gone4Dirt 760909d046 Plane: Prevent FS action overiding VTOL land 2019-12-31 11:42:59 +11:00
Andrew Tridgell 56286d8df3 Plane: update release notes for 4.0.2 2019-12-30 14:44:44 +11:00
Andrew Tridgell 77f0810f01 Plane: removed init_vehicle from separate vehicles
use common call from AP_BoardConfig
2019-12-30 13:02:04 +11:00
Andy Piper eca398e7a2 Plane: create generic vehicle management and move runcam to it 2019-12-30 13:02:04 +11:00
Michael du Breuil 7d8005ef27 Plane: Update flaperons for all control modes
Fixes flaperons not working during takeoff, and is generally slightly
easier to reason about
2019-12-24 16:58:46 +11:00
Andrew Tridgell 6d4f4d7a3b Plane: allow negative VFR_HUD throttle 2019-12-24 15:14:03 +11:00
Peter Barker 1db9201a90 Plane: let GCS base class handle proximity and rangefinder messages 2019-12-24 12:08:54 +11:00
Andrew Tridgell 4774c78a12 Plane: update release notes for 4.0.2beta3 2019-12-23 20:26:43 +11:00
Andrew Tridgell 0e79044285 Plane: fixed range check for RC channel 2019-12-20 10:55:14 +11:00