Commit Graph

4636 Commits

Author SHA1 Message Date
Henry Wurzburg 641b086c0f Plane: Make mode takeoff entry climb to TKOFF_ALT before loitering 2023-05-20 08:52:47 +10:00
Paul Riseborough 52743787b2 Plane: Fix bug that can cause early exit from loiter to alt and time wp's
The check for the aircraft being lined up for a tangent exit has an early breakout condition if the next waypoint is too close to the loiter circle which can prevent the required ground course to waypoint ever being achieved. This check was using the WP_LOITER_RAD parameter value, not the actual radius being used which can be set differently by the mission plan. If a large value for WP_LOITER_RAD was set and being over-written by the mission plan with a smaller value compatible with the distance to the next waypoint, the aircraft would still exit early.
2023-05-18 02:35:47 -07:00
Andrew Tridgell 6870a15280 Plane: implement AP_PLANE_BLACKBOX_LOGGING
this allows for auto-arming of plane when we reach a specified 3D GPS
speed. Used for blackbox logging of F3A maneuvers
2023-05-18 12:59:09 +10:00
Peter Barker 59bc070555 ArduPlane: move call of notify.update up to AP_Vehicle 2023-05-17 18:41:15 +10:00
Iampete1 a20841e166 Plane: correct AETR log description ranges 2023-05-10 17:28:49 +10:00
Iampete1 4ca071045c Plane: move defualt attitude control to base class 2023-05-02 09:29:40 +10:00
Iampete1 6111e9d9db Plane: move Stabilize functions into mode 2023-05-02 09:29:40 +10:00
Iampete1 bb80881c10 Plane: don't trigger RC failsafe until RC has been received for the first time 2023-05-02 09:11:18 +10:00
Michael du Breuil 24c5fe54df Plane: Support a long failsafe that goes straight to auto
This is very useful with an aircraft that is expected to be autonomously
operating in auto from takeoff to landing. It is convient to have a GCS
connected or RC, but the loss of either isn't considered a reason to
terminate the mission.
2023-04-28 09:37:12 +10:00
Randy Mackay 238d3354cc Plane: version to 4.5.0-dev 2023-04-26 17:45:52 +10:00
Henry Wurzburg b4c79c9105 Plane:add FlightOptions helper 2023-04-26 17:35:25 +10:00
Henry Wurzburg c6a822abe1 Plane: fix error in Qplane wait for rudder neutral 2023-04-25 10:27:21 +10:00
Iampete1 74e4466cb4 Plane: use dedicated quadplane function for stick mixing enable 2023-04-25 10:06:50 +10:00
Henry Wurzburg 1415418d6e Plane:Takeoff on rudder arm only after return to neutral 2023-04-25 09:28:45 +10:00
Mirko Denecke eb6c5aa7d3 ArduPlane: remove unused update_transition() definition 2023-04-25 09:10:11 +10:00
Andrew Tridgell e8b740df51 Plane: release notes for 4.4.0beta1 2023-04-21 09:52:55 +10:00
Peter Barker 068443718e GCS_MAVLink: deprecate use of MISSION_SET_CURRENT message
The mavlink command MAV_CMD_DO_SET_MISSION_CURRENT has been in place since January 2019 and is superior to this.
2023-04-18 10:24:26 +10:00
Iampete1 5ec479579f Plane: move guided roll, pitch and throttle overrides upto guided mode 2023-04-18 09:36:06 +10:00
Iampete1 5f56a603a8 Plane: Quadplane: use new motors thrust linearization, don't send air density ratio 2023-04-18 09:32:22 +10:00
Peter Barker 57d3ebf123 ArduPlane: make Plane use more of RC_Channel library for mode switching 2023-04-18 09:19:20 +10:00
Tom Pittenger 8a530ee0a6 Tools: move AP_KDECAN build to AP_Vehicle 2023-04-17 11:52:52 +10:00
Peter Barker 43c6bb3864 ArduPlane: AP_Arming ensures mission items present when in auto mode
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2023-04-14 07:49:54 +10:00
Peter Barker 98e2782851 Plane: correct compilation when AP_Rally disabled 2023-04-10 16:37:42 -07:00
Henry Wurzburg c86c89f05c ArduPlane: move estop pre-arm to AP_Arming and add exception 2023-04-11 09:24:06 +10:00
Henry Wurzburg 21d7a8102e Plane:allow airbrakes to be used 2023-04-04 09:41:53 +10:00
Nick Exton 674d7facde Plane: Use Location::same_loc_as() in QuadPlane::waypoint_controller() 2023-04-04 09:40:45 +10:00
Nick Exton 6a2bfeb3dd Plane: Use new Location::same_loc_as() function 2023-04-04 09:40:45 +10:00
Andrew Tridgell 3d3cd435c2 Plane: release notes for 4.3.5 2023-03-26 16:45:38 +11:00
Andrew Tridgell 467cb75e95 Plane: release notes for 4.3.5beta1 2023-03-24 13:42:11 +11:00
bugobliterator 75aaebc758 ArduPlane: change INS_ to INS 2023-03-21 10:04:16 +11:00
Tom Pittenger 3ac55f97b1 Plane generalize Aux Switch VTOL abort for any plane abort landings 2023-03-15 13:31:43 -07:00
Henry Wurzburg a86ff90b97 ArduPlane: add AUTO VTOL landing abort AUX sw 2023-03-14 10:52:23 +11:00
Randy Mackay c12e15f580 Plane: remove unused do-control-video 2023-03-09 12:24:05 +11:00
Iampete1 d97bd6f5c3 Plane: titrotor: is_motor_tilting: dont cast to uint8 2023-03-07 10:28:11 +11:00
Tom Pittenger 96ee3651d2 Plane: Auto takeoff roll-limits to use TKOFF_LVL_ALT 2023-03-02 09:24:13 +11:00
Randy Mackay d9795d3580 Plane: integrate camera frontend/backend split 2023-03-01 18:18:51 +11:00
Andrew Tridgell 8637f2d9c6 Plane: release notes for 4.3.4 2023-03-01 12:58:01 +11:00
Andrew Tridgell a0634d8b5b Plane: constrain tilt range for vectored yaw
this prevents a case where we can demand unlimited vectored yaw,
leading to loss of control

