WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Systemantwort im Zeitbereich - Faltung

 

Lundi
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 17.02.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.02.2011, 13:12     Titel: Systemantwort im Zeitbereich - Faltung
  Antworten mit Zitat      
Liebe Matlab und Signalverarbeitungsspezialisten,

Grundlage der Regelungstechnik/Signalverarbeitung ist es doch, dass sich die Systemantwort im Zeitbereich aus der Faltungs des Eingangssignals mit mit der Gewichtsfunktion der Übertragungsstrecke ergibt. Genau dies habe ich versucht in Matlab (ohne weitere Toolboxen) umzusetzen und bin dabei auf folgendes Problem gestoßen: Faltet man eine Sprungfunktion z.B. mit der Gewichtsfunktion eines PT1-Gliedes, so konvergiert die Systemantwort nicht gegen den Wert des Sprungs multipliziert mit dem Verstärkungsfaktor, sondern gegen einen höheren Wert.... das genau (1+K/(2T))-fache des erwarteten Endwerts.
Kann mir bitte jemand von Euch sagen, was hier das Problem ist? Liegt's an Matlab, liegt's am Ansatz? Liegt's an mir...? Ich wäre Euch für jegliche Hinweise dankbar...

Code:

input=[zeros(1,100) ones(1,600)*1 ones(1,400)*0.5 ];
t=linspace(0,length(input)-1,length(input));
 
 T_1=20;
        K=1;
        g=K/T_1.*(exp(-(t)/T_1));
        y=conv(input,g);
        y=y(1,1:length(input));
        a=conv(input,g);
        a=a(1,1:length(input))./(1+K/(2*T_1)); %fixed response= analytical solution
        plot(t,input, t,y, t,a,t,K)
        hold on
        %level
        legend('step','test','analytical solution','K')
        f=K*(1-exp(-t/T_1));
 


[/code]
Private Nachricht senden Benutzer-Profile anzeigen


vega1013
Forum-Century

Forum-Century


Beiträge: 162
Anmeldedatum: 26.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.02.2011, 19:40     Titel:
  Antworten mit Zitat      
Hallo,

habe mich jetzt mal mit der Thematik auseinander gesetzt. Hätte es erstmal auch so gemacht.
Bin dann darauf gestoßen, dass für die diskrete Faltung zweier Signale conv noch mit der Abtastzeit multipliziert werden muss. Ist auch einleuchtend, wenn man gedanklich die Abtastzeit reduziert und sich vorstellt, wie sich das auf die Summe auswirkt...
Versuchs mal so umzusetzen, damit sollte es funktionieren...

Gruß vega
Private Nachricht senden Benutzer-Profile anzeigen
 
Lundi
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 17.02.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.02.2011, 09:08     Titel:
  Antworten mit Zitat      
Danke Vega,
klar, das hatte ich zwischenzeitlich schon gemacht (beim Testen höhere Samplingraten für die Diskretisierung, im Beispiel lag die Rate ja bei 1). Leider löst das das Problem nicht...
Eine deutliche Erhöhung der Abtastfrequenz f=1000 z.B. verringert die stationäre Abweichung, allerdings kann ich mir nicht so recht erklären, warum. Schließlich sind die höchsten in Signal (Sprung) und Impulsübertragungsfunktion der Strecke (z.B. Pt1) enhaltenen Frequenzen relativ niedrig. Es dürfte also eigentlich keine Aliasing auf Grund zu niedriger Abtastfrequenz geben.
Gruß
Lundi
Private Nachricht senden Benutzer-Profile anzeigen
 
vega1013
Forum-Century

Forum-Century


Beiträge: 162
Anmeldedatum: 26.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.02.2011, 20:48     Titel:
  Antworten mit Zitat      
Hy,
ach ja richtig, hatte ich gar nicht mehr gesehen dass du die Samplerate im Beispiel schon bei 1 hattest. Cool
Hatte mir ein Minimalbeispiel gebaut, bei dem ich wie du auch festgestellt hatte, dass die stationäre Abweichung mit höherer Samplerate sinkt. Irgendwann soll ja dann die Summe der diskreten Faltung in das Integral der kontinuierlichen Form übergehen. Denke dass das auch das Problem ist, also der numerische Fehler und nicht das Aliasing. Aber hierfür keine Garantie... Wink
Aber vielleicht kann das ja hier noch einer aufklären?!
Gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
Scriptor
Forum-Century

Forum-Century


Beiträge: 217
Anmeldedatum: 22.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.02.2011, 14:18     Titel:
  Antworten mit Zitat      
Die Ü-Funktionen gelten in der Regel für den Frequenzbereich. Nimm deine Ü-Funktion und mache eine ifft mit ihr und falte dann noch einmal.

Mfg,

Icke
Private Nachricht senden Benutzer-Profile anzeigen
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 04.03.2011, 14:39     Titel:
  Antworten mit Zitat      
Eine ähnliche Antwort hast du mir hier ja auch gegeben.

