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
ca2977decf
AC_AttitudeControl: set throttle vs attitude priority for flipped state
...
When performing a flip we want to allow throttle to go high to provide
maximum attitude control
2016-06-18 11:55:49 +09:00
Leonard Hall
1fb4c12cd0
AC_AttitudeControl: move in throttle vs attitude prioritisation
...
Previously this prioritisation of throttle vs attitude was done in the
AP_Motors library
2016-06-18 11:55:49 +09:00
Randy Mackay
0870ce9fc1
AC_AttitudeControl: remove get_throttle_boosted from parent class
...
This is only called from multicopters
2016-06-18 11:55:49 +09:00
Leonard Hall
25c77c154f
AC_AttitudeControl: rename get_boosted_throttle to get_throttle_boosted
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
e070aeebe3
AC_AttitudeControl: added accessors for P and D RMS controller values
2016-06-10 17:48:31 +10:00
Andrew Tridgell
1c463e3f3b
AC_AttitudeControl: log rms P and D separately
...
as discussed with Leonard
2016-06-10 17:48:31 +10:00
Tom Pittenger
64c2510be9
AC_AttitudeControl: fix compile warning float to double promotion in string conversion
2016-06-01 17:38:47 -07:00
Andrew Tridgell
b4bdfa2451
AC_AttitudeControl: return roll, pitch and yaw controller error separately
...
as discussed with Leonard
2016-06-01 17:18:58 +10: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
Andrew Tridgell
9bf0ada875
AC_AttitudeControl: removed use of AFF for tail control in heli
2016-05-12 17:37:22 +10:00
dgrat
41661f815f
AP_Math: Replace the pythagorous* functions with a variadic template
...
The new function can deal with a variable number of function parameters.
Additionally, I renamed the functions to norm(), because this is the
standard name used in several other projects.
2016-05-10 11:41:26 -03: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
Andrew Tridgell
c7664291f9
AC_AttitudeControl: fixed comment on function
2016-04-28 17:46:58 +10:00
Andrew Tridgell
23a64e1227
AC_AttitudeControl: fixed accel limit trigonometry
...
Leonard had mentioned the limit should be tan(angle) not sin(angle). I
noticed this one was wrong.
2016-04-28 16:15:15 +10:00
Francisco Ferreira
b7135175c9
AC_AttitudeControl: fix heli documentation
2016-04-18 07:40:34 +09:00
Andrew Tridgell
d03a232659
AC_AttitudeControl: added set_limit_accel_xy() API
...
for preventing integrator buildup
2016-04-10 22:01:18 +10:00
Randy Mackay
87399776a3
AC_PosControl: hover throttle default to 0.5
2016-04-01 11:59:30 +09:00
Randy Mackay
165d739b45
AC_AttControl_Heli: roll, pitch, yaw passthrough to motors in -1 to +1 range
2016-04-01 11:59:30 +09:00
Randy Mackay
344d86a095
AC_AttControl_Heli: fix parameter description
2016-04-01 11:59:30 +09:00
Randy Mackay
685be4083c
AC_AttControl_Heli: remove unnecessary cast to AC_HELI_PID
2016-04-01 11:59:30 +09:00
Randy Mackay
6c91e50f8c
AC_AttControl_Heli: remove scaling for centi-degrees and legacy motor input
2016-04-01 11:59:30 +09:00
Randy Mackay
32d238187f
AC_AttControl_Heli: get_althold_lean_angle_max in 0 to 1 range
2016-04-01 11:59:30 +09:00
Randy Mackay
db04dddba5
AC_AttControl_Heli: adjust rate gain param descriptions
2016-04-01 11:59:30 +09:00
Randy Mackay
35c6ea994d
AC_AttControl_Multi: fix parameter descriptions
2016-04-01 11:59:30 +09:00
Randy Mackay
ace58d114f
AC_AttControl_Multi: reduce rate gain defaults
2016-04-01 11:59:30 +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
7f2c1f830f
AC_AttControl_Heli: add rate PIDs
2016-04-01 11:59:30 +09:00
Randy Mackay
5edc16dfb4
AC_AttControl_Multi: add rate PIDs
2016-04-01 11:59:30 +09:00
Randy Mackay
75042e5e27
AC_AttControl: remove rate PIDs
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
Randy Mackay
c49a914597
AC_AttControlHeli: remove unnecessary virtual declaration
2016-04-01 11:59:30 +09:00
Randy Mackay
2b123ee15d
AC_AttControlHeli: fix rate_bf_to_motor_roll_pitch and yaw output in -1 to +1 range
2016-04-01 11:59:30 +09:00
Randy Mackay
c5e5b4f783
AC_AttControl: fix rate controller max definitions to -1 to +1 range
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
c64a505906
AC_PosControl: relax_alt_hold_controllers accepts throttle in 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
15be80a25d
AC_PosControl: accel_to_throttle outputs 0 to 1
2016-04-01 11:59:30 +09:00
Leonard Hall
e5d6d45851
AC_AttControl_Heli: angle_boost to float
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
Leonard Hall
6f29bbafb4
AC_AttControl_Multi: get_althold_lean_angle_max uses motor thrust in 0 to 1 range
2016-04-01 11:59:30 +09:00
Leonard Hall
24f975c16a
AC_AttControl_Multi: fix throttle boost for 0 to 1
2016-04-01 11:59:30 +09:00
Leonard Hall
bab08cbcc1
AC_AttControl_Multi: add divide by zero check
2016-04-01 11:59:30 +09:00
Lucas De Marchi
f42484bcc5
AC_AttitudeControl: replace header guard with pragma once
2016-03-16 18:40:39 +11:00
Jonathan Challinger
e946e047e6
AC_AttitudeControl: add attitude_controller_run functions, call from input functions
2016-03-02 20:16:18 +09:00
dgrat
5148e41c1a
AP_Math: Cleaned macro definitions
...
Moved Definitions into a separate header. Replaced PI with M_PI and
removed the M_PI_*_F macros.
2016-02-27 02:51:33 -03:00
Leonard Hall
49a4bde5d9
AC_AttControl: lower minimum accelerations for large copters
2016-02-18 20:49:13 +09:00
Randy Mackay
8c7f36563c
AC_AttControl: bug fix to angle_boost reporting
...
Thanks to OXINARF for finding this
2016-01-08 10:48:59 +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
Andrew Tridgell
fbacb4c01f
AC_AttitudeControl: fixed M_PI -> M_PI_F
2015-12-20 17:55:39 +11:00
Jonathan Challinger
ee8090e25f
AC_AttitudeControl: reflect renamed function in AP_AHRS
2015-12-18 18:08:37 +11:00
Randy Mackay
c8661f804f
AC_AttControl: reduce compiler warnings by fixing member init order
...
Also increased _dt's default to 400hz (no functional change)
2015-12-09 20:04:42 +09:00
Randy Mackay
02eda4dcab
AC_AttControl: remove comment, fix formatting
2015-12-09 20:04:32 +09:00
Jonathan Challinger
e8345fbaab
AC_AttitudeControl: rename getters for attitude target and attitude error
2015-12-09 19:58:48 +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
a48f201a04
AC_AttitudeControl: comment changes in response to Paul's review
2015-12-09 19:58:41 +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
Jonathan Challinger
9208003aab
AC_AttitudeControl: remove unused variable
2015-12-09 19:58:34 +09:00
Jonathan Challinger
f8c709478a
AC_AttitudeControl: quaternion acro controller
2015-12-09 19:58:33 +09:00
Jonathan Challinger
8b886bc479
AC_AttitudeControl: minor comment changes and reorganization
2015-12-09 19:58:32 +09:00
Jonathan Challinger
edda7e4e1e
AC_AttitudeControl: keep _att_target_euler_deriv_rads updated in euler_angle_roll_pitch_yaw
2015-12-09 19:58:31 +09:00
Jonathan Challinger
1afab89991
AC_AttitudeControl: extensive renaming and recommenting
2015-12-09 19:58:29 +09:00
Jonathan Challinger
06c8457efd
AC_AttitudeControl: rename and modify frame_conversion functions to follow conventions
2015-12-09 19:58:27 +09:00
Jonathan Challinger
7330de86e5
AC_AttitudeControl: change internals to use radians instead of centidegrees
2015-12-09 19:58:26 +09:00
Andrew Tridgell
58f0abaf4c
AC_AttitudeControl: fixed one usage of zero accel limits
...
in other places zero accel limit means no limit
2015-12-07 13:43:14 +09:00
Lucas De Marchi
2591261af6
Global: rename min and max macros to uppercase
...
The problem with using min() and max() is that they conflict with some
C++ headers. Name the macros in uppercase instead. We may go case by
case later converting them to be typesafe.
Changes generated with:
git ls-files '*.cpp' '*.h' -z | xargs -0 sed -i 's/\([^_[:alnum:]]\)max(/\1MAX(/g'
git ls-files '*.cpp' '*.h' -z | xargs -0 sed -i 's/\([^_[:alnum:]]\)min(/\1MIN(/g'
2015-12-01 16:28:09 -02:00
Andrew Tridgell
d8ee9feaac
AC_AttitudeControl: fixed external tail gyro with no flybar
...
this sets up the tail pass-through for acro mode
2015-11-27 15:24:41 +09:00
Caio Marcelo de Oliveira Filho
ea08b6115d
AC_AttControl: use millis/micros/panic functions
2015-11-20 12:27:03 +09:00
Randy Mackay
c9340dbeb6
AC_PosControl: run velocity controller z-axis at 400hz
2015-11-18 13:31:21 +09:00
Randy Mackay
dbc8ce1d69
AC_PosControl: default z-axis controller to 400hz
...
No functional change as vehicle code always sets it explicitely
2015-11-18 13:31:20 +09:00
Randy Mackay
323a527734
AC_PosControl: velocity controller uses feed-forward althold
2015-11-18 13:31:19 +09:00
Randy Mackay
4b41710261
AC_AttControl: minor comment fix
2015-11-18 13:31:18 +09:00
Robert Lefebvre
1bc13fb9c0
AC_AttitudeControl_Heli: Add Hover Roll Trim Scalar
2015-11-12 19:37:35 +09:00
Robert Lefebvre
0b33ef3862
AC_AttitudeControl: Add Hover Roll Trim functionality for helicopters.
2015-11-12 19:37:26 +09:00
Robert Lefebvre
62864c9e2b
AC_AttitudeControl_Heli: Remove commented out Cyclic Cross-Coupling code. Will resurrect in future.
2015-11-12 19:37:19 +09:00
Robert Lefebvre
b8ce23970d
AC_AttitudeControl_Heli: Implement Pirouette Compensation
2015-11-12 19:37:18 +09:00
Robert Lefebvre
f39ac7c900
AC_AttitudeControl_Heli: Add initialization of _flags_heli members
2015-11-12 19:37:17 +09:00
Jonathan Challinger
6784fd8625
AC_AttitudeControl: reserve parameter IDs
2015-11-10 12:56:52 +09:00
Lucas De Marchi
831d8acca5
Remove use of PROGMEM
...
Now variables don't have to be declared with PROGMEM anymore, so remove
them. This was automated with:
git grep -l -z PROGMEM | xargs -0 sed -i 's/ PROGMEM / /g'
git grep -l -z PROGMEM | xargs -0 sed -i 's/PROGMEM//g'
The 2 commands were done so we don't leave behind spurious spaces.
AVR-specific places were not changed.
2015-10-30 14:35:16 +09:00
Randy Mackay
550ba478c9
AC_PosControl: add shift_pos_xy_target
2015-10-30 12:24:08 +09:00
Randy Mackay
16a0281c92
AC_PosControl: remove unused set_vel_target
2015-10-30 12:24:07 +09:00
Randy Mackay
ee0abb1750
AC_PosControl: add set_jerk_xy
2015-10-29 12:10:44 +09:00
Randy Mackay
73f4533995
AC_PosControl: minor comment update
2015-10-28 20:21:53 +09:00
Randy Mackay
895a40893d
AC_PosControl: use_desvel_ff flag added
...
This allows turning on/off desired velocity feedforward without setting desired_vel.z to zero. Setting desired_vel.z to zero has the side effect of disrupting the landing detection which needs to know if we are trying to descend
2015-10-28 20:21:52 +09:00