Forum: Mikrocontroller und Digitale Elektronik Digitale Filter in C


von Lennart M. (nureingast)


Lesenswert?

Hi,
ich muss in einem Arduino Projekt aus einem Sensorsignal eine Schwingung 
von ca. 2 -3 Hz rausfiltern. Die Samplefrequenz Kenne ich nicht genau, 
liegt aber deutlich über diesen 2 Hz
2 Fragen:
Muss ich trotz der niedrigen Grenzfrequenz des Filters einen analogen 
Tiefpass vorschalten?

Reicht es bei der Realisierung eines software FIR Filters die samplerate 
halbwegs Renault abzuschätzen um an die Koeffizienten zu kommen?


Vielen Dank schonmal

von Jens G. (jensig)


Lesenswert?

>halbwegs Renault abzuschätzen

Ja, sollte reichen ...

von Carl D. (jcw2)


Lesenswert?

Jens G. schrieb:
>>halbwegs Renault abzuschätzen
>
> Ja, sollte reichen ...

MaschineLearningTastatur

: Bearbeitet durch User
von Olaf K. (darkover)


Lesenswert?

> Muss ich trotz der niedrigen Grenzfrequenz des Filters einen analogen
> Tiefpass vorschalten?

Warum glaubst du das die Grundlagen der Nachrichtentechnik nur in einem 
bestimmten Frequenzbereich gelten? Du brauchst immer einen solchen 
Filter. Allerdings kann er natuerlich sehr einfach sein wenn deine 
Samplefrequenz sehr hoch ist.

> Reicht es bei der Realisierung eines software FIR Filters die samplerate
> halbwegs Renault abzuschätzen um an die Koeffizienten zu kommen?

Die Samplerate schaetzt du nicht, die gibst du vor wenn du dein Filter 
designest/implementierst. Also kennst du sie genau.

Olaf

von tom (Gast)


Lesenswert?

Jens G. schrieb:
> Renault

das hier? https://patents.google.com/patent/DE19613736C1/de

es gibt auch ein DSP Subforum

von tom (Gast)


Lesenswert?

Olaf K. schrieb:
>> Muss ich trotz der niedrigen Grenzfrequenz des Filters einen analogen
>> Tiefpass vorschalten?
>
> Warum glaubst du das die Grundlagen der Nachrichtentechnik nur in einem
> bestimmten Frequenzbereich gelten? Du brauchst immer einen solchen
> Filter.

Wofür? Wegen Niquist? Kommt dann auf das Signal, Samplefrequenz und 
Interessantes band an.

von Bernd (Gast)


Lesenswert?

Lennart M. schrieb:
> Muss ich trotz der niedrigen Grenzfrequenz des Filters einen analogen
> Tiefpass vorschalten?
Wenn Du sicherstellen kannst, das keine weiteren hochfrequenten 
Störungen an deinen ADC-Eingang gelangen, kannst du auf weitere Filter 
verzichten. Andernfalls werden auch unerwünschte Signalanteile (z.B. 
Rauschen oder ein Radiosender) am  digitalen Ausgangssignal einen Anteil 
haben (je nach Bandbreite des ADC).


> Reicht es bei der Realisierung eines software FIR Filters die samplerate
> halbwegs Renault abzuschätzen um an die Koeffizienten zu kommen?
Im Prinzip ja, aber wenn man alle Frequenzen genau kennt, kann man durch 
geschickte Wahl der Koeffizienten die Nullstellen des Filters genau auf 
die Störfrequenzen legen.
Hier eine Beispielgrafik:
http://www.iowahills.com/FIR%20IIR%20Comparison/Zero%20Plot%20for%20Linerar%20Phase.png

von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

also was soll jetzt herausgefiltert werden, was soll als Nutzsignal 
durchkommen, wie groß ist der Unterschied in der Amplitude zwischen 
Nutz- und Störsignalen, in welchem Frequenzbereich liegen die 
Nutzsignale? Hat der Arduino noch anderes zu tun außer zu filtern?

MfG

Beitrag #6415189 wurde von einem Moderator gelöscht.
von Grumpf (Gast)


Lesenswert?

1) Lieber gleich einen analogen Tiefpass einplanen, als hinterher
kein Platz auf der Platine.

2) Auf einem Arduino weiß die Filterroutine nicht, in welchem Takt
die Samples kommen?
- VERGISS das µC-Hobby!
- Origami ist auch ein Zeitvertreib...

von M. K. (sylaina)


Lesenswert?

Lennart M. schrieb:
> Die Samplefrequenz Kenne ich nicht genau

Dann solltest du dich noch mal genauestens mit deinem Projekt 
beschäftigen denn im Grunde kennst du die Abtastrate sehr wohl. Das 
Datenblatt des Sensors könnte helfen. Wenn der ein Analogsignal ausgibt, 
dass du mit dem Arduino einliest: Abtastrate des ADCs kann man nachlesen 
und man weiß durch den Code ja auch, wann man abtastet ;).

Eine Schaltung/ein Schaltplan wäre vielleicht auch nicht falsch ;)

von W.S. (Gast)


Lesenswert?

Lennart M. schrieb:
> Muss ich trotz der niedrigen Grenzfrequenz des Filters einen analogen
> Tiefpass vorschalten?
>
> Reicht es bei der Realisierung eines software FIR Filters die samplerate
> halbwegs Renault abzuschätzen um an die Koeffizienten zu kommen?

1. es kommt auf deinen ADC drauf an: ein SAR Typ sollte einen dezenten 
Tiefpaß bekommen, der so etwa bei der halben Abtastfrequenz dichtmacht. 
Ein SigmaDelta-Wandler braucht das nicht, denn er hat selbst 
bauartbedingt eine entsprechende Tiefpaßcharakteristik.

2. Wenn du aus einem Signalgemisch ein Signal von 2..3 Hz herausfiltern 
willst, dann reicht eine Abtastrate von ebenso 2..3 Hz keinesfalls 
aus. Da ist es an dir, eine Art Frequenzfahrplan aufzustellen, also was 
alles an Signal erscheinen kann, was davon du rein analog wegfilterst 
und was du dann digital wegfilterst und wie steil deine Filterflanken 
sein müssen. Ja, es sind 2 Flanken, denn du wirst einen Bandpaß 
brauchen.

W.S.

von Christian S. (roehrenvorheizer)


Lesenswert?

Vom TE erfahren wir hier nichts mehr.


mFG

von Mathias A. (mrdelphi)


Lesenswert?

Die Hausaufgabe hätte wohl bis heute fertig sein müssen... echt blöd 
dass hier nur Rückfragen gestellt werden und nicht einfach mal eine 
fertige Antwort gegeben wird...

😉🤐

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.