Commit Graph

4921 Commits

Author SHA1 Message Date
Iampete1 4848ac9166 Plane: quadplane: don't use `is_active_z()`, becasue its wrong 2022-01-04 10:42:12 +11:00
Iampete1 fb1f6b57ad Plane: Quadplane: never run Z controller if motors are not throttle unlimited 2022-01-04 10:42:12 +11:00
Peter Hall c215fa0745 Plane: Quadplane: never run Z controller in tailsiter VTOL transtion 2022-01-04 10:42:12 +11:00
Peter Hall 9df753551e Plane: quadplane: tailsitter: always relax pitch after transtion 2022-01-04 10:42:12 +11:00
Peter Hall d054ca0426 Plane: quadplane: limit post VTOL transtion pitch rate on tailsitters in maunal modes 2022-01-04 10:42:12 +11:00
Peter Hall 67d7ba490f Plane: quadplane: pass time to tailsitter.in_vtol_transition where avalable 2022-01-04 10:42:12 +11:00
Iampete1 9634641323 Plane: tailsitter: rate limit pitch up in VTOL pos control flight. 2022-01-04 10:42:12 +11:00
Andrew Tridgell 2691022e12 Plane: update release notes for 4.1.6 2022-01-03 13:11:18 +11:00
Andrew Tridgell 2251293ec7 Plane: fix stabilize mode
should self-level. Broken by #19171
2022-01-03 08:09:53 +11:00
Iampete1 abe9e4425b Plane: quadplane: remvoe unused loiter initial pitch varable 2021-12-31 08:46:31 +11:00
Andrew Tridgell fb019eb0f3 Plane: add a low pass filter to speed scaler
this is needed due to the filtering done on the target rate in
AC_PID. With a low filter rate in AC_PID a step in the speed scaler
results in a step in the FF output due to the mismatch in the
instantaneous SS and the filtered target rate
2021-12-29 18:36:05 +11:00
Peter Barker e55eea961f ArduPlane: create and use AP_OPTICALFLOW_ENABLED 2021-12-29 18:12:03 +11:00
Andrew Tridgell 336b666f83 Plane: fixed stick mixing and throttle nudge in QRTL approach
thanks to Henry for noticing this
2021-12-28 16:04:12 +11:00
Peter Barker d7fae5263f ArduPlane: adjust for rename of OpticalFlow.cpp 2021-12-28 10:16:20 +11:00
Samuel Tabor a715472353 Plane: Specify starting location to set_offset_altitude_location 2021-12-27 11:27:52 +11:00
Hwurzburg 18e427d27d Plane: add Q_OPTION to force fw trans on fail instead of QLAND 2021-12-24 13:55:15 +11:00
Iampete1 2154738421 Plane: Quadplane: only advance to QPOS_POSITION2 once tilts have finished slewing 2021-12-22 18:46:14 +11:00
Iampete1 eac52fe08f Plane: quadplane: don't ouput VTOL throttle on tiltrotor with no VTOL motors and till fully forward 2021-12-22 18:46:14 +11:00
Iampete1 6116eaeb32 Plane: quadplane: enhance tiltrotor transtion to better deal with tiltrotors with all motors tilting 2021-12-22 18:46:14 +11:00
Andy Piper aefc97fafa Plane: use calculated number of notches for dynamic harmonic 2021-12-22 18:13:38 +11:00
Andrew Tridgell db0f06fb58 Plane: update release notes for 4.1.6beta1 2021-12-21 13:21:50 +11:00
Peter Barker 278899e44c ArduPlane: tidy log message id definitions
Add a comment indicating only 20 ids are available to the vehicle
2021-12-21 10:42:18 +11:00
Jaaaky 50430d9fc8 ArduPlane: Fix multi #include's 2021-12-21 10:38:46 +11:00
Iampete1 055d90d49b Plane: tailsitter: add gains to scale control surface vs motors 2021-12-21 10:14:34 +11:00
Gone4Dirt d244a0b803 Plane: Make RPM log independant of RC log mask 2021-12-16 12:48:48 +11:00
Samuel Tabor c44fed34d4 AP_Soaring: Override airspeed and flap angle. 2021-12-16 07:12:24 +11:00
Peter Barker 08a8b3f155 Plane: use @CopyValuesFrom for FLTMODEn parameters 2021-12-16 07:11:33 +11:00
Iampete1 8aa4a802f3 Plane: tiltrottor: add missing ff terms 2021-12-14 10:14:28 +09:00
Andrew Tridgell c746efff4f Plane: updated release notes for 4.1.5 2021-12-13 10:55:44 +11:00
Hwurzburg 049f5f2135 Plane: fix divide by zero in transition time 2021-12-10 19:10:51 -08:00
Andrew Tridgell 1c89b7f3a2 Plane: check for VTOL takeoff in AUTO
if the "only arm in Q modes" bit is set in Q_OPTIONS then check that
in AUTO mode we are in a VTOL takeoff WP
2021-12-07 12:51:18 +11:00
Hwurzburg 274111a5ea ArduPlane: clean up short failsafe 2021-12-07 10:09:33 +11:00
Andrew Tridgell 522056d6f7 Plane: release notes for 4.1.5beta1 2021-12-04 18:06:38 +11:00
Andrew Tridgell ca13503f41 ArduPlane: revert compass parameter changes 2021-12-04 16:51:53 +11:00
Andrew Tridgell e7c7cdd653 Plane: reset VTOL takeoff if not armed
we need to reset the takeoff target position while disarmed so we
don't use spurious position information from before we get good GPS
lock.

also remove the "Resetting previous waypoint" message as it doesn't
provide useful information and is just a distraction (it would be
printed continuously while waiting for arming with this PR)
2021-12-04 16:51:02 +11:00
Andrew Tridgell e342ce0da4 Plane: fixed reset of steering locked course
reset when we have not been steering for 1s, to ensure that an old
locked course is not used
2021-12-04 07:41:35 +11:00
Andrew Tridgell 5f52171776 Plane: added QRTL as RCn_OPTION 2021-12-02 08:29:07 +11:00
Andrew Tridgell de4a4a775a Plane: fixed use before init bug in VTOL land
found by Peter Barker with valgrind
2021-12-01 19:42:42 +11:00
Andrew Tridgell 56870ad7d6 Plane: use yaw rate controller in NAV_SCRIPT_TIME 2021-11-30 16:19:26 +11:00
Andrew Tridgell 55d8afa1dd Plane: support autotune for yaw rate control 2021-11-30 16:19:26 +11:00
Andrew Tridgell b619ee4970 Plane: added support for rate yaw control
to enable for ACRO mode, set ACRO_YAW_RATE to desired maximum rate in
degrees/second, and set YAW_RATE_ENABLE=1 to enable PID tuning of yaw
rate controller

pair programmed with Andy Palmer and Matthew Hampsey
2021-11-30 16:19:26 +11:00
Iampete1 06c9a69975 Plane: remove compass params underscore 2021-11-30 08:14:43 +09:00
Josh Henderson 52adda7c4c Plane: INAV rename for neu & cm/cms 2021-11-30 10:08:07 +11:00
Josh Henderson c6dd39773d ArduPlane: inav use _xy() 2021-11-30 10:08:07 +11:00
Andrew Tridgell 1af384ad12 Plane: updated release notes for 4.1.4 2021-11-25 09:05:29 +11:00
Andrew Tridgell 36562ed30b Plane: limited VFWD integrator to cruise throttle
in some situations (such as when landing approach is disabled) the
vfwd integrator can wind up to extreme values. This can put a huge
load on an electric quadplane as it is running both forward and vtol
motors, and the downforce from being nose down can be extreme.

It should never need to go above the cruise throttle in any reasonable
situation, so limit it to cruise to ensure we don't apply too much
forward throttle
2021-11-24 18:49:24 +11:00
kniuk 6581afcb8d deleted set_target_altitude_location from set_next_WP 2021-11-24 18:08:26 +11:00
Andrew Tridgell 77c43d9ba1 Plane: limiting POS1 landing target speed
prevent very high target speeds when the target velocity profile is
above the initial speed in POSITION1. Always allow up to 2*Q_WP_SPEED,
but don't go above the initial speed
2021-11-24 07:15:21 +11:00
Andrew Tridgell 8d59e6fa48 Plane: fixed variable name
thanks to Peter for noticing
2021-11-22 13:15:29 +11:00
Hwurzburg 5cafccd447 ArduPlane: fix flare rc switch action with flight option bit 10 active 2021-11-21 21:00:04 +11:00
Peter Hall 151ef760a4 Plane: quadplane: log postition controller PIDs 2021-11-21 09:01:58 +11:00
Andrew Tridgell 734edd8085 Plane: fixed chute release on low value of RC option
only release on flag high
fixes #18843
2021-11-18 15:19:18 +11:00
Andrew Tridgell ae81bbc5ed Plane: suppress spurious EKF yaw reset message
this makes plane match copter, emitting a yaw reset event, but not
worrying user. This message came out on each boot when EKF3 first
became active
2021-11-17 20:54:12 +11:00
Michel Pastor 685d34d615 Plane: fix bug causing wrong thr max and slew to be used during takeoff
Fix bug introduced in 3d34e061fe which causes flight_stage to be
FLIGHT_NORMAL instead of FLIGHT_TAKEOFF during takeoff stage causing
itself at least the use of THR_MAX and THR_SLEWRATE instead of
respectively TKOFF_THR_MAX and TKOFF_THR_SLEW and perhaps has other
consequences.

Could be really bad if TKOFF_THR_MAX needs to be much higher
than THR_MAX or if TKOFF_THR_SLEW needs to be much lower than
THR_SLEWRATE and cause a crash on takeoff due to low airspeed or torque
roll
2021-11-17 19:37:39 +11:00
Iampete1 9210488550 Plane: quadplane: limit pitch for all transitions into position control modes 2021-11-17 19:10:56 +11:00
Peter Barker 17395f362e ArduPlane: allow specification of Scheduler table priorities 2021-11-17 19:00:04 +11:00
Andrew Tridgell e5106b990e Plane: update release notes for 4.1.3 2021-11-16 16:08:18 +11:00
Peter Barker 70562021ac ArduPlane: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED 2021-11-15 20:27:40 +11:00
Peter Barker 203103bae5 ArduPlane: ensure ENABLE_SCRIPTING is always defined 2021-11-15 20:27:40 +11:00
Iampete1 b9d240460b Plane: remove SpdHgt and use TECS direct 2021-11-13 08:05:39 +11:00
Andrew Tridgell de44dceda4 Plane: enable fixed wing autotune switch 2021-11-10 18:46:34 +11:00
Iampete1 773c48b30c Plane: tailsitter: start transtion from desired pitch not actual 2021-11-09 13:44:30 +00:00
Iampete1 51caf15f94 Plane: manual stabilize: keep nav pitch and roll up to date 2021-11-09 13:44:30 +00:00
Iampete1 68f252e0df Plane: tiltrotor: allow tilt wing as flap 2021-11-09 10:46:09 +11:00
Iampete1 5ba2bd675a Plane: move quadplane arming checks to own function and add angle max and tiltrotor / tailsitter checks 2021-11-09 10:45:22 +11:00
Peter Barker 7c3de472b2 Plane: support send_extended_sys_state 2021-11-09 10:22:24 +11:00
Andrew Tridgell 893046608c Plane: update release notes for 4.1.3beta1 2021-11-09 09:27:27 +11:00
Andrew Tridgell 0c1e576544 Plane: added support for NAV_SCRIPT_TIME 2021-11-08 21:08:52 +11:00
Andrew Tridgell d3742989ef Plane: default rate max to 75 for quadplane VTOL
this reduces overshoot when VTOL tune is less than ideal
2021-11-07 06:58:53 +11:00
Andrew Tridgell debae1381c Plane: fixed a bug in POSITION1 speed thresholds
we were comparing two different speeds in the threshold for going to
Q_WP_SPEED limit. The reason the two speeds were different was the
wp_nav init happened before the defaults were setup for quadplanes