this was particularly noticible before the fix in #23023 - if you
armed for a 2nd time in QHOVER after moving the throttle above 10% so
throttle_wait was cleared then the motors would try to tilt fully so
one motor is in fwd flight position. This would cause a prop strike
while on the ground
2023-02-26 08:52:16 +11:00
Andrew Tridgell 38d7bcff6b Plane: re-init throttle wait on quadplane arm and disarm
this prevents yaw from rudder arming on 2nd flight
2023-02-26 07:06:09 +11:00
Tom Pittenger 7a6f398668 Plane: add TKOFF_GND_PITCH 2023-02-23 11:12:39 +11:00
Iampete1 eefa3b1ce4 Plane: move training mode function to mode training 2023-02-22 19:26:59 +11:00
Iampete1 f6b0c3775c Plane: move mode acro functions to mode acro 2023-02-22 19:26:59 +11:00
Peter Barker c18276e19b ArduPlane: add support for mavlink in-progress message 2023-02-21 17:07:41 +11:00
Iampete1 50eaa1cc54 Plane: move acro stabilization into mode acro 2023-02-21 11:27:24 +11:00
Iampete1 6bb0096b9d Plane: move training stabilize function to training mode 2023-02-21 11:27:24 +11:00
Iampete1 549dd3875d Plane: add mode ahrs convenience refence 2023-02-21 11:27:24 +11:00
Andrew Tridgell a57e6455ab Plane: use is_armed_and_safety_off()
this no longer sets soft_armed false when safety is on, and instead
uses is_armed_and_safety_off() when appropriate
2023-02-21 07:44:09 +11:00
Iampete1 5586f4ad3a Plane: arming: modes: don't always display 2023-02-20 10:55:32 +00:00
Andrew Tridgell 312d37306e Plane: ensure home is up to date on arming
remove any discrepancy which has crept in over the last few seconds

