Commit Graph

225 Commits

Author SHA1 Message Date
Andy Piper a11cc6ea66 Plane: use generic fence handling in missions 2024-07-24 08:24:06 +10:00
Andy Piper 46d6d0bf03 Plane: disable fences for landing by suppressing in the fence check rather than using a state machine 2024-07-24 08:24:06 +10:00
Andy Piper 559bd1e252 Plane: use fence enable_configured()
avoid fence breach clearing spam
2024-07-24 08:24:06 +10:00
Andrew Tridgell d4f9843e55 Plane: support MAV_CMD_SET_HAGL
allow for external height above ground estimate
2024-07-17 08:03:18 +10:00
Peter Barker c14c2d67d4 ArduPlane: make AP_RANGEFINDER_ENABLED remove more code 2024-07-02 09:17:26 +10:00
Bob Long 5824a12b2e Plane: remove altitude_error_cm variable
This variable updated unpredictably, and it was easy to introduce bugs.
It was not used in many places and is clearer to calculate the error
directly when needed.
2024-05-07 10:52:43 +10:00
Tom Pittenger 1fe7f6b099 Plane: refactor NAV_ALTITUDE_WAIT to AutoMode:: to match nav_delay() 2024-05-02 10:16:00 -07:00
Iampete1 7912fcd511 Plane: do_RTL: don't log mode 2024-03-19 12:24:54 +11:00
Henry Wurzburg 3973c28f15 Plane:add TKOFF_TIMEOUT to MODE TAKEOFF 2024-01-30 11:02:53 +11:00
J.R. Bronkar 2be84183b7 ArduPlane: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
Andrew Tridgell 5723b1c780 ArduPlane: convert MIN_GNDSPEED_CM to MIN_GROUNDSPEED 2024-01-23 15:00:30 +11:00
Peter Barker 6ee5ab41fd ArduPlane: allow compilation with HAL_LOGGING_ENABLED false 2024-01-17 18:25:55 +11:00
Peter Barker b3897c020e ArduPlane: make AHRS attitude member variables private 2024-01-14 12:47:47 +11:00
Bob Long f8d7be5e43 Plane: fix bug in RTL_AUTOLAND with rally points
After loading the rally point, ModeRTL:navigate checks if rally altitude
has been reached before altitude_error_cm gets updated
2023-12-12 10:58:22 +11:00
Iampete1 8061b1b4c2 Plane: move set_servos_idle functionality to ModeAuto 2023-10-31 14:06:22 +11:00
Michael du Breuil b630efd4db ArduPlane: Pass the 4th parameter to ICE for engine start 2023-10-24 14:11:39 -07:00
Andrew Tridgell c980e0488e Plane: fixed terrain RTL with rally points
this fixes a bug where if the terrain database cache does not have the
tile for the location of a rally point then RTL to the rally point
with TERRAIN_FOLLOW=1 will not track terrain

The underlying issue is that Location::loc.change_alt_frame() will
return false if the location is not in the terrain memory cache. We
can't just extrapolate as the rally point could be in a totally
different terrain area to the current location. So instead we set it
as terrain_following_pending and fix it as soon as the terrain cache
is filled.