this fixes both bugs
2021-11-06 20:00:10 +11:00
Peter Barker 554e7f8d1c ArduPlane: move EFI to AP_Vehicle 2021-11-05 09:22:17 +11:00
Peter Barker 6a12d3f5d9 Plane: use enum class for StickMixing 2021-11-03 18:06:00 +11:00
Iampete1 e33954d561 Plane: tailsitter transition tidyups 2021-11-02 10:14:36 +11:00
Iampete1 af8688b300 Quadplane: add transiton class 2021-11-02 10:14:36 +11:00
Iampete1 9073d16b09 Tiltrotor: add transtion class 2021-11-02 10:14:36 +11:00
Iampete1 ce5b81869d Plane: Tailsitter: add transtion class 2021-11-02 10:14:36 +11:00
Iampete1 7af1b40fb8 Plane: system use new transtion class 2021-11-02 10:14:36 +11:00
Iampete1 99d98cc5b8 Plane: add transition class as friend 2021-11-02 10:14:36 +11:00
Iampete1 23a413946b Plane: Qacro: use new transition class 2021-11-02 10:14:36 +11:00
Iampete1 f25e5087c0 Plane: attitude: use new transition class 2021-11-02 10:14:36 +11:00
Andrew Tridgell 9c617a18f4 Plane: suppress rate D terms in ground mode
this prevents a common oscillation issue on the ground
2021-10-30 18:45:53 +11:00
Andrew Tridgell b74dca02ca Plane: avoid qpos approach when very close to destination
this prevents a fwd transition when doing something like LOITER_TIME
close to a VTOL_LAND wp. We use 1.5 times the stopping distance at
cruise airspeed for the threshold
2021-10-29 20:22:19 +11:00
Andrew Tridgell 19b5044223 Plane: fixed VTOL state error when using Q_ENABLE=2
this ensures the poscontrol state is reset if it has not been
initialised before a VTOL loiter operation

thanks to Pete Hall for finding this
2021-10-29 20:22:19 +11:00
Andrew Tridgell 51ccc1822c Plane: rename ReleaseNotes.txt to be more consistent with copter 2021-10-27 15:32:32 +11:00
Hwurzburg 8d94e58ec9 ArduPlane: add RC option to plane for emergency remote landing that forces FS actions to FBWA 2021-10-26 10:34:28 +11:00
Iampete1 bfbd0d93c1 Plane: Quadplane: continue in mode loiter to Qland on failsafe, as with Qland 2021-10-26 10:13:55 +11:00
Hwurzburg 085c5c815b Plane: Fix bug with mode return on short fs exit and add FBWB action 2021-10-26 10:12:48 +11:00
Sebastian Quilter 013de11916 ArduPlane: make rangefinder ranges m rather than cm 2021-10-21 21:28:53 +11:00
Iampete1 73e9c9bb43 Plane: quadplane: forward throttle reutrn float 2021-10-20 18:29:58 +11:00
Iampete1 2f93c1f9e4 Plane: stabilizer roll and pitch to floats 2021-10-20 18:29:58 +11:00
Iampete1 b31ce6734a Plane: get throttle input return float 2021-10-20 18:29:58 +11:00
Iampete1 2f4661c52f Plane: use float for set/get output scaled 2021-10-20 18:29:58 +11:00
Peter Barker bcad5a7ba6 ArduPlane: handle renaming of AP_InertialNav_NavEKF to AP_InertialNav 2021-10-20 18:09:36 +11:00
Peter Barker 987d67b867 ArduPlane: move SITL object up to AP_Vehicle 2021-10-19 11:34:43 +11:00
Peter Barker eef8115ffc ArduPlane: factor substring from allocation_error parameter 2021-10-18 12:49:44 +11:00
Andrew Tridgell 5684ca13fa Plane: update release notes for 4.1.2 2021-10-17 15:51:50 +11:00
Andrew Tridgell 34110e387f Plane: update release notes for 4.1.2beta2 2021-10-16 20:45:37 +11:00
Tom Pittenger c450145fd5 Plane: move ADSB mavlink handling from vehicles to common library 2021-10-14 19:55:27 -07:00
Josh Henderson 8af299f978 Plane: HIGH_Latency2 check get_temperature return and return INT8_MIN 2021-10-13 19:40:45 +11:00
Andrew Tridgell faba02a3f5 Plane: apply the takeoff throttle slew limit to quadplanes
this applies the limit when we are in a fwd transition, both in AUTO
modes and stabilized modes
2021-10-13 18:53:45 +11:00
Iampete1 e99a5c6ef4 Plane: Quadplane: reinstate THR PWM param discriptions for stable users 2021-10-11 22:19:17 -04:00
Iampete1 30c9cccf78 Plane: Quadplane remove THR_MIN_PWM and THR_MAX_PWM 2021-10-11 22:19:17 -04:00
Iampete1 d1d6342165 Plane: update_throttle_range dont set_throttle_range 2021-10-11 22:19:17 -04:00
Andrew Tridgell 493d8979d5 Plane: reset target speed on disarm
allows for multiple auto missions with DO_CHANGE_SPEED
2021-10-11 10:47:52 +11:00
Andrew Tridgell bf425a1edf Plane: update release notes for 4.1.2beta1 2021-10-10 18:08:36 +11:00
Andrew Tridgell 570ecdc2e0 Plane: don't apply fw pitch limit in VTOL control for tailsitters
tailsitters may have narrow fixed wing limits but need high limits for
landing in high wind

found this on a HWing which was essentially impossible to auto land
2021-10-10 06:35:20 +11:00
Andrew Tridgell 8550765c25 Plane: update release notes for 4.1.1
# Conflicts:
#	ArduPlane/mode_qrtl.cpp
#	ArduPlane/quadplane.cpp
P
2021-10-08 13:31:04 +11:00
Peter Barker 3a6a6b63f2 Plane: use mode name instead of number in failsafe text
We have the method, we should use it
2021-10-07 13:01:07 +11:00
Hwurzburg 4e731bf4e2 Plane: add VTOL POS1 notification to QRTL mode 2021-10-06 11:38:32 +11:00
Peter Barker 3e031e78e5 Plane: add comment about us sending airspeed error in wrong units 2021-10-05 11:20:55 +11:00
Andrew Tridgell 2be23fff2b Plane: obey Q_RTL_ALT when in POS1 and POS2 states
this fixes the alt target for when user has disabled the quadplane
approach code
2021-10-02 12:46:59 +10:00
Hwurzburg 636358b668 Plane: add param for throttle control in transition to VTOL 2021-10-01 22:04:51 +01:00
Iampete1 c178962200 Plane: tailsitter: only apply throttle scaling once in assised flight 2021-10-01 22:04:51 +01:00
bugobliterator ae4d368267 Plane: replace config_error with allocation_error 2021-09-30 08:51:26 +10:00
Peter Barker e1aa863eae Plane: stop passing current_loc into AP_Camera 2021-09-29 18:33:01 +10:00
Iampete1 958748f8cf Plane: tailsitter: reset FW yaw I allong with roll and pitch when in assist 2021-09-29 17:12:33 +10:00
Michel Pastor 7cb2619413 Plane: fix flawed logic in throttle voltage comp params check 2021-09-29 17:05:17 +10:00
Andrew Tridgell b417aad807 Plane: update release notes for 4.1.0 stable 2021-09-28 15:53:18 +10:00
Iampete1 a350ebb358 Plane: quadplane: do_vtol_land remove uneded I reset 2021-09-28 10:51:21 +10:00
Iampete1 4b62bd9180 Plane: add Loiter to QLand to Flight mode switch 2021-09-28 09:31:13 +10:00
Iampete1 682798d044 PLane: support Loiter to Qland battery failsafe action 2021-09-28 09:31:13 +10:00
Iampete1 0a1cad772c Plane: LoiterAltQLand: support handle_guided_request 2021-09-28 09:31:13 +10:00
Iampete1 a0260b05b3 Plane: handle_guided_request per mode 2021-09-28 09:31:13 +10:00
Iampete1 1148bb1234 Plane: Quadplane: add loiter to alt then QLAND mode 2021-09-28 09:31:13 +10:00
Iampete1 0549e08c5c Plane: add mehtod to check terrain by mode 2021-09-28 09:31:13 +10:00
Iampete1 dc2ba8236a Plane: trim_radio: check manual mode and rotation rates and add mesages 2021-09-28 09:16:24 +10:00
Iampete1 90dd36285e Plane: support TRIM_TO_CURRENT_SERVO_RC RC option to trigger trim radio function 2021-09-28 09:16:24 +10:00
Iampete1 cbfa4e5746 Plane: remove trim_radio mavlink option 2021-09-28 09:16:24 +10:00
Iampete1 8e693e5cd1 Plane: remove TRIM_AUTO param 2021-09-28 09:16:24 +10:00
Andrew Tridgell fd5faa866f Plane: always log QPOS when changing control state 2021-09-27 21:21:53 +10:00
Andrew Tridgell 9d0b7f8efe Plane: removed set_state to QPOS_POSITION1 in do_vtol_land
we are immediately replacing the state with QPOS_APPROACH, so the
set_state is not needed, and triggers a call to
attitude_control->reset_yaw_target_and_rate() which can badly impact
euler rates for tailsitters
2021-09-27 21:21:53 +10:00
Peter Hall e83b598040 Plane: Quadplane: check attitude relax before running controllers, don't run controls if not going to output 2021-09-25 12:53:11 +10:00
bugobliterator 4b62dd75b0 ArduPlane: fix casting to pass format check 2021-09-22 21:36:34 +10:00
Iampete1 cdfda2bd9b Plane: allow arming in quided with only arm in Qmodes Q_OPTION 2021-09-22 18:14:16 +10:00
Iampete1 b63e68a5ef Plane: fix RC init order to avoid error message 2021-09-21 17:49:47 +10:00
Peter Barker 9aee98eeb8 Plane: log groundspeed undershoot 2021-09-21 11:12:17 +10:00
Bob Long 84a89b0b94 Plane: fix units in Plane::get_wp_distance_m() 2021-09-21 09:40:00 +10:00
Bob Long 728d1e76fe Plane: clean up cm-to-m conversion in nav_control_output 2021-09-21 09:40:00 +10:00
Bob Long f2d32fc800 Plane: quadplane: fix wp_dist reporting for VTOL landings
After hitting the approach stage of a VTOL landing in auto, nav_controller_output sends zero as the distance to waypoint.
2021-09-21 09:40:00 +10:00
Iampete1 df36853da2 Plane: support ARMDISARM_AIRMODE 2021-09-21 09:36:24 +10:00
Iampete1 cc89a8cc48 Plane: remove airmode Q_OPTION 2021-09-21 09:36:24 +10:00
Iampete1 db416bbeef Plane: convert to new ARMDISAM based on quadplane param 2021-09-21 09:36:24 +10:00
Shiv Tyagi cdb4ec8ad0 Plane : Improved LAND_THEN_NEUTRL to work on all control surfaces
This fixes the issue #18593

