Forum: Mikrocontroller und Digitale Elektronik Beschleunigungssensor


von kenny (Gast)


Lesenswert?

Hallo,

weiß eine von euch wie man einen Tiefpaß in C-Sprache programmiert?
Danke für die Antworten
Kenny

von Matthias (Gast)


Lesenswert?

Hi

ein Tiefpass ist ein Integrator. Du mußt dein Eingangssignal also
integrieren. Schau dir als mal die verschiedenen numerischen
Integrationsverfahren an. Die Einfachste ist sicher die
Rechteck-Methode. Besser und nicht viel komplexer ist die
Trapezmethode. Wenns noch genauer werden soll solltest du dich mal nach
der Simpsonregel umschauen.

Matthias

von Michael Jungnickl (Gast)


Lesenswert?

Hallo Kenny,

wenn Du nur einen Integrator verwendest, dann
filterst Du zwar die hohen Frequenzen weg. Das
Ausgangssignal des Integrators geht aber für
sehr niedrige Frequenzen in irgend eine Begrenzung,
oder es kommt zum Überlauf bei der Berechnung. Dies
ist sehr tückisch, da dies erst nach langer Zeit
und auch nicht immer geschehen muß! Um dies beim
Integrator zu verhindern, sollte man zuerst den
Gleichanteil des Signals herausfiltern. Dennoch
werden die niederfrequenten Anteile abhängig von
ihrer Frequenz verstärkt, was sicher nicht gewünscht
ist.

Besser ist es hier, anstatt des Integrators ein
gedämpftes zeitverzögerndes Glied zu verwenden.
Für niedrige Frequenzen wird dabei die Verstärkung
auf ein Produkt von (konstanter) Eingangsgröße und
konstantem Faktor begrenzt. Solche Glieder werden
als PT1, PT2 .. PTn bezeichnet. Die Dämpfung ober-
halb der Eckfrequenz beträgt annähernd n*20dB/Dekade.
Gleichzeitig kommt es zu einer Phasenverschiebung von
90*n Grad.

Ach, noch eine Anmerkung zu Deinem Beitrag:

Der Titel (Beschleunigungssensor) und die Frage
(Tiefpaß in C) sind nicht übereinstimmend gewählt. Somit
wird nicht jeder der sich mit Deinem Problem auskennt,
auch darauf aufmerksam gemacht.

Michael

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.