Forum: Digitale Signalverarbeitung / DSP / Machine Learning Dimensionierung eines Tiefpassfilters


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Anni M. (anni90)


Bewertung
0 lesenswert
nicht lesenswert
Hallo liebes Forum,

ich habe aktuell etwas Schwierigkeiten einen Tiefpassfilter auszulegen.
Angenommen ich habe ein Sinussignal mit einer Frequenz von 10 Hz und 
einer Amplitude von 2 A.
Dieses Signal ist von einem weiteren Sinus mit einer Frequenz von 12 Hz 
und einer Amplitude von 1 A überlagert. Nun will ich per Tiefpassfilter 
mein Sinus mit 10 Hz herausfiltern.
Ich gehe davon aus, dass die Filterordnung sehr hoch gewählt werden 
muss, um mein 15 Hz Signal so gut wie möglich zu eliminieren.
Wo setze ich die Grenzfrequenz allerdings an?
Genau auf 10 Hz macht kein Sinn, schließlich würde ich dann mein 
gewolltes Signal um 3dB dämpfen. Andersherum wird meine störende 
Frequenz mit dieser Frequenz am besten eliminiert.
Welche Frequenz zwischen 10 Hz und 15 Hz weise ich am besten meinem 
Filter zu?


Vielen Dank euch!

von Analoger (Gast)


Bewertung
0 lesenswert
nicht lesenswert
willst du das 10 oder das 12 weiternutzen? Hohe Filterordnung bedeutet 
hohen Innenwiderstand, dass macht es ziemlich unmöglich, die Frequenzen 
zu trennen. Du solltest dich auch dazu äußern, wie stark da gedämpft 
werden soll.

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Anni M. schrieb:
> 12 Hz

Anni M. schrieb:
> 15 Hz

Anni M. schrieb:
> Genau auf 10 Hz macht kein Sinn, schließlich würde ich dann mein
> gewolltes Signal um 3dB dämpfen. Andersherum wird meine störende
> Frequenz mit dieser Frequenz am besten eliminiert.

Das ist immer ein Kompromiss.

Setzt du die Grenzfrequenz auf 11 Hz wenn du die 15 Hz weghaben 
(unterdrücken) willst, dann ist das weniger Dämpfung für die 10 Hz, aber 
leider auch nicht so viel Dämpfung für die 15 Hz. Du kannst die 
Grenzfrequenz sogar unter die 10 Hz setzen, dann werden aber auch die 10 
Hz gedämpft. Hohe Filterordnung muss da sein. Wobei gerade bei so 
niedrigen Frequenzen kann man das auch gut als FIR Filter digital 
filtern. Das macht da vielleicht mehr Sinn, kommt aber auf die Anwendung 
an.

Hier ist ein brauchbares Filterdesigntool:
https://rf-tools.com/lc-filter/

Edit:
Ich sehe gerade, dass das hier im DSP Forum steht. Na dann nimm ein 
digitales Filter mit sehr steiler Flanke. Das kannst du mit Pyfda 
entwerfen lassen.
https://github.com/chipmuenk/pyfda
Das gibt dir gleich die Filterkoeffizienten raus und du kannst schön 
sehen was das Filter kann.

Sind die 10 Hz und die 12 oder 15 Hz die einzigen Frequenzen die da 
vorkommen? Dann ist das gut machbar. Wenn du aber aus einem sehr viel 
größeren Frequenzbereich einen schmalen Bereich unterdrücken willst wird 
das auch sehr rechenlastig.
Es wäre also interessant wie schnell der ADC abtastet und welcher 
Frequenzbereich wie stark unterdrückt werden soll oder wie wenig 
unterdrückt werden darf. Das kannst du bei Pyfda alles schön einstellen.

: Bearbeitet durch User
von Anni M. (anni90)


Bewertung
0 lesenswert
nicht lesenswert
Danke euch für die schnelle Antworten!

Da ist mir ein Fehler unterlaufen.
Habe ein 12 Hz und ein 10 Hz Sinus Signal gemeint.

Gustl B. schrieb:
> Das ist immer ein Kompromiss.