Co-Authored-By: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2021-09-17 22:06:24 -05:00
Andrew Tridgell baec0d83f2 Plane: moved accel cal update to vehicle code 2021-09-17 14:07:14 +10:00
Andrew Tridgell 7547ad53d3 Plane: allow for new guided destination during guided takeoff
if you set a very high alt for takeoff this is useful
2021-09-17 10:06:08 +10:00
Andrew Tridgell 8bee839931 Plane: fixed overshoot in guided takeoff of quadplanes 2021-09-17 10:06:08 +10:00
Iampete1 c4a1ae42e5 Plane: Quadpalne: move tiltrotor functionality to own class 2021-09-17 08:24:17 +10:00
Iampete1 1d5ea351c4 Plane: re-init RTL modes if home set 2021-09-15 14:10:15 +01:00
Iampete1 478bf37246 Plane: used correct WP radius for VTOL flight 2021-09-15 20:36:56 +10:00
Iampete1 a368549a9d Plane: tailsitter: only flag tilt limit on vectored vehicles 2021-09-15 18:03:12 +10:00
Andrew Tridgell ad8669ae74 Plane: update release notes for 4.1.0beta8 2021-09-15 14:21:12 +10:00
Hwurzburg 01c41dc213 Plane:Tailsitter: add relaxed POSXY defaults 2021-09-15 07:40:12 +10:00
Peter Barker 974af3edea Plane: correct compilation when QUADPLANE disabled 2021-09-14 13:55:01 +10:00
Peter Barker 3d34e061fe ArduPlane: add and use HAL_QUADPLANE_ENABLED 2021-09-14 11:23:18 +10:00
Josh Henderson 1da21c3b21 Quadplane: use vector.xy().length() instead of norm(x,y) 2021-09-14 10:43:46 +10:00
Andrew Tridgell cb307891e0 Plane: fixed bad yaw rate demands in tailsitter fixed wing modes
this prevents the pilot putting in crazy yaw rate demands due to the
use of rudder stick in fixed wing modes for tailsitters while still
allowing for FBWA flat turns if the user wants them.

It uses the existing RUDD_DT_GAIN parameter for a gain scaling of yaw
rate for copter tailsitters
2021-09-14 07:55:40 +10:00
Iampete1 b18da48f39 Plane: remove AUTO_FBW_STEER 2021-09-12 22:12:32 -05:00
Andrew Tridgell 3ec53e2aec Plane: prepare for 4.1.0beta7 2021-09-11 09:48:31 +10:00
Leonard Hall f3dc47ce3d Copter: Add units to the AC_AttitudeControl Library 2021-09-09 08:01:14 +09:00
Iampete1 e6968395c6 Plane: remove none-functional NAV_CONTROLLER param 2021-09-08 20:32:52 +09:00
Iampete1 71e2e25313 Plane: attitude: in vtol modes call mode run and stabalize with surfaces 2021-09-08 18:06:58 +10:00
Iampete1 c73207b4b0 Plane: quadplane: remove init mode and control run methods 2021-09-08 18:06:58 +10:00
Iampete1 a985e47d45 Plane: system: don't try and switch to VTOL modes if quadplane is not enabled 2021-09-08 18:06:58 +10:00
Iampete1 e4feea9457 Plane: mode enter init auto state vtol mode to is_vtol_mode 2021-09-08 18:06:58 +10:00
Iampete1 2582159d1a Plane: mode.h remove init method 2021-09-08 18:06:58 +10:00
Iampete1 fae22b34b7 Plane: mode_qstabilize: combine enter and init 2021-09-08 18:06:58 +10:00
Iampete1 63be15e018 Plane: mode_qrtl: combine enter and init 2021-09-08 18:06:58 +10:00
Iampete1 fa908b0a1d Plane: mode_qloiter: combine enter and init 2021-09-08 18:06:58 +10:00
Iampete1 70d9d20faf Plane: mode_qland: combine enter and init 2021-09-08 18:06:58 +10:00
Iampete1 5ebd439712 Plane: mode_qhover: combine enter and init 2021-09-08 18:06:58 +10:00
Iampete1 f055471d8a Plane: mode_qautotune: call init 2021-09-08 18:06:58 +10:00
Iampete1 64aba43b56 Plane: mode_qacro: combine enter and init 2021-09-08 18:06:58 +10:00
Iampete1 fd7a879c85 Plane: remove unused params 2021-09-08 17:21:23 +10:00
Hwurzburg 327f3a0803 ArduPlane: add option for man throttle center to be TRIM_THROTTLE 2021-09-07 10:02:26 +10:00
Iampete1 95fbf39f72 Plane: quadplane: check_attitude_relax use the last time the controllers were run not the last time relax was checked 2021-09-07 09:09:47 +10:00
Iampete1 fb8fb34cfc Plane: tailsitter: don't relax attitude control in transision to VTOL, rely on check_attitude_relax to do the right thing 2021-09-07 09:09:47 +10:00
Hwurzburg 5ca652a243 Plane: rename tailistter motor class to more correct singl/dual motor layout 2021-09-06 10:14:05 +10:00
Peter Barker d6a2056cca ArduPlane: make bad-mode-number notification consistent across vehicles 2021-09-01 19:45:46 +09:00
Peter Barker 0a8e1575b1 Plane: reuse set_mode_by_number implementation
Was just duplicated
2021-09-01 19:45:46 +09:00
Iampete1 88f2f7ccae Plane: remove unused param OVERRIDE_SAFETY 2021-09-01 18:46:18 +10:00
Andrew Tridgell 3bb17697fd Plane: fixed params for Q_TAILSIT_ENABLE 2021-09-01 14:04:35 +10:00
Iampete1 7f8b7b66a9 Plane: tailsitter: add enable = 2 for force q assit and assisted flight airmode 2021-09-01 08:33:24 +10:00
Iampete1 f1477a6c29 Plane: quadplane: add assisted flight only airmode 2021-09-01 08:33:24 +10:00
Iampete1 4efa9866fa Plane: arming: do not disable asisted flight airmode on disarm 2021-09-01 08:33:24 +10:00
Iampete1 46670f7bd0 Plane: quadplane: move tailsitter items to dedicated setup 2021-09-01 08:33:24 +10:00
Iampete1 700a92f036 plane: quadplane: tailsitter: run FW transition check and assist immediately 2021-08-31 10:34:33 +10:00
Peter Hall 657fcb7f59 Plane: quadplane: set `last_pidz_init_ms` 2021-08-31 09:58:03 +10:00
Iampete1 3c44a4fe6b Plane: radio: remove recompute_pwm_no_deadzone calls in training mode 2021-08-31 09:48:59 +10:00
TunaLobster d31f3eb4c5 Plane: Add TRIM_PITCH_CD FLIGHT_OPTIONS bits for GCS and OSD 2021-08-31 09:32:10 +10:00
Andrew Tridgell a39a948c57 Plane: updated releases notes for 4.1.0beta6 2021-08-29 11:35:08 +10:00
Peter Barker bfe9208849 ArduPlane: add and use HAL_BUTTON_ENABLE 2021-08-25 19:03:42 +10:00
Iampete1 70ab9ba3b6 Plane: tailsitter: remove pilot prop-hanging teaching params and code. 2021-08-25 18:47:51 +10:00
Hwurzburg 551d55a85c ArduPlane: add thr position trigger to ThrLandCtrl Q_OPTION 2021-08-25 12:32:59 +10:00
Andrew Tridgell 3228b0e670 Plane: added MCU_STATUS message 2021-08-25 07:11:31 +10:00
Iampete1 d372907a98 Plane: Quadplane: add Q_OPTION to only allow arming in Qmodes and auto. 2021-08-24 10:39:12 +10:00
Samuel Tabor 65a38b26a4 ArduPlane: altitude: rangefinder correction should be relative to the altitude source being used for navigation. This avoid applying it twice when there is an existing correction saved. 2021-08-19 17:59:33 +10:00
Andrew Tridgell e1b73a5198 Plane: added slew rate and Dmod for PID_TUNING message 2021-08-19 12:08:54 +10:00
TunaLobster cbf6c2926f ArduPlane: Remove @RebootRequired: False 2021-08-19 10:00:16 +10:00
Peter Barker e0d03ce565 ArduPlane: move wind-estimation-enabled state to frontend 2021-08-18 18:37:39 +10:00
Peter Barker a84fda9b1f Plane: adjust for rename yaw_initialised -> dcm_yaw_initialised 2021-08-18 18:37:39 +10:00
Peter Barker 5afaacc320 ArduPlane: stop sending SENSOR_OFFSETS
Only works for first compass instance.

