Henry Wurzburg
32f5afb22a
ArduPlane: add AutoLand fixed-wing mode
2024-12-31 09:18:49 +11:00
Andrew Tridgell
42ad2a7911
autotest: added non-compass takeoff test
2024-12-11 08:44:15 +11:00
Andrew Tridgell
c15fa7b943
Plane: fixed takeoff direction with no yaw source
...
in TAKEOFF mode with either very poor yaw source or no yaw source we
need to use ground vector and wait for sufficient ground speed
2024-12-11 08:44:15 +11:00
George Zogopoulos
9a5f81aa95
Plane: Added check for takeoff level-off timeout
...
When an airspeed sensor is not used, during a takeoff, the pitch angle
is asymptotically driven to 0 as the takeoff altitude is approached.
Some airplanes will then stop climbing and fail to reach altitude.
To prevent an indefinite wait for the takeoff altitude to be reached, a
dedicated level-off timeout has been introduced.
2024-12-04 18:07:30 +11:00
George Zogopoulos
6ce6ef8fff
Plane: Takeoff improvements
...
- TAKEOFF and AUTO flight modes now should have identical takeoff
- Prevent behaviour switching past climb altitude in TAKEOFF mode.
- Refactor set_pitch_min/max methods.
Max was already there, now renamed.
Min is newly introduced.
behaviour.
- Remove enforcement of min takeoff throttle logic from servos.cpp.
It is now handled only by takeoff.cpp.
- Take TKOFF_LVL_ALT into consideration in AUTO as well.
- Fixed pitch setpoint when TKOFF_ROTATE_SPD>0.
- Roll navigation in mode TAKEOFF during climb should now work again.
- Now the TAKEOFF loiter waypoint is set by the bearing of the
aircraft while on TKOFF_LVL_ALT, as in the last stable release, instead
of TKOFF_ALT.
- Using TRIM_THROTTLE in takeoffs, when TKOFF_THR_MIN==0
2024-10-02 17:09:07 +10:00
Iampete1
55f51eabe8
Plane: move have_autoenabled_fences
to be private in ModeTakeoff
2024-07-30 09:59:01 +10:00
George Zogopoulos
773c91cec1
ArduPlane: Added minimum throttle during TAKEOFF mode
...
This is a rework so that servos.cpp is responsible for setting the
throttle limits under more circumstances and always notifies TECS when
it does so.
Additionally, the TAKEOFF mode has been improved with a new parameters
TKOFF_MODE and TKOFF_THR_MIN that extend the throttle behaviour.
2024-07-29 15:50:32 +10:00
Henry Wurzburg
a6300e35d0
Plane: prevent Mode Takeoff calling fence autoenable more than once
2024-07-24 08:24:06 +10:00
Henry Wurzburg
d91ff440e7
ArduPlane: fix autofence enable in takeoff mode
2024-02-13 10:45:39 +11:00
Henry Wurzburg
3973c28f15
Plane:add TKOFF_TIMEOUT to MODE TAKEOFF
2024-01-30 11:02:53 +11:00
Peter Barker
b3897c020e
ArduPlane: make AHRS attitude member variables private
2024-01-14 12:47:47 +11:00
Henry Wurzburg
1f78cb29b4
Plane: correct TKOFF_LVL_ALT metadata
2023-12-25 17:05:20 -07:00
Henry Wurzburg
ed21c49975
Plane:correct TKOFF_DIST metadata
2023-09-07 00:49:58 -07:00
Henry Wurzburg
e9414d69ff
ArduPlane: add failsafe protections to Mode Takeoff
2023-08-09 17:33:58 +10:00
Henry Wurzburg
641b086c0f
Plane: Make mode takeoff entry climb to TKOFF_ALT before loitering
2023-05-20 08:52:47 +10:00
Tom Pittenger
96ee3651d2
Plane: Auto takeoff roll-limits to use TKOFF_LVL_ALT
2023-03-02 09:24:13 +11:00
Tom Pittenger
7a6f398668
Plane: add TKOFF_GND_PITCH
2023-02-23 11:12:39 +11:00
Iampete1
549dd3875d
Plane: add mode ahrs convenience refence
2023-02-21 11:27:24 +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
Iampete1
a592f76282
ArduPlane: change AC_FENCE to AP_FENCE_ENABLED
2022-07-27 19:04:56 +10:00
Iampete1
2f4661c52f
Plane: use float for set/get output scaled
2021-10-20 18:29:58 +11:00
Iampete1
03d17437c3
Plane: mode_takeoff: call base mode constuctor
2021-08-03 12:28:31 +10: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
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
Peter Barker
15372e9213
ArduPlane: replace '@User: User' with '@User: Standard'
2020-09-22 14:56:04 +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
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
abd08ac5ca
Plane: fixed takeoff alt handling
...
thanks to Henry for noticing
2019-10-20 09:38:26 +11:00
Andrew Tridgell
3194059408
Plane: allow TAKEOFF mode on board with no compass
2019-10-17 12:19:43 +11:00
Andrew Tridgell
f628524601
Plane: if already flying in TAKEOFF mode then skip takeoff
2019-10-17 12:19:43 +11:00
Andrew Tridgell
ff400243e0
Plane: added a new TAKEOFF flight mode
...
takeoff then circle in direction of takeoff
2019-10-17 12:19:43 +11:00