ardupilot/libraries/Filter
Andrew Tridgell 0bbea732a0 Filter: protect against extremely low notch filter frequencies
an incorrectly configured ESC telemetry source can lead to a notch
running at very low frequencies. A simple example is a lua script like
this:

function update()
   esc_telem:update_rpm(12, 0, 0)
   return update, 10
end
return update()

where motor 12 is unused.

with that script in place we get a 1.0078 Hz filter which leads to
massive phase lag and a crashed aircraft

this is a safety protection. We should also try to find out why the
INS_HNTCH_FREQ lower limit is not working
2023-11-07 11:17:04 +11:00
..
examples Filter: fixed reset of filters to first value 2021-02-05 15:01:22 +11:00
tests Filter: fixed test_notchfilter for the change in allocate_filters() 2022-07-10 06:57:29 +10:00
AverageFilter.h
Butter.h Filter: tidy includes 2022-05-03 09:14:58 +10:00
DerivativeFilter.cpp
DerivativeFilter.h
Filter.h
FilterClass.h
FilterWithBuffer.h
HarmonicNotchFilter.cpp Filter: HarmonicNotch: update FREQ description 2023-03-15 18:53:55 +11:00
HarmonicNotchFilter.h Filter: allow freq_min_ratio to be set on harmonic notch filter 2023-01-24 10:56:33 +11:00
LowPassFilter.cpp Filter: Support changing update period 2022-12-13 17:10:06 +11:00
LowPassFilter.h Filter: use CLASS_NO_COPY 2021-06-08 11:14:52 +10:00
LowPassFilter2p.cpp Filter: optimize hot parts of notch filter updates 2021-12-22 18:23:33 +11:00
LowPassFilter2p.h Filter: use CLASS_NO_COPY 2021-06-08 11:14:52 +10:00
ModeFilter.cpp Filter: implement 3 element mode filter 2023-03-01 18:22:22 +11:00
ModeFilter.h Filter: moved ModeFilter to C++ 2021-04-15 06:57:16 +10:00
NotchFilter.cpp Filter: protect against extremely low notch filter frequencies 2023-11-07 11:17:04 +11:00
NotchFilter.h Filter: optimize notch filter frequency updates when the requested frequency has not changed 2022-09-22 11:48:28 +10:00
SlewCalculator2D.cpp Filter: add SlewCalculator2D 2023-08-01 17:43:17 +10:00
SlewCalculator2D.h Filter: add SlewCalculator2D 2023-08-01 17:43:17 +10:00
SlewLimiter.cpp Filter: SlewLimiter definitions moved to cpp 2023-08-01 17:43:17 +10:00
SlewLimiter.h Filter: SlewLimiter definitions moved to cpp 2023-08-01 17:43:17 +10:00