We have all of these in parameters anyway.
2021-08-18 18:06:24 +10:00
Andrew Tridgell 58c823284c Plane: mark logger Write() calls as streaming where appropriate 2021-08-18 10:20:03 +10:00
Andrew Tridgell 497a7c9819 Plane: fixed EKF fly-forward flag for tailsitters
for tailsitters that are always using the VTOL controllers (forced
QAssist) we need a different way to determine the fly-forward flag
2021-08-17 20:48:36 +10:00
Iampete1 baf2b4a3d8 Plane: Qstabilize: mode functions to ModeQStabilize 2021-08-17 11:46:49 +10:00
Iampete1 44e63861ce Plane: QRTL: move functions to ModeQRTL 2021-08-17 11:46:49 +10:00
Iampete1 f75919e727 plane: QLoiter: move functions to ModeQLoiter 2021-08-17 11:46:49 +10:00
Iampete1 921116e7a3 Plane: QLand: move functions to ModeQLand 2021-08-17 11:46:49 +10:00
Iampete1 737096f342 Plane: QHover: move functions to ModeQHover 2021-08-17 11:46:49 +10:00
Iampete1 a1fa683272 plane: Qautotune: move functions to ModeQAutotune 2021-08-17 11:46:49 +10:00
Iampete1 e293866245 plane: Qacro: move functions to ModeQAcro 2021-08-17 11:46:49 +10:00
Peter Barker 515a994c59 ArduPlane: move VehicleClass handling to AHRS frontend
.... and renaming the enumeration while we're at it
2021-08-17 10:34:07 +10:00
Iampete1 bd2fed31ee Plane: actualy fail to enter mode, don't just put the mode back and reutrn true 2021-08-17 10:20:53 +10:00
Iampete1 59a158d7be Plane: don't output throtte in when safe 2021-08-16 21:22:35 +10:00
Andrew Tridgell c6efbdd359 Plane: update release notes for 4.1.0beta5 2021-08-16 15:19:43 +10:00
Hwurzburg 9ab0d2e387 ArduPlane: add CRUISE mode RC AUX Function switch 2021-08-11 18:35:05 +10:00
Andrew Tridgell d1d0ab41d6 Plane: added option to log PIDs at full rate
useful for tuning quadplanes
2021-08-10 10:13:36 +10:00
Peter Barker 5dab6b7275 Plane: remove pointless override of send_simstate
This is dangling after removing HIL stuff
2021-08-10 09:48:34 +10:00
Iampete1 a1ecd706b7 Plane: notify buzzer on every mode change 2021-08-10 09:47:33 +10:00
Leonard Hall 65b58dea85 Plane: fix PID filter names FILT -> FLTE, D_FILT -> FLTD 2021-08-10 08:33:56 +09:00
Peter Hall ed4345cb3b Quadplane: tailsitter: provide assistance at min throttle 2021-08-08 19:41:22 +10:00
Peter Hall 2527117cf9 Quadplane: combine assistance_needed and assistance_safe functions 2021-08-08 19:41:22 +10:00
Hwurzburg 80b4cd7ae9 ArduPlane: correct Mission Reset override behaviour in Plane 2021-08-06 10:17:25 +10:00
bugobliterator c8b2f009fd Plane: change class name from SITL::SITL to SITL::SIM 2021-08-05 07:25:31 +10:00
Tom Pittenger 7f9bbc9cfd Plane: fix ADSB stall speed units. Was accidently using meter/s instead of cm/s 2021-08-04 07:08:24 -07:00
Samuel Tabor 23f6f38390 Plane: soaring: No action if in landing sequence. 2021-08-04 06:52:56 +10:00
Josh Henderson 66cd413473 ArduPlane: remove POSITION_TARGET_TYPEMASK_FORCE_SET 2021-08-03 12:48:38 +10:00
Iampete1 7ff592d29e Plane: Quadplane: move mode functions to mode classes in-place 2021-08-03 12:28:31 +10:00
Iampete1 4a5e4f9c85 Plane: mode: add quadplane refences 2021-08-03 12:28:31 +10:00
Iampete1 a808d5c688 Plane: mode: add run and init methods 2021-08-03 12:28:31 +10:00
Iampete1 03d17437c3 Plane: mode_takeoff: call base mode constuctor 2021-08-03 12:28:31 +10:00
Peter Barker 435988a300 Plane: don't reset home on GPS startup on watchdog reset 2021-08-03 10:36:50 +10:00
Peter Barker cfe25f71e3 ArduPlane: use mission singleton inside AP_AdvancedFailsafe 2021-08-03 10:35:24 +10:00
Andrew Tridgell e7702a4216 Plane: mark log messages as streaming 2021-08-03 10:23:36 +10:00
Hwurzburg 1e4a6c9236 ArduPlane: Correct OSD horizon for VTOL modes and TRIM_PITCH_CD in Fixed Wing 2021-08-03 10:09:28 +10:00
Peter Barker 7e8f812909 Plane: don't allow motortest if motors not allocated 2021-08-02 10:24:49 +10:00
Andrew Tridgell b037507c48 Plane: mark master as 4.2.0dev 2021-08-01 06:06:26 +10:00
Peter Barker c348f602d9 ArduPlane: use AP::compass().available in place of enabled() 2021-07-30 12:19:42 +10:00
Peter Barker 85e8b362a7 ArduPlane: stop using AHRS as conduit for Compass pointer 2021-07-30 12:19:42 +10:00
Peter Barker c1e263695f Plane: remove unimplemented function declaration 2021-07-30 11:23:06 +10:00
Iampete1 f18428b357 Plane: #ifdef scripting specific functions 2021-07-28 18:18:32 +10:00
Hwurzburg b539a534e9 Plane: improve description of Q_TRIM_PITCH 2021-07-27 12:49:33 +10:00
Iampete1 beefd95079 Plane: QuadPlane: tailsitter param conversion, set and use new enable param 2021-07-27 09:08:34 +10:00
Iampete1 0eab3faf32 Plane: use new tailsiter class 2021-07-27 09:08:34 +10:00
Iampete1 2bc2b9533b Plane: QuadPlane: move tailsitter to class 2021-07-27 09:08:34 +10:00
Andrew Tridgell 716697f337 Plane: updated release notes for 4.1.0beta4 2021-07-25 18:31:48 +10:00
Andrew Tridgell 73952dfecb Plane: update ATRP logging 2021-07-24 15:32:55 +10:00
Andrew Tridgell f472da8e90 Plane: added ONESHOT_MASK parameter
after discussion with Paul on servo latency
2021-07-23 14:47:14 +10:00
Andrew Tridgell 1ae669bb01 Plane: added manual input expo for MANUAL, ACRO and TRAINING
this is easier than setting up mode specific expo in radios for flying
in manual modes
2021-07-23 14:47:14 +10:00
Andrew Tridgell c0d942af4c Plane: disable EKF3 default airspeed fusion by default
this fusion can cause problems with wind estimation, disable by
default for now
2021-07-22 18:20:45 +10:00
Andrew Tridgell 8e6abf5976 ArduPlane: replaced Pixhawk with more appropriate wording in docs 2021-07-22 07:48:12 +10:00
Peter Barker 06c2faaec5 ArduPlane: rename for AHRS restructuring 2021-07-21 21:01:39 +10:00
Peter Barker e3b8fc6646 ArduPlane: remove ability to use DCM as AHRS 2021-07-21 21:01:39 +10:00
Peter Barker 354c1091f8 ArduPlane: stop taking references to ahrs in APM_Control 2021-07-21 18:27:23 +10:00
Hwurzburg 19213d3627 Plane: Allow yaw at zero throttle in VTOL descents 2021-07-20 11:10:25 +10:00
Iampete1 015b971ccb Plane: add new dynamic mixer frame class 2021-07-20 09:19:28 +10:00
Andrew Tridgell d41e400c86 Plane: added acro and training modes RC option 2021-07-20 09:00:46 +10:00
Peter Barker 93323f1f39 Plane: stop setting terrain singleton; libraries use singleton 2021-07-12 17:34:44 +10:00
Leonard Hall 7db568c85a Plane: seperate kinimatic shaping from pid limit setting 2021-07-10 20:25:05 +09:00
WillyZehnder 0ce6157900 Plane: GCS_Plane.cpp Fix chronological sequence
to avoid inappropriate critical warning CRT:NoRCReceiver by ensuring the
call of plane.failsafe.last_valid_rc_ms before calling millis()
2021-07-07 18:56:09 +10:00
Peter Barker 5b7ec1fab4 Plane: do not run any prearm checks if we are armed or arming is not required
Co-authored-by: TunaLobster <unknown>
2021-07-07 18:20:54 +10:00
Stephen Dade d6a123b58b ArduPlane: Add support for HIGH_LATENCY2 messages 2021-07-07 17:10:05 +10:00
Hwurzburg 8dee32e64f Plane: Add TX FF tuning for Pitch/Roll/Yaw QuadPlane PIDs 2021-07-06 09:00:16 +10:00
Andrew Tridgell 7ca0aa7c94 Plane: updated release notes for 4.1.0beta3 2021-07-05 16:24:04 +10:00
Andrew Tridgell 8482f9af27 Plane: fixed motor test with DShot VTOL motors
need to arm when running the motor test
2021-07-05 07:36:28 +10:00
Samuel Tabor 5e5452cf73 Plane: mode_thermal: adjust messages to reference parameter names 2021-06-30 18:21:03 +10:00
Hwurzburg ac76a63931 ArduPlane: remove values metadata from log bitmask 2021-06-30 09:24:26 +09:00
Hwurzburg 8310f4a718 Plane: fix bug in tilt position for QLOITER and QRTL if THR_MIN !=0 2021-06-29 10:58:11 +10:00
Andrew Tridgell 92197bd5a9 Plane: fixed longitude wrap in verify_nav_wp
thanks to @Khancyr
2021-06-25 15:33:55 +10:00
Andrew Tridgell 50e6d67a66 Plane: update for new double precision position APIs 2021-06-24 21:34:30 +10:00
Andrew Tridgell 61ac45dd5a Plane: use cleaned up APIs 2021-06-24 20:28:45 +10:00
Andrew Tridgell 4d7bb82f9e Plane: updated release notes for 4.1.0beta2 2021-06-24 20:15:01 +10:00
Andrew Tridgell 66bc673442 Plane: fixed attitude control during QPOS_AIRBRAKE
this fixes a bug where we used the multicopter rate control when in
airbrake approach stage, which could lead to attitude going out of
control
2021-06-22 07:42:20 +10:00
Peter Barker 055e82276e ArduPlane: remove HIL support 2021-06-15 09:47:31 +10:00
Iampete1 6eab9b9c15 plane: quadplane: skip QPOS_POSITION1 on tailsitters 2021-06-15 09:25:58 +10:00
Peter Hall 85743be4f3 Revert "Plane: cope with Q pitch limit larger than fixed wing limit"
This reverts commit 74da3c74ac.
2021-06-15 09:25:58 +10:00
Hwurzburg e958306343 Plane: Add options to USE_REVERSE_THRUST to cover all flight modes 2021-06-15 07:05:02 +10:00
Hwurzburg 4f48233b43 ArduPlane: add QRTL always as Q_RTL_MODE option 2021-06-14 09:08:20 +10:00
Andrew Tridgell 80afba3bd2 Plane: updated release notes for 4.1.0beta1 2021-06-14 08:25:05 +10:00
Andrew Tridgell 0c8e81964e Plane: reset yaw controller on entry to POSITION1
this fixes a yaw change when we finish landing approach in
QRTL. Thanks to Henry for noticing this
2021-06-14 07:53:32 +10:00
Andrew Tridgell 4307390820 Plane: fixed distance threshold for vtol land 2021-06-13 07:50:02 +10:00
Andrew Tridgell f749c2c3ad Plane: fixed issue with overspeed in QPOS_POSITIION1
this fixes the backflip issue on the convergence that Henry found
2021-06-13 07:50:02 +10:00
Andrew Tridgell ae6220aace Plane: cope with zero distance to target in QPOS_POSITION1 2021-06-10 13:50:29 +10:00
Andrew Tridgell 0f9e7001d1 Plane: limit speed in POSITION1 based on angle
this prevents trying to fly a quadplane fast backwards or sideways. If
flying backwards then a 3x reduction is used. For sideways a 2x
reduction is used
2021-06-10 13:50:29 +10:00
Andrew Tridgell 74ac9964f1 Plane: improved POSITION1 speed profile
allow acceleration up to the Q_WP_SPEED, and assume a decel profile
matching Q_TRANS_DECEL for approach speed
2021-06-10 13:50:29 +10:00
Andrew Tridgell 5f8e90cd6f Plane: metadata fix for Q_OPTIONS 2021-06-10 13:50:29 +10:00
Andrew Tridgell 3611b1dbf7 Plane: added check for QPOS initialisation
thanks to Kris for noticing this!
2021-06-10 13:50:29 +10:00
Andrew Tridgell db34577755 Plane: use a separate bit for landing reposition in quadplanes
when repositioning stop descent
2021-06-10 13:50:29 +10:00
Andrew Tridgell 06cd077c36 Plane: fixed stick mixing with land reposition in quadplanes
prevent stick mixing overriding landing control
2021-06-10 13:50:29 +10:00
Andrew Tridgell 0937d903a1 Plane: use HAL_EFI_ENABLED 2021-06-09 18:07:00 +10:00
Andrew Tridgell 0ecc02c53a Plane: fixed constructor of accel_ef filter 2021-06-08 11:14:52 +10:00
Iampete1 438ca0a6c4 Plane: tailsitter: increase severity level of failed transisisons. 2021-06-08 10:56:09 +10:00
Andrew Tridgell f970735d47 Plane: fixed handling of NAV_LOITER_TIME with Q_GUIDED_MODE=1
and made logic of in_vtol_mode() easier to read
2021-06-05 13:05:30 +10:00
Andrew Tridgell aa904d6bbc Plane: fixed guided mode handling with new approach code
ensure we treat guided approach as not a vtol mode
2021-06-05 13:05:30 +10:00
Andrew Tridgell 1165fcab99 Plane: removed incorrect URL 2021-06-05 13:05:30 +10:00
Andrew Tridgell fd19ff3bea Plane: offset guided start point when using Q_GUIDED_MODE 2021-06-05 13:05:30 +10:00
Andrew Tridgell f15497c6a9 Plane: only do fwd thrust loss detection in SLT vehicles
on tilt rotors and tailsitters it doesn't make sense to switch to
POSITION1 at low speeds when in APPROACH
2021-06-05 13:05:30 +10:00
Andrew Tridgell 0232fa7456 Plane: cope with fwd thrust loss in Q approach
if throttle is saturated and descending and low airspeed then declare
thrust loss
2021-06-05 13:05:30 +10:00
Andrew Tridgell fbf5083e6a Plane: avoid transition in QRTL
if close to home and already in a VTOL mode then don't transition
2021-06-05 13:05:30 +10:00
Andrew Tridgell 3bb840f794 Plane: implement slow descent in QRTL approach
this approaches in QRTL at ALT_HOLD_RTL alt, then descends to
Q_RTL_ALT close to the destination
2021-06-05 13:05:30 +10:00
Andrew Tridgell 77ee922473 Plane: fixed NAV_CONTROLLER_OUTPUT in QRTL 2021-06-05 13:05:30 +10:00
Andrew Tridgell 245ded2f2d Plane: fixed handling of loss of fwd thrust in QRTL 2021-06-05 13:05:30 +10:00
Andrew Tridgell c7a14a5da1 Plane: disable cross-track in Q approach modes and QRTL 2021-06-05 13:05:30 +10:00
Andrew Tridgell 46722500b0 Plane: default Q_TRANS_DECEL to 6 for tailsitters 2021-06-05 13:05:30 +10:00
Andrew Tridgell a7b809d5d4 Plane: added approach and airbrake options
this defaults VTOL landings to have an approach and airbraking stage,
allowing for more efficient landings. Can be disabled by setting
Q_OPTIONS bit 16
2021-06-05 13:05:30 +10:00
Andrew Tridgell ddfc9e8300 Plane: improved quadplane auto-land into wind
when heading is strong we need to ramp up pitch limit slowly to
prevent a big dive
2021-06-05 13:05:30 +10:00
Andrew Tridgell b4992cc226 Plane: added accessors for poscontrol state
allows for time since state entered
2021-06-05 13:05:30 +10:00
Andrew Tridgell f1f7f01300 Plane: slave fixed wing desired rate to multicopter desired rate
this ensures that the two rate controllers don't fight each other when
in a VTOL mode
2021-06-05 13:05:30 +10:00
Andrew Tridgell 062a15ce11 Plane: set_takeoff_expected should only get set when not flying 2021-06-02 11:13:16 +09:00
Andrew Tridgell 68a1100c64 Plane: use new APIs for takeoff/touchdown expected 2021-06-02 11:13:16 +09:00
Hwurzburg bf14c32109 Plane: correct description of Q_TAILSIT_MOTMX param 2021-05-30 22:36:26 -07:00
James Harton be3cc1b679 Docs: Change all references from dev.ardupilot.org to the appropriate documentation URLs. 2021-05-31 12:20:45 +10:00
Peter Barker 3464f9b46e ArduPlane: remove optical flow pointer from AP_AHRS
Nothing was ever using it.
2021-05-30 10:44:42 +10:00
Leonard Hall e275ec9e63 Plane: Rename set_yaw_target_to_current_heading 2021-05-26 16:03:05 +09:00
vierfuffzig 9a538ba15b ArduPlane: fix advanced param metadata 2021-05-25 12:36:59 +10:00
Hwurzburg 38ed4a2dd6 ArduPlane: make centideg metadata incr and range consistent 2021-05-25 10:10:18 +10:00
Leonard Hall 8b3b6cf693 Plane: Fix before squash 2021-05-24 20:13:37 +10:00
Andrew Tridgell d1f6d913d5 Plane: adjust reposition landing code
use accel with 1s timeconstant
2021-05-24 20:13:37 +10:00
Andrew Tridgell 5857e750ce Plane: provide target velocity in QPOS descent 2021-05-24 20:13:37 +10:00
Andrew Tridgell 74da3c74ac Plane: cope with Q pitch limit larger than fixed wing limit
prevents tailsitter VTOL transition timeout due to not achieving angle
2021-05-24 20:13:37 +10:00
Andrew Tridgell 71fa52d5c6 Plane: fixed slowing descent in final phase of QLAND 2021-05-24 20:13:37 +10:00
Andrew Tridgell ec1cbb06fd Plane: allow reposition in auto land 2021-05-24 20:13:37 +10:00
Andrew Tridgell 6eafcdb558 Plane: added Q_OPTION bit for throttle control of landing speed 2021-05-24 20:13:37 +10:00
Andrew Tridgell 24375cf9c1 Plane: change printf calls to send_text 2021-05-24 20:13:37 +10:00
Andrew Tridgell 52b4c257ec Plane: prevent oscillation in GUIDED mode hover 2021-05-24 20:13:37 +10:00
Andrew Tridgell 5a880c74b6 Plane: use input shaping from pos_control
smoother navigation with new input shaping code
2021-05-24 20:13:37 +10:00
Andrew Tridgell a6ec7d9f23 Plane: ensure xy controller is initialised 2021-05-24 20:13:37 +10:00
Andrew Tridgell 9d52333afc Plane: don't start descent till under 3m/s 2021-05-24 20:13:37 +10:00
Leonard Hall 4bae8f03a4 Copter: Use PosControl fixes 2021-05-24 20:13:37 +10:00
Leonard Hall 57952861d6 Plane: PosControl Update 2021-05-24 20:13:37 +10:00
Leonard Hall ff2ae1d7d1 Plane: integrate AC_PosControl::get_roll_cd rename 2021-05-12 17:16:00 +10:00
Leonard Hall 1ce63bf433 Plane: minor format and comment fixes 2021-05-12 17:16:00 +10:00
Andy Piper 8e744a4a25 Plane: generalise ESC telemetry to allow harmonic notch handling with other ESCs 2021-05-12 17:01:11 +10:00
Pierre Kancir 8a0230e6d5 Plane: use MAVLink POSITION_TARGET_TYPEMASK 2021-05-11 09:53:50 +10:00
James O'Shannessy 5253b8a3ee ArduPlane: Fix spiralling loiters when no fence return point can be found 2021-05-05 10:59:10 +10:00
Iampete1 fd2909d53f Plane: change location refence frame correctly 2021-05-02 18:51:27 +10:00
Iampete1 1a182a52da Plane: init terrain to locaiton and wpnav sub sytems 2021-05-02 18:51:27 +10:00
Iampete1 572e401894 Plane: fix QRTl terrain following 2021-05-02 18:51:27 +10:00
Iampete1 a165a0e1bb Plane: fix loiter terrain following 2021-05-02 18:51:27 +10:00
Josh Henderson 5c8c961399 ArduPlane: Privatize AP_IntertialSensor Logging 2021-04-29 19:19:12 +10:00
Peter Barker 03d643a18a ArduPlane: log auxillary function invocations 2021-04-29 13:00:40 +10:00
Peter Barker 453b7403b1 ArduPlane: remove duplicate log metadata fields 2021-04-27 16:38:40 +10:00
Peter Hall d3dca4c17d Plane: consistantly slew all three throttles 2021-04-27 09:37:32 +10:00
Peter Hall 47ab0360e7 Plane: tailsitter: do not output throttle 2021-04-27 09:37:32 +10:00
Hwurzburg 09fb9a8e58 Plane: limit speed scaling in Autotakeoff wo AS sensor option 2021-04-20 09:07:09 +10:00
Andrew Tridgell da2ddda0cb Plane: added in ATRP logging 2021-04-15 06:57:16 +10:00
Andrew Tridgell 93abd44446 Plane: added SRate to PID logging 2021-04-15 06:57:16 +10:00
Andrew Tridgell 96059a6387 Plane: allow for AUTOTUNE_LEVEL==0 2021-04-15 06:57:16 +10:00
Andrew Tridgell d2d06af751 Plane: removed ATRP log msg 2021-04-15 06:57:16 +10:00
Andrew Tridgell a35d8e584d Plane: change param prefixes for roll/pitch controllers 2021-04-15 06:57:16 +10:00
Andrew Tridgell e5308db8c2 Plane: added FLIGHT_OPTIONS bit to enable yaw control in ACRO mode
this allows for yaw damper in ACRO, which is important on some
vehicles with no vertical stabilize

