Forum: Digitale Signalverarbeitung / DSP / Machine Learning Amplitudengang |H(f)| aus H(z)


von Karl Heinz (dabob23)


Lesenswert?

Tag zusammen,

hab ein Problem und ich komm einfach ned drauf!

Folgendes ist gegeben:
H(z) = (z+1)^2 / (z^2+0.64) = (1+2·z^-1+z^-2) / (1+0.64·z^-2)

Nun will ich daraus den Amplitudengang IH(f)I grob skizzieren und Minima
 und Maxima sowie der Stellen in der 1. Nyquistzone [0, fs/2], wo diese 
auftreten herausfinden.

Kann mir bitte jemand helfen??
Bin am verzweifeln.

Danke
bob

von alex (Gast)


Lesenswert?

Die Frequenzachse entspricht dem Einheitskreis in der z-Ebene, daher ist 
der Übergang von z-Transformation zur zeitdiskreten 
Fouriertransformation den Betrag von z auf 1 zu setzten und somit

von alex (Gast)


Lesenswert?

ups.. Formatierung

von Karl Heinz (dabob23)


Lesenswert?

Das heißt ich setze das ein??

Wie mach ich dann weiter??

von russenbaer (Gast)


Lesenswert?

Servus Wilhem,

Setze sowohl Zähler Null und rechne Dir die Nullstellen aus, d.h. 
diejenigen z-Werte für die Eingesetzt das Polynom Null ergibt.

=> (z+1)^2 = 0 => z = ?

Setze das Nennerpolynom Null und rechne Dir die Pole aus.

=> z^2 + 0.64 = 0 => z = ?

Sowohl Pole als auch Nullstellen sind in der komplexen z-Ebene.
Nimm Dir ein Blatt Papier und Zeichne Dir ein karthesisches 
Koordinatensystem auf und mache einen Kreis mit Radius 1 der den 
Mittelpunkt im Ursprung des Koordinatensystems hat. Die Aufgespannte 
Ebene ist Deine komplexe Ebene, die x-Achse ist die reelle Achse, die 
y-Achse ist die imaginäre Achse.

Zeichne die Nullstellen des Zählerpolynoms als o ein und die Nullstellen 
des Nennerpolynoms als x (= Pole des Systems).

Wenn Du nun auf Deinem Kreis von Winkel 0 Grad (entspricht der (x,y) 
Position (1,0) über fs/4 (entspricht (0,1) ) nach 180 Grad, was fs/2 
entspricht (-1,0) gehst kannst Du den Betragsfrequenzgang Deines Systems 
abschätzen:
- o auf dem Kreis bedeuten unendliche Dämpfung
- x auf dem Kreis oder ausserhalb bedeuten das Dein System instabil ist

x Ziehen den Betragsfrequenzgang in die Höhe ("verstärken"), o Dämpfen.
Der Abstand vom Einheitskreis bestimmt wie stark der Einfluß der 
Nullstelle/Pols ist.
Der Winkel entspricht deiner Frequenz, wobei die Umrechnung Winkel zu 
Frequenz oben im Text angegeben ist.

Du kannst Dir die ganze Geschichte auch als Gummi-überzogene Ebene 
vorstellen, wobei die o die Ebene Punktuell nach unten ziehen (wobei an 
der Stelle des o unendlich stark gezogen wird) und die x nach oben 
ziehen (ebenso unendlich stark). Dein Frequenzgang entspricht der Höhe 
des Gummis auf einem Kreis mit Radius 1, der den Mittelpunkt im Ursprung 
hat.


Ich hoffe das hilft Dir, viel Spass mit der Hausübung.

lg
russenbaer

PS: vergiss nicht das Du auf soviele Nullstellen bzw. Pole kommen musst 
wie die jeweilige Potenz des Polynoms ist!

von Karl Heinz (dabob23)


Lesenswert?

Erstma 1000 Dank für die Mühe!!

Ja die Nullstellen bzw. Polstellen habe ich mittlerweile schon 
ausgerechnet.

Ich hab eine doppelte Nullstelle bei -1, und ein komplex konjugiertes 
Polstellenpaar bei
-+j0,8.

Das mit fs/4 is schon mal sehr gut das hilft mir weiter!!

Aber ich verstehe immer noch nicht wie ich dann vom Winkel auf die 
Frequenz kommen soll???
Wie mache ich das am besten das ich das dann grob skizzieren kann??

DANKE nochmal!

Wilhelm

von Freddy (Gast)


Lesenswert?

Mit MATLAB kannst du dir das grob skizzieren.

von Karl Heinz (dabob23)


Lesenswert?

Ich wills aber nicht mit MATLAB zeichnen...

Ich will es verstehen :D

Will einfach wissen wie man aus einem PN-Diagramm grob den 
Amplitudengang zeichnen kann. Wie sich da was auswirkt, oder wie man da 
vorgeht??

Kapier das einfach ned!

von russenbaer (Gast)


Lesenswert?

Servus nocheinmal,

Das Bogenmass entspricht der Frequenz und entspricht bei einem Kreis mit 
Radius 1 dem Winkel, d.h 0 Grad = 0Hz = 0* pi, fs/8 = 45 Grad = pi/4, 
fs/4 = 90 Grad = pi/2, .... , 180 Grad = fs/2 = pi.
Winkel 0 ist wie oben angegeben (x,y) = (1,0), 90 Grad entspricht (x,y) 
= (0,1). Die Drehrichtung ist somit gegen den Uhrzeigersinn.

Das was du als Frequenzachse im Bodediagramm kennst ist transformiert 
auf den Einheitskreis!
Das bedeutet wenn Du dich auf der gerichteten Kurve des Einheitskreises 
von 0Grad bis 180Grad bewegst, bewegst Du Dich im Bodediagramm von 0Hz 
zu fs/2.

Der Frequenzgang selber ergibt sich aus der Auswertung deines Polynoms 
entlang des Einheitskreises (gerichteten Kurve) von 0 Grad bis 180 Grad.

Wenn Du Geraden vom Ursprung Durch die Nullstellen/Pole ziehst und diese 
mit dem Einheitskreis schneidest ist an dem Schnittpunkt (=Winkel!) die 
Frequenz wo sich die Nullstelle/Pol am stärksten auswirkt.
Wie stark sich es diese Unstetigkeitsstellen auswirken hängt vom ABSTAND 
zwischen Schnittpunkt Einheitskreis mit Gerade und Pol/Nullstellen ab.

Wie in meinem letzen Posting beschrieben ziehen Nullstellen den 
Betragsfrequenzgang NACH UNTEN und Pole nach OBEN.

Ich hoffe das hilft Dir.

Beste Grüße,
Markus

von Karl Heinz (dabob23)


Lesenswert?

Ah ok Danke.
Ich verstehe schon mehr!
Aber wie finde ich den Wert heruas wo der Amplitudengang anfängt??
also ich mein ober, unterhalb oder bei 0??

Oder kann man das ned so genau sagen!

Und du meintest von 0-180 Grad, warum ned weiter???

Wie würde der amplitudengang dann aussehen???

Danke nochmal!!!

von Markus B. (russenbaer)


Lesenswert?

Servus,

Quantitativ kannst Du den Frequenzgang nicht exakt bestimmen, ist ja nur 
Qualitativ gefragt, d.h. Du fängst auf irgendeiner "Höhe" zum zeichnen 
an, oder Du rechnest Dir den Startwert aus (setze z = 1 + 0 j = 1, in 
Deinem Fall: 4/1.64 (kannst natürlich dann auch in dB umrechnen wenn Du 
magst)). Ist dann halt "genauer".

0 bis 180 Grad entspricht 0Hz bis fs/2 !
Im LTI Fall ist das ausreichend. Du hast ja Konjugiert komplexe 
Pole/Nullstellen, d.h. die Pole/Nullstellen werden von der reellen Achse 
gespiegelt und der Abstand der "unteren" Pole und Nullstellen ist ja 
genauso Weit zum Einheitskreis unten wie der Abstand der "oberen" zum 
oberen Teil des Einheitskreises.
Wenn Du dir den Bereich 0 bis -180Grad (= 0Hz bis -fs/2) anschaust wirst 
Du dann genau den gleichen Betragsfrequenzgang sehen wie im Bereich 0 
bis 180 Grad, ist ja eine Eigenschaft der LTI Systeme ;)
Die Phase ist allerdings invertiert, was Dich aber bei der Aufgabe nicht 
zu interssieren braucht ..,

