www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Von Koeffizienten zu Übertragungsfunktion


Autor: Merlin Erick (Firma: none) (new_user)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Ich habe mal eine "kleine" Frage.
Wie kann ich von Filterkoeffizienten mittels Matlab zur 
Übertragungsfunktion des Filters gelangen.

Beispiel: Nehmen wir an ich habe folgende filterkoeffizienten 
b = [0.000264  0.001595  0.004249  -0.018820  -0.026935  0.065497 
0.076514  -0.124576  -0.132255  0.154638  0.154638  -0.132255  -0.124576 
0.076514  0.065497  -0.026935  -0.018820  0.004249  0.001595  0.000264].

Gibt es eine Matlabfunktion womit ich die Übertragungsfunktion direkt 
bestimmen ggf. ploten kann?

Danke für eure Hilfe

mfG

Autor: Thomas B. (detritus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Plotten kannst du sie, indem du dir noch einen "a"-Nullvektor erstellst, 
der die gleiche Länge wie b hat und dann ins erste Element eine 1 
schreibst. Also
a=zeros(1, length(b));
a(1)=1;

Dann kannst du mit
freqz(b, a)
den Frequenzgang plotten. Wenn du dich für die dahinterstehende Ü-Fkt im 
Frequenzbereich interessierst, hilft dir Matlab afaik nicht.

Autor: Merlin Erick (Firma: none) (new_user)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die Antwort, Thomas.
Das ist genau was ich wollte.

Was könnte mir helfen, wenn ich mich für die dahinterstehende Ü-Funktion 
in Frequenzbereich interessiere?

Noch mal vielen Dank

Autor: Aehh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genuegt das Plotten nicht ?

Autor: Gerrit Buhe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Merlin,

offensichtlich handelt es sich um FIR-Filterkoeffizienten. Wie Thomas 
schon schrieb, kannst Du die Üertragungsfunktion mit der Funktion

freqz(b) oder freqz(b,1)

ermitteln. Es genügt aber der Aufruf nur mit Deinen Koeffizienten, wie 
eben dargestellt.
Du fragst nun nach der Übertragungsfunktion im Frequenzbereich. Das ist 
aber genau die Ausgabe von freqz(b), allerdings in normierter Form, da 
Deine Abtastrate nicht bekannt ist.
Die Abzisse ("X-Achse") ist von 0...1 beschriftet, wobei die 1 für die 
Nyquistfrequenz steht. Bei z.B. 10kHz Abtastrate, wären das 5kHz. Die 
Mittenfrequenz Deines Bandpasses ist normiert bei 0.5, also bei 2.5khz 
für den Fall mit 10kHz Abtastrate. OK?

Du kannst die Darstellung auch gleich mit direkt ablesbaren Frequenzen 
erzeugen, wenn Du wie folgt vorgehst:

fs=10e3;
[h,w]=freqz(b);
plot(w/pi*fs/2, 20*log10(abs(h))); grid on
xlabel('Freq / Hz');
ylabel('Magnitude / dB');
titel('Transfer Function')

Im Übrigen: Die Koeffizienten eines FIR-Filters entsprechen der 
Impulsantwort. Aus der Impulsantwort kann mit Hilfe der 
Fourier-Transformation die Frequenzübertragungsfunktion ermittelt werden 
(und umgekehrt!). Eine FFT führt hier also auch zum Ziel, allerdings 
wäre die Frequenzauflösung sehr gering, da sie der Anzahl Deiner 
Koeffizienten entsprechen würde. Für eine höhere Auflösung nutzt man ein 
sogenanntes Zero padding (Auffüllen mit Nullen) bis z.B. 1024, um eine 
Frequenzauflösung von 1024 Punkten zu bekommen.

Dies nur zum Verständnis des Zusammanhangs Koeffizienten/Impulsantwort 
und Übertragungsfunktion.

Ich hoffe das hilft.

Viele Grüße!

Gerrit, DL9GFA

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.