See
https://discuss.ardupilot.org/t/rudderless-split-rudder-flying-wing/69273/4
2021-04-15 06:22:29 +10:00
Samuel Tabor 4cc92c6b3e Plane: Constrain target_airspeed_cm by min as well as max airspeed. 2021-04-14 06:43:09 -07:00
Samuel Tabor baf31fd825 Plane: Ensure trim airspeed is applied if in auto with no DO_SPEED command received. 2021-04-14 06:43:09 -07:00
Peter Barker 6a32afcd72 ArduPlane: tidy setting of sensor status flags 2021-04-14 18:03:27 +10:00
Andrew Tridgell b749756c29 Plane: setup SMAX for Q modes
this enables logging of rates, which helps with tuning
2021-04-13 10:28:47 +10:00
Andrew Tridgell b984dd4a62 Plane: added in FF component in tailsitters
this is needed for decent control of tailsitters
2021-04-13 10:28:47 +10:00
Peter Hall 105f94f1fd Plane: tailsitter: transistion to and from inverted flight 2021-04-13 10:02:28 +10:00
Peter Hall 5a941ce02f PLane: tailsitter: instant transition when disarmed 2021-04-07 17:55:48 +10:00
Peter Hall 33f9e3d4b6 plane: add tailsitter transision rates, give more info in transision complete messages 2021-04-07 17:55:48 +10:00
Peter Barker aa973c5245 ArduPlane: move handling of last-seen-SYSID_MYGCS up to GCS base class 2021-04-07 17:54:21 +10:00
Iampete1 75dc0ced10 Plane: Quadplane: remove outdated Z controller reset 2021-04-07 17:37:30 +10:00
Stavros Korokithakis 3c19579988 Plane: Push the TECS to climb in all circumstances 2021-04-06 21:37:01 +10:00
Randy Mackay ff8b69fbad Plane: update tuning to integrate poscon changes 2021-04-03 12:07:59 +09:00
Peter Barker cb8ca17035 ArduPlane: return MAV_RESULT_FAILED from do_aux_function if invalid function 2021-03-31 11:36:09 +11:00
Iampete1 d1fabe0c3d Plane: VTOL: remove motors config error 2021-03-30 10:58:05 +11:00
Iampete1 e81dc36ed6 Plane: add option do do a VTOL approach RTL 2021-03-29 11:29:12 +11:00
Peter Barker a32d45eb04 ArduPlane: remove Log_Write_Performance which is not called anywhere 2021-03-26 16:35:08 +11:00
Iampete1 60d26723ae Plane: make TERRAIN_FOLLOW at AP_int32 bitmask, per mode option 2021-03-24 10:15:18 +11:00
Hwurzburg 8aabf7c22a Plane: Add VTOL descent rate, convert existing rate to climb rate only
Co-authored-by: Reko Merio K9260@student.jamk.fi
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2021-03-23 14:32:46 +11:00
Mark Whitehorn c2ad2d6090 Plane: tailsitter.input_type bugfix 2021-03-23 11:54:09 +11:00
Hwurzburg 0eb5369543 Plane: allow max auto pitch in hand launch takeoffs 2021-03-23 09:56:22 +11:00
Iampete1 660d301f9b Plane: chan param converison 2021-03-17 19:18:46 +11:00
Iampete1 cca5e62c89 Plane: move RST_SWITCH_CH to RCx_OPTION 2021-03-17 19:18:46 +11:00
Iampete1 7226a3a9dc Plane: move FBWA_TDRAG_CHAN to RC Options 2021-03-17 19:18:46 +11:00
Iampete1 5f555e5314 Plane: move CHUTE_CHAN to RC Options 2021-03-17 19:18:46 +11:00
Iampete1 eeab196d91 Plane: move RST_MISSION_CH to RC option 2021-03-17 19:18:46 +11:00
Stavros Korokithakis 29043d62e9 Add FLIGHT_OPTION to climb before RTL 2021-03-16 11:58:47 +11:00
Peter Barker 0b35708f33 Plane: set tailsitter throttle output when disarmed 2021-03-16 10:41:44 +11:00
Peter Barker 000ff90a71 autotest: remove thrust-to-actuator to armed section 2021-03-16 10:41:44 +11:00
Hwurzburg d15e01d390 Plane: fix DO_CHANGE_SPEED airspeed to impact only AUTO and GUIDED modes 2021-03-16 10:09:34 +11:00
Samuel Tabor ed48558985 ArduPlane: Correct description of KFF_THR2PTCH parameter. 2021-03-12 20:11:02 -08:00
Siddharth Purohit 1b8519ee53 ArduPlane: move underscore one layer down for GPS 2021-03-12 16:32:36 +09:00
James O'Shannessy 198ec9a678 ArduPlane: Fix use of nullptr when AC_FENCE configured as DISABLED
Parameter upgrade needs to grab singleton as the fence library may not be built in to plane.
2021-03-05 16:48:57 +11:00
James O'Shannessy 560943d6e0 ArduPlane: corrections to returning to the previous mode if fence was disabled while under action 2021-03-05 14:52:46 +11:00
James O'Shannessy 5dd40afe0a ArduPlane: Retrigger fence breach if mode
ArduPlane: Move auto enabling code to common fence library
2021-03-05 14:52:46 +11:00
James O'Shannessy 2c66e164d0 ArduPlane: Improvements to parameter upgrading between versions 2021-03-05 14:52:46 +11:00
James O'Shannessy af733b2f09 ArduPlane: Convert and remap old parameters 2021-03-05 14:52:46 +11:00
James O'Shannessy f774196b52 ArduPlane: Cleanup of unnecessary comments in fence logic 2021-03-05 14:52:46 +11:00
James O'Shannessy c316711351 ArduPlane: Add conversion from ArduPlane geofence param to AC_Fence param 2021-03-05 14:52:46 +11:00
James O'Shannessy 8a99d9dd00 ArduPlane: Use auto enable and auto disable from AC_Fence 2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 4f7ffc5eb1 Plane: move fence disable code to a function to enable reusability 2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas fef8b37b11 Plane: Address Randy review comments 2021-03-05 14:52:46 +11:00
James O'Shannessy aae092b88f ArduPlane: Remove all unused geofence capability
ArduPlane: Remove missed geofence logic
2021-03-05 14:52:46 +11:00
James O'Shannessy 17fb585bf1 ArduPlane: Add support for AC_Fence
ArduPlane: Remove some geofence logic from ArduPlane

