Forum: Analoge Elektronik und Schaltungstechnik Filterlösung für ein ADC gesucht


von Passi (Gast)


Lesenswert?

Moin, folgendes Problem bei einer Filterung eines Signals für einen ADC

f_ADC_sample: 500 kSps
f_Signanateil_max: >250 kHz
Amplitude bei f>250 kHz: 2V
Auflösung des ADC: 2mV

ich will natürlich möglichst nah an eine "brick-wall" Filterung ran, 
weiß aber auch, dass das natürlich 1. nicht möglich ist und 2. die 
Annäherung damit eben mit dem Umfang des Aufbaus wächst. Eine 
Grenzfrequenz von 60-128 kHz wäre allerdings wünschenswert.

Ich hatte dafür eigentlich einen Filter 10. Ordnung vorgesehen. Das 
Problem ist allerdings, dass dieser eine neg. Offset von ca. -30 mV am 
Ausgang erzeugt 
(https://www.google.com/search?client=firefox-b-d&q=ltc1569-7). Ich kann 
dies durch einen Hochpass korrigieren. Daraus folgt allerdings 
gleichzeitig, dass mir der DC Anteil meines Eingangssignals gefiltert 
wird.

Wie würdet ihr das lösen? Entsprechend den oberen Angaben benötige ich 
eine Dämpfung bei 250kHz um 60 dB. Was würdet ihr da als sinnvoll 
ansehen?;

- Offset des aktuellen Filters anders korrigieren, wenn ja, wie?
- einen anderen Filter kleinerer Ordnung verwenden?
- mehrere RC/LC-Filter kaskadieren?

Vielleicht gibt es ja auch noch andere Lösungsansätze, die ich noch 
nicht im Kopf habe? Die Daten oben sind übrigens in Stein gemeißelt, 
daran kann ich leider nix ändern, auch wenn man üblicher Weise höher 
abtastet. Wäre das möglich müsste ich hier sicher keinen Beitrag 
eröffnen :)

Danke vorab!

von Gustl B. (-gb-)


Lesenswert?

https://rf-tools.com/lc-filter
http://sim.okawa-denshi.jp/en/OPseikiLowkeisan.htm

Ich probiere gerade selber so Filterzeugs. Ich werde an einem OPV ein 
Sallen Key Filter hinbauen, dahinter dann einen passives LC Filter und 
nochmal einen OPV mit Sallen Key.

Edit:
Das passt nicht wirklich zusammen.

Passi schrieb:
> f_Signanateil_max: >250 kHz
> Amplitude bei f>250 kHz: 2V

Passi schrieb:
> Eine
> Grenzfrequenz von 60-128 kHz wäre allerdings wünschenswert.

Was ist die höchste Frequenz die du messen möchtest?

: Bearbeitet durch User
von Harlekin (Gast)


Lesenswert?

Passi schrieb:
> neg. Offset von ca. -30 mV am Ausgang erzeugt

Welcher Wert wäre noch akzeptabel?
Wurde der Wert gemessen? Welches Teilerverhältinis? Welche Speisung 
wurde verwendet? Wie war der Aufbau? Im Datenblatt findet sich der 
Hinweis: "A poor ground will increase DC offset, clock feedthrough, 
noise and distortion."


Reicht es den Offset softwareseitig zu korrigieren?

von Wolfgang (Gast)


Lesenswert?

Passi schrieb:
> Ich hatte dafür eigentlich einen Filter 10. Ordnung vorgesehen. Das
> Problem ist allerdings, dass dieser eine neg. Offset von ca. -30 mV am
> Ausgang erzeugt

Dann ist an dem Filter noch etwas faul. Was ist die Ursache für den 
Offset?
Schaltplan?

von Olaf (Gast)


Lesenswert?

Erstaunlich. Ein Posting mit wirklich allen Angaben und wo man sogar 
erkennt das jemand die Vorlesung zum Thema noch im Kopf hat. :)

> Das Problem ist allerdings, dass dieser eine neg. Offset von ca. -30 mV am
> Ausgang erzeugt

Warum? Das ist doch mehr wie das Datenblatt sagt.

