Commit Graph

33 Commits

Author SHA1 Message Date
Andrew Tridgell 7bc724d118 APM: changed PID library to do automatic deltat calculation
this fixes a problem with the HDNG2RLL PID, which was using the wrong
time base and prevents similar bugs from happening in the future
2012-07-06 19:59:18 +10:00
Andrew Tridgell 845d056c18 fixed PID initialisation 2012-02-13 16:22:53 +11:00
Andrew Tridgell c4b7a3116a restore _fCut that was lost in AP_Param development 2012-02-13 16:22:51 +11:00
Andrew Tridgell 013d66527d modify the PID library for AP_Param 2012-02-13 16:22:51 +11:00
jasonshort 5f8ac1d269 Reverted to older PID. Restored the older filter, and removed PI command. I am no longer using PID for the quad and have switched to PIPI loops which perform much better. The D term in this class is not that great.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3241 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 17:47:07 +00:00
jasonshort 9336fa9bd1 upped D filter to 6
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3096 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-14 05:44:29 +00:00
jasonshort 7026405951 Changed the PID derivative filter to a moving average with 4 samples. Having great luck with it and High kD when using noisy sensors.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2957 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-29 21:52:37 +00:00
tridge60@gmail.com 24491fce74 fixed warnings in PID.h
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2560 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-15 12:25:00 +00:00
jasonshort 7bfeab7a6d I am Adding A "PI" loop to the mix. This is a need for AC2. We can optimize the internals later, but I basically duped the get_PID and removed the D term internals.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2338 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-16 16:05:49 +00:00
tridge60@gmail.com 211de598c3 implemented typesafe PSTR()
This makes PSTR() type safe by using a 1 byte wrapper
structure. Attempts to use the wrong varient of a print function will
generate a compilation error.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1797 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-21 07:25:48 +00:00
jasonshort 053e747428 quick.fix
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1688 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 21:01:32 +00:00
DrZiplok@gmail.com 223af24398 Use AP_Var to store PID scaling values.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1652 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 04:45:31 +00:00
jasonshort 95d6e2cac0 fixed a scaling bug in imax
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1553 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 02:07:25 +00:00
jasonshort 09b02a06fd removed EEPROMB references
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1315 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 18:42:56 +00:00
james.goppert 3a06c856b9 Fixed PID error for low pass filter.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1295 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 05:59:49 +00:00
jasonshort 5d6c90b723 update use EEPROM class, new scaled input for RC_Channel
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1264 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-26 01:17:04 +00:00
jasonshort f64fab442d added ability to get the integrator for debugging
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1117 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-13 04:05:55 +00:00
james.goppert d13850c941 Added load_gains to PID constructor.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1055 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-06 11:52:31 +00:00
james.goppert 665dbefbd4 Added storage options to PID.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1011 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-04 10:32:19 +00:00
DrZiplok@gmail.com a64c5ef782 Correct misunderstanding about the intent of the external gain array.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@978 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-28 21:51:10 +00:00
DrZiplok@gmail.com 72cf1b4e57 Add a default ctor; due to 0 being magic, PID pid(0) is ambiguous.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@959 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-27 20:30:53 +00:00
DrZiplok@gmail.com 73eab31d0c Shrink the ctor slightly more
git-svn-id: https://arducopter.googlecode.com/svn/trunk@942 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-27 00:58:01 +00:00
DrZiplok@gmail.com e699812af4 Don't zero fields in the ctor that can be zeroed by reset_I; the code gets replicated for every static instance of the class, which is obscene.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@941 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-27 00:54:21 +00:00
DrZiplok@gmail.com 9a45c2babc Re-type delta t, explicitly size error args to get_pid.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@936 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-26 04:36:43 +00:00
james.goppert f04e58c6b3 Added default scalar of 1 to PID.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@935 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-26 03:16:37 +00:00
DrZiplok@gmail.com 342b759fea Move the eeprom.h include out of the header, it's not needed there.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@933 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-26 01:54:47 +00:00
DrZiplok@gmail.com 52abef58d5 More syntax, etc. fixes. Compiles OK now.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@932 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-26 01:53:12 +00:00
DrZiplok@gmail.com dc40ee00ae Fix accessors, _RC
git-svn-id: https://arducopter.googlecode.com/svn/trunk@931 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-26 01:45:17 +00:00
DrZiplok 264cca6d24 With apologies to Jason for breaking his branch, clean this up and document it.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@930 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-26 01:30:21 +00:00
james.goppert 3ca85f94d4 Checked for dt>0 in PID and modified ctor
git-svn-id: https://arducopter.googlecode.com/svn/trunk@929 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-26 00:06:06 +00:00
james.goppert 7598c02f51 Added load/save gain overloads for float arrays to PID,
supports mavlink style gain get/set now


git-svn-id: https://arducopter.googlecode.com/svn/trunk@928 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-25 23:26:44 +00:00
james.goppert 00e7f9b6d0 Added lowpass filter on PID lib derivative calc
git-svn-id: https://arducopter.googlecode.com/svn/trunk@927 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-11-25 23:14:37 +00:00
jasonshort e7b26da27d A simple OO PID library
git-svn-id: https://arducopter.googlecode.com/svn/trunk@742 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-10-28 04:59:24 +00:00