ArduPlane: Refactor action and mode return implementation

ArduPlane: Use polyfence to find the return point.
2021-03-05 14:52:46 +11:00
Paul Riseborough baea2c33bd Plane: remove unnecessary call to setTakeoffExpected
This is already set from inside Plane::set_servos_controlled when throttle up and or launch accel is detected.
2021-03-05 12:10:01 +11:00
Paul Riseborough 1dc79f0be8 Plane: Clarify calculation used to detect throw 2021-03-05 12:10:01 +11:00
Paul Riseborough 4e648734fa Plane: Fix takeoff pitch for hand launch 2021-03-05 12:10:01 +11:00
Paul Riseborough 39e1eb238d Plane: make detection of impending takeoff more likely 2021-03-05 12:10:01 +11:00
Paul Riseborough a1bde16abd Plane: Fix failure to disarm after landing in strong winds 2021-03-05 12:10:01 +11:00
Paul Riseborough ad582a90dd Plane: Don't set takeoff expected until vehicle is armed. 2021-03-05 12:10:01 +11:00
Paul Riseborough f5f13b9a47 Plane: Set default airspeed variance using airspeed range 2021-03-05 12:10:01 +11:00
Paul Riseborough 82f68464d4 Plane: Don't lower nose when hand launching 2021-03-05 12:10:01 +11:00
Peter Barker f85e55a611 Plane: override mission-changing-command to reset some state 2021-03-04 11:59:33 +11:00
Tom Pittenger 5c8d3a87db Plane: change SRx_ docs value 1 50 2021-03-03 18:17:22 +11:00
Iampete1 69275582fa QuadPlane: fix loiter to RTL instant QRTL switch 2021-03-03 15:07:22 +11:00
Randy Mackay 4c8ada111b Plane: quadplane defaults Q_WP_SPEED to 500
Q_WP_ACCEL default is set to 100
2021-03-03 08:03:39 +09:00
Iampete1 1d050a01ce Plane: Quadplane: add Q_OPTION to ignore forward flight angle limits in Q modes 2021-03-02 11:16:35 +11:00
Iampete1 8ebe64a274 Plane: Quadplane disable forward motor assist in Q modes if rangefinder is out of range low 2021-02-28 18:48:56 +11:00
Andrew Tridgell 44df1dd0ca Plane: fixed the pitch control in transition for tilt rotors
this fixes an issue found by Henry. If level transition is set when
transitioning to FBWA from a Q mode, and the pilot pulls back on the
pitch stick to demand pitch up then the plane would go into a
high-alpha flight state with low vertical throttle so it would not
climb, resulting in it never getting past airspeed wait state
2021-02-28 11:33:18 +11:00
Andrew Tridgell 319368e4b7 Plane: fixed yaw on fwd transition in tilt quadplanes
this fixes the coordinated turn calculation for yaw rate in tilt
quadplanes, and also only applies it if demanding at least 10 degrees
roll.

this fixes an issue when the pilot has a small roll demand in FBWA
from slightly off roll RC trim

thanks to Henry for helping diagnose this!
2021-02-27 14:42:20 +11:00
Andrew Tridgell ee2f7eac80 Plane: prepare for 4.0.9 2021-02-23 08:03:12 +11:00
Andrew Tridgell c913d8134d Plane: use ahrs.groundspeed() instead of gps call
this fixes a zero of integrator when dead-reckoning after GPS has died
2021-02-21 09:13:31 +11:00
Peter Barker 1b74058842 Plane: recalculate glide slope after achieving rtl.done_climb 2021-02-13 19:34:52 +11:00
Pierre Kancir 6062e4ee81 ArduPlane: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Mark Whitehorn 236961f17f Plane: use get_frame_class/type string methods
use AP_Enum<> for frame_class/type
remove invalid copterTS check
improve quadplane setup failure message

Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2021-02-09 12:43:53 +11:00
Samuel Tabor db8aaeb63a Plane: During takeoff keep limit at LEVEL_ROLL_LIMIT until rotate speed is reached. 2021-02-09 10:08:41 +11:00
Andrew Tridgell 2e9b2fbc2b Plane: update release notes for 4.0.9beta1 2021-02-06 15:46:01 +11:00
Peter Barker af29f34f2c Plane: store previous_mode_reason only as a local
It's never used outside the mode-changing method.
2021-02-03 20:33:25 +11:00
Iampete1 e600df680e Plane: instantly switch from RTL to QRTL if within radius 2021-02-03 18:53:54 +11:00
Patrick José Pereira cdc7f891a9 ArduPlane: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Peter Barker eaa6b36077 ArduPlane: move control_mode_reason up to AP_Vehicle 2021-02-03 18:24:52 +11:00
Peter Barker b6d0208287 Plane: allow arming in all auto-throttle modes
... except QRTL and QLAND which are now universally denied for arming.
2021-02-03 18:22:10 +11:00
Peter Barker a9be4480b1 Plane: mark q modes as not having auto-throttle control
Reverts part of 6baaf03c8c

AvoidADSB was NOT marked as AutoThrottle before that commit but was
marked as such in that commit.
2021-02-03 18:22:10 +11:00
Samuel Tabor d2c8eb8ce9 Plane: Allow AP_Soaring to specify loiter radius in THERMAL mode. 2021-01-29 11:20:09 -08:00
Andrew Tridgell b20604bb59 Plane: update release notes for 4.0.8 2021-01-26 17:17:40 +11:00
Iampete1 004f873dc7 Plane: update Quadplane FRAME_CLASS description 2021-01-26 11:07:36 +09:00
Andrew Tridgell 5f4b5c4b94 Plane: prevent failsafe from changing mode during landing
this prevents RC or GCS failsafe from triggering a mode change during
a landing
2021-01-26 11:17:10 +11:00
Peter Barker 87486739d1 Plane: disallow changing to INITIALISING mode 2021-01-26 10:47:27 +11:00
Randy Mackay d487d6152e Plane: ahrs pre-arm always runs position checks 2021-01-26 10:46:49 +11:00
Peter Barker 95bc9cca79 ArduPlane: use ground_course in preference to ground_course_cd 2021-01-26 10:22:28 +11:00
Randy Mackay 0d0ff63242 Plane: ensure wp_nav::wp_and_spline_init is called at least once 2021-01-20 18:22:44 +11:00
Iampete1 e4fbe64616 Plane: add QuadPlane singleton 2021-01-19 11:18:10 +11:00
Peter Hall 05fb14e5d9 Plane: tailsitter start transition from initial pitch 2021-01-19 10:46:58 +11:00
Iampete1 4dec597372 Plane: move quadplane logging to QuadPlane: update() 2021-01-19 10:24:05 +11:00
Samuel Tabor d97a81bfea Plane: Re-order logic in soaring.cpp. 2021-01-13 18:35:53 +11:00
Samuel Tabor a8549f5e5f Plane: Use const method on modes classes to mark those that support auto switch to THERMAL mode. 2021-01-13 18:35:53 +11:00
Peter Barker b698546b70 ArduPlane: add do_disarm_checks boolean to disarm call
this creates symmetry between arming and disarming, at least as far as
the top-level arm() and disarm() calls are concerned.
2021-01-12 08:48:44 +09:00
Pierre Kancir 742cfc543f Plane: fix parameter unit 2021-01-12 10:21:55 +11:00
Josh Henderson cc1e395854 ArduPlane: privatize AHRS logging 2021-01-12 10:13:22 +11:00
Peter Barker 6baaf03c8c Plane: move auto_throttle_mode to being a method on each mode 2021-01-10 16:04:30 +11:00
Peter Barker f6cb1b5ad6 Plane: use a method on Mode for auto-navigation-mode
Avoids the state getting stale, which it will with a failed attempt to
go into qautotune, for example.
2021-01-10 16:04:30 +11:00
Peter Barker a1ea1306a1 Plane: use pure-virtual method for allows_throttle_nudging
In place of a state variable which could become stale
2021-01-10 16:04:30 +11:00
Andrew Tridgell 6a804c3a09 Plane: update release notes for 4.0.8beta1
# Conflicts:
#	ArduPlane/release-notes.txt
2021-01-06 09:37:39 +11:00
Peter Hall 0c68ec7b5c Plane: add limit to pid log metadata 2021-01-05 10:27:28 +11:00
Andrew Tridgell 96c2a5c77c Plane: added scaling for Q_TAILSIT_VFGAIN
this scales the vectoring in fixed wing flight to remove the impact of
surface speed scaling and add throttle scaling
2021-01-05 08:23:28 +11:00
Andrew Tridgell a0fcef6ceb Plane: added tilt vectoring in fixed wing modes
this allows for vectoring for roll and pitch in fixed wing modes on
tilt-vectored quadplanes
2021-01-05 08:23:28 +11:00
Michael du Breuil 2909623057 Plane: Ensure that only one form of throttle nudging is active at once 2021-01-03 12:47:14 +11:00
Hwurzburg 913d1b81b2 Plane: correct bug that prevents QACRO rudder disarm 2021-01-02 08:59:31 +11:00
Tom Pittenger c653ff880a Plane: extend Stream rates param count to match MAVLINK_COMM_NUM_BUFFER 2020-12-29 07:52:09 -07:00
Peter Barker 9b2ef4f6f1 Plane: move rudder-arming arm checks into Plane's AP_Arming 2020-12-29 12:55:27 +11:00
Hwurzburg 5b471c4c0e Plane: move loiter,thermal out of auto fs group 2020-12-29 10:55:00 +11:00
Iampete1 33e397c524 Plane: tailsitter: output 0 tilt with 0 vector gain 2020-12-22 11:00:59 +11:00
Iampete1 c62c19c798 Plane: tailsitter: apply gain scailing to Tilts in motors only Qassist 2020-12-22 11:00:59 +11:00
Iampete1 54ee2c35fb Plane: rename tailsitter scailing max param to match min and update descriptions 2020-12-22 11:00:59 +11:00
Iampete1 0976979045 Plane: tailsitter: set motor limit flags 2020-12-22 11:00:59 +11:00
Iampete1 c8b3c91ae5 Plane: Tailsitter add disk theory and altitude gain scailing 2020-12-22 11:00:59 +11:00
Mark Whitehorn 9bf89e5635 Plane: add check for vectored tailsitter in tailsitter_transition_vtol_complete 2020-12-21 12:56:24 +11:00
Mark Whitehorn dd7a860f23 Plane: always instantiate AC_AttitudeControl_TS 2020-12-21 12:56:24 +11:00
Mark Whitehorn 24508f08dc Plane: don't relax pitch attitude controller for vectored tailsitters in throttle_wait
add is_vectored_tailsitter()
instantiate AC_AttitudeControl_TS for tailsitters
2020-12-21 12:56:24 +11:00
Andrew Tridgell 8e3c6124eb Plane: added support for rear motor tilt
needed for X8 tilt tri test aircraft for this PR
2020-12-21 12:05:50 +11:00
Andrew Tridgell e94cf561d0 Plane: use rull euler control for fwd transition of tilt vectored planes
this gives strong yaw control and wind handling for tilt vectored
planes in forward transitions. It relaxes the yaw if the user either
demands yaw with stick input or plane navigation is demanding a roll
angle for a turn

When navigation is demanded we setup yaw rate for a coordinated turn
2020-12-21 12:05:50 +11:00
Andrew Tridgell abd5f8351d Plane: don't reset yaw target in TRANSITION_TIMER for tilt-vectored quadplanes 2020-12-21 12:05:50 +11:00
Andrew Tridgell ad14e153e8 Plane: fixed tilt vectoring to cope with large tilt angles
This uses vectoring for both roll and yaw when tilted, and uses
differential thrust for yaw when tilted
2020-12-16 08:45:11 +11:00
Peter Barker 1307a2fea8 ArduPlane: add auxillary function to change to FBWA 2020-12-15 19:14:33 +11:00
Habibullah Oladepo 739fec001f Plane: Fix typos in Parameters.cpp 2020-12-13 10:51:38 -08:00
Tom Pittenger 04f6b2e26e Plane: remove unnecessary ::cork() in init 2020-12-11 17:48:11 +11:00
yaapu 141010ac39 ArduPlane: added virtual getters for waypoint info 2020-12-10 12:39:44 +11:00
Tom Pittenger 4a35159cba Plane: reset baro_takeoff_alt while disarmed 2020-12-09 18:17:53 +11:00
Andrew Tridgell cd2f2f96eb rename barometer parameters to BARO prefix 2020-12-08 13:22:17 +11:00
Peter Barker 719ca3f95f Plane: be consistent about strings in fence auto-enable/disable 2020-12-08 12:26:35 +11:00
Andrew Tridgell 2d0201855e ArduPlane: moved init_safety to AP_Vehicle 2020-12-08 11:14:24 +11:00
Peter Barker 5fae2652ab ArduPlane: let AHRS get the airspeed sensor from the singleton 2020-12-07 15:57:28 -08:00
Hwurzburg 8658023dad Plane: Add lower CHECK_SCALE defaults for QuadPlane 2020-12-07 11:49:01 +11:00
Andrew Tridgell cd6ddf7d4f Plane: fixed disable of geofence on quadplane landing
fixes #15917
2020-12-02 18:33:07 +11:00
Andrew Tridgell 52f61c7ac1 Plane: make FENCE_AUTOENABLE an AP_Enum 2020-12-02 18:33:07 +11:00
Andrew Tridgell d984ddc163 Plane: apply circular limits to QLOITER pilot angles
This uses the same logic as Copters get_pilot_desired_angle() to apply
a circular limit and the limits in Q_ANGLE_MAX and Q_LOIT_ANG_MAX to
loiter pilot angles.

Co-authored-by: Kris <kris968658@gmail.com>
2020-12-01 11:22:49 +11:00
Hwurzburg 3cdcce2123 ArduPlane: add inflight airspeed cal rc switch 2020-11-25 21:30:15 +11:00
Gone4Dirt 70246059ed Plane: Move AP_Generator to AP_Vehicle 2020-11-24 12:54:52 +11:00
Iampete1 0e50023593 Plane: tailsitter: use true hover throttle in VTOL transision. 2020-11-18 19:33:21 +11:00
Iampete1 dd3ac893b3 Plane: dont use VTOL throttle percentage in tailsitter vtol transisiton 2020-11-18 19:33:21 +11:00
Hwurzburg 5e8e088978 ArduPlane:Add safety limit on tailsitter VTOL transition throttle
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2020-11-17 11:21:17 +11:00
Iampete1 42887891be Plane: tailsitter: make sure alt target is abover current alt 2020-11-17 10:15:27 +11:00
Iampete1 f480f4e946 Plane: tailsitter: fix Qassist back - transision 2020-11-17 10:15:27 +11:00
Iampete1 c03de6bdbe Plane: log Qassist state 2020-11-17 10:15:27 +11:00
Andy Piper fa454da315 Plane: allow OSD for TX-only screens 2020-11-11 18:13:11 +11:00
Andrew Tridgell eea62bf733 Plane: added optional ground effect compensation for quadplanes
this allows for landings in aircraft badly effected by ground effect
to be compensated for
2020-11-10 12:05:48 +11:00
giacomo892 9b4441011c ArduPlane: Fix throttle nudge reset due to wrong radio timing 2020-11-10 10:20:23 +11:00
Mark Whitehorn c054218568 Plane: report quadplane setup errors in config_error loop 2020-11-05 15:04:10 +11:00
Iampete1 2d80dcd937 Plane: remove tailsitter VTOL transition race condition 2020-11-04 18:34:00 +11:00
Iampete1 5f67f8130b Plane: tailsitters use Z stopping point on transition 2020-11-04 18:34:00 +11:00
Iampete1 024d2b7435 Plane: always output flaperons and dspoilers 2020-11-03 10:44:07 +11:00
Iampete1 b225ae43ab Plane: always log tailsitter scalefactor 2020-11-03 10:38:51 +11:00
Iampete1 840f129153 Plane: remove unused tailsitter scailing option 2020-11-03 10:38:51 +11:00
Andrew Tridgell e5d580412e Plane: fixed usage of rangefinder in landing with RNGFND_LANDING=0
this fixes two places where rangefinder can affect landing when
RNGFND_LANDING=0
2020-11-03 10:08:00 +11:00
Iampete1 e6ba53856a Plane: tailsitter: ask for FW state don't check 2020-10-27 11:04:52 +11:00
Hwurzburg cf055fd1e0 Plane: add midposition to flare RC option sw 2020-10-27 10:47:07 +11:00
Mark Whitehorn 85480c8865 Plane: update frame_type parameter description 2020-10-27 10:24:20 +11:00
Randy Mackay 0362895720 Plane: integrate ahrs::get_variances change
offset is no longer returned
2020-10-21 08:58:45 +09:00
Iampete1 8885aa255d Plane: correct logger Message spelling error 2020-10-14 08:17:25 +11:00
Iampete1 916b35eec8 Plane: add EAS2TAS to CTUN 2020-10-13 15:18:36 +11:00
Hwurzburg b61ee34b6b ArduPlane: add RC option for landing flare 2020-10-13 11:36:19 +11:00
Samuel Tabor 9eef30294f Plane: Separate soaring update in mode_thermal to avoid loop rate issues. 2020-10-13 10:25:32 +11:00
Samuel Tabor 31c681c1cf Plane: Move soaring functions to mode_thermal. 2020-10-13 10:25:32 +11:00
Iampete1 2820228ad6 Plane: only do_change_speed within FBW min and max 2020-10-13 10:21:52 +11:00
Iampete1 2acbef5579 Plane: tailsitters in VTOL transition use FW rates 2020-10-13 10:07:05 +11:00
Iampete1 0201692eeb Plane: Q_OPTION to disable synthetic airspeed assist 2020-10-07 18:20:08 +11:00
Randy Mackay 60b4953751 Plane: integrate ahrs.pre_arm_check 2020-10-07 11:53:07 +11:00
Randy Mackay eeaf135cca AP_Arming: integrate ahrs.pre_arm_check 2020-10-07 11:53:07 +11:00
Randy Mackay 92f34a19d3 Plane: integrate parachute check_sink_rate
this was previously part of the update function.  It can be run before or after the update
2020-10-06 16:14:59 +11:00
Peter Barker 2783257aa4 Plane: correct compilation when logging disabled 2020-10-06 11:25:09 +11:00
Andrew Tridgell 9f3afe5434 Plane: update release notes for 4.0.7beta1 2020-10-02 15:16:40 +10:00
Iampete1 fb467da473 Plane: use Plane target yaw for ATT log 2020-09-30 18:15:42 +10:00
Iampete1 6621b69836 Plane: log quadplane transision state 2020-09-30 18:15:42 +10:00
Iampete1 f972d3dc2f Plane: Quadplane: tailsitter only change view once transision is complete 2020-09-30 18:15:42 +10:00
Iampete1 b61cf72b8c Plane: tailsitters in Qassist inherit motor state 2020-09-30 18:12:44 +10:00
Andrew Tridgell cfcd17f0d1 Plane: fixed bug in RC_Channel::has_valid_input
needs to go false when no RCIN and THR_FAILSAFE=2. This prevents ICE
library from using RC input
2020-09-29 10:43:41 +10:00
Samuel Tabor 589382cbb4 Plane: Add THERMAL mode to Parameters.cpp metadata. 2020-09-25 11:34:48 -07:00
Hwurzburg 8c856b3ed2 Plane: Add missing Q_OPTIONS metadata for all options 2020-09-25 13:43:59 +10:00
Andy Piper d16872cca5 Plane: compile out ADSB mode if required 2020-09-24 08:22:16 -07:00
Samuel Tabor 10111f92d5 Plane: Rename SOARING_ENABLED to HAL_SOARING_ENABLED and don't compare to ENABLED. 2020-09-24 07:30:48 +10:00
Samuel Tabor 0a738395fa Plane: Add THERMAL mode for thermal soaring. 2020-09-24 07:30:48 +10:00
Patrick José Pereira c19801d420 ArduPlane: Use new AP_FWVersionDefine header
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-09-23 20:58:35 +10:00
Peter Barker 15372e9213 ArduPlane: replace '@User: User' with '@User: Standard' 2020-09-22 14:56:04 +10:00
Tatsuya Yamaguchi c67a924801 Plane: replace message indicating that initialisation has completed 2020-09-22 09:52:52 +10:00
Andy Piper c057be8ed1 Plane: conditionally compile ADSB support 2020-09-22 09:33:51 +10:00
Iampete1 fc67c2c13b Plane: check AP_Motors has init correcly for Quadplanes 2020-09-22 09:12:14 +10:00
Tom Pittenger db10ad2e54 Plane: update USE_REV_THR param description to include landing pattern 2020-09-17 07:31:43 -07:00
Tom Pittenger c4ab7caa33 Plane: add reverse_thrust option when in landing pattern 2020-09-17 07:31:43 -07:00
Samuel Tabor e0f524d425 Plane: Soaring: Use circling time as timeout if less than 20s. 2020-09-10 09:18:52 -07:00
Samuel Tabor ad48394b50 Plane: Add comment to clarify additional 10m in soaring altitude target. 2020-09-10 22:21:41 +10:00
Samuel Tabor 87530c1b2b Plane: Soaring: Remove exit_mode argument from soaring_restore_mode. 2020-09-10 22:21:41 +10:00
Samuel Tabor 59f4c7a3c0 Plane: Allow auto climb back to SOAR_ALT_CUTOFF when soaring in FBWB or CRUISE modes. 2020-09-10 22:21:41 +10:00
Samuel Tabor 9f5b068d9e Plane: Handle EXIT_COMMANDED return status in soaring. 2020-09-08 16:54:45 -07:00
Andrew Tridgell e9b8a20312 Plane: fixed hover learn in quadplanes for THR_MIN>0
petrol quadplanes commonly have THR_MIN>0, and without this change
cannot ever learn the hover throttle
2020-09-08 11:09:25 +10:00
Mark Whitehorn 629f2153e0 Plane: move arming delay logic into AP_Arming_Plane 2020-09-08 10:54:42 +10:00
Mark Whitehorn 2b4772269d Plane: tiltrotors: allow vectored yaw motor tilt when disarmed
add disarm tilt delay
add arming delay
add Q_OPTIONS for disarmed motor tilt and delayed arming
add comment explaining arming delay option
eliminate millis() wrap in arming delay
2020-09-08 10:54:42 +10:00
Mark Whitehorn bcdd16025b Plane: replace AP_MotorsMatrixTS with AP_MotorsMatrix 2020-09-08 10:50:31 +10:00
Hwurzburg 96f5e2a20a Plane: Update THR_FAILSAFE param metadata 2020-09-04 07:08:03 +10:00
Samuel Tabor 93bcfc4c3e Plane: Assign flap channel in set_control_channels() to avoid expensive call in set_servos_flaps(). 2020-09-03 07:55:51 +10:00
Samuel Tabor 590ebb180c Plane: Update airbrake channel assignment in set_control_channels() to avoid expensive call in airbrake_update() 2020-09-02 10:10:09 -07:00
Samuel Tabor f1290a2e17 Plane: Add use of airbrakes, used when throttle is negative OR via RC channel option. 2020-09-02 10:10:09 -07:00
Iampete1 abee62abc4 Plane: use throttle in for transition max comparison 2020-08-30 18:19:40 +10:00
Peter Barker 75aa8b7e6e Plane: log speed scaler into AETR 2020-08-29 18:52:46 +10:00
Andrew Tridgell bf0f359445 Plane: fixed LOITER_TO_ALT with terrain target
many thanks to Pompecukor for finding this!

