Forum: Digitale Signalverarbeitung / DSP / Machine Learning FIR Tiefpass


von André B. (whitespring)


Lesenswert?

Hallo,
ich hoffe Ihr könnt mir weiter helfen, bin dankbar für jeden Beitrag der 
mich weiter bringt. Die meisten Beiträge zum Tiefpass haben meinem 
Verständis beigetragen aber mir nicht wirklich geholfen, desshalb:

Stand:
Es wird ein Sensor alle 100ms ausgelesen, die Werte bewegen sich im 
Bereich von +- 60. Unter schied zwischen FIR und IIR ist mir bekannt, 
wegen der Stabilität für einen FIR entschieden. Da die Störung in den 
Werten nicht besonders groß ist wird wohl 1te oder 2te Ordnung 
ausreichen. soweit bin ich in der Theorie gekommen.

Aufgabe:
Diese Werte sollen nun geglättet werden mittels eines tiefpasses. Der 
müsste für eine wissenschaftliche Arbeit hergeleitet werden.

Problem:
Wie kann ich die Koeffizienten unter berücksichtigung der Abtastrate 
bestimmen?

z.B. y(t)= a0 * Xn + a1 * Xn-1 + a2 * Xn-2

Summe von a0 bis a2 muss 1 ergeben, es ist keine verstärkung vorgesehen, 
oder sollte ich das doch ?

Dank im vorraus.

von Purzel H. (hacky)


Lesenswert?

Nee. Mach'n exponentiellen Average, aka Tiefpass.

Speicher X, input I, output O

X:=X - X/64
X:=X + I
O:=X/64

Wobei 64 ausgetauscht werden kann mit 32, 64, 128, 256, 512, .. und 
ausgefuehrt wird als shift right 5, 6, 7, 8, 9, ..

siehe auch
http://www.ibrtses.com/embedded/exponential.html

von Einwanderheber (Gast)


Lesenswert?

Das geht auch mit einem abtastenden System und einem Ringpuffer:

1. den gleich herausfallenden Pufferwert "ALT" lesen
2. Pufferpointer weiterdrehen
3. Neuen Wert "NEU" in Puffer schreiben
4. Neuen Wert zudem auf einen Gesamtstand AKKU aufaddieren
5. Wenn Startzähler Z<64 dann Z ein hochzählen
6. Wenn Z>=64 dann Wert ALT vom AKKU abziehen.
7. ENDWERT = AKKU /64

Der Akku läuft auf diese Weise bis auf das 64fache des 
Zahlendurchschnitts hoch und hält ab dann immer die Summe der letzten 64 
Werte.

von Harald D (Gast)


Lesenswert?

Könntest Du bitte die Funktion dieses Filters erklären?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.