this also ensures that relative_altitude is updated, and copes with
the EKF refusing the resetHeightDatum call
2023-02-19 10:45:42 +11:00
Iampete1 2ffe677d39 Plane: combine per mode arm and pre-arm checks 2023-02-15 19:43:40 +11:00
Andrew Tridgell 4a96221a70 Plane: release notes for 4.3.4-beta1 2023-02-12 17:37:07 +11:00
Andrew Tridgell 99f997161a Plane: holdoff auto takeoff till rudder neutral
when arming with rudder we need to hold off the takeoff until the user
has released the rudder stick or we can yaw badly during the takeoff
2023-02-09 07:02:32 +11:00
Andrew Tridgell 2989e2deba Plane: added support for NAV_PACKAGE_PLACE mission item
this works in conjunction with a lua script to allow for a wide
variety of package place options
2023-02-09 07:02:12 +11:00
Peter Barker 648a13d3f7 ArduPlane: add and use AP_ADVANCEDFAILSAFE_ENABLED 2023-02-08 19:00:13 +11:00
Andrew Tridgell 7735614634 Plane: implement set_rudder_offset() 2023-02-08 16:25:39 +11:00
Pierre Kancir 321801a2c3 Plane: unify firmware name 2023-02-08 12:47:49 +11:00
Iampete1 d928e8b002 Plane: stop passing speed_scaler all over the place 2023-02-07 10:17:09 +11:00
Peter Barker f0e17957f4 ArduPlane: avoid using struct Location
clang reports this could be a problem when compiling under some EABIs.  Remove it from most places as it is just noise, replace with class where we want to avoid including Location.h
2023-02-04 22:51:54 +11:00
TsuyoshiKawamura 220e58ca6d Plane: correct spelling in ReleaseNotes.txt 2023-02-01 14:16:28 +00:00
Iampete1 2d51b2c9b8 Plane: remove direct roll/pitch stick mixing support 2023-02-01 18:45:10 +11:00
Iampete1 a63a32d6f3 Plane: QRTL: combine threshold radius for QRTL and RTL 2023-01-31 10:57:21 +11:00
Henry Wurzburg 10b69e1c1f Plane:expand yaw autotune to other modes 2023-01-31 10:02:16 +11:00
Andrew Tridgell 6623f1156c Plane: transition pitch limit should not apply to FBWA
pilot should be able to override pitch, very important on motor
failure to control glide
2023-01-30 09:19:14 +11:00
Iampete1 76a10d9b26 Plane: relative_ground_altitude allow passing bool for terrain use 2023-01-25 19:34:53 +11:00
Iampete1 928a923f43 Plane: Quadaplane: QRTL use stopping point for climb submode altitude threshold 2023-01-25 19:34:53 +11:00
Iampete1 bf9d49b72d Plane: Quadaplane: add param for min QRTL altitude when close to home 2023-01-25 19:34:53 +11:00
Iampete1 4a2a792624 Plane: QRTL: use cone for QRTL climb close to home 2023-01-25 19:34:53 +11:00
Iampete1 20934491e5 Plane: Quadplane: limit manual throttle tilt angle to Q_TILT_MAX 2023-01-24 10:28:36 +11:00
Iampete1 02ca9c855a Plane: tailsitter: update I reset and limit handling 2023-01-24 10:27:02 +11:00
Iampete1 342d6f21be ArduPlane: use check_enabled helper 2023-01-23 11:00:13 +09:00
Andrew Tridgell 43b4be6ffb Plane: release notes for 4.3.3 2023-01-20 12:17:19 +11:00
Andrew Tridgell 9b2c7a90e7 Plane: fixed loiter.direction for VTOL approach
ensure the direction is setup correctly for both CW and CCW
2023-01-15 21:32:27 +11:00
Andrew Tridgell 77e63da4b3 Plane: added TKOFF_THR_MAX_T
time for max throttle on takeoff if no airspeed sensor
2023-01-15 12:17:27 +11:00
Iampete1 4e00a460fb ArduPlane: use shared param info defines 2023-01-11 18:41:34 +11:00
Andrew Tridgell 5fba595001 Plane: update release notes for 4.3.3beta1 2023-01-10 15:14:26 +11:00
Peter Barker bef10c21bf ArduPlane: make check_var_info void
Given all the callers die anyway, make it void
2023-01-10 10:48:15 +11:00
Tom Pittenger 9440e3c544 Plane: bugfix - RTL_AUTOLAND no longer overrides loiter direction 2023-01-10 08:58:15 +11:00
Peter Barker 5fd555a07a ArduPlane: implement parameter CopyFieldsFrom and use it 2023-01-03 11:08:43 +11:00
Henry Wurzburg 636a18f98f Plane: Update Q_OPTIONS metadata to new format 2023-01-03 10:29:44 +11:00
Iampete1 3a4e07a73c Plane: Events: consolodate failsafe evnt to single print 2023-01-03 10:26:46 +11:00
Peter Barker 9edac79db8 ArduPlane: use relay singleton in Parachute 2023-01-03 10:19:54 +11:00
olliw42 a89d5e1c83 Plane: QArco name4 longer than 4 2023-01-01 13:44:10 -08:00
Iampete1 a99748a13d Plane: Quadaplane: use land_at_climb_rate_cm only when landing 2022-12-30 20:25:58 +09:00
Leonard Hall 87c684b5ee Plane: Vtol: use land_at_climb_rate_cm for vertical rate control 2022-12-30 20:25:58 +09:00
Henry Wurzburg 1b39f00517 ArduPlane:test new flight options formats 2022-12-29 16:14:54 +11:00
Peter Barker f8b8f652db Plane: break FLIGHT_OPTIONS metadata onto separate lines 2022-12-28 13:21:18 +11:00
Jeremy 0db6146f60 Plane: Added Y4 config to Quadplane 2022-12-27 15:19:28 +11:00
Iampete1 da0927b076 Plane: Quadaplane: remove RTL navigate incorrect comment and unnedded check 2022-12-27 11:26:16 +11:00
Iampete1 4a21af22cb Plane: move mode update_target_altitude to correct files 2022-12-27 10:30:14 +11:00
Andrew Tridgell 97e1c14114 Revert "Plane: default takeoff pitch to 15 deg for PPDS"
This reverts commit 210dac7356.