Ok, in dem Fall muss ich wohl ein bisschen herumprobieren und schauen, 
welche Frequenz zum besten Ergebnis führt und dabei die Filterordnung 
relativ hoch wählen.
Danke!

von Marek N. (bruderm)


Bewertung
0 lesenswert
nicht lesenswert
Da hier eh die Rede von (sogar ziemlich dicken) Strömen ist, wäre ein 
Bandpass aus einem Reihenschwingkreis möglich.

von Nichtverzweifelter (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Du brauchst einen Kerbfilter = Notch filter, der die unerwünschte 
Frequenz unterdrückt. Die sehr eng benachbarten Frequenzen vermag nur 
ein rückgekoppeltes, aktives Kerbfilter zu trennen.

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Anni M. schrieb:
> Ok, in dem Fall muss ich wohl ein bisschen herumprobieren und schauen,
> welche Frequenz zum besten Ergebnis führt und dabei die Filterordnung
> relativ hoch wählen.

Viel Spaß beim Abgleichen.

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Marek N. schrieb:
> Da hier eh die Rede von (sogar ziemlich dicken) Strömen ist

Ich vermute mal, dass 2A die doppelte Amplitude von 1A meint.

Anni M. schrieb:
> Ok, in dem Fall muss ich wohl ein bisschen herumprobieren und schauen,
> welche Frequenz zum besten Ergebnis führt und dabei die Filterordnung
> relativ hoch wählen.

Soll das denn ein digitales oder ein analoges Filter werden?

von Marek N. (bruderm)


Bewertung
-1 lesenswert
nicht lesenswert
Ja dann?
FFT drüber, alles bei 12 Hz plattmachen und wieder zurücktransformieren.

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Ernsthaft? Das klingt für mich deutlich aufwändiger als ein FIR 
Bandstopp oder Tiefpass.

von Egon D. (egon_d)


Bewertung
0 lesenswert
nicht lesenswert
Anni M. schrieb:

> Angenommen ich habe ein Sinussignal mit einer Frequenz
> von 10 Hz und einer Amplitude von 2 A.
> Dieses Signal ist von einem weiteren Sinus mit einer
> Frequenz von 12 Hz und einer Amplitude von 1 A
> überlagert. Nun will ich per Tiefpassfilter mein Sinus
> mit 10 Hz herausfiltern.

Sehr ungünstig.
Trennung mit Filter ist möglich, aber aufwändig.

Interessant wäre, was mit dem Nutzsignal von 10Hz weiter
passieren soll, wenn das 12Hz-Störsignal unterdrückt ist.

Amplitudenmessung? Phasenmessung? Beides?

von Gustl B. (-gb-)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ach das geht schon wenn man das digital macht. Ich habe hier jetzt nur 
ls Beispiel mal einen ADC mit 1 kSample/s genommen. Das ist recht viel 
wenn man sich nur für Signale unter oder um die 10 Hz interessiert. Aber 
egal, selbst da geht das gut zwischen 10 Hz und 12 Hz zu trennen. Das 
werden zwar viele Filterkoeffizienten, aber für uCs die mit mehreren MHz 
takten ist das kein Problem für jeden neuen Abtastwert um die 1 k 
Multiplikationen zu rechnen.

Im FPGA lasse ich für ein PDM Mikrophon einen Tiefpass mit um die 500 
Koeffizienten rechnen, das funktioniert wunderbar und braucht nur einen 
Multiplizierer. uCs sollten das auch können.

: Bearbeitet durch User
von Egon D. (egon_d)


Bewertung
0 lesenswert
nicht lesenswert
Gustl B. schrieb:

> Ach das geht schon [...]

"Es geht" und "Es ist sinnvoll" sind orthogonal :)

Wenn am Ende sowieso nur Amplitude und/oder Phase
gemessen werden sollen, würde ich mir jegliche
Filterei sparen und einen Synchrongleichrichter
(in irgend einer Form) verwenden.

Das Resultat kann man mitteln; dabei lässt sich die
Integrationszeit so wählen, dass die 12Hz einer
Nullstelle zum Opfer fallen.

von Dergute W. (derguteweka)


Bewertung
2 lesenswert
nicht lesenswert
Moin,

