Forum: PC-Programmierung Oszilloskop Tiefpassfiler


von Jimbo (Gast)


Lesenswert?

Hallo

ich bin gerade dabei nen Programm zu schreiben mit dem ich über den USB 
Port Messdaten empfange über nen Interface und das dann als Oszilloskop 
visualisiere. Das klappt auch schon alles. Nur bei der Darstellung 
meiner Messdaten muss ich noch etwas tun und zwar nen Digitalen Tiefpass 
programmieren. Hat einer von euch damit schon erfahrung? Ich möchte das 
ganze im C++ Code schreiben, leider fehlt mir dazu noch der Ansatz.
Danke im Voraus.

von yalu (Gast)


Lesenswert?

Such mal im Netz nach IIR-Filtern. Damit lassen sich softwaremäßig
u.a. Filter mit den Eigenschaften von analogen Filtern realisieren.
Der Programmieraufwand ist gering, für die Bestimmung der Parameter
aus den gewünschten Eigenschaften (Ordnung, Grenzfrequenz usw.) ist
aber etwas Theorie erforderlich.

  http://de.wikipedia.org/wiki/IIR-Filter

Wenn es dir hauptsächlich nur um die optische Glättung der Kurve geht,
um störendes Messrauschen zu entfernen, findest du vielleicht hier
etwas passendes:

  http://de.wikipedia.org/wiki/Gl%C3%A4ttung

von HildeK (Gast)


Lesenswert?

Das einfachste Filter ist (x1 + x2)/2.
Etwas besser ist (x1)/4 + (x2)/2 + (x3)/4 und das Ergebnis gibt das 
gefilterte x2. Du musst halt warten, bis du x3 auch empfangen hast, um 
x2 zu bestimmen.
Alternativ:
Wenn das Scope-Signal periodisch ist, kannst du n ganze Zeilen 
zwischenspeichern und n-fach mitteln.

von Karl (Gast)


Lesenswert?

Die von HildeK vorgeschlagenen Lösungen sind in diesem Fall vollkommen 
nutzlos. Sowohl der Durchlassbereich als auch die Sperrdämpfung sind 
eine Katastrophe.

Entweder einen vernünftigen IIR, was mit doubles auch einigermaßen 
impementierbar ist, dafür aber alle nachteile eines analogen Filters mit 
sich bringt, oder FIR, was meist mehr Rechenaufwand bedeutet, dafür aber 
z.B. konstante Gruppenlaufzeit bieten kann.

Ein analoges Anti-Aliasing Filter brauchst du aber eigentlich sowieso.

von Jimbo (Gast)


Lesenswert?

Hi,

danke schonmal für euere Postings ... Werde mir mal den IIR Filter zur 
Gemüte ziehen. Hoffe ich steige da durch und komme mit der 
Programmierung voran. :-)

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.