Hoffe das Hilft Dir.

lg
Markus

von Freddy (Gast)


Lesenswert?

Du kannst auch einfach eine Grenzwertbetrachtung machen:

mit


Und nu der Wert für wo der Amplitudengang anfängt (f'=0):

Also fängt dein Amplidudengang bei 7.75dB an.

Mfg

von Karl Heinz (dabob23)


Lesenswert?

Ich glaub es wird langsam :D

Aber was mach ich mit Pol bzw. Nullstellen die in (0,0) liegen??? Wie 
muss ich die berücksichtigen???
Was ist mit doppelten bzw mehrfachen Nullstellen? Ist es dann einfach 
steiler?
Und was ist mit denen die ausherhalb sind??? Dann is es ja instabil 
oder??

Und wenn ich jetzt ein x oder 0 in (1,0) fang ich dann halt je nachdem 
oben oder unten an?? Richtig???

Wie funktioniert die Grenzwertbetrachtung??

DANKE!!

von Markus B. (russenbaer)


Lesenswert?

Sers,

Pol/Nullstelle im Ursprung - generelle Verstärkung/Dämpfung.

Mehrfache Nullstelle - weiss nicht mehr genau - ist schon lang her ;) 
denke aber schon.

Nullstellen ausserhalb Einheitskreis - System nicht mehr Minimalphasig.

Pole am Einheitskreis oder ausserhalb - System nicht mehr stabil.

Nullstellen auf dem Einheitskreis bedeuten unendliche Dämpfung.

Zur Grenzwertbetrachtung, wobei ich persönlich gleich in der z-Ebene 
bleiben würde, da sind die Punkte ja eindeutig:

z = r * exp(j*2*pi*f/fs) = (x,y) .

r = 1 am Einheitskreis = dort wo Du die Übertragungsfunktion auswertest.

f = 0 Hz bedeutet bei r=1  => z = 1 = (1,0)

H(z=1) = (z+1)^2 / (z^2+0.64) = (1+1)^2 / (1+0.64) = 4/1.64

f = fs/4 bedeutet bei r=1  => z = exp(j*1/4*2*pi) = exp(j*pi/2) = j = 
(0,1)
H(z=j) = (j+1)^2 / (j^2 + 0.64) = (-1 + 2*j + 1)/ (-1 + 0.64) = -2*j / 
0.39

abs(H(z=j)) = 2/0.39

f = fs/2 => .... => z = -1 = (-1,0), H(z=-1) = 0

Damit hast Du sehr einfach schon 3 Punkte Deines Frequenzganges exakt 
bestimmt, die Tendenzen dazwischen kannst Du mit den Polen/Nullstellen 
abschätzen.

Die dB Berechnungen musst Du schon selber machen...


lg
Markus

von Karl Heinz (dabob23)


Lesenswert?

Vielen Dank Markus ich habe es jetzt endlich kapiert!!!

Echt cool von dir das du dir die Mühe gemacht hast und die Zeit genommen 
hast!!

Also danke nochmal!!!

MFg
Wilhem

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

> Ich wills aber nicht mit MATLAB zeichnen...

Beitrag "Impulsantwort"
Ein Bodeplot aus der Übertragungsfunktion mit Scilab

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.