Ein Messsignal zappelt auf dem Arduino-Monitor, obwohl der Sensor ruhig liegt. Ein PWM-Ausgang soll eine Gleichspannung liefern, nicht ein Rechteck. Ein Schaltregler streut seine 100 kHz in jede Leitung der Platine. In all diesen Fällen hilft dieselbe Schaltung aus zwei Bauteilen: der RC-Tiefpass. Er lässt langsame Änderungen durch und dämpft schnelle.
Die Theorie dahinter – Grenzfrequenz, 20 dB pro Dekade, Phasenverschiebung und Sprungantwort – steht unter RC- und RL-Glied. Hier baust du den Tiefpass für eine konkrete Aufgabe: als Filter vor dem ADC-Eingang eines Arduino Uno. Als Variante folgt die Glättung eines PWM-Signals.
Schaltplan
- R1, 10 kΩ: der Festwiderstand im Längszweig. Zusammen mit C1 legt er die Grenzfrequenz fest und begrenzt nebenbei den Strom in den Pin, falls der Sensor einmal zu viel Spannung liefert.
- C1, 100 nF: ein Keramikkondensator vom ADC-Pin gegen Masse. Er schließt schnelle Störungen kurz und liefert dem ADC beim Abtasten die nötige Ladung.
- IC1, ATmega328P: der Mikrocontroller des Arduino Uno. Pin 23 ist der Analogeingang ADC0 (A0 auf der Platine).
- Masse: Sensor, Kondensator und Controller haben eine gemeinsame Masse; C1 hängt auf kurzem Weg daran.
So funktioniert die Schaltung
R1 und C1 bilden einen Spannungsteiler, dessen unterer Teil frequenzabhängig ist. Der kapazitive Blindwiderstand von C1 ist bei Gleichspannung unendlich groß. Langsame Signale kommen deshalb fast unverändert am Pin an. Mit steigender Frequenz sinkt der Blindwiderstand, und C1 leitet immer mehr vom Signal nach Masse ab.
Im Zeitbereich heißt das: Der Kondensator kann seine Spannung nur über R1 ändern, also nicht schneller als mit der Zeitkonstante τ = R · C. Eine Störspitze von einigen Mikrosekunden ist vorbei, bevor sich C1 nennenswert umgeladen hat.
Ein zweiter Effekt ist für den ADC genauso wichtig. Beim Abtasten schaltet der ATmega328P einen internen Kondensator von 14 pF an den Pin und lädt ihn in etwa 12 µs auf (1,5 Takte des ADC bei 125 kHz). Ohne C1 müsste dieser Strom durch den Sensor fließen; das Datenblatt empfiehlt deshalb eine Quellimpedanz von höchstens 10 kΩ. Mit C1 kommt die Ladung aus dem Kondensator, der 7000-mal größer ist. Die Spannung am Pin sinkt dabei kaum.
Dimensionierung
Die Aufgabe: Ein Drucksensor liefert 0,5 bis 4,5 V aus einem niederohmigen Ausgang. Der Druck ändert sich höchstens mit 50 Hz. Dein Programm ruft analogRead() jede Millisekunde auf, tastet also mit fA = 1 kHz ab.
1. Grenzfrequenz wählen. Sie muss oberhalb der höchsten Nutzfrequenz liegen, damit das Signal nicht gedämpft wird. Gleichzeitig soll sie möglichst weit unter der halben Abtastrate bleiben: Alles, was über fA / 2 = 500 Hz liegt, faltet der ADC als Scheinsignal in den Messbereich zurück (Aliasing). Ein guter Kompromiss liegt beim Drei- bis Fünffachen der Nutzfrequenz, hier etwa 160 Hz.
2. Kondensator zuerst. Kondensatoren gibt es in gröberen Stufen als Widerstände. Du nimmst einen gängigen Wert, hier 100 nF, und rechnest den Widerstand aus:
Der Normwert aus der E-Reihe ist 10 kΩ. Damit wird
Grenzfrequenz von RC-Tief- und Hochpass
- Grenzfrequenz fg
- 1,59 kHz
- Zeitkonstante τ
- 100 µs
- uaus / uein
- 30,3 %
- Dämpfung
- -10,4 dB
- Phase
- -72,3°
Bei fg ist die Ausgangsspannung auf 70,7 % gesunken (−3 dB), die Phase um 45° verschoben.
3. Dämpfung prüfen. Für jede Frequenz gilt Ua / Ue = 1 / √(1 + (f / fg)2). In Dezibel ergibt das:
Ein Filter erster Ordnung ist also ein guter Störschutz, aber nur ein schwacher Schutz gegen Aliasing. Liegt eine kräftige Störung knapp über der halben Abtastrate, etwa der 980-Hz-PWM eines Nachbarpins, wird sie nur auf 16 % gedämpft und erscheint als 20-Hz-Schwankung im Messwert. Dagegen hilft, schneller abzutasten und in Software zu mitteln, oder ein steilerer Filter.
Bauteilliste
| Bezeichner | Wert/Typ | Hinweis |
|---|---|---|
| R1 | 10 kΩ, 1 %, 0,1 W | Metallschicht oder SMD 0603 |
| C1 | 100 nF, X7R, 16 V oder mehr | dicht an Pin 23 und an Masse |
| IC1 | ATmega328P (Arduino Uno) | ADC0 = Pin 23 = A0 |
Varianten
PWM glätten. Ein PWM-Ausgang des Uno schaltet an Pin 9 mit 490 Hz zwischen 0 und 5 V. Ein RC-Tiefpass macht daraus den Mittelwert: bei 50 % Tastgrad 2,5 V. Es bleibt eine Restwelligkeit, die näherungsweise
beträgt. Mit 10 kΩ und 1 µF sind das 255 mV Spitze-Spitze, mit 10 µF nur noch 25 mV. Der Preis ist die Geschwindigkeit: Nach einer Änderung braucht der Ausgang rund 5 τ, also 50 ms beziehungsweise 0,5 s.
Den vollständigen Aufbau mit Code und Puffer beschreibt Analogspannung aus PWM. Soll der Ausgang belastet werden, gehört ein Spannungsfolger dahinter.
Zwei Stufen hintereinander. Ein zweites RC-Glied mit 100 kΩ und 10 nF hinter dem ersten verdoppelt die Steilheit auf 40 dB pro Dekade. Der zehnfach größere Widerstand verhindert, dass die zweite Stufe die erste stark belastet. Die gemeinsame Grenzfrequenz sinkt dabei auf etwa 95 Hz, bei 500 Hz dämpft die Kette um 21 dB statt 10 dB.
Aktiver Filter. Für steile Flanken ohne Belastungsprobleme nimmst du einen aktiven Tiefpass nach Sallen-Key mit Operationsverstärker.
Das Gegenstück. Tauschst du R und C, entsteht der RC-Hochpass. Er trennt Gleichspannung ab und lässt hohe Frequenzen durch.
Typische Fehler
- Hochohmige Quelle übersehen: Der Innenwiderstand des Sensors liegt in Reihe mit R1. Hängt am Eingang ein Spannungsteiler aus zweimal 100 kΩ, kommen 50 kΩ hinzu. Die Grenzfrequenz fällt von 159 Hz auf 27 Hz. Rechne mit der Summe oder verkleinere R1.
- Belasteter Ausgang: Folgt auf den Tiefpass eine Stufe mit 100 kΩ Eingangswiderstand, misst du 9 % zu wenig, und die Grenzfrequenz steigt auf 175 Hz. Der Lastwiderstand sollte mindestens hundertmal größer sein als R, sonst brauchst du einen Puffer.
- Kondensator weit weg: Sitzt C1 am Steckverbinder statt am Pin, fängt die Leitung dahinter neue Störungen ein. Prüfe mit dem Oszilloskop direkt am Pin.
- Falscher Kondensatortyp: Keramik mit Y5V-Dielektrikum verliert bei Gleichspannung und Kälte einen Großteil ihrer Kapazität. X7R oder C0G halten ihren Wert (MLCC).
- Zu viel erwartet: Eine einzige RC-Stufe dämpft eine Störung bei doppelter Grenzfrequenz nur um 7 dB. Rechne nach, statt dich auf das Wort „Filter“ zu verlassen.
Selbsttest
Welche Grenzfrequenz hat ein Tiefpass aus 4,7 kΩ und 220 nF?
fg = 1 / (2π · 4,7 kΩ · 220 nF) ≈ 154 Hz.
Du brauchst fg ≈ 1 kHz und hast 10-nF-Kondensatoren. Welcher Widerstand?
R = 1 / (2π · 1 kHz · 10 nF) ≈ 15,9 kΩ; aus der E24-Reihe passt 16 kΩ, dann liegt fg bei 995 Hz.
Warum liegt die Grenzfrequenz im Beispiel nicht genau bei der halben Abtastrate von 500 Hz?
Bei fg ist das Signal erst um 3 dB gedämpft. Störungen knapp darüber kämen fast ungehindert durch und würden ins Messsignal gefaltet.
Wie groß ist die Restwelligkeit einer 980-Hz-PWM mit 50 % Tastgrad und 5 V hinter 10 kΩ und 1 µF?
ΔU ≈ 5 V · 0,25 / (980 Hz · 10 ms) ≈ 128 mV – halb so viel wie bei 490 Hz.
Warum hilft C1 dem ADC auch bei langsamen Signalen?
Er liefert beim Abtasten die Ladung für den internen 14-pF-Kondensator. Die Spannung am Pin bleibt dadurch stabil, auch wenn die Quelle hochohmig ist.