|
Autor |
Übertragungsfunktion für Anfänger |
|
Wursti
Ehemals Aktiv  Dabei seit: 14.12.2015 Mitteilungen: 126
 | Themenstart: 2019-03-06
|
Hallo liebes Forum!
Ich bin ein Neuling in Sachen Matlab und Regelungstechnik. Ich arbeite mich gerade ein. Nun habe ich eine Grundlagenfrage zur Übertragungsfunktion, damit ich sie mir besser vorstellen kann. Folgendes Beispiel:
Ich habe eine eine bestimmte Übertragungsfunktion G und ein Eingangssignal x=2*cos(500*t)+5. Nun möchte ich bestimmen, wie der Ausgang aussieht.
Mein Vorgehen:
Zunächst habe ich x mit der fft Funktion transformiert:
nfft=2^16;
X=fft(x,nfft);
Daraufhin mit der Übertragungsfunktion multipliziert und zurück transformiert:
Y = G.*X;
y = ifft(Y,nfft);
Meine konkrete Frage:
Mein Eingangssignal hat eine Frequenz von 500/(2Pi) = 80 Hz. Die Übertragungsfunktion gibt meines Verständnisses an, wie das Übertragungsverhalten bei einer bestimmten Frequenz ist. Ist der Betrag der Übertragungsfunktion z.B. bei 80 Hz 10, dann sollte das erhalte ich als Ausgang eine Funktion, die mit 10 multipliziert worden ist. Jedoch klappt das bei mir nicht. Ich habe bestimmt einen Denkfehler. Kann mir jemand helfen?
Vielen Dank!
Grüße,
Wursti
|
Profil
|
majoka
Senior  Dabei seit: 25.02.2014 Mitteilungen: 810
 | Beitrag No.1, eingetragen 2019-03-07
|
In welcher Form liegt den die Übertragungsfunktion $G$ vor? - Siehe dazu die Dokumentation und Beispiele des folgenden Befehls:
\sourceon Matlab
help fftshift
\sourceoff
|
Profil
|
Wursti
Ehemals Aktiv  Dabei seit: 14.12.2015 Mitteilungen: 126
 | Beitrag No.2, vom Themenstarter, eingetragen 2019-03-08
|
Wie genau meinst du "Form der Übertragungsfunktion"?
Ich habe als Beispiel eine Übertragungsfunktion als P-Glied. Das funktioniert wunderbar. Setze ich beispielsweise:
G = 2;
so ist meine Antwort 2 mal so hoch wie der Eingang. Nehme ich allerdings ein D-Glied mit:
G = 2 * omega;
so erhalte ich nicht das gewünschte Ergebnis. Ich habe festgestellt, dass jedes mal für die Übertragungsfunktion der Betrag der Übertragungsfunktion an der letzten Stelle des Frequenzvektors verwendet wird. Die Frequenz meines Eingangssignal bleibt unberücksichtigt.
Weißt du wie ich das beheben kann? Durch eine Schleife die die Frequenz abtastet?
fftshift benutze ich zum anpassen meiner Frequenzen:
fs = 7000;
nfft=2^16;
df=fs/nfft;
t = 0:1/fs:1;
x= -200*cos(4488*t)+200;
X=fft(x,2^16);
f=0:df:fs-df;
f = fftshift(f);
G = 2*2*pi*f;
Y=G.*X;
y=ifft(Y,nfft);
|
Profil
|
majoka
Senior  Dabei seit: 25.02.2014 Mitteilungen: 810
 | Beitrag No.3, eingetragen 2019-03-13
|
Wenn ich mich recht erinnere, macht das D-Glied in diesem Zusammenhang zusätzliche Schwierigkeiten. Ich würde daher raten, es zunächst mit einem Tiefpassfilter zu probieren. Wie hier . Wichtig ist hier auch, dass man das Zero-Padding nicht vergisst.
|
Profil
|
Wursti hat die Antworten auf ihre/seine Frage gesehen. |
|
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2023 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen. Lesen Sie die
Nutzungsbedingungen,
die Distanzierung,
die Datenschutzerklärung und das Impressum.
[Seitenanfang]
|