this was committed by mistake
2022-12-24 13:26:31 +11:00
Andrew Tridgell 8686589cc0 Plane: release notes for 4.3.2 2022-12-23 10:18:29 +11:00
Iampete1 f28d7a3574 Plane: move adjust_altitude_target functianlity to per mode functions 2022-12-20 10:37:06 +11:00
Iampete1 ab43dadb57 Plane: altitude: add `plane.` prefix to Plane::adjust_altitude_target to minimise diff 2022-12-20 10:37:06 +11:00
Iampete1 e5e96eb4d8 Plane: tiltrotor: add throttle scaleing for vectored yaw 2022-12-20 09:48:56 +11:00
Peter Barker 5483398c7d Plane: correct compilation when QAUTOTUNE compiled out 2022-12-18 09:19:12 +11:00
Peter Barker 0a5d76d81d ArduPlane: code-generate chan-fetching methods
A recent PR had to change every single one of these methods, which was kind of unfortunate.

So generate the methods using a #define so the duplication happens at preprocessor-time.
2022-12-15 08:31:54 +11:00
Iampete1 da503a5e44 Plane: GCS_Mavlink: use base class DO_SET_HOME 2022-12-14 19:25:44 +11:00
Peter Barker 0cf56ea320 ArduPlane: make and use AP_LANDINGGEAR_ENABLED 2022-12-14 18:30:23 +11:00
Leonard Hall 16ccdeb058 Plane: Support changing update period in Motors 2022-12-13 17:10:06 +11:00
Leonard Hall 0bc5e68aed Plane: Support changing update period 2022-12-13 17:10:06 +11:00