Commit Graph

181 Commits

Author SHA1 Message Date
Andrew Tridgell
4ed55d9e21 Filter: fixed out of bound access in ModeFilter 2022-09-06 10:49:50 +10:00
Iampete1
338779d27d Filter: params always use set method 2022-08-03 13:43:48 +01:00
Andrew Tridgell
0103776d83 Filter: fixed test_notchfilter for the change in allocate_filters()
changed for triple notch
2022-07-10 06:57:29 +10:00
Andy Piper
dfba938e63 Filter: add triple harmonic notches 2022-07-03 18:21:41 +10:00
Andrew Tridgell
eefc41fe30 Filter: added a way to plot attenuation and phase lag for complex filters 2022-06-30 20:58:37 +10:00
Andrew Tridgell
366aa7154c Filter: added FM_RAT for throttle notch frequency ratio
allow for configurable min frequency ratio for throttle based notches
2022-06-30 20:58:37 +10:00
Andrew Tridgell
7928fa6e69 Filter: added a NotchFilter test suite 2022-06-12 15:39:44 +10:00
Andrew Tridgell
7c782dda88 Filter: fixed ordering of samples in notch reset 2022-06-12 15:39:44 +10:00
Andrew Tridgell
d07761cfd9 Filter: fixed reset of notch filters
when we reset a notch we need to init the stored values to the current
value, rather than assuming that zero is the right value

this matters when switching IMUs in flight when we are only running
notch filters on the active gyro
2022-06-12 15:39:44 +10:00
Andrew Tridgell
9e3a29bf86 Filter: added EnableOnAllIMUs option to harmonic notch filter 2022-06-12 15:39:44 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
d3eae308da Filter: NFC spell corrections in comments 2022-06-11 08:43:03 +09:00
Andy Piper
39d928aa49 Filter: add mutators for notch filter parameters 2022-05-04 17:05:51 +10:00
Peter Barker
c3cd733f26 Filter: tidy includes 2022-05-03 09:14:58 +10:00
Andrew Tridgell
d7d04bc7cf Filter: removed parameters from the old notch filter
saves some flash space
2022-04-19 09:39:03 +10:00
Andrew Tridgell
1cd1519a4f Filter: clarify meaning of 1st harmonic 2022-04-19 09:39:03 +10:00
Andrew Tridgell
7272a29b7b Filter: added RPM2 harmonic notch type 2022-04-19 09:39:03 +10:00
Iampete1
1521760a17 Filters: HarmonicNotch: remove statment on max number of notches harmonics from parm descripstion 2022-03-25 07:14:06 +11:00
Peter Barker
666c36a57f Filter: add trivial test for ModeFilter get method (float version) 2022-02-19 11:16:40 +11:00
Peter Barker
f6a1df472a Filter: add trivial test that ModeFilter's get method works
.... previously only checking return value of apply
2022-02-18 17:55:04 +11:00
Peter Barker
0a8cccd79a Filter: add test for AverageIntegralFilter 2022-02-18 12:11:46 +11:00
Andy Piper
fbdeea2d03 Filter: optimize hot parts of notch filter updates 2021-12-22 18:23:33 +11:00
Andy Piper
34920ebd60 Filter: allow harmonics and notch-per-motor in harmonic notch
allow default harmonics to be configured
allow combination of harmonics and indpendent centre frequencies
pre-calculate number of harmonics
2021-12-22 18:13:38 +11:00
Andy Piper
00da3520bc Filter: set output slew rate to zero when max is zero. 2021-11-11 08:13:23 +09:00
Pierre Kancir
60155a7fec Filter: add more unittests 2021-08-30 09:51:25 +10:00
Pierre Kancir
fd38be843a Filter: finish modefilter test 2021-08-30 09:51:25 +10:00
Michelle Rossouw
3379a1a215 Filter: Add Vector2f option to notch filter 2021-07-06 14:56:02 +10:00
Andrew Tridgell
cd1f5ca494 Filter: use CLASS_NO_COPY 2021-06-08 11:14:52 +10:00
Andy Piper
21d24ebc9d Filter: add harmonic notch option to run at loop rate 2021-05-19 17:35:16 +10:00
Paul Riseborough
b969a43074 Filter: Slewlimiter use different filtering for external reporting 2021-04-15 06:57:16 +10:00
Paul Riseborough
dd446433f7 Filter: Adjust SlewLimiter tuning 2021-04-15 06:57:16 +10:00
Paul Riseborough
6e6df3df58 Filter: Increase gain modifier action 2021-04-15 06:57:16 +10:00
Paul Riseborough
458c46353d Filter: remove unnecessary fmaxf 2021-04-15 06:57:16 +10:00
Paul Riseborough
cb4a770d38 Filter: Reduce spikes in oscillation slew rate metric 2021-04-15 06:57:16 +10:00
Paul Riseborough
fdfdb118b9 Filter: Improve SlewLimiter oscillation detection 2021-04-15 06:57:16 +10:00
Paul Riseborough
4622e33255 Filter: Use positive and negative direction changes for slew limiting 2021-04-15 06:57:16 +10:00
Andrew Tridgell
59a805a740 Filter: expose slew rate in slew limiter 2021-04-15 06:57:16 +10:00
Andrew Tridgell
6cae97446a Filter: added auto-init to LowPassFilter
make sure initial filter returns are not a long way off if filtered
input is far from zero
2021-04-15 06:57:16 +10:00
Andrew Tridgell
5ef31a1801 Filter: moved ModeFilter to C++
save flash space for common code
2021-04-15 06:57:16 +10:00
Andrew Tridgell
6144136b61 Filter: fixed reset of filters to first value
the delay elements were set incorrectly
2021-02-05 15:01:22 +11:00
Peter Barker
f847758272 Filter: add gtest suite 2021-02-04 20:50:48 +11:00
Andrew Tridgell
cf47c19c0d Filter: fixed low pass 2p filter to auto-init
this prevents the init to zero for temperature filters
2021-01-21 13:09:21 +11:00
Andrew Tridgell
4495414d05 Filter: added reset with value to LowPassFilter2p 2021-01-21 13:09:21 +11:00
Andy Piper
c291107f50 Filter: correct grammar on HNTCH docs 2020-11-24 10:17:16 +09:00
Andy Piper
726307cb31 Filter: correct harmonic notch docs and provide better defaults. 2020-11-24 10:17:16 +09:00
Andrew Tridgell
b0f0c8d842 Filter: use calc_lowpass_alpha_dt() 2020-11-10 16:15:45 +11:00
Andrew Tridgell
709e1f8f93 Filter: added slew rate filter 2020-10-25 10:32:48 +11:00
Andy Piper
a93821110e Filter: return active harmonics based on dynamic harmonic enablement 2020-07-14 09:50:06 +10:00
Andy Piper
71f99542a8 Filter: allow harmonic notch center frequencies to be updated individually 2020-06-21 19:09:35 +10:00
Andrew Tridgell
bd07e8516f Filter: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andy Piper
8407648316 Filter: make sure the center frequency can never be zero 2020-04-28 09:32:02 +10:00