Peter Barker
2784f8fa7f
Plane: remove persistent guided_WP_loc state
...
So instead of updating plane.guided_WP_loc and then calling
set_guided_WP(void) to copy that state into plane.next_WP_loc we pass
the new location in the call to set_guided_WP(const Location &loc).
avoidance was the only place which was not entirely over-writing
plane.guided_WP_loc. However, plane.next_WP_loc was updated to be the
current location when we entered guided mode. If we update the
horizontal/vertical avoidance now it is relative to the current
location, not the guided wp location, which could be quite important.
2022-03-22 10:14:40 +11:00
Peter Barker
1f5165349e
Plane: correct compilation when airspeed disabled
2022-03-20 21:47:05 +11:00
Andrew Tridgell
2c22cbc50e
Plane: update release notes for 4.2.0beta3
2022-03-18 21:13:54 +11:00
Henry Wurzburg
14700063d2
ArduPlane: convert floating point divides into multiplys
2022-03-18 15:26:44 +11:00
Andrew Tridgell
6ebefbdb16
Plane: added airspeed based pitch limit check
...
prevent using too much pitch when at low airspeed, which can lead to
severe instability in SLT quadplanes
2022-03-18 13:36:16 +11:00
Andrew Tridgell
eabdaae1e7
Plane: use set_lean_angle_max_cd()
...
allows for a wider range of Q_TRANS_DECEL while landing on the desired
landing point
2022-03-18 13:36:16 +11:00
Andrew Tridgell
cc6fc2b130
Plane: improvements to POSITION1 controller
...
this improves 4 things in the POSITION1 controller based on logs from
4.2.0beta2. The changes are designed to increase the tolerance to
an incorrect value for Q_TRANS_DECEL, reducing landing overshoot
1) we fix the initialisation of the acceleration. The
init_xy_controller() function assumes zero accel, so we need to
call set_accel_desired_xy_cmss() just after that init to get the
correct accel. Thanks to Leonard for this fix
2) if we decel more than expected due to too low Q_TRANS_DECEL we
need to reduce the target speed, rather than putting the nose down
3) lower the default Q_P_JERK_XY to a value more appropriate for most
quadplanes (Leonard suggested a value of 2)
4) fixed the pitch envelope from Q_BACKTRANS_MS to start after the
airbrake phase is complete
2022-03-18 13:36:16 +11:00
Andrew Tridgell
3772029450
Plane: fixed pitch envelope after AIRBRAKE
...
we need to setup last_fw_mode_ms and last_fw_nav_pitch_cd when we
enter POSITION1 mode so that the expanding envelope pitch limit from
Q_BACKTRANS_MS is applied correctly
2022-03-18 13:36:16 +11:00
Andrew Tridgell
8b16b5ca94
Plane: adjust throttle mix for auto landing
...
use mix-max during landing approach and initial descent, use min in
land final. As discussed with Leonard
2022-03-18 13:35:46 +11:00
Peter Barker
d93449ac28
ArduPlane: split AP_HAL_SITL and HAL_SIM_ENABLED
2022-03-17 14:39:55 +11:00
Tim Tuxworth
21ec47f184
Plane: Display Fence Breach message in GCS
...
Send a "Geofence breach" message to the Ground Control Station. Without this when the fence is breached and if anything happens as a result, such as RTL, it will happen silently.
2022-03-16 18:04:19 +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
0ca48fa9da
Plane: added release notes for 4.2.0beta2
2022-03-10 13:44:05 +11:00
Andrew Tridgell
55c46cd868
Plane: protect against short stop_distance
2022-03-10 13:41:18 +11:00
Andrew Tridgell
5e14b9efe6
Plane: use pos control for most of LAND_FINAL
...
this gives more accurate landing with some velocity drift
2022-03-10 07:34:20 +11:00
Andrew Tridgell
cc9b9813cb
Plane: review fixes
...
thanks Pete!
2022-03-10 07:34:20 +11:00
Andrew Tridgell
f09c715d7a
Plane: wait till motors are fully up before takeoff in guided mode
...
this allows for guided mode takeoff in tilt-rotors. Otherwise motors
till be pointing forward and takeoff will go very badly
2022-03-10 07:34:20 +11:00
Andrew Tridgell
3659669409
Plane: cope with high angle error in airbrake state
...
if we are flying too far off the target vector then exit airbrake
state. This prevents flying for a long distance away from the landing
point in airbrake mode
2022-03-10 07:34:20 +11:00
Andrew Tridgell
f9ecf15973
Plane: setup target accel in POSITION1 state
2022-03-10 07:34:20 +11:00
Andrew Tridgell
2864e21b31
Plane: allow for a trans decel margin
...
so if we are behind the velocity curve we are less likely to overshoot
landing
2022-03-10 07:34:20 +11:00
Andrew Tridgell
33bc067edf
Plane: fix NAV_CONTROLLER_OUTPUT in Q modes
...
Q modes don't always use wp_nav, but do use pos_control
AUTO and QRTL setup the plane navigation as well, so can use the L1
data
2022-03-10 07:34:20 +11:00
Andrew Tridgell
3fe9a55269
Plane: added APIs for lua ship landing
2022-03-10 07:34:20 +11:00
Andrew Tridgell
c54fb0f51b
Plane: link in AP_Follow
...
ready for ship landing
2022-03-10 07:34:20 +11:00
Andrew Tridgell
72087335f7
Plane: removed terrain home correction
2022-03-10 07:34:20 +11:00
Iampete1
a7bc844780
Plane: never stick mix without valid RC input
2022-03-09 18:26:30 +11:00
Iampete1
c46a19bf89
ArduPlane: tailsitter: keep attitude controll throttle level upto date for smoother controller handover
2022-03-09 18:21:51 +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
RuffaloLavoisier
962d1d112b
ArduPlane : Indentation correction
2022-03-08 14:24:46 -08:00
RuffaloVM
d8085f71af
ArduPlane : case label indentation
2022-03-08 14:24:46 -08:00
Andrew Tridgell
6d63e1f7d3
Plane: added Q_LAND_ALTCHG parameter
...
this is the threshold height change over 4 seconds for a landing to be
detected. It can be raised if landing detection is very slow
2022-03-09 07:50:10 +11:00
Iampete1
54e57ccff0
Plane: don't prevent stick mixing in none RC failsafe
2022-03-08 11:21:13 +11:00
Peter Barker
302c8e4b98
ArduPlane: rename within_min_dz to in_min_dz for consistency
...
... consistency with in_trim_dz
2022-03-08 11:17:45 +11:00
Andrew Tridgell
08d53c2d64
Plane: change master version to 4.3.0dev
2022-03-02 07:44:36 +11:00
Andrew Tridgell
ad53ee7f0e
Plane: added release notes for 4.2.0beta1
2022-03-02 07:43:59 +11:00
Peter Barker
c0aa20b1d0
ArduPlane: include cleanups
2022-03-01 11:21:33 +11:00
Henry Wurzburg
0c32e71272
ArduPlane: clarify and simplify RC failsafe messages
2022-03-01 11:05:15 +11:00
Peter Barker
452a5df0cc
ArduPlane: add RebootRequred to stream rate parameters
2022-03-01 11:01:12 +11:00
Iampete1
80f8f8b14e
Plane: quadplane: double log QPOS state change
2022-03-01 10:59:07 +11:00
Iampete1
c26ffed47f
Plane: motor_test: use PWM min and max from RC_Channel
2022-03-01 10:47:25 +11:00
Peter Barker
b19bfba0ec
Plane: use has_valid_input in place of checking throttle counter
2022-03-01 10:29:37 +11:00
Peter Barker
13fa1e30ad
ArduPlane: rename and make enum RC_Channel::ControlType
...
Type:: is too generic; get_type should probably be get_control_type
2022-02-27 09:55:01 +11:00
Andrew Tridgell
b444420329
Plane: removed controller error in transmitter tuning
2022-02-22 12:23:48 +11:00
Andrew Tridgell
e3e125c307
Plane: prepare for 4.1.7
2022-02-21 12:11:28 +11:00
Iampete1
267583db55
Plane: quadplane: never reset yaw target rates when entering QPOS1
2022-02-21 09:35:06 +11:00
Iampete1
9fd14dbf94
Plane: quadplane: set IO failsafe limit for all motors
2022-02-17 12:31:16 +11:00
Iampete1
42a2e1094c
Plane: set failsafe limit for throttle left and right
2022-02-17 12:31:16 +11:00
Andrew Tridgell
1bdc9b5bf8
Plane: fixed in_vtol logic so QRTL can AIRBRAKE
2022-02-16 07:43:01 +11:00
Andrew Tridgell
aab6c94936
Plane: don't weathervane in AIRBRAKE state
...
this prevents unwanted VTOL motor throttle while trying to slow
down. In this stage the slaving of yaw rate to fixed wing roll control
is sufficient
2022-02-16 07:43:01 +11:00
Andrew Tridgell
2846f87eeb
Plane: reduce height gain in auto landing for tiltrotors
...
avoid running the motors while tilted past the tilt max if we are in
AIRBRAKE state. This stops a large amount of forward thrust from the
tilted motors while trying to slow down, while still maintaining
attitude control
2022-02-16 07:43:01 +11:00
Andrew Tridgell
5bb7b04343
Plane: added release notes for 4.1.7beta1
2022-02-12 09:00:51 +11:00
Peter Barker
458d43fc1e
ArduPlane: send deprecated message warning for MAVLINK_MSG_ID_SET_HOME_POSITION
2022-02-10 12:13:43 +11:00
Iampete1
1ca1707f9f
Plane: quadpalne: keep motors interlock state upto date with E-stop
2022-02-10 07:43:40 +09:00
Peter Barker
d914e4e63b
Plane: convert next WP alt to global frame in POSITION_TARGET_GLOBAL_INT
2022-02-09 16:09:41 +11:00
Peter Barker
10be59da17
ArduPlane: create and use location_from_command_t
2022-02-09 09:15:11 +11:00
Peter Barker
e1314cc297
Plane: remove ancient convert_mixers
2022-02-08 12:19:55 +11:00
Peter Barker
4068d57930
Plane: correct spelling of mode_lotier_qland
2022-02-08 12:19:03 +11:00
Peter Barker
7c0b1f46d6
Plane: remove logging of STRT message
...
SType is always 3 - and we're just about to log the entire
mission so CTOT is pointless
2022-02-08 12:18:16 +11:00
Henry Wurzburg
e82ad1ec24
ArduPlane: fix error in Tricks on a Switch qualifier
2022-02-08 11:54:38 +11:00
Peter Barker
bab79d0094
ArduPlane: stop passing mission in Terrain constructor
...
Terrain can use the mission singleton
This means Copter can have terrain while compiling mission out
2022-02-08 11:20:20 +11:00
Peter Hall
717b18a680
Plane: quadplane: add allow_weathervane transtion class method
2022-02-08 10:38:16 +11:00
Peter Hall
6a719664d3
Plane: quadplane: pass takeoff and landing state to weathervane
2022-02-08 10:38:16 +11:00
Gone4Dirt
a79359dc67
Plane: use new weathervane library
2022-02-08 10:38:16 +11:00
Peter Barker
dd06a93c06
Plane: remove unused TRUE/FALSE defines
2022-02-07 21:20:21 +11:00
Peter Barker
9878701095
Plane: remove unused DEBUG define
2022-02-07 21:20:21 +11:00
Peter Barker
90310f4c6e
Plane: remove unused 'ALT_CONTROL' enumeration
2022-02-07 21:20:21 +11:00
Henry Wurzburg
ea9d35c99d
ArduPlane: extend nav_scripting to all modes
2022-02-07 21:19:28 +11:00
Hwurzburg
ad30d476c8
Plane: enforce acro rate limits in aerobatics scripting
2022-02-07 12:35:31 +11:00
Hwurzburg
0efb2f2048
Plane: disable TECS use during NAV_SCRIPT_TIME
2022-02-07 12:34:15 +11:00
murata
f8383df5a4
Plane: Remove meaningless semicolons
2022-02-07 08:27:34 +09:00
Bill Geyer
54bdde8845
Copter: fix parameter issue with quadplane
2022-02-01 23:06:51 -05:00
Bill Geyer
9bec232c8a
Plane: modify qautotune to use of multi subclass
2022-02-01 23:06:51 -05:00
Peter Hall
9ec1faf3f9
Plane: tailsitter: rate limit second half of FW transtion
2022-01-26 19:03:32 +11:00
Peter Barker
d6c653bdc5
ArduPlane: move logging of SIMSTATE, AHRS2 and POS into AP_AHRS library
2022-01-25 10:59:17 +11:00
Peter Barker
266d384ca7
ArduPlane: rename AP_AHRS::get_position to get_location
2022-01-25 10:47:22 +11:00
Iampete1
f725f7bb7e
Plane: set new slew limit and inherit slew limt for flaps
2022-01-25 10:12:13 +11:00
Joshua Henderson
c1abcfb7c4
Plane: move Airspeed to AP_Vehicle
2022-01-19 18:21:32 +11:00
Josh Henderson
6dc5a9fc54
Plane: GCS move airspeed sensor status flags up
2022-01-19 18:21:32 +11:00
Josh Henderson
9a3fed0263
Plane: move high_latency_air_temperature up
2022-01-19 18:21:32 +11:00
Andrew Tridgell
3273ead11b
Plane: use EKF climb rate estimate in VFR_HUD.climb
...
EKF estimate is both more accurate and less noisy
2022-01-18 13:26:31 +11:00
Iampete1
32488a5e3a
Plane: add MOTB logging at 10hz
2022-01-18 10:18:10 +11:00
Jaaaky
852546f8cf
ArduPlane: fix man_expo pitch & rudder params/variables
2022-01-12 18:27:08 +11:00
Peter Barker
0cf4254290
ArduPlane: move RPM sensor logging into AP_RPM
2022-01-11 11:09:26 +11:00
Iampete1
3a5c7ea8fc
Plane: quadplane: add transtion fail action param
2022-01-11 11:02:33 +11:00
Peter Hall
b64ddb9ac0
Plane: tailsitter: only set limit flags if outputs are configured
2022-01-11 10:37:38 +11:00
Peter Hall
2ffebebddc
Plane: tailsitter: provide min throttle limit based on disk therory outflow velocity
2022-01-11 10:37:38 +11:00
Iampete1
0fa1ddf7c2
Plane: tailsitter: always give pitch prority elevon mixing in VTOL modes
2022-01-11 10:37:38 +11:00
Iampete1
d473344177
Plane: add video stab log bit and log in ahrs_update
2022-01-05 19:56:03 +11:00
Iampete1
ca1b5b1db2
Plane: Quadplane: use get_frame_and_type_string
2022-01-05 19:51:19 +11:00
Peter Barker
89e3e27d3d
ArduPlane: move INS notch filter logging into INS
2022-01-05 16:34:36 +11:00
Peter Barker
173f36c145
ArduPlane: make vehicles write notch log messages
2022-01-05 16:34:36 +11:00
Peter Hall
d4eb2c6396
Plane: quadplane: QPOS_POSITION1 tailsitters use input_vel_accel method
2022-01-04 10:42:12 +11:00
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