fixes https://github.com/ArduPilot/ardupilot/issues/25157
2023-10-14 10:46:00 +11:00
Peter Barker e13566695b ArduPlane: allow for compilation without AP_RTC_ENABLED 2023-10-11 19:17:27 +11:00
Peter Barker 93da99bea2 Plane: adjust for a lack of DCM 2023-09-27 08:00:54 +10:00
Peter Barker a1b021e833 Plane: move nav_delay state to be private in ModeAuto 2023-09-13 18:08:10 +10:00
Peter Barker 445f1fa272 Plane: handle DO_CHANGE_SPEED as COMMAND_INT 2023-09-12 09:22:36 +10:00
Andy Piper 761c7a0161 ArduPlane: fix incorrect float conversion 2023-07-18 11:06:02 +10:00
Peter Barker 98e2782851 Plane: correct compilation when AP_Rally disabled 2023-04-10 16:37:42 -07:00
Randy Mackay c12e15f580 Plane: remove unused do-control-video 2023-03-09 12:24:05 +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
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
Andrew Tridgell 7735614634 Plane: implement set_rudder_offset() 2023-02-08 16:25:39 +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 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 21c9737ffa Plane: increase NAV_SCRIPT timeout to 1s
this is needed for processing of very complex schedules
2022-11-14 20:35:31 +11:00
Peter Barker de4dda2d17 ArduPlane: change namespace of MultiCopter and FixedWing params
this stops the libraries knowing anything about AP_Vehicle
2022-11-09 19:04:37 +11:00
Andrew Tridgell a94f75fe29 Plane: fixed changing modes causing aerobatics abort 2022-11-07 21:22:43 +11:00
Andrew Tridgell 500ac9b99c Plane: cleanup abort of NAV_SCRIPT
use the same enable flag for tricks and auto NAV_SCRIPT_TIME and
ensure we disable if the script stops controlling
2022-10-29 21:22:29 +11:00
Andrew Tridgell 06edc9a139 Plane: constrain throttle in NAV_SCRIPT 2022-10-29 21:22:29 +11:00
Andrew Tridgell 210dac7356 Plane: default takeoff pitch to 15 deg for PPDS 2022-10-29 21:22:29 +11:00
Andrew Tridgell 90459ed6f4 Plane: two more arguments to NAV_SCRIPT_TIME 2022-10-23 18:11:15 +11:00
Andrew Tridgell 2b69124229 Plane: use Float16_t 2022-10-23 12:14:14 +11:00
Michael du Breuil b7a8852747 Plane: Allow reseting target airspeed to the parameter value 2022-10-04 10:04:13 +11:00
MatthewHampsey 1dc18ec85a Plane: reset yaw rate PID for scripting 2022-09-22 05:55:15 +10:00
Michael du Breuil f183b21fc5 Plane: Support vtol landing options on NAV_VTOL_LAND
This allows the same mission to contain both circular and straight
landing items, and doesn't require on the fly tweaking
2022-08-15 17:05:00 -07:00
Iampete1 ee778dbd3a Plane: Quadplane: add option_is_set helper for Q_OPTIONS 2022-08-09 13:21:00 +10:00
Iampete1 a592f76282 ArduPlane: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Peter Barker b0bee613d4 ArduPlane: add and use AP_ICENGINE_ENABLE 2022-07-22 08:48:16 +10:00
Iampete1 98887a984b Plane: FW approach: use abs value for loiter sum check 2022-07-20 17:02:07 +10:00
Iampete1 2bda3c44c6 Plane: FW approach: correct wrap on breakout direction check 2022-07-20 17:02:07 +10:00
Iampete1 2e342d7852 Plane: FW approach: allways use correct loiter direction 2022-07-20 17:02:07 +10:00
Iampete1 7a88dc9348 Plane: VTOL aproach threshold use path proprtion rarther than radius 2022-07-20 17:02:07 +10:00
Andrew Tridgell 5f5f70d20a Plane: fixed check for fixed wing approach QRTL start
ensure we are lined up, or we are at less than 0.5 of radius before we
switch to QRTL. This fixes the case where the stopping distance is
greater than the radius, prevening us from switching to QRTL while not
lined up with the landing point
2022-07-13 20:10:19 +10:00
Andrew Tridgell 3385d3ae62 Plane: support NAV_DELAY in plane
allow for delayed takeoff, and takeoff at a particular time (for swarm
takeoff)

also check for takeoff command in landing sequence arming check

this allows for takeoff->land->disarm->delay->arm->takeoff->land
missions
2022-07-12 10:34:26 +10:00
Andrew Tridgell 592f33bfaf Plane: fixed combination of passby and acceptance dist WP
when a user sets a passby distance we should calculate the turn point
based on the extrapolated distance, not the original waypoint

also simplify the passby logic using offset_bearing()
2022-07-04 10:26:47 +10:00