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
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
Iampete1
342d6f21be
ArduPlane: use check_enabled helper
2023-01-23 11:00:13 +09:00
Iampete1
e585757338
Plane: Quadplane: remove motor PWM params check
2022-09-19 20:57:51 -04:00
Iampete1
84922cba9a
Plane: Quadplane: use new motors pre arm
2022-09-07 17:54:16 +10:00
Iampete1
6358a3c962
Plane: add min airspeed arming check and constrain for speed scailing
2022-09-06 09:01:26 +10:00
Peter Barker
127bf7aa09
ArduPlane: make terrain checks common between Copter and Plane
2022-08-09 14:31:14 +10:00
Andrew Tridgell
2e32c753b9
Plane: added arming check for terrain data
2022-08-09 14:31:14 +10:00
Iampete1
ee778dbd3a
Plane: Quadplane: add option_is_set helper for Q_OPTIONS
2022-08-09 13:21:00 +10:00
Andrew Tridgell
3201ecd381
Plane: added an arming check for VTOL land too short
...
this is meant to catch bad mission setup, especially for UGCS, which
planes waypoints right on top of the landing point
2022-08-02 07:49:34 +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
murata
501bd61820
Plane: Initialize a string array
2022-06-22 17:25:56 +10:00
Iampete1
34609d327d
Plane: Quadplane: force convertions of Q_M_PMW_* params if invalid and add arming check
2022-06-08 17:08:23 +10:00
Andrew Tridgell
86c2404654
Plane: increased safety of guided -> auto quadplane takeoff
...
when we arm in guided mode then enter a special guided_wait_takeoff
state. We keep motors suppressed until one of the following happens
1) disarm
2) guided takeoff command
3) change to AUTO with a takeoff waypoint as first nav waypoint
4) change to another mode
while in this state we don't go to throttle unlimited, and will refuse
a change to AUTO mode if the first waypoint is not a takeoff. If we
try to switch to RTL then we will instead use QLAND
This state is needed to cope with the takeoff sequence used by QGC on
common controllers such as the MX16, which do this on a "takeoff"
swipe:
- changes mode to GUIDED
- arms
- changes mode to AUTO
2022-05-18 06:43:16 +10:00
Andrew Tridgell
20f641de99
Plane: refuse arming if we are in a landing sequence
...
this helps when the aircraft has gone into a landing sequence due to a
failsafe before it is armed. Arming while in the landing sequence is
very unlikely to be what the user wants
2022-05-15 21:17:50 +10:00
Andrew Tridgell
680162cef0
Plane: added a value for RTL_AUTOLAND to disable arming check
...
set RTL_AUTOLAND=3 to get go-around but not RTL DO_LAND_START usage
2022-03-23 20:22:58 +11:00
Andrew Tridgell
a1856c5c22
Plane: added an arming check for Q_ASSIST_SPEED
...
Q_ASSIST should really be enabled for all non-tailsitter
quadplanes. This arming check will help users remember to configure it
2022-03-16 09:29:14 +11:00
Andrew Tridgell
82937ca778
Plane: check that RTL_AUTOLAND is set if using DO_LAND_START
2022-03-14 09:52:41 +11:00
Andrew Tridgell
8ccf84d9a3
Plane: disallow mavlink disarm while flying
...
this relies on is_flying(), and we will need to watch for reports of
the heuristics failing
2022-03-09 17:13:45 +11: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
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
Iampete1
b31ce6734a
Plane: get throttle input return float
2021-10-20 18:29:58 +11: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
Iampete1
cdfda2bd9b
Plane: allow arming in quided with only arm in Qmodes Q_OPTION
2021-09-22 18:14:16 +10:00
Iampete1
cc89a8cc48
Plane: remove airmode Q_OPTION
2021-09-21 09:36:24 +10:00
Peter Barker
3d34e061fe
ArduPlane: add and use HAL_QUADPLANE_ENABLED
2021-09-14 11:23:18 +10:00
Hwurzburg
327f3a0803
ArduPlane: add option for man throttle center to be TRIM_THROTTLE
2021-09-07 10:02:26 +10:00
Iampete1
4efa9866fa
Plane: arming: do not disable asisted flight airmode on disarm
2021-09-01 08:33:24 +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
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
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
Hwurzburg
d15e01d390
Plane: fix DO_CHANGE_SPEED airspeed to impact only AUTO and GUIDED modes
2021-03-16 10:09:34 +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
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
Randy Mackay
d487d6152e
Plane: ahrs pre-arm always runs position checks
2021-01-26 10:46:49 +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
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
9b2ef4f6f1
Plane: move rudder-arming arm checks into Plane's AP_Arming
2020-12-29 12:55:27 +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
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
Iampete1
fc67c2c13b
Plane: check AP_Motors has init correcly for Quadplanes
2020-09-22 09:12:14 +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
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
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