Hwurzburg
d1f02916cf
APM_Control: correct metadata description for roll/pitch rate limits
2022-01-25 08:37:39 +11:00
Andrew Tridgell
5a996f308b
APM_Control: fixed code style of plane rate controllers
2021-11-30 16:19:26 +11:00
Andrew Tridgell
8a73bdcbe6
APM_Control: suppress roll/pitch D term in ground_mode
...
prevent oscillations which are quite common
2021-10-30 18:45:53 +11:00
Iampete1
da4fd7a914
AP_PitchController: return floats
2021-10-20 18:29:58 +11:00
Ben Wolsieffer
68ee2c21dd
AP_Control: apply pitch rate limit to turn coordination
...
At high bank angles, for example when rolling to/from inverted, a large turn
coordination pitch rate offset is requested. Before this patch, this offset was
not subject to the configured pitch rate limit, which could result in pitch
controller integrator windup.
2021-09-29 17:03:32 +01:00
Peter Barker
d2102ce9b7
APM_Control: stop taking references to ahrs in APM_Control
2021-07-21 18:27:23 +10:00
Andrew Tridgell
dd98f00947
APM_Control: prevent cross-axis tuning
...
this should fix tuning at higher AUTOTUNE_LEVEL values
2021-04-15 06:57:16 +10:00
Andrew Tridgell
fa88967b6e
APM_Control: adjust min value for tconst
2021-04-15 06:57:16 +10:00
Andrew Tridgell
ccd7b15d06
APM_Control: apply pitch limiting at high roll to rate
...
this fixes an issue with a large elevator trim error when rolled at
close to 90 degrees
2021-04-15 06:57:16 +10:00
Andrew Tridgell
4694820ac3
APM_Control: allow for smaller minimum tconst
2021-04-15 06:57:16 +10:00
Andrew Tridgell
f88622def8
APM_Control: implement new autotune system
...
use actuator/rate ratio with median filter for FF and Dmod/overshoot
for P,I,D
2021-04-15 06:57:16 +10:00
Andrew Tridgell
12fad55891
APM_Control: fixed pid_info for pitch controller
2021-04-15 06:57:16 +10:00
Andrew Tridgell
ead011c7c2
APM_Control: move to only ACPID
2021-04-15 06:57:16 +10:00
Andrew Tridgell
6ca9033dde
APM_Control: run AC_PID in parallel with old PID for roll/pitch
2021-04-15 06:57:16 +10:00
Andrew Tridgell
d2a4505184
APM_Control: fixed bug in slew filter
2020-10-25 10:32:48 +11:00
Peter Barker
d20c6ceb3b
APM_Control: replace '@User: User' with '@User: Standard'
2020-09-22 14:56:04 +10:00
Paul Riseborough
548bab5d24
APM_Control: Add gyro feedback limit cycle protection
2020-07-13 13:47:50 +10:00
Mark Whitehorn
442fa60651
APM_Control: validate parameter ARSPD_FBW_MIN
2020-04-02 19:43:06 -07:00
Peter Hall
84fe5f4e78
APM_Control: move to airspeed_estimate with pointer
2020-01-14 22:34:37 -07:00
Leonard Hall
157f786adf
Global: rename desired to target in PID info
2019-07-25 17:38:15 +09:00
Andrew Tridgell
d7f90963ea
APM_Control: fill in Act field of PID logs for plane
2019-01-28 09:38:32 +09:00
Nathan E
fbb2252fd9
Update AP_PitchController.cpp
2019-01-23 09:24:18 -07:00
Peter Barker
b276034c60
APM_Control: correct use of incorrect abs functions
2018-10-19 08:46:43 +11:00
Andrew Tridgell
3ab7fe348a
APM_Control: halve the default pitch D term for planes
...
this is based on feedback from the 3.9.1 release
2018-09-14 07:32:13 +10:00
Andrew Tridgell
9e2933df89
APM_Control: raised default PID gains for roll/pitch
2018-08-17 20:42:25 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
0f5d1ae2dd
APM_Control: 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
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
Tom Pittenger
82777873af
Revert "APM_Control: Convert references to AP_Airspeed."
...
This reverts commit cc5a2417a6
.
2016-08-07 17:54:24 -07:00
AndersonRayner
cc5a2417a6
APM_Control: Convert references to AP_Airspeed.
2016-08-04 10:09:04 -07:00
Andrew Tridgell
8a03b3ba22
APM_Control: reduce elevator when past LIM_ROLL_CD
...
this reduces elevator control when rolled over hard in fixed
wing. Using the elevator when on the side just caused earth frame yaw
and is counter productive. It can also prevent some aircraft from
recovering from inverted flight.
2016-06-24 11:28:18 +10:00
Andrew Tridgell
ab07781c66
APM_Control: raise default P and I gains, and set a lower limit on I for pitch
...
Too many users have very low I gains, which causes a lot of problems for TECS
2016-03-25 09:54:53 +11: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
Caio Marcelo de Oliveira Filho
fe718a6ce8
APM_Control: use millis/micros/panic functions
2015-11-20 12:28:20 +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
Gustavo Jose de Sousa
db9f037e4b
APM_Control: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:28:41 +10:00
Michael du Breuil
e45f3537cf
APM_Control: Remove duplicate include statements
2015-06-25 10:23:47 +10:00
Andrew Tridgell
86a3bca88c
APM_Control: added FF parameters to roll and pitch controllers
...
these are much easier to tune with the new PID_TUNING messages
2015-05-27 14:28:47 +10:00
Andrew Tridgell
216a78a9f0
APM_Control: added get_pid_info() interface
2015-05-27 14:28:44 +10:00
Andrew Tridgell
ec70042d25
APM_Control: raise default IMAX to 3000
...
on the first flight users often need more I gain to overcome poor
choices for the P gain
2015-02-19 16:15:33 +11:00
Andrew Tridgell
3b6c732b3b
APM_Control: changed default I gain for roll/pitch controllers to non-zero
...
too many people are still not tuning. At least this will give them a
chance to get their aircraft back in a cross-wind
2014-11-13 22:13:25 +11:00
Andrew Tridgell
8f3dad0d1c
APM_Control: increase available range for roll and pitch
2014-08-16 18:07:22 +10:00
Andrew Tridgell
ae7293ef68
APM_Control: added support for AUTOTUNE_LEVEL
...
10 levels of tune, for what type of tune the user wants
2014-04-13 22:11:57 +10:00
Andrew Tridgell
50fc75917e
APM_Control: first version of APM_Control autotuning
...
this adds autotune to the roll/pitch controllers using a very simple
mechanism. The plan is that this provides a framework which Paul and
Jon will build upon.
2014-04-12 14:11:33 +10:00
Paul Riseborough
779e32d79f
AP_Control : Add true airspeed compensation to pitch controller
...
turn rate to pitch rate calculation should use true airspeed
2013-12-17 14:17:43 +11:00
Andrew Tridgell
9b5cae2134
APM_Control: reduce roll compensation in pitch controller by cos(pitch)
...
This reduces the use of the pitch compensation when in a steep climb
or dive
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-11-04 21:21:42 +11:00
Paul Riseborough
97cdd36dd8
APM_Control : Moved scaler on roll and pitch integrator to be before integrator
...
This means that the value of aileron and elevator trim offset won't change with airspeed
2013-10-25 22:37:49 +11:00
Andrew Tridgell
d27f5e89d7
APM_Control: remove public AP_PitchController::get_coordination_rate_of|cat()
2013-10-05 07:42:48 +10:00
Andrew Tridgell
97b7130bb9
libraries: update license header to GPLv3
...
we switched to GPLv3 a long time ago, but neglected to update the
per-file license headers
2013-08-30 13:01:39 +10:00
Andrew Tridgell
c6e37aaec3
APM_Control: use a ahrs reference, not pointer
...
saves pointer check
2013-08-14 14:56:18 +10:00
Andrew Tridgell
a7cbebbeba
APM_Control: rename 'stabilize' to 'disable_integrator'
...
this better reflects what it does
2013-08-02 21:54:48 +10:00