Commit Graph

4275 Commits

Author SHA1 Message Date
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
Andrew Tridgell
2251293ec7 Plane: fix stabilize mode
should self-level. Broken by #19171
2022-01-03 08:09:53 +11:00
Iampete1
abe9e4425b Plane: quadplane: remvoe unused loiter initial pitch varable 2021-12-31 08:46:31 +11:00
Andrew Tridgell
fb019eb0f3 Plane: add a low pass filter to speed scaler
this is needed due to the filtering done on the target rate in
AC_PID. With a low filter rate in AC_PID a step in the speed scaler
results in a step in the FF output due to the mismatch in the
instantaneous SS and the filtered target rate
2021-12-29 18:36:05 +11:00
Peter Barker
e55eea961f ArduPlane: create and use AP_OPTICALFLOW_ENABLED 2021-12-29 18:12:03 +11:00
Andrew Tridgell
336b666f83 Plane: fixed stick mixing and throttle nudge in QRTL approach
thanks to Henry for noticing this
2021-12-28 16:04:12 +11:00
Peter Barker
d7fae5263f ArduPlane: adjust for rename of OpticalFlow.cpp 2021-12-28 10:16:20 +11:00
Samuel Tabor
a715472353 Plane: Specify starting location to set_offset_altitude_location 2021-12-27 11:27:52 +11:00
Hwurzburg
18e427d27d Plane: add Q_OPTION to force fw trans on fail instead of QLAND 2021-12-24 13:55:15 +11:00
Iampete1
2154738421 Plane: Quadplane: only advance to QPOS_POSITION2 once tilts have finished slewing 2021-12-22 18:46:14 +11:00
Iampete1
eac52fe08f Plane: quadplane: don't ouput VTOL throttle on tiltrotor with no VTOL motors and till fully forward 2021-12-22 18:46:14 +11:00
Iampete1
6116eaeb32 Plane: quadplane: enhance tiltrotor transtion to better deal with tiltrotors with all motors tilting 2021-12-22 18:46:14 +11:00
Andy Piper
aefc97fafa Plane: use calculated number of notches for dynamic harmonic 2021-12-22 18:13:38 +11:00
Andrew Tridgell
db0f06fb58 Plane: update release notes for 4.1.6beta1 2021-12-21 13:21:50 +11:00
Peter Barker
278899e44c ArduPlane: tidy log message id definitions
Add a comment indicating only 20 ids are available to the vehicle
2021-12-21 10:42:18 +11:00
Jaaaky
50430d9fc8 ArduPlane: Fix multi #include's 2021-12-21 10:38:46 +11:00
Iampete1
055d90d49b Plane: tailsitter: add gains to scale control surface vs motors 2021-12-21 10:14:34 +11:00
Gone4Dirt
d244a0b803 Plane: Make RPM log independant of RC log mask 2021-12-16 12:48:48 +11:00
Samuel Tabor
c44fed34d4 AP_Soaring: Override airspeed and flap angle. 2021-12-16 07:12:24 +11:00
Peter Barker
08a8b3f155 Plane: use @CopyValuesFrom for FLTMODEn parameters 2021-12-16 07:11:33 +11:00
Iampete1
8aa4a802f3 Plane: tiltrottor: add missing ff terms 2021-12-14 10:14:28 +09:00
Andrew Tridgell
c746efff4f Plane: updated release notes for 4.1.5 2021-12-13 10:55:44 +11:00
Hwurzburg
049f5f2135 Plane: fix divide by zero in transition time 2021-12-10 19:10:51 -08: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
Hwurzburg
274111a5ea ArduPlane: clean up short failsafe 2021-12-07 10:09:33 +11:00
Andrew Tridgell
522056d6f7 Plane: release notes for 4.1.5beta1 2021-12-04 18:06:38 +11:00
Andrew Tridgell
ca13503f41 ArduPlane: revert compass parameter changes 2021-12-04 16:51:53 +11:00
Andrew Tridgell
e7c7cdd653 Plane: reset VTOL takeoff if not armed
we need to reset the takeoff target position while disarmed so we
don't use spurious position information from before we get good GPS
lock.

also remove the "Resetting previous waypoint" message as it doesn't
provide useful information and is just a distraction (it would be
printed continuously while waiting for arming with this PR)
2021-12-04 16:51:02 +11:00
Andrew Tridgell
e342ce0da4 Plane: fixed reset of steering locked course
reset when we have not been steering for 1s, to ensure that an old
locked course is not used
2021-12-04 07:41:35 +11:00
Andrew Tridgell
5f52171776 Plane: added QRTL as RCn_OPTION 2021-12-02 08:29:07 +11:00
Andrew Tridgell
de4a4a775a Plane: fixed use before init bug in VTOL land
found by Peter Barker with valgrind
2021-12-01 19:42:42 +11:00
Andrew Tridgell
56870ad7d6 Plane: use yaw rate controller in NAV_SCRIPT_TIME 2021-11-30 16:19:26 +11:00
Andrew Tridgell
55d8afa1dd Plane: support autotune for yaw rate control 2021-11-30 16:19:26 +11:00
Andrew Tridgell
b619ee4970 Plane: added support for rate yaw control
to enable for ACRO mode, set ACRO_YAW_RATE to desired maximum rate in
degrees/second, and set YAW_RATE_ENABLE=1 to enable PID tuning of yaw
rate controller

