Hochpass - digital, quick & dirty für 8-bit Controller

OP #1608255
Lesenswert?

Guten Morgen,

ich suche einen einfachen schnellen Hochpass Algorithmus für einen 8-bit 
Controller.
Ich muss "nur" den offset eines Beschleunigungssensors wegbekommen, der 
mit dem AVR internen 10-bit ADC aufgenommen wird.

Eine Variante:
- über langes Interval mitteln => Offset
- vom aktuellen Messwert Offset abziehen.

Geht das eleganter mit 8-bit & 16bit Messwerten/Variablen?
Oder doch IIR (mit floats?)?

Danke,
X
Gast #1608643
Lesenswert?

warum nicht die Tustin-Trafo auf einen Hochpass anwenden?


ich hab das mal für ein RC-Glied, also Hochpass 1. Ordnung 
durchgerechnet:
u[n] Eingang
y[n] Ausgang
RC gibt die Grenzfrequenz an: f=1/(2*pi*RC)
T Abtastrate in 1/sek


y[n] = RC*T/(T+2*RC)*(u[n] + u[n-1]) - (T-2*RC)/(T+2*RC) y[n-1]

für die Umsetzung brauchst du 2 Speicherzellen:
u[n-1] und y[n-1]
u[n] ist ja der aktuelle Wert am Eingang



hab das mal ins Excel getippt und funktioniert ganz gut.
Als Test habe ich die Eingangsfunktion u[n] = Sin [n²] gewählt
Der Ausgang schwächt sich schön ab...

hoffe, das passt soweit
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren