Studium Z-Transformation als Frequenzgang

MAGIo

Active member
30 August 2010
26
0
Ich habe folgendes Problem. Nach Umrechnung einer Differenzengleichung per Z-Transformation und der entsprechenden Darstellung der Polstellen/Nullstellen im Einheitskreis, soll ich nun die Form als Frequenzgang darstellen. Leider verstehe ich nicht, wie ich an die Anfangswerte und an die Werte allgemein dort gelange. In meinem Beispiel war an der Stelle X(f/fa)=0 der Wert 2 und ich sehe anhand des Einheitskreises und meiner berechneten Werte keine Möglichkeit darauf zu kommen.

Ist bestimmt ganz einfach....
 
Du gehst auf dem Einheitskreis entlang, beginnend auf der reellen positiven Achse (also bei 1+j*0) und dann gegen den Uhrzeigersinn. Der erste Punkt entspricht f = 0, einmal rum entspricht f = fa, entsprechend ist ein Halbkreis (-1+j*0) genau Nyquist (fa/2), ein Viertelkreis (0+j) halbe Nyquist (fa/4), usw.

Für jeden Punkt denkst Du Dir jetzt eine Verbindungslinie zu allen Polstellen/Nullstellen. Dann bekommst Du den Betragsgang wenn Du das Produkt der Abstände zu allen Nullstellen bildest und es teilst durch das Produkt der Abstände zu allen Polstellen.

Für den Phasengang musst Du entsprechend für jede Verbindungslinie den Winkel zur reellen positiven Achse bilden (wieder im mathematisch positiven Sinne, also gegen den Uhrzeigersinn). Dann alle Nullstellenwinkel addieren und davon alle Polstellenwinkel abziehen.


Daran sieht man auch: Liegt eine Polstelle dicht am Einheitskreis gibt es dort einen scharfen Peak, liegt eine Nullstelle dicht am Einheitskreis gibt es dort eine starke Dämpfung.
 
Zuletzt bearbeitet:
Ok,hab ich alles soweit hinbekommen und verstanden. Doch nun steh ich am naechsten Punkt. FIR Filter.

Nach der Berechnung habe ich es mittels Z-Transformation und den jeweiligen Werten in den Einheitskreis gezeichnet. Sieht instabil aus, 2 konj. kompl. Nullstellen innerhalb des Kreises, 2 mit der gleichen Phase ausserhalb.

Das deckt sich im Anschluss auch gar nicht mit einem Frequenzgang, den ich zeichnen soll. Es gibt natuerliche eine fertige Formel fuer den Phasengang, doch trotzdem muss es doch so gehen wie zuvor auch.

hier die Aufgabe:
 

Anhänge

  • 14.png
    14.png
    80,1 KB · Aufrufe: 9
Nach der Berechnung habe ich es mittels Z-Transformation und den jeweiligen Werten in den Einheitskreis gezeichnet. Sieht instabil aus, 2 konj. kompl. Nullstellen innerhalb des Kreises, 2 mit der gleichen Phase ausserhalb.

Ein FIR-Filter ist immer stabil, da alle Polstellen im Ursprung liegen. Falls Nulstellen außerhalb liegen hat das nichts mit Stabilität zu tun, er ist dann höchstens nicht minimalphasig (weil allpasshaltig).

Wenn Deine Lösung nicht mit der Musterlösung übereinstimmt musst Du wohl nochmal nachrechnen. Was genau ist denn bei Dir anders als es sein sollte?

Rechnen kann man es freilich noch genauso...
 
Aber bei einem Filter mit H(z)=b0+b1*z^(-m)

mit b0=b1=1 und m=5 komm ich auf die Z-Transformierte 1+Z^(-5)

Gleichnamig gemacht (Z^5)+1/(Z^5).....

Nullstellen ausgerechnet, Polstellen sind hier ja auch im Urpsrung und die Werte sind alle im bzw. auf dem Einheitskreis. Alles logisch,alles gut..

Doch dann die Berechnung des erwaehnten FIR Filters, dort sind meine Nullstellen ausserhalb, die Polstellen doch ebenfalls im Ursprung. Das passt in meinen Augen nicht. Natuerlich sollte ich beim Ersten den Frquenzgang und beim FIR Filter den Phasengang berechnen bzw. skizzieren, aber das muss ja auch mit Hilfe des Einheitskreises und der Z.Transf. wie vorher auch funktionieren, statt mit der Formel fuer den Phasengang...
 
Doch dann die Berechnung des erwaehnten FIR Filters, dort sind meine Nullstellen ausserhalb, die Polstellen doch ebenfalls im Ursprung. Das passt in meinen Augen nicht.

Wieso sollte das nicht passen? Du hast 'nen 5-Tap-Filter also 'ne vierfache Polstelle im Ursprung und 4 Nullstellen. Die liegen in dem Beispiel sogar spiegelsymmetrisch um den Einheitskreis (ich komme auf 1.7[sup]±1[/sup] e[sup]±j 2.023[/sup]).

Das dürfte einen linearen Phasengang geben, soweit ich mich erinnere.

Natuerlich sollte ich beim Ersten den Frquenzgang und beim FIR Filter

Sind beides FIR-Filter...

den Phasengang berechnen bzw. skizzieren, aber das muss ja auch mit Hilfe des Einheitskreises und der Z.Transf. wie vorher auch funktionieren, statt mit der Formel fuer den Phasengang...

Klar geht das, wieso sollte es nicht gehen? Ist halt bisschen fummlig die Winkel zu konstruieren, aber wenn ihr es grafisch machen sollt dann musst Du da wohl durch. Und wenn was anderes rauskommt dann hast Du wohl was verkehrt gemacht... :p


*edit* MATLAB (freqz) sagt das:



sag ich doch, linearer Phasengang.
 
ich geh jetzt mal in die Bib das alles nochmal rechnen. Melde mich heute ABend mal mit einem Scan, dann wird es offensichtlich. thx
 
So.. zum Aufgabenteil f). Gelöst kriege ich das gelöst mit N/2*T für die Gruppenlaufzeit sowie -2pi N/2 * f/fa für den Phasengang, da symmetrisch und linearphasiges Verhalten (laut Skript)

doch wäre es ja logischer einen weiteren Lösungsansatz äquivalent dem zuvor besprochenen zu haben ausgehend von der Z-Transformierten. Das kriege ich nicht so hin, aber ist wohl nicht schlimm, da ich ja die Lösung per Formel in dem Fall hinkriege.

Mein Hauptproblem nun ist jedoch der Aufgabenteil f) wo auf dem Eingang eine simple Cosinusfunktion draufgegeben wird und man den Ausgang berechnen soll. Anhand der Werte berechnet in Aufgabenteil a) und e) [H(f=[fa/8]) und Gruppenlaufzeit] kann ich ja nun einfach sagen, dass die Verstärkung entsprechend dem Betrag H(fa/8) ist, also 1.71, und um zwei Umläufe verschoben (Gruppenlaufzeit). ALso einfach jeden Wert in der Cosinusfunktion mit 1,71 multiplizieren und in ein neues Diagramm zeichnen.

Ich denke soweit logisch....

AAAAAAAAABER: was, wenn ich es mittels dem Faltungsintegral lösen möchte? Ich kriege es nicht hin, dass sich die berechneten Werte mit denen der zuvor getätigten Rechnung decken. Also wird irgendwas von Beidem falsch sein. Ich habe mal in den Anhang meinen alternativen Lösungsansatz (Faltung) aufgeschrieben um das Problem zu verdeutlichen.

Hoffe Ihr (bzw. Du) könnt mir helfen, es ist frustrierend wenn man einfach nicht weiterweiss in dem Thema.

Gruß MAGIo
 

Anhänge

  • Aufgabe 14 FIR Filter 001.png
    Aufgabe 14 FIR Filter 001.png
    655 KB · Aufrufe: 3
AAAAAAAAABER: was, wenn ich es mittels dem Faltungsintegral lösen möchte? Ich kriege es nicht hin, dass sich die berechneten Werte mit denen der zuvor getätigten Rechnung decken. Also wird irgendwas von Beidem falsch sein. Ich habe mal in den Anhang meinen alternativen Lösungsansatz (Faltung) aufgeschrieben um das Problem zu verdeutlichen.

Hm, Faltungsintegral wird zur Summe, wie Du richtig geschrieben hast. Nun musst Du halt rechnen, ich weiß nicht wo das Problem ist. Du hast bei y(0) angefangen, das ist natürlich Unsinn, da es um den eingeschwungenen Zustand ging. Bei einem L-tap-FIR-Filter musst Du L-1 taps warten bis er eingeschwungen ist. Also ab y(4) kann man von eingeschwungen sprechen. Na und dann halt einfach ausrechnen...

y(4) = x(4)*h(0)+x(3)*h(1)+x(2)*h(2)+x(1)*h(3)+x(0)*h(4)
y(5) = x(5)*h(0)+x(4)*h(1)+x(3)*h(2)+x(2)*h(3)+x(1)*h(4)
y(6) = x(6)*h(0)+x(5)*h(1)+x(4)*h(2)+x(3)*h(3)+x(2)*h(4)

usw.

Geht natürlich in MATLAB etwas schneller mit CONV. ;) Sieht dann ungefähr so aus (oben Eingangs-, unten Ausgangssignal):



Man sieht, wie er die ersten 4 taps noch einschwingt, ab 0.5ms ist er dann eingeschwungen und wir haben einen wunderhübschen Cosinus.

Code:
clear;
fa = 8000;
f0 = 1000;
t0 = 1/fa;
taxis = 0:t0:3/f0;

h_FIR = [0.25,0.5,1,0.5,0.25];
xsig = cos(2*pi*f0*taxis);
ysig = conv(h_FIR,xsig);

figure(1);clf;subplot(211);
stem(taxis,xsig);
xlabel('t [s]');ylabel('x(t)');
subplot(212);
stem(taxis,ysig(1:length(taxis)));
xlabel('t [s]');ylabel('y(t)');


Trotzdem würde man das nie nicht so rechnen. Da man weiß, dass ein FIR-Filter ein lineares System ist, weiß man schon, dass ein Cosinus mit der gleichen Frequenz wieder rauskommt, nur Amplitude und Phase ändert sich. Tausend mal leichter die beiden Sachen zu bestimmen. Aber Du wolltest es ja über die Faltung.