www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Z-Transformation FIR


Autor: roberto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Tag,

ich würde gerne wissen wie ich den Amplitudengang eines FIR Filters 
berechne?

die Koeffizenten hab ich

fa=50kHz
b0=0.0625
b1=0.25
b2=0.375
b3=0.25
b4=0.0625

H(z) ist somit

H(z)= (b0+b1*z^-1+b2*z^-2...)/(1+0)

0 da a0 koeffizenten nicht existieren

meine frage ist jetzt, wie bekomme ich daraus den amplitudengang?

z ist ja z=e^(j*2*pi*f/fa)

muss ich dies jetzt oben einsetzen und die frequenz varieren ? ich komm 
da einfach nicht weiter

lg roberto

Autor: Detlef _a (detlef_a)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>muss ich dies jetzt oben einsetzen und die frequenz varieren ?
ja, genau so.

Cheers
Detlef

Autor: roberto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gut ok aber dann muss ich doch cos(2*pie*f/fa)-j*sin(2*pi*f/fa) 
einsetzen bzw für den amplitudengang den betrag bilden also 
|H(w)|=sqrt(Re²+Im²)

und das wirde eine sehr sehr lange formel bzw. berechnung werden...gibs 
da nicht eine kürzere form?

Autor: joep (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, bei 5 Koeffizienten hält sich das ganze ja noch im Rahmen (das 
sind schon sehr wenig für ein FIR Filter).
Zum Glück gibt es Berechnungsprogramme die dir die Arbeit abnehmen, denn 
bei vielen Anwendungen hat man meißtens sehr viel mehr Koeffizienten.
Aber ich denke in deinem Fall wirst du das auch mit ein wenig Arbeit per 
Hand berechnen können.

Autor: ----- (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst den Amplitudengang auch mit einer DFT berechen.

Autor: joep (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Vorschlag wollte ich zuerst auch machen, aber da er ja eine 
einfachere Methode wollte hab ichs dann doch nicht geschrieben (ich 
denke der Aufwand ist wenn überhaupt nur minimal kleiner)  ;)

Autor: Detlef _a (detlef_a)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>und das wirde eine sehr sehr lange formel bzw. berechnung werden...gibs

da ist nix lang dran, das ist nen komplexes Polynom, nimm scilab oder 
octave zum Rechnen, wenn Du ersthaft Übertragungsfkts rechnen willst 
solltest Du sowieso nen Programmm bedienen können, mit dem man 
komfortabel komplex rechnen kann.

math rulez

Detlef

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.