Anti Aliasing Filter für 16Bit ADC

C

Chris

Guest
Hallo zusammen,

ich arbeite zur Zeit an einer Messschaltung die mehrer 16Bit ADC
enthält. Aufgrund einer hohen Anzahl an Kanälen habe ich mir den
ADS8364 als Wandler ausgesucht. Da die ganze Schaltung aufgrund von
technischen Einschränkungen (industrial Firewire) nur mit 8kHz
abtasten soll stehe ich jetzt vor der Aufgabe ein Filter (am besten
Bessel) mit hoher Ordnung (=>4) zu suchen um Aliasing zu verhindern.
Leider finde ich kein IC das einen aktiven kontinuierlichen Filter
enthält welchen man ohne riesige Widerstände (>2MOhm) auf cut off
Frequenzen von 800Hz einstellen kann. Nun stellt sich mir die Frage
ob man vieleicht Switched Capactior Filter für solch eine Aufgabe
nehmen könnte. Leider fehlt mir die Erfahrung um die Werte in den
Datasheets dieser Filter wirklich richtig zu verstehen. Also, hier nun
meine Frage an euch. Ist es möglich wenigstens eine 14Bit (16 Bit)
Auflösung mit einem Switched Capacitor Filter hinzubekommen der auch
noch DC accurate sein muß? (Wie z.B. der LTC 1065 von linear?) Oder
gibt es andere Alternativen?? Hat jemand evtl. eine Schaltung von euch
in der ihr so einen Filter mit OpAmps realisiert habt?

Danke im vorraus!

CU,
Chris
 
Chris schrieb:
Hallo zusammen,

ich arbeite zur Zeit an einer Messschaltung die mehrer 16Bit ADC
enthält. Aufgrund einer hohen Anzahl an Kanälen habe ich mir den
ADS8364 als Wandler ausgesucht. Da die ganze Schaltung aufgrund von
technischen Einschränkungen (industrial Firewire) nur mit 8kHz
abtasten soll stehe ich jetzt vor der Aufgabe ein Filter (am besten
Bessel) mit hoher Ordnung (=>4) zu suchen um Aliasing zu verhindern.
Leider finde ich kein IC das einen aktiven kontinuierlichen Filter
enthält welchen man ohne riesige Widerstände (>2MOhm) auf cut off
Frequenzen von 800Hz einstellen kann. Nun stellt sich mir die Frage
Hast Du Dir mal den MAX274 angeschaut.

http://pdfserv.maxim-ic.com/en/ds/MAX274-MAX275.pdf

Im Datenblatt ist extra ein Abschnitt (Figure 5) wie man bei niedrigen
Frequenzen ohne diese Riesen-Widerstände auskommt.

Gruß Andreas
 
Chris wrote:
ich arbeite zur Zeit an einer Messschaltung die mehrer 16Bit ADC
enthält. (...) stehe ich jetzt vor der Aufgabe ein Filter (am besten
Bessel) mit hoher Ordnung (=>4) zu suchen um Aliasing zu verhindern.
(...)
ob man vieleicht Switched Capactior Filter für solch eine Aufgabe
nehmen könnte. Leider fehlt mir die Erfahrung um die Werte in den
Datasheets dieser Filter wirklich richtig zu verstehen. Also, hier nun
meine Frage an euch. Ist es möglich wenigstens eine 14Bit (16 Bit)
Auflösung mit einem Switched Capacitor Filter hinzubekommen der auch
noch DC accurate sein muß?
Switched-Capacitor-Filter arbeiten analog, aber natürlich zeitdiskret.
Daher sollte es reichen, den im Datenblatt angegebenen Störabstand
mit dem Dynamikbereich des ADCs zu vergleichen.
Faustformel: ADC-Auflösung in Bit * 6dB + 2dB ergibt den nötigen
Störabstand des Vorfilters (wenn dieses eine Rauschamplitude in der
Größe der ADC-Quantisierung einbringen darf).

