Forum: Analoge Elektronik und Schaltungstechnik Problem mit einem Anti-Aliasing-Filter - evtl. eine Alternative?


von Heinrich Heine (Gast)


Angehängte Dateien:

Lesenswert?

Guten Abend, ich habe ein Problem mit meinem Antialiasing Filter, und 
zwar geht es um Folgendes:

Mein Frequenzspektrum des Messignals sieht wie folgt aus (s. Abbildung 
1). Dieses soll über einen 500 kSps ADC gesampelt werden. Bedeutet, 
Signale über >=250 kHz können nicht erfasst werden. Aus diesem Grund 
würde ich gerne die Frequenzanteile >250 kHz rausfiltern, damit diese 
keine Geistersignale erzeugen.

1. Frage: Wie würdet ihr das angehen? Welchen Filter würdet ihr 
entsprechend der Pegel der Frequenzen empfehlen?

Um die Frequenzanteile unter 250 kHz möglichst ungedämpft, darüber aber 
möglichst stark zu dämpfen habe ich einen Filter 10. Ordnung 
(https://www.analog.com/media/en/technical-documentation/data-sheets/15697fs.pdf) 
getestet und wie in Abbildung 2 beschaltet und auf meine Platine mit GND 
Plane aufgelötet. Das Problem mit diesem ist nun allerdings, dass dieser 
das Signal heruntersetzt (s. Abbildung 3, Eingangssignal und s. 
Abbildung 4, Ausgangssignal). Das Eingangssignal ist ein +/-1 V 
Wechselsignal mit einem Offset von 2,048 V

2. Frage:  Ist der Filter etwas zu "anspruchsvoll"? Meine 
Versorgungsspannung kommt aus einem DCDC-Wandler 
(https://assets.tracopower.com/20191025120425/TVN3/documents/tvn3-datasheet.pdf). 
Oder wie ist dieser ungewollte Offset zu erklären?

von c-hater (Gast)


Lesenswert?

Heinrich Heine schrieb:

> Oder wie ist dieser ungewollte Offset zu erklären?

Nun, ganz einfach: normalerweise interessieren sich Filter einen großen 
Scheiß für die DC-Komponente.

Ich würde mal stark vermuten, dass ein von DC befreites Eingangssignal 
(also per Kondensator angekoppelt) bei diesem Filter genau dieselbe 
Ausgabe erzeugen würde...

von Joe F. (easylife)


Lesenswert?

Heinrich Heine schrieb:
> Das Problem mit diesem ist nun allerdings, dass dieser
> das Signal heruntersetzt (s. Abbildung 3, Eingangssignal und s.
> Abbildung 4, Ausgangssignal). Das Eingangssignal ist ein +/-1 V
> Wechselsignal mit einem Offset von 2,048 V

Verstehe das Problem nicht.
Das Ausgangssignal hat doch den gleichen Offset und Pegel.

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Heinrich Heine schrieb:
> Das Problem mit diesem ist nun allerdings, dass dieser
> das Signal heruntersetzt

Was verstehst du unter "heruntersetzen"?
Es gibt Dinge wie "Offset" oder "Verstärkung" ...

In deinen Oszibildern sehe ich eine Invertierung, was aber bei einem 
periodischen Signal einfach an der Triggereinstellung liegen wird.
Zeichne beide Signale (Eingang + Ausgang) gleichzeitig mit zwei Kanälen 
auf,  wobei du auf identische bzw. klare Offset- und 
Empfindlichkeitseinstellung achten solltest. Außerdem schreibe klar, auf 
welchem Kanal(Farbe) welches Signal liegt.

von Heinrich Heine (Gast)


Angehängte Dateien:

Lesenswert?

Ich kriegs kotzen bei dem Filter...

ich habe mal ein ein reines +/- 1 V Signal ohne DC-Anteil durch den 
Filter geschickt (s. Abbildung 5). Gelb ist das Eingangssignal, Blau das 
Ausgangssignal.

Das Signal kommt mir ziemlich verrauscht vor. Ich hab die Vermutung, 
dass der Filter mein GND versaut.

Die Abbildung 6 Zeigt einmal eine Messung des ADC mit Filters mit und 
einmal ohne Filter. Man sieht, dass das Signal ohne Filter deutlich 
sauberer ist. Ich kanns leider nicht auf dem Oszi zeigen, da der Filter 
ja bereits verlötet ist.

Ich habe die Vermutung, dass der Fall (s. Abbildung 7) eintritt.

von Volker B. (Firma: L-E-A) (vobs)


Lesenswert?

Hallo,

ich wage zu bezweifeln, dass es sinnvoll ist, ein abtastendes Filter als 
Anti-Aliasingfilter zu nutzen, vgl. Datenblatt S. 10, 1. Abs.:
"Input  signals  with  frequencies  near  2  •  fCLK± fCUTOFF will be 
aliased to the passband of the filter and appear at the output 
unattenuated."

Also vielleicht solltest Du Deinem Anti-Aliasingfilter ein 
Anti-Aliasingfilter spendieren?

Grüßle
Volker

: Bearbeitet durch User
von Heinrich Heine (Gast)


Lesenswert?

Hallo Volker, vielen Dank für die Mühe, das hatte ich vorher gar nicht 
so gesehen, danke dir !
Volker B. schrieb:
> "Input  signals  with  frequencies  near  2  •  fCLK± fCUTOFF will be
> aliased to the passband of the filter and appear at the output
> unattenuated."

So verrauscht ist das Eingangssignal ja eignentlich nicht, erst durch 
das Filter wird es mit einem Rauschen überlagert. Aber vermutlich liegt 
da genau der Hund begraben.
Wie würde man denn sowas üblicherweise lösen? Ich spiele mit dem 
Gedanken den Filter ganz weg zu lassen bzw. eine einfaches RC-Glied zu 
nehmen. Dieses Filtert zwar nicht ganz so satrk, ist aber in jedem Fall 
besser als der hier verwendete Filter...
Die Pegel der Frequenzanteile >250 kHz sind ja noch recht überschaubar.

von Helmut S. (helmuts)


Lesenswert?

Am Ausgang eines SC-Filters sind auch immer Spikes vom Taktsignal des 
Filters. Deshalb sollte man ein analoges Filter anhängen. Mit dem wird 
dann das Taktsignal unterdrückt.

von Joe F. (easylife)


Lesenswert?

Die Frage wäre halt: was willst du erreichen.
Mir erschließt sich der Zusammenhang zwischen dem dargestellten Spektrum 
und dem Sinus mit schätzungsweise 1 KHz nicht.
Um was für ein Signal handelt es sich denn genau, und warum ist es so 
wichtig, Oberwellen so stark zu dämpfen? Für Audioanwendungen kommt man 
üblicherweise mit einem einfachen RC TP aus, wenn's mehr sein soll 
könnte man über einen aktiven (analogen) Filter mit höherer Ordnung und 
trotzdem noch akzeptabler Welligkeit nachdenken. Aber sicher nicht 10. 
Ordnung...

von Heinrich Heine (Gast)


Lesenswert?

Joe F. schrieb:
> Die Frage wäre halt: was willst du erreichen.


Abbildung 1 zeigt eine Messung einer Induktionsspannung mit einem 
Herkömmlichen Oszi. Diese möchte ich anstelle des Oszi von einem ADC 
aufgezeichnet werden. Natürlich wäre es schöner, wenn der ADC schneller 
sampeln könnte, die 500 kSps sind aber leider gesetzt.

Den Sinus, den ich auf dem Oszi abgebildet habe, nehme ich nur deshalb 
um die Probleme, die der Filter verursacht besser darstellen zu können. 
Die beiden Signale haben also keinen direkten Bezug. Das 
Frequenzspektrum aus Abbilung 1 zeigt lediglich warum ich gerne so stark 
zwischen f_cut und f_stop filtern möchte.

Joe F. schrieb:
> Oberwellen so stark zu dämpfen?

Aufgrund fs >= F_max/2. Ich bin mir aber wie gesagt nicht sicher ob das 
bei dem Signal aus Abbildung 1 wirklich sinnvoll ist.

von Heinrich Heine (Gast)


Lesenswert?

f_max >= f_s/2

So hat es der Herr Nyquist lieber.

von Joe F. (easylife)


Lesenswert?

Heinrich Heine schrieb:
> Abbildung 1 zeigt eine Messung einer Induktionsspannung mit einem
> Herkömmlichen Oszi.

Ein Sägezahn?

Heinrich Heine schrieb:
> Diese möchte ich anstelle des Oszi von einem ADC
> aufgezeichnet werden.

Die Frage geht eher in die Richtung, was soll mit dem Signal nach dem 
Aufzeichnen passieren?
Ist dir z.B. die exakte Amplitude der 1. u. 2. Oberwelle noch besonders 
wichtig?
Ansonsten könntest du die Grenzfrequenz eines Filters niedrigerer 
Ordnung auch weit unterhalb von fs/2 ansetzen und erreichst damit eine 
gute Dämpfung.
Auch die Wahl des ADC spielt dabei eine Rolle. Ein Delta-Sigma Wandler 
hat weniger hohen Anspruch an den Eingangsfilter (-> Oversampling).

: Bearbeitet durch User
von Heinrich Heine (Gast)


Lesenswert?

Joe F. schrieb:
> Ein Sägezahn?

Nein, das ist nicht Signalverlauf, sondern das Frequenzspektrum.

Joe F. schrieb:
> Die Frage geht eher in die Richtung, was soll mit dem Signal nach dem
> Aufzeichnen passieren?

Aus der Spannung wird aus weiteren Werten im späteren eine 
Hysteresekurve errechnet.Je besser dabei die Spannung erfasst wird, 
desto genauer sind natürlich die Ergebnisse.

Wie es mir scheint habe ich 2 Möglichkeiten:
1. Ich lasse den Filter ganz weg und nehme die Frequenzen über f_s/2 als 
geringeres Übel mit

2. Ich Filtere ab einem einfachen RC-Glied mit 10uF und 60 Ohm, müsste 
auf f_g=265 kHz dann kommen. Auch wenn die Pegel höheren Frequenzen 
dabei kaum gedämpft werden.

von Joe F. (easylife)


Lesenswert?

Heinrich Heine schrieb:
> Joe F. schrieb:
>> Ein Sägezahn?
>
> Nein, das ist nicht Signalverlauf, sondern das Frequenzspektrum.

Schon klar, die Halbierung der jeweiligen Oberwellenamplituden sieht 
halt nach Spektrum eines Sägezahnes aus. Egal.

Heinrich Heine schrieb:
> Ich Filtere ab einem einfachen RC-Glied mit 10uF und 60 Ohm, müsste
> auf f_g=265 kHz dann kommen.

60R und 10uF gibt f_g=265Hz (nicht KHz).
60R und 10nF wäre es dann.
Du kannst ja noch einen 6R + 100nF davor setzen, dann hast du so ca. 2. 
Ordnung.
Oder 600R + 1nF dahinter.

: Bearbeitet durch User
von Guest (Gast)


Lesenswert?

Heinrich Heine schrieb:
> 1. Ich lasse den Filter ganz weg und nehme die Frequenzen über f_s/2 als
> geringeres Übel mit

Das geringe Übel wird sein das deine Messung im schlimmsten Fall 
absoluter Mist ist. Du kannst den Filter nicht einfach so weglassen.

So ein Abtastender Filter ist für diese Anwendung absolut nicht 
geeignet, da er selbst Alias Effekte erzeugt. Verabschiede dich davon 
das du 250Khz als Grenzfrequenz nehmen kannst. Theoretisch stimmt das 
mit der halben Abtastfrequenz aber in der Realität geht man eher um den 
Faktor 5 oder mehr runter. Wenn du wirklich die 250KHz sauber messen 
willst wirst du einen schnelleren ADC brauchen oder erheblichen Aufwand 
bei deinem ANALOGEN Filter betreiben müssen.

von Volker B. (Firma: L-E-A) (vobs)


Lesenswert?

Heinrich Heine schrieb:

> Wie es mir scheint habe ich 2 Möglichkeiten:
> 1. Ich lasse den Filter ganz weg und nehme die Frequenzen über f_s/2 als
> geringeres Übel mit
>
> 2. Ich Filtere ab einem einfachen RC-Glied mit 10uF und 60 Ohm, müsste
> auf f_g=265 kHz dann kommen. Auch wenn die Pegel höheren Frequenzen
> dabei kaum gedämpft werden.

Oder 3. Ein klassisches aktives Filter. In meinem uralten Tietze/Schenk 
(9. Auflage) findet sich dazu ein Filterkatalog und eine schöne 
Anleitung.

Grüßle
Volker

von Heinrich Heine (Gast)


Lesenswert?

Joe F. schrieb:
> Schon klar, die Halbierung der jeweiligen Oberwellenamplituden sieht
> halt nach Spektrum eines Sägezahnes aus. Egal.

Achso, tut mir Leid, sollte nicht blöd rüber kommen.

Guest schrieb:
> Das geringe Übel wird sein das deine Messung im schlimmsten Fall
> absoluter Mist ist. Du kannst den Filter nicht einfach so weglassen.

In wie fern, für den Fall dass höhere Frequenzanteile im Signal sind? 
Das ist fast ausgeschlossen, da es sich hier schon um eine Messung mit 
"extremen" Betriebsparametern handelt.

Guest schrieb:
> Wenn du wirklich die 250KHz sauber messen
> willst wirst du einen schnelleren ADC brauchen oder erheblichen Aufwand
> bei deinem ANALOGEN Filter betreiben müssen.

Ja wie gesagt, wäre der ADC schneller hätte ich vermutlich diesen Thread 
nicht aufmachen müssen und hätte eine menge Nerven gespart.

Das blöde ist nur, dass ich eine Platine mit den Pads für das Filter 
angefertigt habe. Ich schätze ich werde dann ein RC-Glied mit einer, 
vielleicht 2 Ornung daran löten. Einen aktiven Filter mit OpAmp zu 
realisieren ist da nicht so ganz einfach.

von Volker B. (Firma: L-E-A) (vobs)


Lesenswert?

Heinrich Heine schrieb:

> Das blöde ist nur, dass ich eine Platine mit den Pads für das Filter
> angefertigt habe. Ich schätze ich werde dann ein RC-Glied mit einer,
> vielleicht 2 Ornung daran löten. Einen aktiven Filter mit OpAmp zu
> realisieren ist da nicht so ganz einfach.

Wenn die dritte Dimension noch frei ist: ein kleines 
Huckepack-Platinchen, evtl. auch senkrecht stehend? So ein Doppel-OP im 
SO8-Gehäuse und ein bisschen 0603-Hühnerfutter benötigen nicht viel 
Platz.

Grüßle
Volker

von Heinrich Heine (Gast)


Lesenswert?

Was grad noch interessant sein könnte, zwischen Filter und ADC habe ich 
einen Spannungsfolger zwischengeschaltet. Diesen müsste ich recht leicht 
dafür verwenden. Vielleiche ein Sallenkey oder ähnliches ...

von Guest (Gast)


Angehängte Dateien:

Lesenswert?

Dir ist aber bewusst das du mit 500KHz abtastrate niemals ein 250khz 
Signal rekonstruiert bekommst? Im Anhang habe ich mal ein Bild mit der 
Diskretisierung eines 100KHz und 200KHz Sinus mit 500KHz Abtastrate.

von Dieter (Gast)


Lesenswert?

Das Teil arbeitet intern mit Eimerkettenspeichern, Z- Transformation als 
Stichwort. Anwendungsfall als Filter fuer Digitalsignale. Der Takt ist 
nicht angegeben. Vermutlich liegt der bei 5...20x der 
Filtergrenzfrequenz. Dh es muss vor den Eingang ein Tiefpass als 
Aliasfilter zu dem Takt und am Ausgang ebenfalls. Der staerkere Tiefpass 
muss am Eingang sein.

von Wolfgang (Gast)


Lesenswert?

Guest schrieb:
> Im Anhang habe ich mal ein Bild mit der
> Diskretisierung eines 100KHz und 200KHz Sinus mit 500KHz Abtastrate.

Da fehlt noch das passende Rekonstruktionsfilter.

von Guest (Gast)


Lesenswert?

Wolfgang schrieb:
> Da fehlt noch das passende Rekonstruktionsfilter.

Das ist mir bewusst ich habe diese Frequenzen gewählt weil man bei genau 
250KHz kein Ergebnis erhält...

Dennoch wird man nicht sinnvoll 250Khz rekonstruieren können und man 
muss eben auch bei niedrigeren Frequenzen entsprechen die Daten 
Rekonstruieren können. Das ist alles was ich damit zeigen wollte.

von Lurchi (Gast)


Lesenswert?

Wenn man wirklich bis 250 kHz Messen will / muss, sollte man einen 
Schnelleren ADC wählen, so dass man das AA Filter einfacher Auslegen 
kann. 250 kHz ist ein einem Bereich wohl ein aktives Filter mit OPs 
schon anspruchsvoll wird (relativ hohe Frequenz dafür) aber eine 
passives LC-Filter nicht nicht so einfach (Spulen relativ groß). Mit 
etwas größeren Spulen dürfte ein LC Filter noch recht gut gehen. Das 
Getaktete Filter ist nicht passend.

Wenn man mutig ist, und sehr gut in digitaler Signalverarbeitung könnte 
man  theoretisch das Signalspektrum ausnutzen und die Abtastrate passend 
wählen dass die Frequenzen über 250 kHz in die Lücken im Signal fallen. 
Da könnte man sie dann digital unterdrücken oder ggf. sogar noch mit 
erfassen.

Die Amplitude nimmt zu hohen Frequenzen schon von sich aus ab, das 
reduziert die Anforderungen an das AA filter.

von Heinrich Heine (Gast)


Lesenswert?

Nabend Zusammen,

der Filter läuft nun ganz gut und Funktioniert auch soweit bis auf eine 
kleinigkeit. Wie im Datenblatt erwähnt, erzeigt der Filter am Ausgang 
ein negatives Offset von eta -29mV. Da ich das Signal im Nachgang 
verstärken mächte (unter anderem um Faktor 10 - 100), wird der Offset 
natürlich mitverstärkt. Das ganze Signal rutscht mir also weg.

Habt ihr eine Idee wie ich diesen Offset vermeiden kann ?

von Joe F. (easylife)


Lesenswert?

In Audioanwendungen würde man klassischerweise einen Koppelkondensator 
bzw. einen Hochpass mit Grenzfrequenz unterhalb von 20 Hz verwenden.

von Peter D. (peda)


Lesenswert?

Ich würde nicht von der ADC-Seite an die Aufgabe rangehen, sondern von 
der Signalseite. Welche maximale Frequenz kann denn das Signal haben?

von Heinrich Heine (Gast)


Lesenswert?

Also der ADC ist vorgegeben. Dieser Sampelt mit 500 kSps je Kanal. Das 
Signal könnte theoretisch Frequenzbereiche von 50 Hz bis 380 kHz 
enthalten. Es ist okay wenn Frequenzen über dem doppelten der Abtastrate 
herausgefiltert werden. Um somit also das Signal mit einer hohen Güte zu 
filtern wird eben auch der Filter 10 Ordnung verwendet.

Ich hatte überlegt einen 100nF Kerko mit einem 100 k-1 MOhm Widerstand 
Hals Hochpass-Filter zu wählen. Ich möchte mir nämlich ungern ein 
mögliches 50 Hz Messignal dämpfen.

von Joe F. (easylife)


Lesenswert?

Heinrich Heine schrieb:
> Ich hatte überlegt einen 100nF Kerko mit einem 100 k-1 MOhm Widerstand
> Hals Hochpass-Filter zu wählen. Ich möchte mir nämlich ungern ein
> mögliches 50 Hz Messignal dämpfen.

Grenzfrequenz (-3dB) wäre dabei ca. 15 Hz, 50 Hz werden noch um ca. 
-0.4dB abgeschwächt.
Ich würde das Filter nicht unnötig hochohmig machen (unnötiges 
Widerstandsrauschen, wenig Impedanz für nachfolgende Stufe) und 5 Hz 
Grenzfrequenz ist auch kein großes Problem (-0.04dB bei 50 Hz).
Kerkos haben Mikrofonie-Effekte (ausser du nimmst C0G), hier wäre ein 
Folienkondensator besser, oder auch ein Elko.
Mit 3,3uF/10K kommst du auf eine Grenzfrequenz von ca. 4,8 Hz.

: Bearbeitet durch User
von Neuling (Gast)


Lesenswert?

Unabhängig vom Ersteller des Threads würde mich interessieren wo der 
Unterschied folgender Hochpassfilter liegt:

R = 1 MOhm
C = 10 nF


und

R = 10 kOhm
C = 1 uF


Sofern ein Spannungsfolger geschaltet wird, ist das doch fast egal weil 
der Eingang ohnehin hochohmig ist. Oder woran entscheidet man die Größe 
des Kondensators bzw. Widerstandes?

von Rolf S. (audiorolf)


Lesenswert?

Heinrich Heine schrieb:
> Das Signal kommt mir ziemlich verrauscht vor. Ich hab die Vermutung,
> dass der Filter mein GND versaut.

Die einlaufenden hohen Frequenzen werden schon zum GND abgeleitet, das 
ist ja normal. Der muss das aber abkönnen. Bei dem was du sonst noch 
schreibst, glaube ich, dass du einfach unglücklich gebaut hast.

von Heinrich Heine (Gast)


Angehängte Dateien:

Lesenswert?

Ich verstehe es nicht.

Ich habe eben folgende Tiefpasskombinationen getestet:

R: 10 kOhm ; C=3,3 uF (Elko)
R: 10 kOhm ; C=10 uF (Kerko)
R: 100 kOhm ; C=100 nF (Kerko)

was tut sich?  Nix ... Ich habe nach wie vor das Offset auf dem Signal.

Rolf S. schrieb:
> Bei dem was du sonst noch
> schreibst, glaube ich, dass du einfach unglücklich gebaut hast.

Ich habe mal den relevanten Abschnitt aus dem Datenblatt in Abbilung 9 
angefügt. Demnach ist der Offset "normal". Die Platine hat eine eigene 
GND-Plane und alle Versogungsspins sind mit 100nF Abblockkondensatoren 
versehen, sollte also auch nicht daran liegen.

Wisst ihr vielleicht woran es liegen kann, dass der Offset nach wie vor 
vorhanden ist ?

von Heinrich Heine (Gast)


Lesenswert?

Okay, der Messpunkt war scheinbar das Problem. Habe nocheinmal etwas 
nachgelötet, jetzt klappt es. Vielen Dank !

von Joe F. (easylife)


Lesenswert?

Heinrich Heine schrieb:
> Ich habe eben folgende Tiefpasskombinationen getestet

Ich hoffe mal du hast es als Hochpass und nicht als Tiefpass aufgebaut.

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.