Kannst du deine Anwort bitte nochmal präzisieren. In diesem Beispiel hier, sind wir doch im Zeitbereich. Wie soll man da eine IFFT machen? Dazu muss ich mich doch erstmal im Frequenzbereich befinden. Meinst du die Impulsantwort erst in den Freq.-bereich transformieren und anschließend wieder zurück?
Private Nachricht senden Benutzer-Profile anzeigen
 
Scriptor
Forum-Century

Forum-Century


Beiträge: 217
Anmeldedatum: 22.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.03.2011, 17:44     Titel:
  Antworten mit Zitat      
Wenn ich das bei ihm richtig verstanden habe, ist es wie bei vielen Anfängern, dass sie ein Signal genau mit dem, was sie im PT1 oder PT2 Glied Bild sehen falten. Bei ihm schien es auch, als hätte tatsächlich die Frequenzfunktion, welche simpel gesprochen diese abfallende Rampe eines TPs erster oder zweiter Ordnung ist und genau damit versucht zu falten und und das ist falsch. Diese ÜF die nur das Spektrum des Systems darstellt, muss invers fouriertransformiert werden, um die korrekte Gewichtsfunktion zu erhalten. Wenn wir eine Antwort auf den Vorschlag erhalten hätten, dann wüsste ich auch, ob ich richtig lag oder nicht. Ich bin mir aber ziemlich sicher. Er hat einfach eine dämpfende Funktion genommen in seinem Quelltext und sie einfach verfaltet, was so nicht geht. Bei dir war ich mir aber überhaupt nicht sicher, ob das auch dein Fehler war. Verstehst?

Zuletzt bearbeitet von Scriptor am 05.03.2011, 18:01, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 05.03.2011, 17:48     Titel:
  Antworten mit Zitat      
Achso...Danke für die Antwort.
Private Nachricht senden Benutzer-Profile anzeigen
 
vega1013
Forum-Century

Forum-Century


Beiträge: 162
Anmeldedatum: 26.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.03.2011, 18:33     Titel:
  Antworten mit Zitat      
Scriptor wenn ich dich jetzt richtig verstanden habe, vermutest du, dass er mit der Übertragungsfunktion und nicht mit der Gewichtsfunktion gefaltet hat. Aber das ist nicht so, er hat doch die Gewichtsfunktion programmiert:

Code:

g=K/T_1.*(exp(-(t)/T_1));
 


Also darin besteht meiner Meinung nach nicht das Problem. Es hat ja am Anfang auch funktioniert, nur eben mit der besagten stationären Abweichung, für die wir noch nach einer plausiblen Erklärung suchen...

Gruß Vega
Private Nachricht senden Benutzer-Profile anzeigen
 
Scriptor
Forum-Century

Forum-Century


Beiträge: 217
Anmeldedatum: 22.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.03.2011, 19:42     Titel:
  Antworten mit Zitat      
Ja das vermute ich dennoch. Soweit ich weiß nutzt er ein PT1Glied, also schlichtweg einen aktiven Tiefpass erster Ordnung, dessen Üf beschrieben werden kann, mit einer Dämpfungsfunktion, die logarithmisch wie eine Rampe aussieht. So sieht jedenfalls eine Übertragungsfunktion und keine Gewichtsfunktion aus.

mathematische korrekt wäre eine Üf für ein PT1 aber:

U(f) ={\frac{K}{1+\frac{f}{f_g}} }

Eine exponentielle Dämpfungsfunktion sieht haargenauso aus, wenn sie nicht sogar das selbe ist.


u(t) = {\frac{k}{e^{\frac{t}{T1}}}}

U(f) muss noch invers transformiert werden, erst dann hat man auch die Gewichtsfunktion.

Frag weiter oder korrigiert mich.

Mfg
Private Nachricht senden Benutzer-Profile anzeigen
 
vega1013
Forum-Century

Forum-Century


Beiträge: 162
Anmeldedatum: 26.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2011, 11:52     Titel:
  Antworten mit Zitat      
Ich stimme dir ja zu, dass die Verwechslungsgefahr definitiv gegeben ist! Nur wenn ich jetzt wie du sagst eine inverse Transformation der Übertragungsfunktion
 G(s)=\frac{K}{1+T*s}
des PT1-Gliedes durchführe, komme ich auf die Gewichtsfunktion
 g(t)=\frac{K}{T}*e^{-\frac{1}{T}*t}
Jetzt kann man sich natürlich streiten, was die Proportionalitätskonstante K beinhaltet... Bei dem gegebenen Beispiel mit K und T ist es allerdings mMn völlig korrekt, wie vorgegangen und berechnet wurde...

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Scriptor
Forum-Century

Forum-Century


Beiträge: 217
Anmeldedatum: 22.02.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.03.2011, 12:33     Titel:
  Antworten mit Zitat      
Ah du hast recht, das ist wirklkch die inverse LaPlace, danke für die Korrektur!!

Ein PT1 ist soweit ich weiß ein aktiver TP 1. O. Aktiv heißt er kann zusätzlich noch verstärkend wirken (oder dämpfend), daher der Faktor K.

Danke!!
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.