Hallo,
gerade muss ich für meine Projektarbeit unter anderem 10 Bit
AD-Wandlerwerte erfassen. Nachdem das Signal nicht besonders toll war
habe ich zunächst Mittelwerte gebildet, bis ich den Tipp bekam, es mit
folgendem Algorithmus zu versuchen, sei ein digitales Filter,
funktioniere sehr gut:
zuerst werden für "Mittelwert" zum Beispiel 64 "Adwert"e aufaddiert,
dass initialisiert das Filter. Dann bei jedem AD-Wandlerinterrupt:
1
Ergebnis=Mittelwert>>6;// /64
2
Mittelwert=Mittelwert-Ergebniss+Adwert;
Ergebnis ist dann der Wert zum weiterverarbeiten. Nun, es funktioniert
tatsächlich, irgendwie leuchtet es mir auch ein. Leider konnte der
Tippgeber nichts zum Namen, Übertragungsverhalten oder Grenzfrequenz
sagen. Ich könnte mir vorstellen, das die Grenzfrequenz mit der
Abtastrate und der 64 zusammenhängt... Ich hatte in meinen Vorlesungen
leider noch nichts von digitaler Signalverarbeitung. Könnt Ihr mir bitte
etwas weiterhelfen?
Dankeschön, jetzt weis ich auf jeden Fall, das es in etwa so
funktioniert wie gedacht und das es tatsächlich ein Tiefpass ist. Gibts
noch eine Möglichkeit mit einer "einsetzen-und-gut" Formel die 3dB
Gernzfrequenz zu bestimmen und etwas über die Steilheit raus zu
bekommen?
yalu schrieb:
> Ein IIR-Filter der Form
Moving Average ist kein IIR-Filter, die Impulsantwort ist ziemlich
endlich.
> (Hoffentlich habe ich mich nicht verrechnet)
Ich habe mich auf jeden Fall verrechnet/verschrieben, es muss im obigen
Post natürlich
Also ich finde es schon lustig, dass einer ein Filter einsetzt und nicht
erkennt, dass es eins ist und wie es funktioniert, obwohl man die Lösung
ja schon hat! (?)
Das normale Problem ist doch eher, zu wissen, was man will und dann nach
der Lösung suchen, weil das doch etwas anspruchsvollere Fall ist- in
etwa so wie "Motor erfinden" und "Motor verstehen".
Solche Mittelwertbildner habe ich mir mit 12 ausgedacht, weil ich sie
fürs Programmieren weicher Grafiken auf dem C64 gebraucht hab. Mir war
irgendwie sofort klar, was ich brauche und wie ich es programmieren
muss. Erst 5 Jahre später hat man mir dann im Studium erklärt, dass die
FIR-Filter heissen und ich wusste, dass ich ein Anti-Aliasing-Filter
gebaut hatte. :-)
Ras Funk schrieb:
> yalu schrieb:>> Ein IIR-Filter der Form>> Moving Average ist kein IIR-Filter, die Impulsantwort ist ziemlich> endlich.
Das, was im Wikipedia-Artikel als "einfacher gleitender Mittelwert" und
"gewichteter gleitender Mittelwert" bezeichnet wird, ist FIR. In diesem
Thread geht es aber um den "exponentiell geglätteten Mittelwert", und
der ist IIR. Siehe auch letzter Abschnitt im Artikel:
"Der einfache gleitenden Mittelwert entspricht einem FIR-Filter mit N
Gliedern, ... Der exponentiell geglättete Mittelwert entspricht einem
IIR-Filter 1. Ordnung."
Guten Morgen,
vielen dank für die hilfreichen Kommentare.
@yalu:
ich werd mich, wenn die Arbeit abgegeben ist, nochmal hinsetzten und
zusehen, das ich auch auf die Grenzfrequenz komm.
@IIR:
Die Impulsantwort wird doch nie mehr, hätte man die Quantisierung nicht,
Null, die nähert sich höchstens asymthotisch an Null an... Das Ganze ist
doch ziemlich spannend g
yalu schrieb:
> Das, was im Wikipedia-Artikel als "einfacher gleitender Mittelwert" und> "gewichteter gleitender Mittelwert" bezeichnet wird, ist FIR. In diesem> Thread geht es aber um den "exponentiell geglätteten Mittelwert", und> der ist IIR.
Nein?! Das ist ein ganz normaler FIR-Filter, nix exponentiell geglättet.
Zum Nachlesen auch gerne hier:
http://www.dspguide.com/ch15/5.htm
"Notice that this equation use two sources of data to calculate each
point in the output: points from the input and previously calculated
points from the output. This is called a recursive equation, meaning
that the result of one calculation is used in future calculations. (The
term "recursive" also has other meanings, especially in computer
science). Chapter 19 discusses a variety of recursive filters in more
detail. Be aware that the moving average recursive filter is very
different from typical recursive filters. In particular, most recursive
filters have an infinitely long impulse response (IIR), composed of
sinusoids and exponentials. The impulse response of the moving average
is a rectangular pulse (finite impulse response, or FIR)."
Eine eigene Frage?
Dieser Thread ist über 17 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.