Fixes #14951
2020-08-25 10:39:18 +10:00
Samuel Tabor 67c152cef2 Plane: Move cruise state into cruise flight mode. 2020-08-22 09:30:15 +10:00
Samuel Tabor 334fd4afbc Plane: Remove update_navigation() method. 2020-08-20 13:02:06 +10:00
Samuel Tabor 836be4b4b4 Plane: Remove _navigate indirection in Mode. 2020-08-20 13:02:06 +10:00
Samuel Tabor 6a27866df4 Plane: Call plane.update_loiter() rather than plane.mode_loiter.navigate(). 2020-08-20 13:02:06 +10:00
Samuel Tabor 06eea6ed9f Plane: Move navigation functions into flight mode classes. 2020-08-20 13:02:06 +10:00
Siddharth Purohit fb180fa431 Plane: move to using CANManager library 2020-08-19 17:31:09 +10:00
Peter Barker 306eaf4d03 ArduPlane: use an enumeration for the AP_Avoidance recovery action 2020-08-19 11:38:19 +10:00
Mark Whitehorn ee65940dfa Plane: enable yaw in qstabilize:air_mode at zero throttle 2020-08-13 08:47:27 +10:00
Mark Whitehorn 4630e9af30 Plane: add Mode::is_vtol_man_mode
and make use of is_vtol_mode in in_vtol_mode
2020-08-13 08:47:27 +10:00
Mark Whitehorn e22d9398d3 Plane: add AirMode RC option for quadplanes
add Q_OPTION for AirMode (auto-enabled if RCx_OPTION ARMDISARM assigned)
    bugfix: manual throttle mix for qacro
    qualify auto airmode on/off
    add Air Mode to Plane RC_OPTION metadata
    restrict airmode to manual throttle modes
    add qhover to manual throttle mix
    move air_mode from Plane to QuadPlane
    add Mode::is_vtol_man_throttle()
2020-08-13 08:47:27 +10:00
Michael du Breuil 99ad126986 Plane: Fix redundant call to SpdHgt_Controller->get_land_airspeed() 2020-08-11 09:47:24 +10:00
Andrew Tridgell 3c705d1c60 Plane: added THR_FAILSAFE=2 option
this allows for RC inputs to be ignored at low throttle, but won't
trigger failsafe. It is meant for users flying BVLOS missions, where
they want GCS failsafe enabled, but don't want RC failsafe, and want
to be sure that RC inputs will be ignored at low RC throttle values

Thanks to suggestion from Pompecukor
2020-08-07 14:01:20 +10:00
Samuel Tabor aa776b06a4 Plane: Use sq() rather than powf() in soaring.cpp. 2020-08-05 11:58:54 +10:00
Samuel Tabor b2d63c5049 Plane: Refactor soaring.cpp. 2020-08-05 11:58:54 +10:00
Peter Barker ac85ec9924 Plane: log AHRS synthetic airspeed 2020-08-04 23:12:03 +10:00
Andrew Tridgell 6466912ac0 Plane: don't crosstrack after AUTO VTOL takeoff 2020-08-04 09:26:08 +10:00
Andy Piper b649afe9e5 Plane: make mount/gimbal inclusion configurable per-board 2020-08-04 09:18:14 +10:00
Tom Pittenger c7c9461fc0 Plane: update ModeReasons to not use UNKNOWN reason 2020-07-28 11:52:39 -07:00
Andrew Tridgell cce2532901 Plane: fixed use of VTOL control for missions
horizontal speed was not being setup when doing waypoint missions in
VTOL mode
2020-07-28 08:06:14 +10:00
Peter Hall cd46c5006a ArduPlane: remove duplicate fail-safe time check 2020-07-28 08:04:50 +10:00
Iampete1 62354527d4 Plane: zero throttle nudge in RC failsafe 2020-07-28 08:03:16 +10:00
Henry Wurzburg 3617e0c729 ArduPlane: fix airspeed messages for consistency 2020-07-21 09:41:05 +10:00
Samuel Tabor 419f7c9998 Plane: Convert SOAR_ENABLE_CH to RCX_OPTION. 2020-07-21 09:38:04 +10:00
Samuel Tabor 611217f63e AP_Soaring: Use RC aux function rather than read RC directly. 2020-07-21 09:38:04 +10:00
Samuel Tabor 455ebaadf2 RC_Channel: Add soaring aux function. 2020-07-21 09:38:04 +10:00
Michael du Breuil 6c6e4eff67 Plane: adhoc MAVLink DO_LAND_START changing mode to auto is known to be a GCS reason 2020-07-17 09:15:05 +09:00
Henry Wurzburg 16a15f5450 ArduPlane: add CROW flaps mode select switch 2020-07-16 13:30:45 +10:00
Mirko Denecke 10a85892cf ArduPlane: update_trigger() is now called in AP_Camera update() 2020-07-15 08:37:28 +09:00
Paul Riseborough 585a6a6967 Plane: Log D gain limit cycle gain scaler
Used by roll and pitch loops in APM_Control
2020-07-13 13:47:50 +10:00
TunaLobster aca70ffd34 ArduPlane: Update Log_Write_Fast comment for accuracy 2020-07-11 19:15:21 +10:00
Iampete1 08a710235d Plane: add tailsitter assist with motors only option 2020-07-09 06:49:24 +10:00
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
Andrew Tridgell f3dfd62f32 Plane: fixed FS_GCS_ENABL=2 for hearbeat failsafe 2019-12-19 08:34:00 +11:00
Mark Whitehorn 56b2c697d2 Plane: change tailsitter_input to bitmask
update parameter metadata for Q_TAILSIT_INPUT and Q_FRAME_TYPE
2019-12-18 08:33:29 +11:00
Mark Whitehorn c16f3a2cba Plane: simplify body-frame roll axis swapping and constrain yaw rate max 2019-12-18 08:33:29 +11:00
Mark Whitehorn 14fc6c5446 Plane: add logging for tailsitter gainscaling and clean up tailsitter body-frame roll input handling
fix metadata for tailsitter param GSCMSK
rework roll/yaw scaling for body-frame roll options
add constraints on body-frame roll and yaw inputs
move speed_scaler logging into QTUN message
2019-12-18 08:33:29 +11:00
kd0aij 95da094bfe Plane: update tailsitter speedscaling logic
add tailsitter gain scaling option mask and logging
tailsitter qassist bugfix; thanks, @iampete
apply roll limit in tailsitter bodyframe roll control
add define for future exclusion of tailsitter gainscaling debug code/logging
tailsitter bodyframe roll and qacro input scaling bugfixes:
  respect Q_TAILSIT_RLL_MX and roll/yaw scale parameters in bodyframe roll modes
  fix unintended swap of Q_ACRO_RLL/YAW_RATE params in QACRO mode
don't scale motor tilt

Co-authored-by: IamPete1 <33176108+IamPete1@users.noreply.github.com>
2019-12-18 08:33:29 +11:00
giacomo892 1763be2c03 RC_Channel: added LOITER switch for plane 2019-12-17 16:14:53 +11:00
giacomo892 1ee3118bc4 Plane: added RC option for LOITER mode
Handy to have, and much better than use CIRCLE
2019-12-17 16:14:53 +11:00
Andrew Tridgell e27d1e8754 Plane: update release notes for 4.0.2beta2 2019-12-16 19:03:20 +11:00
Andrew Tridgell 43eb664be6 Plane: updated release notes for 4.0.2beta1 2019-12-16 19:03:18 +11:00
Peter Barker 33a0e55b32 Plane: correct duplicate button instance 2019-12-10 09:29:52 +09:00
Peter Barker 1fdb4b429f Plane: use https:// scheme for ardupilot URLs 2019-12-10 07:53:46 +11:00
Peter Barker a567e8bc94 Copter: use https:// scheme for ardupilot URLs 2019-12-10 07:53:46 +11:00
Peter Barker 3547e74991 Plane: move setting of GPS SYS_STATUS bits up to base class 2019-12-05 13:02:19 +11:00
Randy Mackay b3928d3eee Plane: scripting init sends failure message 2019-12-03 12:48:32 +08:00
Peter Barker 71017cb288 Plane: vehicle parent class now instantiates AHRS 2019-12-02 09:16:22 +11:00
Peter Barker 5447992558 Plane: rename system_status as it won't be called from base class 2019-11-27 14:27:53 +11:00
Marian Soban 0a59fed54f Plane: LTM telemetry support 2019-11-26 12:14:13 +11:00
Peter Barker c93d17b4b2 ArduPlane: use enum-class for SRV_CHANNEL_LIMIT_TRIM and friends 2019-11-26 10:17:17 +11:00
Henry Wurzburg f2d8a42de8 Plane: correct crash_detect param description...no manual mode option bit exists 2019-11-23 17:39:06 -08:00
Andrew Tridgell fba5732292 Plane: updated release notes for 4.0.1 2019-11-22 14:56:56 +11:00
Peter Barker 08e18ccdfe Plane: do not trust fence-channel PWM during RC failsafe 2019-11-19 10:59:02 +11:00
Andrew Tridgell d872ca27ce Plane: added dynamic harmonic notch support 2019-11-19 07:08:01 +08:00
Andrew Tridgell 89c43fa052 Plane: updated release notes for 4.0.1beta1 2019-11-18 21:31:22 +11:00
Andrew Tridgell 36baaeb3a0 Plane: added option to run idle governor in MANUAL mode
useful for quadplane testing
2019-11-17 20:10:54 +11:00
Andrew Tridgell 2b27cd2ce9 Plane: Add EFI Support 2019-11-17 20:10:54 +11:00
Randy Mackay accdf53a5b Plane: init aux function cases in alphabetical order 2019-11-12 18:56:13 +11:00