Servus, Man will einen Tiefpass in den A/D-Wandler vom Mikrocontroller einsetzen. Die Grenzfrequenz ist 500Hz. Ich kann mir zwei Varianten vorstellen. 1. 1ms-Timer-Interrupt verwenden. D.h. A/D-Wandlung alle 1ms aufrufen, was sich nach der Nyquist-Theorie automatisch 500Hz Tiefpass ergibt. 2. A/D-Wandlung mit A/D-Interrupt direkt nacheinander aufrufen und komplexen Filterung-Algorithmus einsetzen, z.B. exponentielle Filterung. Welche ist besser? MfG Senmeis
>was sich nach der Nyquist-Theorie automatisch 500Hz Tiefpass ergibt.
Nein. Nach Nyquist ergibt das eine maximale Signalfrequenz von <500Hz,
die im abgetasteten Signal noch sicher rekonstrierbar ist!
Und das auch nur unter der Bedingung, dass das Nutzsignal am AD-Eingang
NUR Nutzfrequenzen <500Hz hat. (Stichwort: Aliasing)
Also immer: Signal => Tiefpass => AD
Ich verstehe. Variante 1 stellt keine Filterung dar! Die jetzige Frage ist, wie oft A/D-Wandlungen ausgeführt werden sollen? Bei Variante 2 wird der Mikrocontroller stets vom A/D-Wanlder belastet. Ist es eine gute Idee, A/D-Wandlungen jeweils in einem bestimmten Zeitabstand aufzurufen, sagen wir alle 1ms? MfG Senmeis
Der AD Wandler filtert nicht. man bekommt nur eine Nullstelle bei der Abtastfrequenz. Sonst nichts. Was soll denn gemessen werden ?
Falls das eingangssignal sowieso Bandbreitenbegrenzt ist, aber etwas Rauschen drauf hat, dann nimmt man die exponentielle filterung. Als komplex sollte man den Vorgang aber nicht bezeichen, Schieben und Addieren.
Wie schon von Matthias oben erwaehnt - filtern musst Du das analoge Signal VOR dem A/D-Wandler. Ansonsten kann immer Aliasing auftreten, ganz egal wie schnell du digitalisierst (zumindest so weit, bis die Analogbandbreite des A/D selber als Tiefpass wirkt, aber das sind selbst bei billigen PICs so 50 - 100 kHz). Wenn Du mal ein Alias-Signal hast, helfen Dir alle digitalen (DSP) Tricks nicht mehr weiter. Insgesamt also - einen ANALOGEN 500-Hz-Tiefpass vorschalten. Bei der Frequenz noch leicht mit Op-Amps, Kondensatoren und Widerstaenden zu realisieren. Microchip hat sogar einen Gratis-Filterdesigner im Netz, der den kompletten Schaltplan ausspuckt. Wolfgang
Welchen Prozessor verwendest Du ? Beim ATMega z.B. läuft die Wandlung unabhängig vom Prozessor. Also hats du als einzige Belastung das Holen des aktuellen Wertes und das Anstossen der nächsten Wandlung.
Trotzdem soll die Abtastfrequenz festgelegt werden, nicht wahr? Oder lässt man die Abtastfrequenz vom A/D-Wandler selber bestimmen, indem der A/D-Interrupt eingesetzt wird? MfG Senmeis
> Trotzdem soll die Abtastfrequenz festgelegt werden, nicht wahr? Oder > lässt man die Abtastfrequenz vom A/D-Wandler selber bestimmen, Die Abtastfrequenz muss zu deinem Signal und dem was du damit machen willst, passend festgelegt sein. Von Dir und nicht vom Wandler. >indem der > A/D-Interrupt eingesetzt wird? Das sowieso. Oder willst du das Flag dauernd pollen?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.