cut off Frequenzen von 800Hz
Kein Schreibfehler? Bei einem solchen Abstand zwischen der Eingangs-
Grenzfrequenz und der Nyquistfrequenz (4kHz in Deinem Falle) sollte
es ziemlich einfach sein, einen brauchbaren Tiefpass mit OPVs dafür
zu dimensionieren. Im ZWeifelsfalle einfach im Tietze/Schenk
("Halbleiterschaltungstechnik") die entsprechenden Beispiele
umdimensionieren; Widerstände kleiner 2MOhm sollten für solche
Filter echt kein Problem sein.

Thomas.
 
Switched Capactior Filter
Die Datenblattangaben bei LTC ( und wohl auch allen anderen )
sind etwas optimistisch/geschönt. Es kommt hinten erstmal ein
saftiger Ripple raus der da nicht berücksichtigt wird. Den kriegt
man über ein Nachfilter in der Praxis nicht so perfekt wieder
weg wie das Datenblatt annimmt.
Bei fester Eckfrequenz und niederer Flankensteilheit ist
SC eigentlich nicht nötig.

kein IC das einen aktiven kontinuierlichen Filter enthält
Die UAF von BurrBrown haben tatstächlich etwas zu kleine Kondensatoren
für die 800Hz. Aber man würde die Exoten ohnehin besser vermeiden
und konventionell mit OPs aufbauen. Grössere Kondensatoren wird
man mit engen Toleranzen nicht leicht bekommen. Jedoch: Bessel
dürfte nicht anfällig für Bauteiltoleranzen sein.
Für ein Aliasing-Filter ist Bessel aber eigentlich nicht steil
genug. Butterworth wäre schon üblicher.

MfG JRD
 
Thomas Rehm <Th.Rehm@T-Online.de> wrote in news:3FF9ABA0.1B7D@T-
Online.de:

cut off Frequenzen von 800Hz
Kein Schreibfehler? Bei einem solchen Abstand zwischen der Eingangs-
Grenzfrequenz und der Nyquistfrequenz (4kHz in Deinem Falle) sollte
es ziemlich einfach sein, einen brauchbaren Tiefpass mit OPVs dafür
zu dimensionieren. Im ZWeifelsfalle einfach im Tietze/Schenk
("Halbleiterschaltungstechnik") die entsprechenden Beispiele
umdimensionieren; Widerstände kleiner 2MOhm sollten für solche
Filter echt kein Problem sein.
Nimm doch das alte DOS-Programm von BurrBrown (filter2.exe)
und die AB-034.PDF Beschreibung dazu. Vielleicht findet sich das ja
noch auf ti.com (oder wer hatte BB übernommen?).

Für FLAT-Passband (also Butterworth), 800Hz -3dB erhalte ich bei 4kHz:
7. Ordnung -98dB (vielleicht etwas zu knapp)
8. Ordnung -112dB
Als Werte so max 220nF und max 22kOhm, oder eben skalierst wie du es
brauchst. Grösstes Problem bei solchen Filter ist imho die
Bauteiltoleranz; C's mit 1% sind recht teuer.