pair programmed with Andy Palmer and Matthew Hampsey
2021-11-30 16:19:26 +11:00
Iampete1
06c9a69975 Plane: remove compass params underscore 2021-11-30 08:14:43 +09:00
Josh Henderson
52adda7c4c Plane: INAV rename for neu & cm/cms 2021-11-30 10:08:07 +11:00
Josh Henderson
c6dd39773d ArduPlane: inav use _xy() 2021-11-30 10:08:07 +11:00
Andrew Tridgell
1af384ad12 Plane: updated release notes for 4.1.4 2021-11-25 09:05:29 +11:00
Andrew Tridgell
36562ed30b Plane: limited VFWD integrator to cruise throttle
in some situations (such as when landing approach is disabled) the
vfwd integrator can wind up to extreme values. This can put a huge
load on an electric quadplane as it is running both forward and vtol
motors, and the downforce from being nose down can be extreme.

It should never need to go above the cruise throttle in any reasonable
situation, so limit it to cruise to ensure we don't apply too much
forward throttle
2021-11-24 18:49:24 +11:00
kniuk
6581afcb8d deleted set_target_altitude_location from set_next_WP 2021-11-24 18:08:26 +11:00
Andrew Tridgell
77c43d9ba1 Plane: limiting POS1 landing target speed
prevent very high target speeds when the target velocity profile is
above the initial speed in POSITION1. Always allow up to 2*Q_WP_SPEED,
but don't go above the initial speed
2021-11-24 07:15:21 +11:00
Andrew Tridgell
8d59e6fa48 Plane: fixed variable name
thanks to Peter for noticing
2021-11-22 13:15:29 +11:00
Hwurzburg
5cafccd447 ArduPlane: fix flare rc switch action with flight option bit 10 active 2021-11-21 21:00:04 +11:00
Peter Hall
151ef760a4 Plane: quadplane: log postition controller PIDs 2021-11-21 09:01:58 +11:00
Andrew Tridgell
734edd8085 Plane: fixed chute release on low value of RC option
only release on flag high
fixes #18843
2021-11-18 15:19:18 +11:00
Andrew Tridgell
ae81bbc5ed Plane: suppress spurious EKF yaw reset message
this makes plane match copter, emitting a yaw reset event, but not
worrying user. This message came out on each boot when EKF3 first
became active
2021-11-17 20:54:12 +11:00
Michel Pastor
685d34d615 Plane: fix bug causing wrong thr max and slew to be used during takeoff
Fix bug introduced in 3d34e061fe which causes flight_stage to be
FLIGHT_NORMAL instead of FLIGHT_TAKEOFF during takeoff stage causing
itself at least the use of THR_MAX and THR_SLEWRATE instead of
respectively TKOFF_THR_MAX and TKOFF_THR_SLEW and perhaps has other
consequences.

Could be really bad if TKOFF_THR_MAX needs to be much higher
than THR_MAX or if TKOFF_THR_SLEW needs to be much lower than
THR_SLEWRATE and cause a crash on takeoff due to low airspeed or torque
roll
2021-11-17 19:37:39 +11:00
Iampete1
9210488550 Plane: quadplane: limit pitch for all transitions into position control modes 2021-11-17 19:10:56 +11:00
Peter Barker
17395f362e ArduPlane: allow specification of Scheduler table priorities 2021-11-17 19:00:04 +11:00
Andrew Tridgell
e5106b990e Plane: update release notes for 4.1.3 2021-11-16 16:08:18 +11:00
Peter Barker
70562021ac ArduPlane: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED 2021-11-15 20:27:40 +11:00
Peter Barker
203103bae5 ArduPlane: ensure ENABLE_SCRIPTING is always defined 2021-11-15 20:27:40 +11:00
Iampete1
b9d240460b Plane: remove SpdHgt and use TECS direct 2021-11-13 08:05:39 +11:00
Andrew Tridgell
de44dceda4 Plane: enable fixed wing autotune switch 2021-11-10 18:46:34 +11:00
Iampete1
773c48b30c Plane: tailsitter: start transtion from desired pitch not actual 2021-11-09 13:44:30 +00:00
Iampete1
51caf15f94 Plane: manual stabilize: keep nav pitch and roll up to date 2021-11-09 13:44:30 +00:00
Iampete1
68f252e0df Plane: tiltrotor: allow tilt wing as flap 2021-11-09 10:46:09 +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
Peter Barker
7c3de472b2 Plane: support send_extended_sys_state 2021-11-09 10:22:24 +11:00
Andrew Tridgell
893046608c Plane: update release notes for 4.1.3beta1 2021-11-09 09:27:27 +11:00
Andrew Tridgell
0c1e576544 Plane: added support for NAV_SCRIPT_TIME 2021-11-08 21:08:52 +11:00
Andrew Tridgell
d3742989ef Plane: default rate max to 75 for quadplane VTOL
this reduces overshoot when VTOL tune is less than ideal
2021-11-07 06:58:53 +11:00
Andrew Tridgell
debae1381c Plane: fixed a bug in POSITION1 speed thresholds
we were comparing two different speeds in the threshold for going to
Q_WP_SPEED limit. The reason the two speeds were different was the
wp_nav init happened before the defaults were setup for quadplanes

