Forum: Digitale Signalverarbeitung / DSP / Machine Learning Digitales Filter nur über Filterkoeffizienten?


von Mumba S. (mumba)


Lesenswert?

Hallo zusammen,

ich bräuchte etwas Unterstützung. Ich will eine Art digitales Filter, 
hab aber eigentlich zu wenig Zeit und Nerv mich sehr tief einzuarbeiten. 
Es geht um ein Uni-Projekt und nachdem Elektronik/Informatik oder 
Ähnliches nicht mein Fachgebiet ist, versuch ichs mal mit 
Minimal-Aufwand;)


Soweit bin ich schon:
Ich weiß was von Zeit- und Frequenzbereich und hab auch schon von 
Übertragungsfunktionen gelesen. Dabei bin ich über Filterkoeffizienten 
und einigermaßen anschauliche Blockschaltbilder gestolpert. 
Glücklicherweise habe ich auch ein Applet gefunden, dass mir die 
Filterkoeffizienten nach meinen Vorstellungen berechnet (zumindest 
soweit ich das erkennen kann).

Was mich etwas verwirrt sind z-Transformationen...
Meine Frage:
Brauch ich die?
Oder kann ich einfach diese Filterkoeffizienten nehmen und wie in den 
Blockschaltbilder ungefähr so verrechnen:
y(n)= b0*x(n)+b1*x(n-1)*b2*x(n-2)+...+ a1*y(n-1)+a2*y(n-2)*...

Ich würde mich über etwas Hilfe sehr freuen.
Vielen Dank schonmal für alle Tipps.
Mumba

von Christoph db1uq K. (christoph_kessler)


Lesenswert?


von Mumba S. (Gast)


Lesenswert?

Danke für den Tipp.
Den Artikel hatte ich bereits gelesen.

Aber selbst nach wiederholtem Lesen bin ich mir noch unsicher. Ich 
glaube, die Antwort auf meine Frage müsste im Bereich von Ja/Nein 
liegen. Könnte jemand die Frage mal lesen?
Danke schon mal.

von Lucky L. (rantanplan)


Lesenswert?

Wenn du die Struktur (Blockschaltbild) deines Filters bereits kennst und 
die die Koeffizienten nach deinen Vorstellungen bereits berechnen lassen 
hast, brauchst du die z-Transformation nicht mehr.

Aber sie steht schon fast da. Durch geschicktes umformen der 
Differenzengleichung (y(n)) würdest du auf die z-Trafo kommen.

von Mumba S. (Gast)


Lesenswert?

Hallo,
Danke erstmal für die Antwort.

Ich habe mein Problem inzwischen gelöst.
Falls sich sonst noch jemand dafür interessiert:
Die Filterkoeffizienten habe ich mit dem JavaApplet hier erstellt:
http://www.dsptutor.freeuk.com/IIRFilterDesign/IIRFilterDesign.html

Bei den ausgegebenen Koeffizienten muss man nur ein bisschen was 
beachten oder so wie ich willkürlich alle einigermaßen sinnvollen 
Kombinationen durchspielen.

Im Gegensatz zu den meisten Seiten (wie auch hier: 
http://www.mikrocontroller.net/articles/Digitalfilter_mit_ATmega#Software_zur_Koeffizientenberechnung) 
sind die ausgegebenen Werte für b eigentlich a. Wenn die Buchstaben 
vertauscht sind, müssen noch die Vorzeichen der richtigen a-Werte 
geändert werden. Dann kann man alles zusammen in ne Formel packen:
y(k)=b0*x(k)+b1*x(k-1)+…+bN*x(k-N)+ a1*y(k-1)+…+aN*y(k-N)

Dafür, dass ich eigentlich keine Ahnung habe, bin ich sehr zufrieden mit 
meinem Ergebnis:D
Danke nochmal
Mumba

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.