Bei den eigenartigen und unvollstaendigen/vagen Bedingungen tendiere ich 
zu genau 12.2474487139Hz Grenzfrequenz im Falle von 10Hz vs. 15Hz.
Bei 10Hz vs. 12Hz dementsprechend natuerlich 10.9544511501Hz

SCNR,
WK

von Jürgen S. (engineer) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Dergute W. schrieb:
> Bei 10Hz vs. 12Hz dementsprechend natuerlich 10.9544511501Hz

Da musst du dich verrechnet haben. Ich komme auf 10.95(2)4511501Hz.

Jetzt mal im Ernst -wir haben hier wieder das typische 
Beschreibungsproblem / unvollständige Angaben:

Die alles entscheidende Frage ist, ob das eine Signal wirklich 
herausgefiltert werden soll, um das andere unter Erhalt der Leistung 
weiterzunutzen oder ob man das nur messen will.

Zu messen wäre das sehr einfach, wenn man 30 Halbperioden misst und ein 
FIR-Filter einsetzt. Ansonsten ist ein digitaler Filter relativ 
nutzfrei, es sei denn, man erzeugt eine analoge Gegenspannung mit einem 
DAC und steuert mit einem fetten MOSFET in Reihe dagegen.

Verdächtig sind hier auch die Angaben in A. Das hört sich nach 
Stromquellen an, die so aber nie nicht gegeneinander arbeiten können. 
Sicher wieder eine der Klausuraufgaben die mit der Praxis nichts zu tun 
haben, aber auch nicht gut genug durchdacht sind, um einen akademischen 
Wert zu haben.

: Bearbeitet durch User
von Marek N. (bruderm)


Bewertung
0 lesenswert
nicht lesenswert
Dergute W. schrieb:
> Moin,
>
> Bei den eigenartigen und unvollstaendigen/vagen Bedingungen tendiere ich
> zu genau 12.2474487139Hz Grenzfrequenz im Falle von 10Hz vs. 15Hz.
> Bei 10Hz vs. 12Hz dementsprechend natuerlich 10.9544511501Hz
>
> SCNR,
> WK

Geometrisches Mittel hätte ich jetzt auch angesetzt.

von Marek N. (bruderm)


Bewertung
0 lesenswert
nicht lesenswert
Jürgen S. schrieb:
> 10.95(2)4511501Hz.

Wie kommen Sie auf den Wert?

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Egon D. schrieb:
> "Es geht" und "Es ist sinnvoll" sind orthogonal :)

Sehe ich nicht so. Wir haben eindeutig zu wenig Fakten. Da habe ich eine 
Lösung vorgeschlagen die immer funktioniert und einen weiten 
Anwendungsbereich abdeckt.
Die anderen vorgeschlagenen Lösungen setzen irgendwelche Dinge voraus 
von denen wir noch nicht wissen ob das zutrifft.

Da kann ich auch sagen ein einfacher RC Tiefpass wird genügen wenn die 
12 Hz nur um 0,1 dB gedämpft werden müssen im Vergleich zu den 10 Hz. 
Sehr einfache Lösung, setzt aber etwas voraus was vermutlich nicht der 
Realität entspricht.

von Jürgen S. (engineer) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Marek N. schrieb:
> Jürgen S. schrieb:
>> 10.95(2)4511501Hz.
> Wie kommen Sie auf den Wert?
Indem ich den Sarkasmus, der in der auf 20-Stellen berechneten Zahl 
steckt, vom Schätzwert abziehe und dann die 7. Wurzel meiner Schuhgröße 
draufrechne.

Mal im Ernst: Allein Bauteiltoleranzen und andere Randbedingungen werden 
die Energiebilanz zwischen passband und stopband so nachhaltig von der 
Theorie wegverbiegen, dass es ad hoc nicht möglich ist, eine 
Trennfrequenz anzugeben, die ideal wäre.

von Christoph db1uq K. (christoph_kessler)


Bewertung
0 lesenswert
nicht lesenswert
Je nach Aufgabe könnte man auch runtermischen, die 12 Hz auf DC, dann 
kommen die 10 Hz als 2 Hz heraus. Danach ein Hochpass. Wenn nötig die 2 
Hz mit demselben Oszillator wieder hochmischen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.