Commit Graph

163 Commits

Author SHA1 Message Date
Iampete1 8d216fbce3 AC_PID: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1 3f84ba12c0 AC_PID: use set_and_defualt to set defualt values 2022-07-20 17:59:59 +10:00
esaldiran 9d8bf5004e AC_PID: update pid_info with integrator reset for logging purposes 2022-07-19 11:40:03 +01:00
Peter Barker e5e4dee708 AC_PID: 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
Bill Geyer b1d6e41fb9 AC_PID: tradheli-change param name from _VFF to _FF 2022-02-04 08:03:38 +09:00
Leonard Hall 8d330a95b5 AC_PID: replace reset_I_smoothly with relax_integrator 2022-01-25 13:20:47 +09:00
Randy Mackay 39b0d76121 AC_PID: minor format fix 2022-01-11 13:09:34 +09:00
Randy Mackay 9d12130689 AC_PID_2D: minor format fix 2022-01-07 13:41:16 +09:00
Leonard Hall b7801947af AC_PID: AC_PID_2D: let I term change direction but not grow when limited 2021-12-16 09:54:49 +09:00
Iampete1 6162775dd0 AC_PID: P 1D, P 2D: remove unused limit flags 2021-11-23 13:49:02 +09:00
Peter Hall 82dd216195 AC_PID_2D: correct limit caculation 2021-11-23 13:47:10 +09:00
Andy Piper e84a05d5ba AC_PID: add slew_rate modifier 2021-11-11 08:13:23 +09:00
Leonard Hall d21b07db98 AC_PID: fix PID filter names FILT -> FLTE, D_FILT -> FLTD
Follow used guided but references the maximum velocity settings. As Guided does not set maximum velocities these values come back as zero. So we need to reference WP_Nav to get safe maximums.
2021-08-10 08:33:56 +09:00
Andrew Tridgell c8079a318c AC_PID: convert AC_P_2D to double 2021-06-24 21:34:30 +10:00
Andrew Tridgell 476e9fc15a AC_PID: use CLASS_NO_COPY() 2021-06-08 11:14:52 +10:00
Leonard Hall 16ba99149b AC_PID: Fix before squash 2 2021-05-24 20:13:37 +10:00
Leonard Hall 9e9e139f99 AC_PID: Fix before squash 2021-05-24 20:13:37 +10:00
Leonard Hall 6bed10c434 AC_PID: Add error variable with accessor and clean up 2021-05-24 20:13:37 +10:00
Leonard Hall eb07bfee2b AC_PID: minor format fixes 2021-05-12 17:16:00 +10:00
Andrew Tridgell 95b375dc87 AC_PID: log SRate in pid info and expose slew rate 2021-04-15 06:57:16 +10:00
Andrew Tridgell 6f2e592943 AC_PID: allow for slew limit scaler
used by plane to have slew limiter in deg/s
2021-04-15 06:57:16 +10:00
Andrew Tridgell 62afa46924 AC_PID: added accessor for IMAX 2021-04-15 06:57:16 +10:00
Leonard Hall 1d720cc5e9 AC_PID: library update and additional functions
includes corrections from peer review
2021-04-03 12:07:59 +09:00
Leonard Hall f0f87be06d AC_PID: AC_PI_2D format changes 2021-02-18 12:59:39 +09:00
Patrick José Pereira f9732b6c70 AC_PID: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Peter Hall 1a14c8a05b AC_PID: populate pid_info limit feild 2021-01-05 10:27:28 +11:00
bnsgeyer c565536afa AC_PID: add support to smoothly reset the integrator 2020-12-21 23:33:48 -05:00
Andrew Tridgell 9e73922fd9 AC_PID: use calc_lowpass_alpha_dt() 2020-11-10 16:15:45 +11:00
Andrew Tridgell 739410953b AC_PID: added slew limiter AC_PID
this adds the fixed wing slew limiter as an optional part of
AC_PID. It allows the user to configure a maximum slew limit to
prevent oscillations in PIDs when gains are too high
2020-10-25 10:32:48 +11:00
Jim Stockwell 1565c69943 AC_HELI_PID: spelling in comment, leaded -> leaked 2020-09-11 08:39:58 +09:00
Peter Barker c78dcb15a1 AC_PID: remove dead get_ff(float target) method as per TODO comment 2020-09-09 13:19:17 +09:00
Andrew Tridgell ad69f6802f AC_PID: added AC_PI controller
will be used by IMU heater
2019-11-02 16:31:04 +11:00
Randy Mackay 0052dcc8f8 AC_PID: update pid_info when integrator set 2019-10-18 11:15:25 +09:00
Leonard Hall ee820258ad AC_HELI_PID: support for upgrade to PID object
updates parameters based on new PID library
rename get_leaky_i to update_leaky_i and move FILT locations
2019-07-25 17:38:15 +09:00
Leonard Hall ab0bdc9fe6 AC_PID: upgrade to PID object 2019-07-25 17:38:15 +09:00
Peter Barker 3175a2ce19 AC_PID: correct examples with override keyword 2019-04-30 09:29:59 +10:00
Randy Mackay 54a505dade AC_PID: fix filt_d_hz accessor
this accessor is not actually used
2019-04-18 10:26:56 +09:00
Randy Mackay cae020c307 AC_PID: minor format fix 2019-04-16 11:23:46 +09:00
Peter Barker 112ace8adb AC_PID: correct AC_PID_LEAK_MIN constant type 2019-04-05 23:04:17 -07:00
Peter Barker 2dae643280 AC_PID: update example to stop shadowing global chibios variable 2019-03-23 11:23:07 +11:00
Peter Barker 18c53b8d8a AC_PID: remove keywords.txt 2019-02-17 00:29:38 -08:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
Peter Barker 312243142b AC_PID: remove use of never-set AP_HAL_PX4 and AP_HAL_VRBRAIN 2019-01-18 09:53:44 +11:00
Leonard Hall 8c6a24450a AC_PID: Fix D term initialisation 2018-09-15 11:00:29 +10:00
Leonard Hall 4ceabe4838 AC_PID_2D: add reset for filter and D term 2018-09-04 13:37:28 +09:00
Peter Barker 774b091611 AC_PID: get example working again 2018-08-31 21:08:11 +09:00
Randy Mackay b381ae7bf3 AC_PID: support storing actual 2018-08-27 16:44:33 +09:00
Peter Barker e2b31a535c AC_PID: update example for new rc() method 2018-08-01 12:11:30 +09:00
Michael du Breuil 1d60b0ec62 AC_PID: Support new RC_Channels::read_input() 2018-04-26 08:00:09 +10:00
Michael du Breuil 5d84850f32 AC_PID: Use RC_Channels instead of hal.rcin 2018-04-11 21:47:07 +01:00