Leonard Hall
e253c94f63
AC_AttitudeControl: Remove Unused Function
2021-04-27 17:13:55 +09:00
Leonard Hall
1fb2a95486
AC_AttitudeController: Thrust Vector attitude control
2021-04-27 17:13:55 +09:00
Peter Barker
a3c329b182
AC_AttitudeControl: make parameter renames consistent
2021-04-21 12:17:42 +10:00
Leonard Hall
b43c7f4ed1
AC_AttitudeControl: Parameter rename (non-functional)
2021-04-21 12:17:42 +10:00
hs293go
de0c57de77
AC_AttitudeControl: Use Quaternion::operator* for vector rotation
...
Replace all instances of the q*v*q.formula() or conversion to rotation
matrix + matrix multiply by calling Quaternion::operator* on a
vector
2021-04-21 12:17:42 +10:00
Leonard Hall
86a157ce59
AC_AttitudeControl: Seperate thrust vector correction into a separate function
2021-04-21 12:17:42 +10:00
Leonard Hall
c28d103afe
AC_AttitudeControl: Fix Angular velocity rotation to body frame
...
Thanks to BreederBai for higlighting this in issue #17059
Thanks to esaldiran and Hs293Go for helping check the math.
2021-04-19 14:48:59 +10:00
Randy Mackay
ae66803148
AC_AttitudeControl: minor optimisation and comment fixes
2021-04-03 12:07:59 +09:00
Leonard Hall
d6e3495eca
AC_AttitudeControl: support for feedforward rate in angle request for yaw
2021-04-03 12:07:59 +09:00
Leonard Hall
e788d63686
AC_AttitudeControl: clear up comment for inertial_frame_reset
2021-02-17 21:19:18 +09:00
Leonard Hall
f53242b323
AC_AttitudeControl: rename thrust_heading_rotation_angles args
2021-02-10 18:35:58 +11:00
Leonard Hall
ad6e2eeed8
AC_AttitudeControl: remove feed-forward from run_quat
2021-02-10 18:35:58 +11:00
Iampete1
7d5e5f8dd7
AC_AttitudeControl: add SITL panic to remind us to implent the quarternion
2021-02-09 12:43:54 +09:00
Leonard Hall
25fff17e48
AC_AttitudeControl: constify some local variables
2021-01-22 14:22:18 +09:00
Leonard Hall
1129a3fd59
AC_AttitudeControl: use AP_Math control functions
2021-01-20 18:19:40 +11:00
bnsgeyer
04e2cceaff
AC_AttitudeControl: Tradheli support for integrator management and hover collective learning
2020-12-21 23:33:48 -05:00
Mark Whitehorn
cc2c631d23
AC_AttitudeControl: add AC_AttitudeControl_TS
...
move tailsitter body-frame roll input method to new subclass
override relax_attitude_controllers in AttitudeControl_TS
2020-12-21 12:56:24 +11:00
Leonard Hall
edadbae240
AC_AttitudeControl: Handle zero accel value correctly in angle correction.
2020-06-23 08:21:47 +09:00
Randy Mackay
aff854f485
AC_AttitudeControl: update param ranges
2020-02-26 08:02:27 +09:00
Mark Whitehorn
7e8aecac50
AC_AttitudeControl: simplify body-frame roll axis swapping
2019-12-18 08:33:29 +11:00
Mark Whitehorn
bb9b116574
AC_AttitudeControl: fix argument order in tailsitter bodyframe roll input methods
...
increase allowed yaw error in tailsitter bodyframe roll modes
add combined bodyframe roll method
delete old versions of body-frame roll input methods
invert mc_controls
2019-12-18 08:33:29 +11:00
Leonard Hall
5afb5b4956
AC_AttitudeControl: Prevent loss of yaw control during large angle recovery.
2019-10-31 11:53:27 +08:00
Leonard Hall
0834726b48
AC_AttitudeControl: Support System ID tests
2019-10-16 08:17:09 +09:00
Leonard Hall
bbe33e38f3
AC_AttitudeControl: support for upgrade to PID object
2019-07-25 17:38:15 +09:00
Mark Whitehorn
ce1a082956
Plane: limit yaw error in bodyframe roll control
2019-04-30 08:51:24 +10:00
Mark Whitehorn
732ed17f2f
AC_AttitudeControl: bodyframe roll log target attitude bugfix
2019-04-23 09:15:55 +10:00
Mark Whitehorn
d72f2feeb5
AC_AttitudeControl: constrain input euler roll and pitch in bodyframe roll controls
...
and limit integrated error in bf_roll_pitch_yaw_3
2019-04-23 09:15:55 +10:00
Leonard Hall
32cc642b2e
AC_AttitudeControl: Formatting Changes
2019-04-20 09:31:56 +09:00
Leonard Hall
6e76dff930
AC_AttitudeControl: remove unused set_throttle_out_unstabilized
2019-04-08 09:42:21 +09:00
Mark Whitehorn
b7957e820f
AC_AttitudeControl: bodyframe roll log target attitude bugfix
2019-03-30 10:32:24 +11:00
Mark Whitehorn
55047324ac
AC_AttitudeControl: add new tailsitter bodyframe roll option
2019-03-26 14:50:37 +11:00
Mark Whitehorn
4e9b6d1919
AC_AttitudeControl: improve tailsitter bodyframe roll control
2019-03-26 14:50:37 +11:00
Mark Whitehorn
1c52458d72
AC_AttitudeControl: use new method get_quat_body_to_ned()
2019-03-19 10:46:25 +11:00
Mark Whitehorn
20bbf99b28
AC_AttitudeControl: add body-frame yaw mode for tailsitters
2019-03-06 15:48:51 +11:00
Peter Barker
50d95943e3
AC_AttitudeControl: add pre-arm checks
2019-03-06 10:36:32 +09:00
Pierre Kancir
96e629d83e
AC_AttitudeControl: pass vector by const reference
2018-12-22 08:31:32 +09:00
Leonard Hall
8d572e8565
AC_AttitudeControl: Fix Autotune high hover throttle based limits
2018-12-21 22:17:52 +11:00
Michael du Breuil
5846a54c17
AC_AttitudeControl: Fix copy paste param doc error
2018-10-25 09:50:00 +11:00
Leonard Hall
96a8bcf641
AC_AttitudeControl: limit gyro correction to 45 degrees error
2018-10-16 00:44:50 +09:00
Leonard Hall
acaefe9316
AC_AttitudeControl: remove output limits
2018-10-16 00:44:50 +09:00
Leonard Hall
34c0656675
AC_AttitudeControl: Add missing variable initalisations
2018-09-15 11:00:29 +10:00
Michael du Breuil
eb1f3b205f
AC_AttitudeControl: Use reset_rate_controller_I_terms() helper
2018-09-14 12:16:58 +09:00
Leonard Hall
706ff85be7
AC_AttitudeControl: Add minimum angle limit for get_althold_lean_angle_max
2018-09-12 15:51:30 +09:00
Jacob Walser
6ae1bf4cf4
AC_AttitudeControl: Allow zero gains for Sub
...
Close bluerobotics/ardusub#70
2018-04-25 17:18:26 +09:00
Randy Mackay
33f437a72c
AC_AttitudeControl: use multiply instead of divide
2018-03-16 13:50:57 +09:00
Leonard Hall
c53ba22daa
AC_AttitudeControl: add new rate only attitude control
2018-03-16 13:50:57 +09:00
Randy Mackay
b988a6ca08
AC_AttitudeControl: add units to INPUT_TC param desc
2018-03-16 13:50:57 +09:00
Randy Mackay
9aa6415e1c
AC_AttitudeControl: use is_positive and is_negative
2018-03-16 13:50:57 +09:00
Randy Mackay
b3de52dc59
AC_AttitudeControl: minor comment fix
2018-03-16 13:50:57 +09:00
Leonard Hall
05418d3d29
AC_AttitudeControl: add EKF reset handling
2018-03-16 13:50:57 +09:00
Leonard Hall
8c45345863
AC_AttitudeControl: rename use_ff_and_input_shaping to use_sqrt_controller
...
Also rate controllers only use _rate_bb_ff_enabled flag to decide whether
to use ff for now
2018-03-16 13:50:57 +09:00
Leonard Hall
1e9e12e866
AC_AttitudeControl: rename heading_quad to yaw_vec_correction_quat
...
also rename flip_scalart local variable to feedforward_scalar
also add comments
non-functional change
2018-03-16 13:50:57 +09:00
Randy Mackay
59a2445ad3
AC_AttitudeControl: replace smoothing gain with INPUT_TC
2018-03-16 13:50:57 +09:00
Leonard Hall
e1e224b68b
AC_AttitudeControl: add angular velocity limit
2018-03-16 13:50:57 +09:00
Leonard Hall
ee82943f85
AC_AttitudeControl: add input_shaping_rate_predictor
2018-03-16 13:50:57 +09:00
Leonard Hall
6175a896ee
AC_AttitudeControl: add set smoothing gain
...
Smoothing gain value should be set once when entering a mode
2018-03-16 13:50:57 +09:00
Leonard Hall
692e6518cc
AC_AttitudeControl: update param desc values for large copters
2018-01-27 11:54:04 +09:00
Leonard Hall
62cc25022c
AC_AttitudeControl: protect against overshoot in sqrt controller
2018-01-16 12:13:48 +09:00
Leonard Hall
75de0cb4ef
AC_AttitudeControl: sqrt_controller accepts dt
2018-01-16 12:13:48 +09:00
Leonard Hall
cddd815a75
AC_AttitudeControl: comment thrust_heading_rotation_angles
...
non-functional change
2018-01-12 15:20:47 +09:00
Leonard Hall
0544cf1d82
AC_AttControl: add step input for autotune
2017-06-22 15:18:04 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
188dfb6936
AC_AttitudeControl: Use SI units conventions in parameter units
...
Follow the rules from:
http://physics.nist.gov/cuu/Units/units.html
http://physics.nist.gov/cuu/Units/outside.html
and
http://physics.nist.gov/cuu/Units/checklist.html
one further constrain is that only printable (7bit) ASCII characters are allowed
2017-05-17 18:07:25 +10:00
Randy Mackay
67097c8d59
AC_AttitudeControl: use gyro_latest
...
This allows moving the attitude control before the ahrs/ekf update
We continue to use ahrs.get_gyro for the non-time-critical heli
passthrough functions. We should avoid using get_gyro_latest() unless we know there is a direct benefit because it could lead to inconsistent gyro values vs what the EKF is using.
2017-03-03 13:14:28 +11:00
Andrew Tridgell
5acbf5d16e
AC_AttitudeControl: use FF from AC_PID
2017-02-18 17:26:43 +11:00
Leonard Hall
ea0e413b04
AC_AttControl: do not limit rate if ATC_ACCEL_MAX param is zero
2016-11-23 14:43:29 +09:00
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Leonard Hall
29d4790fc7
AC_AttControl: reduce max_rate_step based on hover throttle
...
This changes reduces AutoTune's twitch size based on the hover throttle
This method is only used by AutoTune
2016-08-12 22:29:53 +09:00
Leonard Hall
011bc0a350
AC_AttControl: add reset_rate_controller_I_terms()
2016-08-05 12:40:37 +09:00
Leonard Hall
80bda572ba
AC_AttutudeControl: Yaw shift fix
2016-06-24 18:15:48 +09:00
Leonard Hall
8737f6b62d
AC_AttitudeControl: enhanced quaternion attitude controller
2016-06-24 17:17:11 +09:00
Leonard Hall
096bdd67f8
AC_AttitudeControl: add ATC_ANG_LIM_TC parameter
...
This allow adjusting the reponse to limit lean angles to reduce altitude loss
2016-06-18 11:55:49 +09:00
Randy Mackay
dafc45eb26
AC_AttitudeControl: move get_althold_lean_angle_max to parent class
2016-06-18 11:55:49 +09:00
Leonard Hall
3d27ecca92
AC_AttitudeControl: add TC for Alt_Hold angle limit
2016-06-18 11:55:49 +09:00
Randy Mackay
7ff0fcb25d
AC_AttitudeControl: multicopter specific rate_controller_run
2016-06-18 11:55:49 +09:00
Randy Mackay
b7431b7d0c
AC_AttitudeControl: update throttle rpy mix on every iteration
2016-06-18 11:55:49 +09:00
Leonard Hall
35ef761deb
AC_AttitudeControl: Move set_throttle_out to _Multi and _Heli
2016-06-18 11:55:49 +09:00
Andrew Tridgell
6330060e49
AC_AttitudeControl: added monitoring of controller error
...
use RMS P+I+FF output. Thanks to Leonard for the suggestion
2016-05-28 17:33:30 +10:00
Randy Mackay
4a06ca4be2
AC_AttControl: remove unused call to motors.set_stabilizing
...
Also minor change to order of a call to motors library to make stabilizing
and non-stabilizing calls consistent.
Non functional change
2016-05-07 10:08:38 +09:00
Leonard Hall
b30606bb22
AC_AttControl: remove scaling for centi-degrees and legacy motor input
2016-04-01 11:59:30 +09:00
Randy Mackay
17c9db08f3
AC_AttControl: add angle and rate PIDs
2016-04-01 11:59:30 +09:00
Leonard Hall
979534279a
AC_AttControl: roll, pitch, yaw output to motors in -1 to +1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
2822b93cd4
AC_AttControl: add get_throttle_in accessor
...
Used for logging only
2016-04-01 11:59:30 +09:00
Leonard Hall
c0f209fa42
AC_AttControl: angle_boost to float
2016-04-01 11:59:30 +09:00
Jonathan Challinger
e946e047e6
AC_AttitudeControl: add attitude_controller_run functions, call from input functions
2016-03-02 20:16:18 +09:00
Randy Mackay
5ddd332277
AC_AttControl: add ANGLE_BOOST param
...
This allows disabling angle boost
2016-01-07 12:31:52 +09:00
Randy Mackay
86bb03aa79
AC_AttControl: use ahrs get_rotation_body_to_ned
...
ahrs.get_dcm_matrix renamed to ahrs.get_rotation_body_to_ned
2015-12-23 11:38:21 +09:00
Jonathan Challinger
46e6ff3ca9
AC_AttitudeControl: modify comment on kinematic correction feedforward
2015-12-23 11:38:19 +09:00
Jonathan Challinger
829d6037fc
AC_AttitudeControl: convert euler rates to angular velocity using the correct attitude
2015-12-23 11:38:16 +09:00
Jonathan Challinger
ae3357baee
AC_AttitudeControl: rotate angular velocity feedforward into vehicle frame
2015-12-23 11:38:14 +09:00
Jonathan Challinger
3d4bd92b48
AC_AttitudeControl: add helper functions to retrieve rotation matrices
2015-12-23 11:38:12 +09:00
Jonathan Challinger
ee8090e25f
AC_AttitudeControl: reflect renamed function in AP_AHRS
2015-12-18 18:08:37 +11:00
Randy Mackay
02eda4dcab
AC_AttControl: remove comment, fix formatting
2015-12-09 20:04:32 +09:00
Jonathan Challinger
3a06edcee3
AC_AttitudeControl: rename local variable to match naming convention
2015-12-09 19:58:46 +09:00
Jonathan Challinger
846ee7d2af
AC_AttitudeControl: fix regression in angular velocity controller
2015-12-09 19:58:45 +09:00
Jonathan Challinger
b8223771d3
AC_AttitudeControl: properly protect sqrt_controller from nonpositive acceleration limits
2015-12-09 19:58:44 +09:00
Jonathan Challinger
162d2a9112
AC_AttitudeControl: naming changes in response to Leonard's review
2015-12-09 19:58:42 +09:00
Jonathan Challinger
0baf86c485
AC_AttitudeControl: fixup more names
2015-12-09 19:58:39 +09:00
Jonathan Challinger
41e580e53a
AC_AttitudeControl: add input_att_quat_bf_ang_vel and use for ACRO
2015-12-09 19:58:38 +09:00
Jonathan Challinger
5919e95635
AC_AttitudeControl: add input_ prefix to input shaper functions
2015-12-09 19:58:36 +09:00
Jonathan Challinger
bba360ea2b
AC_AttitudeControl: correct bugs found in review
2015-12-09 19:58:35 +09:00