Hallo zusammen,
ich wollte nur eine Frage hinsichtlich des Tiefpasses stellen.
Wahrscheinlich ist sie für euch zu einfach, aber ich möchte mich
versichern.
Ich habe ein Signal mit folgenden Werten:
Ausgangsspannung: 6V pp
Ausgangswiderstand: 600 Ohm
Bandbreite: +/- 0.5 dB zwischen 10 Hz & 5 kHz
Da mir die Frequenz nur bis 1kHz wichtig ist, wollte ich einen Tiefpass
bauen.
Ich weiß wie es aufgebaut ist und wie die Formel, etc. funktioniert.
Bei mir war es so, dass ich immer Aufgaben gerechnet hatte, wo R oder C
gegeben war. Jetzt habe ich ja meine Grenzfrequenz auf 1kHz selber
gesetzt und muss R und C selber definieren. Habe ich da die volle freie
Wahl oder gibt es doch gewisse Kleinigkeiten auf die ich achten muss?
Ich hätte sonst gesagt ich nehme einfach R=1kOhm und daraus folgt dann
C=159,155 nF
So ähnlich hätte ich es als ersten Überschlag auch gemacht. Danach aber
unbedingt ins Datenblatt des Kondensators gucken und das
Impedanzverhalten bewerten.
irzigen schrieb:> Habe ich da die volle freie Wahl oder gibt es doch gewisse Kleinigkeiten> auf die ich achten muss?
Die Quell- und die Zielimpedanz funken dir in die Geschichte rein.
Kurz: woher kommt das Signal und wohin geht es?
> Jetzt habe ich ja meine Grenzfrequenz auf 1kHz selber gesetzt und muss R> und C selber definieren.
So ein simpler RC-Tiefpass hat aber nur 6db Dämpfung (=Halbierung) pro
Oktave. Von deinem 6V Signal werden bei 5kHz noch fast 1,5V
durchkommen...
Du kannst das z.B. mit LTSpice sehr schön simulieren:
http://www.lothar-miller.de/s9y/categories/13-RC-Glied-fuer-PWM
Hallo,
"Habe ich da die volle freie Wahl oder gibt es doch gewisse
Kleinigkeiten auf die ich achten muss?"
Nein, welche Ausgangsimpedanz hat die Quelle, welche der nachfolgende
Schaltungsteil? Wieviel Dämpfung soll bei der Grenzfrequenz erreicht
werden?
Bei 600 Ohm Quellimpedanz sollte der Tiefpaß besser etwas hochohmiger
ausfallen, so um den Faktor 10, außer Dir macht eine geringere Amplitude
am Ausgang nichts aus.
MfG
irzigen schrieb:> Ich weiß wie es aufgebaut ist und wie die Formel, etc. funktioniert.> Bei mir war es so, dass ich immer Aufgaben gerechnet hatte, wo R oder C> gegeben war.
Bei deiner Schaltung ist zumindest ein minimales R gegeben, nämlich die
600Ω der Quelle (Rq).
Den könntest du direkt verwenden als gegebenen R, wenn deine Quelle bei
hohen Frequenzen einen Kurzschluss aushält, was bei dem Quellwiderstand
normalerweise kein Problem sein sollte.
Natürlich kannst du einen zusätzlichen Rs verwenden (in Reihe zu Rq),
der dann dafür sorgt, dass bei gegebener Grenzfrequenz der Kondensator
kleiner wird. Für die TP-Berechnung musst du dann C und (Rq+Rs=Rq')
nehmen.
Theoretisch darf der Rs auch beliebig groß sein, praktisch hängt das
davon ab, wie der Eingangswiderstand Re der nachfolgenden Schaltung sein
wird.
Dieser Eingangswiderstand reduziert bei hohem Rq' zunächst die maximale
Amplitude (Spannungsteiler Rq' mit Re). Er wirkt aber auch auf den
Frequenzgang, denn statt Rq' musst du nun mit Rq'||Re für den Tiefpass
rechnen. Eigentlich immer, aber bei hohen Eingangswiderständen und
niedrigem Rq' kann man das problemlos vernachlässigen.
Wow. Vielen dann für die tollen Erklärungen. Da muss ich mehr achten als
ich anfangs dachte. Das heißt ich muss heute Nachmittag nachschauen
welchen Eingangswiderstand mein Funduino (Arduino) Uno im Datenblatt
hat.
HildeK schrieb:> Es geht hier um einen RC-Tiefpass ...
Das ist laut Eröffnungspost zwar richtig, aber Lother M. wies schon
darauf hin, dass dies keine ausreichende Lösung darstellt, falls hier
eine Antialiasingfilterung angestrebt werden sollte.
Lothar M. schrieb:>> Jetzt habe ich ja meine Grenzfrequenz auf 1kHz selber gesetzt und muss R>> und C selber definieren.> So ein simpler RC-Tiefpass hat aber nur 6db Dämpfung (=Halbierung) pro> Oktave. Von deinem 6V Signal werden bei 5kHz noch fast 1,5V> durchkommen...
Und wenn ich lese, das Signal soll einem Ardunino (o.ä.) zugeführt
werden, könnte ich glatt annehmen, dass das so ist.
In diesem Falle wäre eine Filterung mit mehr als 20dB/Dekade nötig und
ein einfacher RC-Tiefpass reicht nicht.
M.A. S. schrieb:> In diesem Falle wäre eine Filterung mit mehr als 20dB/Dekade nötig und> ein einfacher RC-Tiefpass reicht nicht.
Alles richtig, aber es sind eine Menge Annahmen in deinem Beitrag.
Die kann man gleich ansprechen oder erst dann diskutieren, wenn sich das
tatsächlich als notwendig herausstellt. Ob ein Filter mit mehr als
20dB/Oktave notwendig ist, hängt davon ab, wie groß die höherfrequenten
Anteile in der Quelle sind und wie stark er sie unterdrücken will/muss.
Ich bin einfach auf die Frage eingegangen und habe ein paar Fakten in
den Antworten davor vermisst - zumindest wären sie für den Fragenden
nicht offensichtlich zu sehen gewesen.
Ich weiß auch nicht, in wie fern der TO sich über die notwendige
Dämpfung schon Gedanken gemacht hat oder ob sie gar nicht so groß sein
muss. Anti-Aliasing-Filter hast du zuerst genannt, wenn es vermutlich
auch nahe liegt, nachdem 'Arduino' vom TO erwähnt wurde.
Zudem: auch mit RC, am besten RC-aktiv, kann man Filter höherer Ordnung
bauen. Selbst passiv gibt es noch brauchbare Ergebnisse, wenn die
Randbedingungen passen.
Ich entschuldige mich, dass ich zu wenig Informationen gegeben habe. Ich
dachte wirklich nicht, dass ich auf so vieles achten muss. Ich lese mich
in die oben genannten Themen aktuell ein.
Um vielleicht es genauer darzustellen, beschreibe ich es nochmal:
Ich habe einen Laryngograph, der mit einer Amplitudenmodulation einen
analogen Signal in Form von Spannung ausgibt. Mit einem Oszilloskopen
lässt es sich ohne Probleme messen, daher dachte ich nicht, dass ich bei
einem Mikrocontroller so viel zu beachten hätte.
Der Output liegt wie oben schon erwähnt bei maximal 5kHz, aber die
relevanten Informationen liegen weit unter 1kHz. Ich habe 1kHz als
Grenze genommen um für die ausgelesenen Werte einen Puffer zu haben,
falls wirklich was passiert. Daher war mein Gedanke alles ab 1kHz zu
filtern und nur die Informationen im Bereich von 0-1kHz mit dem Arduino
auszuwerten. Deswegen war mein erster Gedanke einen einfachen passiven
Tiefpassfilter zu nutzen. Aber ich hier lese, muss ich wohl doch noch
meine Ansichten überdenken.
Analog-Read() hat ja eine Abtastrate von 10.000/s, daher dachte ich
nicht, dass es so ein großes Problem darstellen würde. Ich muss
gestehen, der Alias-Effekt ist für mich neu, daher bedanke ich mich
dafür. Viel zum Lernen wie ich sehe.
Viele Grüße und besten Dank
Max S. schrieb:> Analog-Read() hat ja eine Abtastrate von 10.000/s
Das ist aber keine Konstante. Und du musst dabei unbedingt beachten,
dass deine Eingangsbeschaltung ausreichend niederimpedant ist, um den
Ladestrom für dein Eingangskondensator des ADC bereitstellen zu können.
Und das ist dann die Ecke, wo sich die Katze in den Schwanz beißt:
einerseits sollte das RC Glied hochohmig sein, um die Quelle nicht
allzusehr zu belasten, andrerseits muss das RC Glied ausreichend
niederohmig sein, um den Samplekondensator im ADC schnell genug aufladen
zu können.
> Ich lese mich in die oben genannten Themen aktuell ein.
Sieh dir das Kapitel "ADC" und speziell das Kapitel "Sample&Hold" deines
uC genau an.
Wenn du mit 10kHz abtastest und oberhalb 5kHz noch Signalanteile sein
können, dann brauchst du schon ein Filter, das bei 5kHz schon deutlich
dämpft.
Allgemein: alles oberhalb der halben Abtastfrequenz wird in den Bereich
unterhalb dieser Frequenz gespiegelt.
Ich hab dir mal zur Beurteilung zwei Filter angehängt, ein einfaches
dreistufiges und das ursprünglich gewollte einstufige. Du siehst die
Dämfpung in Abhängigkeit von der Frequenz?
Für den AD-Eingang sollten beide eine Quellimpedanz von <10kΩ haben, das
ist für beide erfüllt.