Naja geschaltete Filter sind selten besser als 12bit (ca. 72dB),
so dass die diskrete Lösung oder der MAX274 wohl einzige Wahl sind.
Allerdings ist da immer mit Verstärkungsfehlern bei 0Hz zu rechnen.
16 bit (0.02%) Genauigkeit bei DC ist nicht realisierbar.
Der MAX280 ging da IMHO einen guten Weg. Prinzip Saugkreis: DC geht 1:1
durch und hohe Frequenzen wurden durch einen C ausgekoppelt vom Chip
"geschluckt". Ist ein Maximteil ("Maxim" übersetzt = Verfügbarkeit oft
fraglich ;-(. Denkbar wäre es, dieses Saugkreisprinzip auch für einen
analogen Aufbau des Filters zu verwenden ...

M.
--
Bitte auf mwnews2@pentax.boerde.de antworten.
 
Thomas Rehm <Th.Rehm@T-Online.de> wrote in message news:<3FF9ABA0.1B7D@T-Online.de>...

Switched-Capacitor-Filter arbeiten analog, aber natürlich zeitdiskret.
Daher sollte es reichen, den im Datenblatt angegebenen Störabstand
mit dem Dynamikbereich des ADCs zu vergleichen.
Faustformel: ADC-Auflösung in Bit * 6dB + 2dB ergibt den nötigen
Störabstand des Vorfilters (wenn dieses eine Rauschamplitude in der
Größe der ADC-Quantisierung einbringen darf).
Nun ja, der ADS8364 ist kein besonders "genauer" 16 Bit Wandler. Der
hat selbst
ein S/N + THD von ca. 81dB. Dafür sind aber auch 6 Wandler in einem
Package.
Kann man aufgrund dieses Wertes z.B. den SC Filter LTC1065 nehmen? Der
hat immerhin S/N + THD von 87 dB? Zusätzliche Bits muß man dann halt
durch Mittelwertbildung gewinnen.

Nebenbei: Was bedeutet die Spurious Dynamic Range?

THX!

CU,
Chris!
 
Chris wrote:
Kann man aufgrund dieses Wertes z.B. den SC Filter LTC1065 nehmen? Der
hat immerhin S/N + THD von 87 dB?
Von diesem Datenblattwert her würde ich sagen, brauchbar (mit
dem Filter selbst habe ich aber noch nicht gearbeitet).

Zusätzliche Bits muß man dann halt durch Mittelwertbildung gewinnen.
Das funktioniert nur bei Gauß´schem Rauschen gut. Die Störungen bei
switched capacitor filters bestehen aber auch aus Transienten bzw.
Störspitzen.

Nebenbei: Was bedeutet die Spurious Dynamic Range?
Meinst Du nicht eher den "spurious free dynamic range"?
Zumindest unter diesem Stichwort wird man beim googlen schnell
fündig.

Thomas.
 
Matthias Weingart <mwnews@pentax.boerde.de> wrote in message news:<Xns9468BA526B448AlwLookOnTBrightSide@212.21.75.70>...

Nimm doch das alte DOS-Programm von BurrBrown (filter2.exe)
und die AB-034.PDF Beschreibung dazu. Vielleicht findet sich das ja
noch auf ti.com (oder wer hatte BB übernommen?).
Man kann auch den guten alten UAF42 (hatte ewig lange Lieferzeiten,
gibts den überhaupt noch?) 'nachbauen' und die Filterschaltung mit dem
BB-Programm austüfteln. Ich mach das mit einem TL084, die integrierten
50k-Widerstände hab ich durch 49K9 (1%) ersetzt. Kondensatoren mit 1%
gibts bis einige -zig nF recht preiswert von WIMA, bei der
UAF42-Ersatzschaltung braucht man nur 4N7. Bei fg = 800Hz dürften die
externen Widerstände <1MOhm sein. Ich hab auch mal einen 'Ersatzchip'
gebaut (SMD-Schaltung, geringfügig größer als das DIL-Gehäuse),
hochgenaue SMD-Kondensatoren sind allerdings nicht einfach zu
bekommen.

Winfried Büchsenschütz
 
Hallo Chris,

zum Thema Aliasing muss man zuallererst wissen, welches Signal tatsächlich
da sein kann. Es gibt Situationen, wo z.B. die Signal und Störbandbreite
schon von Natur aus bandbegrenzt sind. Da tuts dann natürlich ein
einfacheres Filter. Eine andere Lösung ist natürlich, die Abtastrate höher
zu wählen, als die die im Endeffekt gebraucht wird und danach digital zu
filtern. Da Du ohnehin Intelligenz im Frontend hast (industrial Firewire
hört sich danach an) gehe ich davon aus, dass der Aufwand eines schnelleren
Wandlers mit anschließender digitaler Datenreduktion die preiswertere und in
jedem Fall kleinere und tolerantere Lösung sein wird. Wenn es z.B. nicht
unbedingt auf absolute Amplitudenwerte dafür aber auf gute Auflösung geht,
könnte ein (billiger) Codec mit 48 kS oder 96 kS mit das Leben schön einfach
machen. Ein Aliasingfilter mit Eckfrequenz >= 800 Hz, welches bei 48 kHz
entsprechende Dämpfung bringt sollte nicht mehr so kritisch sein, vor allem
aber billig und superklein. Der Rest sollte ein Prozessor, der Firewire
kann, nebenbei erledigen können.

Viel Erfolg im neuen Jahr

Martin

CU,
Chris
P.S. gerne, wann kommst Du mich besuchen, oder sieht man sich mit Netmeeting
irgendwo?
 
w-buechsenschuetz@web.de (Winfried Buechsenschuetz) wrote in
news:a547ca8.0401070056.98982f8@posting.google.com:

Matthias Weingart <mwnews@pentax.boerde.de> wrote in message
news:<Xns9468BA526B448AlwLookOnTBrightSide@212.21.75.70>...

Nimm doch das alte DOS-Programm von BurrBrown (filter2.exe)
und die AB-034.PDF Beschreibung dazu. Vielleicht findet sich das
ja noch auf ti.com (oder wer hatte BB übernommen?).

Man kann auch den guten alten UAF42 (hatte ewig lange
Lieferzeiten, gibts den überhaupt noch?) 'nachbauen' und die
Aber damit hat man ja nur 2 oder vielleicht 3 pole, bei 3 (4) OPV's!
Mit 4 OPV's kann man doch auch gleich 8 Pole realisieren (klar
mit mehr Dimensionierungsproblemen).

M.
--
Bitte auf mwnews2@pentax.boerde.de antworten.
 
Zusätzliche Bits muß man dann halt durch Mittelwertbildung gewinnen.
Das funktioniert nur bei Gauß´schem Rauschen gut. Die Störungen bei
switched capacitor filters bestehen aber auch aus Transienten bzw.
Störspitzen.
Dann ist wohl ein Medianfilter die bessere Wahl?? Oder sind andere
Verfahren möglich?

MfG,
Chris!
 
"Martin Schönegg" <martin.schoenegg#und_hier_ist_klar_was_hinkommt#@arcor.de> wrote in message news:<btgn0f$7ll$1@online.de>...

zum Thema Aliasing muss man zuallererst wissen, welches Signal tatsächlich
da sein kann. Es gibt Situationen, wo z.B. die Signal und Störbandbreite
schon von Natur aus bandbegrenzt sind. Da tuts dann natürlich ein
einfacheres Filter. Eine andere Lösung ist natürlich, die Abtastrate höher
zu wählen, als die die im Endeffekt gebraucht wird und danach digital zu
filtern. Da Du ohnehin Intelligenz im Frontend hast (industrial Firewire
hört sich danach an) gehe ich davon aus, dass der Aufwand eines schnelleren
Wandlers mit anschließender digitaler Datenreduktion die preiswertere und in
jedem Fall kleinere und tolerantere Lösung sein wird. Wenn es z.B. nicht

Logisch, doch leider interpretier der DSP der an die Schaltung
angeschlossen ist das ganze FW Protokoll (Ist nicht auf meinem Mist
gewachsen). D.h. bin ich mir nicht sicher ob ich die Werte schneller
als 8kHz auslesen kann, da es sich um ca. 32 Worte handelt. Das muss
man ausprobieren ;-( Deswegen bin ich auch so hinter SC Filtern her,
da diese über einen Takt parametrierbar sind.

unbedingt auf absolute Amplitudenwerte dafür aber auf gute Auflösung geht,
könnte ein (billiger) Codec mit 48 kS oder 96 kS mit das Leben schön einfach
machen. Ein Aliasingfilter mit Eckfrequenz >= 800 Hz, welches bei 48 kHz
entsprechende Dämpfung bringt sollte nicht mehr so kritisch sein, vor allem
aber billig und superklein. Der Rest sollte ein Prozessor, der Firewire
kann, nebenbei erledigen können.
Nun ja, ich hoffe das du recht hast. Aber die Entscheidung den ADS8364
zu nehmen ist schon gefallen. Der kann (wenns geht) ganze
250kSamples/sec auf 6 Kanälen parallel Sampeln. Hat halt den Nachteil
das er recht ungenau ist (für ein 16 Bit Wandler). Wie in den oberen
Posting bereits beschrieben hat dieser Wandler eine S/N+THD von 81dB
und damit eine relative Auflösung von ca. 13 Bit.

;-(



Viel Erfolg im neuen Jahr

dito!

Martin

CU,
Chris

P.S. gerne, wann kommst Du mich besuchen, oder sieht man sich mit Netmeeting
irgendwo?
:)
MfG,
Chris!
 

Welcome to EDABoard.com

Sponsor

Back
Top