Du koenntest das Filter natuerlich mit OPs selber hinzaubern, aber bei 
10. Ordnung wird das mit den Kondensatoren vermutlich aufwendiger, 
besonders wenn deine Schaltung noch einen weiteren Temperaturbereich 
fahren soll.

Vielleicht kannst du bei dem tollen Filter-IC das du da ausgegraben hast 
noch einen Servo-OP dranschalten der den Offset auf 0V regelt wenn dein 
Signal das zulaesst? Oder von Hand den Offset wegregeln wenn es nur eine 
einmalige Sache ist? Oder einfach den Offset ignorieren? Oder in 
Software immer rausrechnen? Fuer letzteres den Eingang kurzschliessen 
und eine 0-Messung machen.

Fuer was wird das eigentlich? Ich finde es erstaunlich das jemand so 
einen Aufwand treibt und dann mit 10Bit zufrieden ist. Heute will doch 
jeder mindestens 16Bit und ist sauer wenn er mehr wie ein RC-Glied 
braucht. :)

Und ich vermute mal hoehere Samplerate und einfacherer Filter willst du 
nicht? :-D

Olaf

von Forist (Gast)


Lesenswert?

Passi schrieb:
> Ich hatte dafür eigentlich einen Filter 10. Ordnung vorgesehen. Das
> Problem ist allerdings, dass dieser eine neg. Offset von ca. -30 mV am
> Ausgang erzeugt
> (https://www.google.com/search?client=firefox-b-d&q=ltc1569-7).

Trau dich ruhig, statt einer Google Suchanfrage, die konkrete 
Typenbezeichnung LTC1569-7 oder einen Link auf das Datenblatt dieses 
integrierten 10th Order Tiefpass Filters anzugegben.
https://www.analog.com/media/en/technical-documentation/data-sheets/15697fs.pdf

von Christian S. (roehrenvorheizer)


Lesenswert?

Bei fester Frequenz und fester gesiebter Betriebsspannung sollten sich 
deutlich weniger als 30 mV Offset ergeben.

Ein erster Aufbau existiert wohl noch nicht?


MfG

von Passi (Gast)


Angehängte Dateien:

Lesenswert?

Guten Morgen, ich gehe erst einmal nach und nach auf alles ein:

In the divide-by-4 or divide-by-16 modes, the output DC offset will 
typically change –9mV (–27mV) when the power supply varies from 3V to 5V 
(±5V). The offset is measured with respect to GND (Pin 3).

Gustl B. schrieb:
> Edit:
> Das passt nicht wirklich zusammen.
>
> Passi schrieb:
>> f_Signanateil_max: >250 kHz
>> Amplitude bei f>250 kHz: 2V

Es ist Okay wenn Signalanteile größer 250 kHz "abgeschnitten", mehr gibt 
eben der ADC nicht her, ich sagte ja bereits typischer weise tastet man 
deutlich höher ab.

Harlekin schrieb:
> Welcher Wert wäre noch akzeptabel?

Auf den Filter folgt eine Verstärkung um Faktor 10 bzw 100. Daher würde 
ich gar keinen Offset drin haben, damit das Signal nicht unproportional 
verstärkt wird.

Harlekin schrieb:
> Welches Teilerverhältinis?

Was genau meinst du damit?

Harlekin schrieb:
> Welche Speisung
> wurde verwendet?

+/-5V DC/DC Wandler (TVN 3-0921)
über 4lagige Platine welche eine eigene GND-Plane besitzt

Harlekin schrieb:
> Wie war der Aufbau?

Ich hatte ihn etwas verändert, und aus den Abbildungen aus dem 
Datenblatt abgewandelt. Ein direktes Beispiel für +/- 5V und etwa 160 
kHz Grenzfrequenz war nicht angegeben. Aktueller Aufbau s. Anhang. Als 
R_ext wurde 8 kOhm gewählt.

Harlekin schrieb:
> Im Datenblatt findet sich der
> Hinweis: "A poor ground will increase DC offset, clock feedthrough,
> noise and distortion."

Deshalb die GND-Plane. Unter anderem steht dort aber auch :
In the divide-by-4 or divide-by-16 modes, the output DC offset will 
typically change –9mV (–27mV) when the power supply varies from 3V to 5V 
(±5V). The offset is measured with respect to GND (Pin 3).
(Seite 9, Absatz DC-Offset). Der Offset scheint also "normal" zu sein.

Von mehreren wurde angemerkt, ob man den Offset softwareseitig 
weg-rechnen kann. Aufgrund der möglichen folgenden Verstärkung wäre das 
eher zu vermeiden.

Olaf schrieb:
> noch einen Servo-OP dranschalten der den Offset auf 0V regelt wenn dein
> Signal das zulaesst?

kannst du das weiter ausführen was du meinst ? Unter Servo-OP finde ich 
nichts vernünftiges im Internet. Wie würdest du die Offset-Kompensation 
über Hand durchführen. Widerstände und einen Poti ?

Vielen Dank schon einmal für die ganzen hilfreichen Beiträge!

von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

zu beachten gilt auch:
"Therefore, the sampling frequency is twice the clock frequency and 64 
times the filter cutoff frequency. Input signals with frequencies near 2 
• fCLK ± fCUTOFF will be aliased to the passband of the filter and 
appear at the output unattenuated."

Da hat einer das Dabla nicht ganz gelesen:

"Harlekin schrieb:
Welches Teilerverhältinis?
Was genau meinst du damit?
"


MfG

von Peter F. (Gast)


Lesenswert?

Meine Erfahrung ist, dass ein Sälen key 4. Ordnung für Anti Aplias 
Filter in der Regel ausreicht. Entwerfe ihn einfach so, dass er ein 
Bessel verhalten hat. Das bringt dir konstante Gruppenlaufzeit und 
linearen Phasengang.

von Peter F. (Gast)


Lesenswert?

Mal abgesehen von deiner Filtergeschichte. Ein offset von 30mv ist OK 
solange der temperaturdrift klein bleibt. Du muss für solche genauen 
Anforderungen sowieso kalibrieren.

von Achim S. (Gast)


Lesenswert?

Passi schrieb:
> the divide-by-4 or divide-by-16 modes, the output DC offset will
> typically change –9mV (–27mV) when the power supply varies from 3V to 5V
> (±5V). The offset is measured with respect to GND (Pin 3).
> (Seite 9, Absatz DC-Offset). Der Offset scheint also "normal" zu sein.

laut Schaltbild hast du doch den"divide by 1" mode -also ist der Offset 
eher zu groß.

Passi schrieb:
> +/-5V DC/DC Wandler (TVN 3-0921)

dessen Ausgangsripple bzw. seine harmonischen können gerade auf 0Hz 
runtergemischt werden- eine ungünstige Kombination. Kannst du die Sache 
versuchsweise Mal aus einem sauberen Labornetzteil statt aus dem DCDC 
versorgen?

von Randolph (Gast)


Lesenswert?

Passi schrieb:
> Moin, folgendes Problem bei einer Filterung eines Signals für einen ADC
>
> f_ADC_sample: 500 kSps
> f_Signanateil_max: >250 kHz
> Amplitude bei f>250 kHz: 2V
> Auflösung des ADC: 2mV

Passi schrieb:
> ich will natürlich möglichst nah an eine "brick-wall" Filterung ran,
> weiß aber auch, dass das natürlich 1. nicht möglich ist und 2. die
> Annäherung damit eben mit dem Umfang des Aufbaus wächst. Eine
> Grenzfrequenz von 60-128 kHz wäre allerdings wünschenswert.

60-128 kHz sind kein Problem.

Wir haben diese Filtertechniken immer scherzhaft als Kaffeefilter 
bezeichnet, weil die Grenzen so scharf waren, das Signale (wie bildhaft 
gesprochen) die Kaffeepulver enthielten sauber geblockt wurden, aber das 
Nutzsignal unverändert durchlies. Eben wie beim Kaffeefilter.

Ich hab dir die Schaltung mal angehängt.

von Burkhard K. (buks)


Lesenswert?

Passi schrieb:
> +/-5V DC/DC Wandler (TVN 3-0921)

Datenblatt TVN sagt:
  Switching frequency    100 kHz min. Pulse frequency modulation

Damit wäre der Ripple mitten im Dich interessierenden Frequenzband. Oder 
hab ich was überlesen?

von Olaf (Gast)


Lesenswert?

> kannst du das weiter ausführen was du meinst ? Unter Servo-OP finde ich
> nichts vernünftiges im Internet.

Wenn der Mittelwert deines Signals immer auf 0V geht dann koenntest du 
einen Teil abzweigen, integrieren und dann mit einem langsamen aber 
guten OP den Ausgang auf diesen Mittelwert regeln. Das hat man frueher 
wohl mal
gemacht weil OPVs die irgendwas anders gut konnten in dem Bereich 
schlechter waren. Ich weiss leider die Nummer nicht, aber es gab dazu 
Applikationen von Linear und/oder AD.

Kuck mal hier:

http://sound-au.com/articles/dc-servo.htm

Olaf

von Harlekin (Gast)


Lesenswert?

Passi schrieb:
> Harlekin schrieb:
>> Welches Teilerverhältnis?
>
> Was genau meinst du damit?

Es ging mir um die Beschaltung an Pin 5 (divide 1 or divide-by-4 or 
divide-by-16 modes) zum Vergleich des Offsets mit den Angaben im 
Datenblatt.

von Harlekin (Gast)


Lesenswert?

Christian S. schrieb:
> zu beachten gilt auch:
> "Therefore, the sampling frequency is twice the clock frequency and 64
> times the filter cutoff frequency. Input signals with frequencies near 2
> • fCLK ± fCUTOFF will be aliased to the passband of the filter and
> appear at the output unattenuated."

Guter Hinweis: Also wird ein Vorfilter im Signalpfad benötigt.

von Christian S. (roehrenvorheizer)


Lesenswert?

Genau. Mit Vorfilter vor dem Hauptfilter bitte.

MfG

von Peter F. (Gast)


Lesenswert?

Christian S. schrieb:
> Genau. Mit Vorfilter vor dem Hauptfilter bitte.
>
> MfG

Getaktete Filter sind nicht wirklich optimal. Ich würde die nur nehmen 
wenn man muss.

von Passi (Gast)


Lesenswert?

Ich habe eben gesehen, dass ich da irgendwie das die flasche Beschaltung 
des Filters hochgeladen habe. Ich habe mal die aktuelle Beschaltung hier 
erneut hochgeladen. Tut mir leid dafür! Pin 5 ist mit -5V verbunden, 
dadurch soll sich dem Datenblatt entsprechend ein Teilerfaktor von 1 
einstellten.

Christian S. schrieb:
> zu beachten gilt auch:
> "Therefore, the sampling frequency is twice the clock frequency and 64
> times the filter cutoff frequency. Input signals with frequencies near 2
> • fCLK ± fCUTOFF will be aliased to the passband of the filter and
> appear at the output unattenuated."

Für +-5V sollte sich folgendes einstellen:
f_CLK = 8.192MHz
f_CUTOFF = 256kHz (bei 5k Ohm R_ext) ich wähle hier 8kOhm um f_CUTOFF 
auf 160 kHz zu legen

Meine höchstfrequenzen Signalanteile liegen bei etwa 700 kHz. Das sollte 
demnach also passen.

Achim S. schrieb:
> essen Ausgangsripple bzw. seine harmonischen können gerade auf 0Hz
> runtergemischt werden- eine ungünstige Kombination. Kannst du die Sache
> versuchsweise Mal aus einem sauberen Labornetzteil statt aus dem DCDC
> versorgen?

Eher schwieig, der Aufbau sitzt bereits auf einer Platine. Die 
Versorgungsspannung ist allerdings recht konstant. +4,975 V und - 4,980 
Habe ich eben gemessen.


Randolph schrieb:
> Ich hab dir die Schaltung mal angehängt.

Irgendwie kann ich die nicht sehen, hattest du vielleicht vergessen den 
Anhang hochzuladen?

Burkhard K. schrieb:
> Datenblatt TVN sagt:
>   Switching frequency    100 kHz min. Pulse frequency modulation
>
> Damit wäre der Ripple mitten im Dich interessierenden Frequenzband. Oder
> hab ich was überlesen?

Ja genau, ist allerdings über Abllockkondensatoren (100nF vor jedem IC 
und 10uF an den Ausgängen des DCDC-Wandlers) recht gut gepuffert.

Olaf schrieb:
> Wenn der Mittelwert deines Signals immer auf 0V geht dann koenntest du
> einen Teil abzweigen, integrieren und dann mit einem langsamen aber
> guten OP den Ausgang auf diesen Mittelwert regeln.

Also wenn ich keinen DC-Anteil im Signal habe? Dann könnte ich doch auch 
gleich den Hochpass drin lassen, oder übersehe ich da etwas?

Harlekin schrieb:
> Es ging mir um die Beschaltung an Pin 5 (divide 1 or divide-by-4 or
> divide-by-16 modes) zum Vergleich des Offsets mit den Angaben im
> Datenblatt.

Habe n=1 eingestellt (Pin4 auf Vs- kurzgeschlossen)

Christian S. schrieb:
> Genau. Mit Vorfilter vor dem Hauptfilter bitte.
>
> MfG

Aber das würde doch nicht die -30mV erklären bzw kompensieren?

Peter F. schrieb:
> Christian S. schrieb:
>> Genau. Mit Vorfilter vor dem Hauptfilter bitte.
>>
>> MfG
>
> Getaktete Filter sind nicht wirklich optimal. Ich würde die nur nehmen
> wenn man muss.

Wie schon im ersten Beitrag erwähnt, ich wäre gegenüber Vorschläge wie 
ihr die Filterung lösen würdet sehr offen. Egal ob der 1569-7 
beibehalten wird oder nicht. Siehe:

Passi schrieb:
> Wie würdet ihr das lösen? Entsprechend den oberen Angaben benötige ich
> eine Dämpfung bei 250kHz um 60 dB. Was würdet ihr da als sinnvoll
> ansehen?;
>
> - Offset des aktuellen Filters anders korrigieren, wenn ja, wie?
> - einen anderen Filter kleinerer Ordnung verwenden?
> - mehrere RC/LC-Filter kaskadieren?

von Passi (Gast)


Angehängte Dateien:

Lesenswert?

Aktuelle Beschaltung des Filters

von Harlekin (Gast)


Lesenswert?

Passi schrieb:
> Christian S. schrieb:
>> Genau. Mit Vorfilter vor dem Hauptfilter bitte.
>>
>> MfG
>
> Aber das würde doch nicht die -30mV erklären bzw kompensieren?

Es geht um Störungen, welche im Signalpfad eintreffen.


Betreffend dem Offset finde ich folgenden Beitrag prüfenswert:

Achim S. schrieb:
> Passi schrieb:
>> +/-5V DC/DC Wandler (TVN 3-0921)
>
> dessen Ausgangsripple bzw. seine harmonischen können gerade auf 0Hz
> runtergemischt werden- eine ungünstige Kombination. Kannst du die Sache
> versuchsweise Mal aus einem sauberen Labornetzteil statt aus dem DCDC
> versorgen?


Passi schrieb:
> Peter F. schrieb:
>> Christian S. schrieb:
>>> Genau. Mit Vorfilter vor dem Hauptfilter bitte.
>>>
>>> MfG
>>
>> Getaktete Filter sind nicht wirklich optimal. Ich würde die nur nehmen
>> wenn man muss.
>
> Wie schon im ersten Beitrag erwähnt, ich wäre gegenüber Vorschläge wie
> ihr die Filterung lösen würdet sehr offen.

Er hat oben ein Sallen-Key-Filter 4. Ordnung vorgeschlagen.
Diesem würde ich einen passiven TP 1. Ordnung voranstellen, denn OPs 
sind nicht beliebig schnell, zudem könnten die Schutzdioden HF 
demodulieren.

Peter F. schrieb:
> Meine Erfahrung ist, dass ein Sälen key 4. Ordnung für Anti Aplias
> Filter in der Regel ausreicht. Entwerfe ihn einfach so, dass er ein
> Bessel verhalten hat. Das bringt dir konstante Gruppenlaufzeit und
> linearen Phasengang.

Die niedrigste Schaltfrequenz des DC-DC-Wandlers ist nicht optimal.

Burkhard K. schrieb:
> Datenblatt TVN sagt:
>   Switching frequency    100 kHz min. Pulse frequency modulation
>
> Damit wäre der Ripple mitten im Dich interessierenden Frequenzband.

von Achim S. (Gast)


Lesenswert?

Passi schrieb:
> . Die Versorgungsspannung ist allerdings recht konstant. +4,975 V und -
> 4,980 Habe ich eben gemessen.

womit nachgemessen? ein Multimeter, das drei Nachkommastellen ausgibt, 
nutzt hierfür nichts. du musst mit dem Oszi in AC-Kopplung nachmessen, 
was sich im Bereich von einigen hundert kHz tut.

von Passi (Gast)


Angehängte Dateien:

Lesenswert?

Habe das ganze mal über ein Analog Discovery gemessen. Das ist ein 
digitales Oszi mit "Differenztastköpfen" in Form von Jumperkabel.

Habe 4 Screenshots angefügt:

+5V gegen GND bei 1us
+5V gegen GND bei 100us
-5V gegen GND bei 1us
-5V gegen GND bei 100us

Was meint ihr dazu?

von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

So, im Ahnang Schaltung und AC Sweep einer Schaltung mit grob 2 MHz 
Grenzfrequenz und 12 dB Verstärkung für einen ADC mit differentiellen 
Eingängen. Das ist zuerst ein OPV in Sallen Key, dann ein LC Filter und 
am Ende ein Diff-OPV mit Sallen Key.
Ob das wirklich so funktioniert ist noch unklar, wird aber über die 
Weihnachtstage getestet.

von Rainer V. (a_zip)


Lesenswert?

Ich würde mich auch erst mal von diesem Filter 10ter-Ordnung 
verabschieden! Der Vorschlag mit Tiefpass und Filter 4ter-Ordnung 
scheint mir wert, es auszuprobieren und mit Testmessungen mal zu sehen, 
was dein ADW dann liefert. Dann kannst du doch recht schnell 
entscheiden, ob du wirklich die Filterordnung
erhöhen mußt.
Gruß Rainer

von Peter S. (Gast)


Lesenswert?

Passi schrieb:
> Habe das ganze mal über ein Analog Discovery gemessen. Das ist ein
> digitales Oszi mit "Differenztastköpfen" in Form von Jumperkabel.
>
> Habe 4 Screenshots angefügt:
>
> +5V gegen GND bei 1us
> +5V gegen GND bei 100us
> -5V gegen GND bei 1us
> -5V gegen GND bei 100us
>
> Was meint ihr dazu?

Solche Messungen sind mit Vorsicht zu genießen. Welche Eingangsimpedanz 
haben die tastköpfe? Es Bann auch sein, dass deine 5V OK sind aber du 
etwas in deine tastköpfe einkoppelst. Alles schon erlebt weil die 
wenigsten wirklich wissen wie man rauschen wirklich misst.

von Burkhard K. (buks)


Lesenswert?

Peter S. schrieb:
> Es Bann auch sein, dass deine 5V OK sind aber du
> etwas in deine tastköpfe einkoppelst

Insbesondere ist das Analog Discovery ein USB-Oszi, d.h. die Qualität 
der Messungen hängt unmittelbar mit der jeweiligen Stromversorgung 
zusammen. Nimm ein richtiges Oszi - wenn möglich mit FFT.

von Burkhard K. (buks)


Lesenswert?

Gustl B. schrieb:
> wird aber über die
> Weihnachtstage getestet.

@Gustl B.: SK-LPs wird in der Literatur nachgesagt, dass sie bei hohen 
Frequenzen schwächeln: http://www.ti.com/lit/an/sloa024b/sloa024b.pdf , 
Fig. 8. Wäre interessant, ob Du das auch zu sehen bekommst.

von Gustl B. (-gb-)


Lesenswert?

Tja, ich habe keine Spekki. Ich kann aber mal am Eingang durchsweepen 
und gucken was der ADC hinter der Filterei als Amplitude sieht und das 
aufzeichnen.

von Rainer V. (a_zip)


Lesenswert?

...zumal die geschalteten Filter immer mehr Probleme mit sich bringen 
können, als sie lösen...
Gruß Rainer

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.