Peter Barker
70109f968c
AC_AttitudeControl: tidy AC_PID construction
2023-08-31 11:09:10 +10:00
Peter Barker
b06921fbac
AC_AttitudeControl: remove unused defines
2023-08-30 12:30:25 +10:00
Iampete1
b4cd3a4d26
AC_AttitudeControl: Heli: move integrate_bf_rate_error_to_angle_errors to private
2023-08-01 09:14:46 +09:00
Iampete1
6ece7ffb2e
AC_AttitudeControl: Heli: remove unused flags
2023-08-01 09:14:46 +09:00
Rakesh Vivekanandan
cacbb23c0b
Sub: AC_AttitudeControl_Sub: Helper function to ensure that the vehicle reaches the target orientation with the desired yaw rate.
2023-07-27 14:29:10 -03:00
Peter Barker
615bf8e5ee
AC_AttitudeControl: allow AP_SCRIPTING_ENABLED to come from hwdef files
2023-06-09 16:10:52 +10:00
Peter Barker
f1eec8482b
AC_AttitudeControl: use quat.to_euler(Vector3f&)
2023-04-19 14:24:45 +10:00
Mirko Denecke
d958ce384f
AC_AttitudeControl: fix get_vel_target_z_cms description
2023-04-10 09:15:57 +10:00
Henry Wurzburg
762e709f73
AC_Attitude:add TKOFF/LAND only weathervane option
2023-03-01 09:51:36 +11:00
Andy Piper
8ecd1d9a37
AC_AttitudeControl: move THR_G_BOOST to Multicopter only
...
refactor PD and Angle P boosting into update_throttle_gain_boost()
call update_throttle_gain_boost() from rate_controller_run()
2023-01-31 08:22:40 +09:00
Andrew Tridgell
64d03555af
AC_AttitudeControl: use ticks32() for is_active tests
...
this avoids problems with very uneven timing
2023-01-29 15:28:43 +11:00
Iampete1
46e560f3f6
AC_AttitudeControl: CommandModel: use new defualt pattern
2023-01-24 10:16:56 +11:00
Andy Piper
53b7f96a5d
AC_AttitudeControl: boost PD on roll and pitch when slew limit is hit
...
boost angle P when slew limit is hit
move to a single parameter for thrust-gain boosting
add PD scaling support
2023-01-11 18:59:52 +11:00
Randy Mackay
5981e8bbaa
AC_AttitudeControl: add get_rate_ef_targets accessor
2023-01-09 10:34:34 +09:00
Andrew Tridgell
3d5ef88c43
AC_AttitudeControl: fixed time wrap bug in is_active_xy()
...
this failed at 70 minutes
2023-01-08 16:02:42 +11:00
Leonard Hall
140dc61f2a
AC_AttitudeControl: AC_PosControl: Simplify and clarify use of vertical controllers
2022-12-30 20:25:58 +09:00
Leonard Hall
05aa879b61
AC_AttitudeControl: AC_PosControl: Comment fix and small efficiency gain
2022-12-30 20:25:58 +09:00
Leonard Hall
78942911b7
AC_AttitudeControl: AC_PosControl: Include FF in _pid_vel_xy integrator initialisation
2022-12-28 08:25:31 +09:00
Leonard Hall
3c69d28237
AC_AttitudeControl: Support changing update period
2022-12-13 17:10:06 +11:00
Henry Wurzburg
b9452e58b7
AC_AttitudeControl: generalize pid descriptions
2022-11-22 10:55:45 +11:00
Peter Barker
48d25cfc9f
AC_AttitudeControl: change namespace of MultiCopter and FixedWing params
...
this stops the libraries knowing anything about AP_Vehicle
2022-11-09 19:04:37 +11:00
Leonard Hall
aed694316d
AC_AttitudeControl: input_thrust_vector with general heading
2022-11-01 08:21:50 +09:00
Iampete1
14a786bdfa
AC_AttitudeControl: remove duplicate `_attitude_target.normalize()`
2022-10-18 08:30:46 +11:00
Andrew Tridgell
bd1be3b41c
AC_AttitudeControl: added single loop override of angle P gains
...
this is used by quadplanes in back-transiton to prevent oscillation
caused by driving the fixed wing controller too fast
2022-10-18 07:38:39 +11:00
Willian Galvani
e1ec24f25d
Sub: remove angle_boost logic
...
Most subs are neutrally buoyant, which means this code makes more harm than it is actually useful
2022-09-15 11:07:59 -03:00
Leonard Hall
f3cd5a9a38
AC_PosControl: Fix slow target decay decay problem
2022-09-02 09:02:46 +09:00
Leonard Hall
4a12faea92
AC_PosControl: Make get_z_accel_cmss public
2022-08-31 19:19:04 -04:00
Andrew Tridgell
56bb13420d
AC_AttitudeControl: removed use of "blended" earth frame accel
2022-08-21 18:51:59 +10:00
Henry Wurzburg
33ececf782
AC_AttitudeControl: correct metadata in libraries failing checks on emitter
2022-08-16 11:50:11 +10:00
Iampete1
07d96361ed
AC_AttitudeControl: params always use set method
2022-08-03 13:43:48 +01:00
Iampete1
c87d46e24d
AC_AttitudeControl: CommandModel: use set_and_default method
2022-07-20 17:59:59 +10:00
Iampete1
56c6233be9
AC_AttitudeControl: remove PosControl_Sub
2022-07-05 16:00:03 -03:00
Bill Geyer
2377d7a2c3
AC_AttitudeControl: move input_shaping_rate into input_shaping_ang_vel
2022-06-28 07:56:12 +09:00
Bill Geyer
be65358cc1
AC_AttitudeControl: incorporate suggested changes
2022-06-28 07:56:12 +09:00
Bill Geyer
355524206b
AC_AttitudeControl: modify constructor to allow defaults
2022-06-28 07:56:12 +09:00
Bill Geyer
fd24b3912f
AC_AttitudeControl: add comments
2022-06-28 07:56:12 +09:00
Bill Geyer
1cd537895e
AC_AttitudeControl: add command model class for parameters
2022-06-28 07:56:12 +09:00
Bill Geyer
a547916ebf
AC_AttitudeControl: only use rate shaping tc if tc is nonzero
2022-06-28 07:56:12 +09:00
bnsgeyer
7594f7a558
AC_AttitudeControl: incorporate sqrt controller in rate shaping
2022-06-28 07:56:12 +09:00
Andy Piper
1287fc4fff
AC_AttitudeControl: reset throttle mix to used mix when scaling mix down
2022-06-22 16:17:26 +09:00
Andrew Tridgell
7e4fb803a2
AC_AttitudeControl: reduced default quadplane VTOL pos XY gains
2022-06-16 21:26:49 +10:00
Iampete1
ecc86b6a4b
AC_AttitudeControl: reduce alt hold min lean angle to 5deg on plane
2022-05-27 08:17:14 +10:00
Ruffalo-sunghwan
7fb9d21cbf
AC_AttitudeControl : correct comment spelling
2022-05-24 20:27:45 +09:00
murata
59dcf18558
AC_AttitudeControl: Shorten survival time of automatic variables
2022-05-16 09:08:02 +09:00
Leonard Hall
0d863aa736
AC_AttitudeControl: Allow diabling of slew limit
2022-05-14 22:31:43 +09:00
Andrew Tridgell
99a6cb69f8
AC_AttitudeControl: added get_rpy_srate()
...
and remove dmod binding, as slew rate turned out to be more useful
2022-05-03 10:01:19 +10:00
Peter Barker
0fb5be7f2b
AC_AttitudeControl: tidy includes
2022-05-03 09:14:58 +10:00
Andrew Tridgell
f8fe74f5fe
AC_AttitudeControl: added get_rpy_PDmod method
...
used for lua scripts to do VTOL tuning
2022-04-29 11:54:12 +10:00
Willian Galvani
6e326ee912
AC_PosControl_Sub.h: do not use our own input_vel_accel_z
2022-04-13 16:23:55 -03:00
Andrew Tridgell
cdfa682be0
AC_AttitudeControl: use deadzone for pitch
...
when pitch for nose-in and tail-in is enabled we should use the
deadzone
2022-04-13 18:19:02 +10:00
Andrew Tridgell
f4548daa5a
AC_AttitudeControl: added an option for pitch weathervaning
...
when nose-in or tail-in, if the aircraft has significant pitch
asymmetry in hover then we would spin around in no wind if we use
pitch as an input
this makes pitch input for nose-in and tail-in optional and off by
default to preserve existing behaviour
2022-04-13 18:19:02 +10:00
Peter Barker
c1e776fc46
AC_AttitudeControl: stop libraries including AP_Logger.h in .h files
...
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h
This necessitated moving The PID_Info structure out of AP_Logger's
namespace. This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!
There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Andrew Tridgell
7bb129aa3e
AC_AttitudeControl: added set_lean_angle_max_cd()
2022-03-18 13:36:16 +11:00
Iampete1
4386d748de
AC_AttitudeControl: WeatherVane: defualt to 0 gain on plane and early return
2022-03-09 18:02:41 +11:00
Leonard Hall
56e47cb8cc
AC_PosControl: Decay posiiton error during relax
2022-03-07 16:14:23 +09:00
Leonard Hall
057be63fdd
AC_AttitudeControl: AC_PosControl: add soften for landing
2022-03-07 16:14:23 +09:00
Bill Geyer
6204898de4
AC_AttitudeControl: Tradheli-update default gains
2022-02-15 13:42:09 -05:00
Peter Hall
a56eac0274
AC_AttitudeControl: WeatherVane: add takeoff and landing override params
2022-02-08 10:38:16 +11:00
Peter Hall
8fdc85ccbe
AC_AttitudeControl: WeatherVane: add tail in option
2022-02-08 10:38:16 +11:00
Gone4Dirt
cc545efa29
AC_AttitudeControl: add weathervane library
2022-02-08 10:38:16 +11:00
Joshua Henderson
4b51dc73b5
AC_Attitude_Control: add get_attitude_target_ang_vel
2022-02-07 08:24:35 +09:00
Leonard Hall
162dd6d2bc
AC_AttitudeControl: AC_PosControl: Remove velocity override
2022-02-04 13:09:35 +09:00
Bill Geyer
a2c1c809b2
AC_AttitudeControl: tradheli-change param name from _VFF to _FF
2022-02-04 08:03:38 +09:00
Leonard Hall
b1f80fbe4f
AC_AttitudeControl: Remove double colon
2022-02-03 14:36:21 +09:00
Joshua Henderson
8af7752110
AC_AttitudeControl: nfc PosControl fix to say relative to EKF origin
2022-02-03 12:05:12 +09:00
Iampete1
b3646494d4
AC_AttitudeControl: always use smaller of slew yaw and rate max
2022-02-01 08:19:35 +09:00
Leonard Hall
d51e2d323e
AC_AttitudeControl: AC_PosControl: use relax_integrator
2022-01-25 13:20:47 +09:00
Leonard Hall
1ad5479954
AC_AttitudeControl: use relax_integrator
2022-01-25 13:20:47 +09:00
Leonard Hall
48a15947ab
AC_AttitudeControl: AC_PosControl: use consistent measured vel and accel callers in z
2022-01-25 13:20:47 +09:00
Leonard Hall
203529f45e
AC_AttitudeControl: AC_PosControl_Sub: Increase Jerk with Accel when out of velocity range
2022-01-25 09:04:25 +09:00
Leonard Hall
f6f51f5a74
AC_AttitudeControl: AC_PosControl: Increase Jerk with Accel when out of velocity range
2022-01-25 09:04:25 +09:00
Leonard Hall
2cda59c09d
AC_AttitudeControl: AC_PosControl: Init desired accel to zero
2022-01-25 08:57:38 +09:00
Leonard Hall
7a9a0bfb3f
AC_AttitudeControl: Support MAVLINK_MSG_ID_SET_ATTITUDE_TARGET
2022-01-19 18:03:17 +11:00
Leonard Hall
894b491faa
AC_AttitudeControl: AC_PosControl: Clean up init functions and limit initial xy accelerations based on max lean angle
2022-01-11 11:00:41 +11:00
Leonard Hall
0bdf34dc57
AC_AttitudeControl: Respect rate limit in max_rate_step
2022-01-11 10:57:53 +11:00
Andrew Tridgell
53f1fc1295
AC_AttitudeControl: added get_ang_vel_yaw_max_rads()
2021-12-21 11:02:51 +09:00
RickReeser
d95c997606
AC_PosControl: fix comment
...
In ArduCopter/mode.cpp, ignore_descent_limit is FALSE unless landing:
// do not ignore limits until we have slowed down for landing
ignore_descent_limit = (MAX(g2.land_alt_low,100) > get_alt_above_ground_cm()) || copter.ap.land_complete_maybe;
2021-12-21 07:41:47 +09:00
Leonard Hall
90db81354b
AC_AttitudeControl: AC_PosControl: Prioritize crosstrack acceleration
2021-12-16 09:54:49 +09:00
Leonard Hall
9017ac6723
AC_AttitudeControl: AC_PosControl: Support error input to kinematic shaper
2021-12-07 09:47:42 +09:00
Randy Mackay
a3886be920
AC_PosControl: minor formatting fix
2021-12-01 08:54:34 +09:00
Josh Henderson
e11529ac01
AC_AttitudeControl: INAV rename for neu & cm/cms
2021-11-30 10:08:07 +11:00
Josh Henderson
da418ed520
AC_AttitudeControl: rename Inav get_position_xy() & get_velocity_xy()
2021-11-30 10:08:07 +11:00
Josh Henderson
77711e1505
AP_PosControl: inav use _xy()
2021-11-30 10:08:07 +11:00
Josh Henderson
6243532e69
AC_AttitudeControl: get_bearing & get_horizontal_distance use Vector2f
2021-11-30 10:08:07 +11:00
Andrew Tridgell
1b0631669c
AC_AttitudeControl: fixed limiting of throttle mix values
...
use constrain instead of reset to keep as much of user requested value
as possible
also raise limit for MIX_MIN to 0.5 after discussion with Leonard
2021-11-23 16:47:25 +09:00
Iampete1
be6598708e
AC_PosControl: remove unused limit flags
2021-11-23 13:49:02 +09:00
Peter Barker
8e15bf09a6
AC_AttitudeControl: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED
2021-11-15 20:27:40 +11:00
Peter Barker
38479905c0
AC_AttitudeControl: ensure ENABLE_SCRIPTING is always defined
2021-11-15 20:27:40 +11:00
Andrew Tridgell
3f936baf5c
AC_AttitudeControl: adjust docs for rate max limits
...
after discussion with Leonard
2021-11-11 07:22:38 +11:00
divyateja04
7f0bf89003
AC_AttitudeControl: removed empty constructors
2021-10-28 09:07:56 +11:00
lthall
d5286ec533
AC_AttitudeControl: Fix initialize bug
2021-10-01 13:14:46 -04:00
lthall
31e7d672c9
AC_AttitudeControl: AC_PosControl: Update PSC logging to include desired
2021-09-23 20:07:52 +09:00
Hwurzburg
502aff27da
AC_AttitudeControl: add options to prevent spamming tuning error messages
2021-09-21 07:56:19 +09:00
Josh Henderson
a3e475822b
AC_AttitudeControl: use vector.xy().length() instead of norm(x,y)
2021-09-14 10:43:46 +10:00
Iampete1
ffac134014
AC_PosControl: protect against negative angle max
2021-09-13 07:55:34 +09:00
Leonard Hall
ad278779e3
AC_AttitudeControl: : Add units to the accessors.
2021-09-09 08:01:14 +09:00
Leonard Hall
35a93c5988
AC_AttitudeControl: AC_PosControl: Change set_correction_speed_accel_z to use input arguments
2021-09-07 19:04:14 +09:00
Leonard Hall
5337ab0551
AC_AttitudeControl: AC_PosControl: Remove const float
2021-09-06 16:00:19 +09:00
Leonard Hall
0fff010046
AC_AttitudeControl: AC_PosControl: Separate landing and terrain following.
2021-09-06 16:00:19 +09:00
Leonard Hall
ff58054d1b
AC_AttitudeControl: AC_PosControl: Clean up to use .xy()
2021-08-26 12:22:52 +09:00