this fixes both bugs
2021-11-06 20:00:10 +11:00
Peter Barker
554e7f8d1c ArduPlane: move EFI to AP_Vehicle 2021-11-05 09:22:17 +11:00
Peter Barker
6a12d3f5d9 Plane: use enum class for StickMixing 2021-11-03 18:06:00 +11:00
Iampete1
e33954d561 Plane: tailsitter transition tidyups 2021-11-02 10:14:36 +11:00
Iampete1
af8688b300 Quadplane: add transiton class 2021-11-02 10:14:36 +11:00
Iampete1
9073d16b09 Tiltrotor: add transtion class 2021-11-02 10:14:36 +11:00
Iampete1
ce5b81869d Plane: Tailsitter: add transtion class 2021-11-02 10:14:36 +11:00
Iampete1
7af1b40fb8 Plane: system use new transtion class 2021-11-02 10:14:36 +11:00
Iampete1
99d98cc5b8 Plane: add transition class as friend 2021-11-02 10:14:36 +11:00
Iampete1
23a413946b Plane: Qacro: use new transition class 2021-11-02 10:14:36 +11:00
Iampete1
f25e5087c0 Plane: attitude: use new transition class 2021-11-02 10:14:36 +11:00
Andrew Tridgell
9c617a18f4 Plane: suppress rate D terms in ground mode
this prevents a common oscillation issue on the ground
2021-10-30 18:45:53 +11:00
Andrew Tridgell
b74dca02ca Plane: avoid qpos approach when very close to destination
this prevents a fwd transition when doing something like LOITER_TIME
close to a VTOL_LAND wp. We use 1.5 times the stopping distance at
cruise airspeed for the threshold
2021-10-29 20:22:19 +11:00
Andrew Tridgell
19b5044223 Plane: fixed VTOL state error when using Q_ENABLE=2
this ensures the poscontrol state is reset if it has not been
initialised before a VTOL loiter operation

thanks to Pete Hall for finding this
2021-10-29 20:22:19 +11:00
Andrew Tridgell
51ccc1822c Plane: rename ReleaseNotes.txt to be more consistent with copter 2021-10-27 15:32:32 +11:00
Hwurzburg
8d94e58ec9 ArduPlane: add RC option to plane for emergency remote landing that forces FS actions to FBWA 2021-10-26 10:34:28 +11:00
Iampete1
bfbd0d93c1 Plane: Quadplane: continue in mode loiter to Qland on failsafe, as with Qland 2021-10-26 10:13:55 +11:00
Hwurzburg
085c5c815b Plane: Fix bug with mode return on short fs exit and add FBWB action 2021-10-26 10:12:48 +11:00
Sebastian Quilter
013de11916 ArduPlane: make rangefinder ranges m rather than cm 2021-10-21 21:28:53 +11:00
Iampete1
73e9c9bb43 Plane: quadplane: forward throttle reutrn float 2021-10-20 18:29:58 +11:00
Iampete1
2f93c1f9e4 Plane: stabilizer roll and pitch to floats 2021-10-20 18:29:58 +11:00
Iampete1
b31ce6734a Plane: get throttle input return float 2021-10-20 18:29:58 +11:00
Iampete1
2f4661c52f Plane: use float for set/get output scaled 2021-10-20 18:29:58 +11:00
Peter Barker
bcad5a7ba6 ArduPlane: handle renaming of AP_InertialNav_NavEKF to AP_InertialNav 2021-10-20 18:09:36 +11:00
Peter Barker
987d67b867 ArduPlane: move SITL object up to AP_Vehicle 2021-10-19 11:34:43 +11:00
Peter Barker
eef8115ffc ArduPlane: factor substring from allocation_error parameter 2021-10-18 12:49:44 +11:00
Andrew Tridgell
5684ca13fa Plane: update release notes for 4.1.2 2021-10-17 15:51:50 +11:00