Hallo Leute,
ich habe hier den Chip von TI ADS1298 und möchte nun den Anti-Aliasing
Filter dafür entwerfen.
Das Frequenzspektrum welches mich interessiert geht bis fb=150Hz.
Da der Chip einen Delta-Sigma ADC besitzt werde ich mir das Oversampling
zu nutzen machen und höher abtasten damit ich einen einfacheren
Anti-Aliasing Filter brauche.
Wenn ich das Signal jetzt mit fs=2kHz abtaste habe ich 13,33-faches
Oversampling.
Da reicht doch ein einfacher RC-Tiefpass am Eingang aus oder?
Die Cut-off Frequenz definiere ich doch trotzdem mit 150 Hz oder etwa
bei der halben Abtastfrequenz (fs/2 = 1kHz) wie es oft beschrieben
steht?
Grüße
Loomit
Ich würde einen einfachen Tiefpass so tief wie es deine Anwendung
erlaubt legen (also 150 Hz).
Zu AA-Filter generell:
Der ist prinzipiell nur notwendig, wenn du in deinem zu messenden Signal
Frequenzanteile oberhalb der halben Samplerate hast, die so groß sind,
dass sie durch das Aliasing störende Fehler im Nutzsignal verursachen.
Z.B. ein Signal aus einer Temperaturmessung wird normalerweise so
langsam sein, dass man da eigentlich keinen AA-Filter benötigt und es
sonst keine Störsignale gibt.
Also erst einmal deine Anforderungen bezüglich Genauigkeit festlegen,
dann weiter untersuchen.
Was willst du eigentlich mit dieser hohen Auflösung (ADS1298) messen?
Ich möchte ein EKG-Signal messen und habe die hohe Abtastrate gewählt um
einen einfacheren analogen AA-Filter nutzen zu können. Die weitere
Filterung werde ich dann digital machen (Dezimierung,50-Hz-Filterung,
Baseline Removing,...)
Fritz schrieb:
Zu AA-Filter generell:
Der ist prinzipiell nur notwendig, wenn du in deinem zu messenden Signal
Frequenzanteile oberhalb der halben Samplerate hast, die so groß sind,
dass sie durch das Aliasing störende Fehler im Nutzsignal verursachen.
Also das EKG-Signal hat ja nur ein Frequenzspektrum des EKG-Signals
beträgt ja ca.0,05Hz - 150Hz. Wenn ich also z.B. nur mit 500Hz abtaste
ist die halbe Abtastfrequenz 250Hz. Also bräuchte ich nicht unbedingt
einen Anti-Aliasing Filter??
Allerdings einen TP 1. Ordnung mit Grenzfrequenz um die 150Hz ist nicht
möglich da er wie Kevin K. schon gesagt hat, bereits bei der
Grenzfrequenz -3dB dämpft und das würde das EKG-Signal ja bereits
abschwächen.
guckst du MAX7400 - MAX7407 oder aehnliche. Konnte ich frueher bei maxim
samplen.
niedrige frequenzen zu filtern mit einen RC tp ist ein bisschen doof. Da
kriegst du entweder einen grossen widerstand (das rauscht schoen), oder
eine grosse kapazitaet oder beides.
Alternativ einen op nehmen und als aktive filterung schalten. Beim
googlen habe ich viele beispiele gefunden: google -> "aktive filter op"
Bis dann.
Loomit schrieb:> Die weitere> Filterung werde ich dann digital machen (Dezimierung,50-Hz-Filterung,> Baseline Removing,...)
Jetzt kommen wir der Sache schon ein bißchen näher!
Welche Ausgangsabtastrate nach Dezimierung möchtest du eigentlich
erreichen?
Danach richtet sich alles. Soll dies größer als 100Abt/sec sein, dann
muß dein 50-Hz Filter eine schmale Bandsperre sein, sonst macht eine
höhere Abtastrate keinen Sinn. Oder willst du eine sehr steilen
digitalen Tiefpass knapp vor 50Hz legen?
Loomit schrieb:> Allerdings einen TP 1. Ordnung mit Grenzfrequenz um die 150Hz ist nicht> möglich da er wie Kevin K. schon gesagt hat, bereits bei der> Grenzfrequenz -3dB dämpft und das würde das EKG-Signal ja bereits> abschwächen.
Siehe oben. Auf jeden Fall solltest du aber die Abtastrate des ADC so
legen, dass Oberschwingen (oder vielleicht schon die 50HZ) auf den
Nullstellen des eigebauten sinc-Filters des ADC's liegen.
Wenn du sowieso vor hast, digital zu filtern, gibt das dir die
Möglichkeit, den analogen TP am Eingang zu kompensieren, auch den
Frequenzgang des SINC-Filters kanns du geradebiegen!
Loomit schrieb:> Also das EKG-Signal hat ja nur ein Frequenzspektrum des EKG-Signals> beträgt ja ca.0,05Hz - 150Hz. Wenn ich also z.B. nur mit 500Hz abtaste> ist die halbe Abtastfrequenz 250Hz. Also bräuchte ich nicht unbedingt> einen Anti-Aliasing Filter??
Es geht hier nicht ums Nutzsignal, sondern auch um Störsignale.
Und die kann man nie ganz vermeiden. Ausserdem, handelt es sich
bei den von Dir angegebenen "höchstens 150Hz" denn um Sinussignale?
Bei allen nichtsinusförmigen Signalen hast Du Oberwellen.
Gruss
Harald
Hallo danke für die Antworten schonmal!
Harald schrieb:
> Es geht hier nicht ums Nutzsignal, sondern auch um Störsignale.> Und die kann man nie ganz vermeiden. Ausserdem, handelt es sich> bei den von Dir angegebenen "höchstens 150Hz" denn um Sinussignale?> Bei allen nichtsinusförmigen Signalen hast Du Oberwellen.
Nein das ist kein Sinussignal und daher habe ich ich auf jeden Fall
Oberwellen.
Fritz schrieb:
> Welche Ausgangsabtastrate nach Dezimierung möchtest du eigentlich> erreichen?> Danach richtet sich alles. Soll dies größer als 100Abt/sec sein, dann> muß dein 50-Hz Filter eine schmale Bandsperre sein, sonst macht eine> höhere Abtastrate keinen Sinn. Oder willst du eine sehr steilen> digitalen Tiefpass knapp vor 50Hz legen?
Eine Ausgangsabtastrate nach Dezimierung von 100Abt/sec würde mir schon
reichen. Ich hatte aber geplant den 50-Hz Filter in Form einer schmalen
Bandsperre zu realisieren.
Fritz schrieb:
> Siehe oben. Auf jeden Fall solltest du aber die Abtastrate des ADC so> legen, dass Oberschwingen (oder vielleicht schon die 50HZ) auf den> Nullstellen des eigebauten sinc-Filters des ADC's liegen.> Wenn du sowieso vor hast, digital zu filtern, gibt das dir die> Möglichkeit, den analogen TP am Eingang zu kompensieren, auch den> Frequenzgang des SINC-Filters kanns du geradebiegen!
Man kann bei dem ADS1298 im Register die "decimation rate" einstellen
und das entspricht dann auch der Gesamtabtastrate oder besser
Ausgangsabtastrate des ADC. Aah jetzt verstehe ich das. Der tastet also
mit fmod = fclk/4 = 512kHz ab die der Chip hat und man konfiguriert mit
den Bits des Config Registers also den Dezimierungsfilter, sprich die
Ausgangsdatenrate.
Aber wie lege ich jetzt die Abtastrate so dass Oberschwingungen oder die
50Hz auf den Nullstellen des sinc filters liegen??
Gruß
Loomit
Loomit schrieb:> Aber wie lege ich jetzt die Abtastrate so dass Oberschwingungen oder die> 50Hz auf den Nullstellen des sinc filters liegen??
Da hilft halt nur das Studium des Datenblatts.
Auf Seite 27, 28 DIGITAL DECIMATION FILTER (Original TI-Datasheet) ist
der Filter genau beschrieben.
Bei 50 Hz Datenrate hättest du dann laut Datenblatt 50Hz und alle
Oberschwingungen zu 100% gedämpft.
Da aber die minimale Datenrate aber 250 ist und man den ADC-Takt laut
Datenblatt nicht entscheiden ändern kann mußt du in der eigenen Software
die 50Hz und die restlichen Oberschwingungen unterdrücken.
Sprich: Da dir Datenrate von 100 Hz genügen einen digitalen Tiefpass mit
einer Grenzfrequenz von ca. 47 Hz basteln und von 250Hz auf 100Hz
dezimieren. Wie schon von mir erwähnt kannst du auch noch den
sinc-Filterverlauf im Bereich von 0 - 250 Hz geradebiegen falls
notwendig.
Oder höhere Datenrate wählen, dann bist du im geraderen Bereich des
sinc-Filters, aber dein Decimation-Filter wird länger!