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

Übertragungsfunktion in Simulink

 

HurstPeter22
Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 07.11.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.11.2012, 15:18     Titel: Übertragungsfunktion in Simulink
  Antworten mit Zitat      
Hallo allerseits,


ich habe ein Problem das mir die Haare grau werden lässt.
Ich habe eine Übertragungsfunktion auf Papier und schau mir in Matlab die Sprungantwort an. Alles wie es sein soll.

Code:
Gs = (1/s^2) * (1 - 2*exp(-s*0.5) + exp(-s))


Ich möchte diese aber in Simulink nutzen und baue sie mir deshalb mit Blöcken nach. Nun sieht die Sprungantwort aber leider ganz anders aus.

Ich habe die Ergebnisse mal angehängt. Solver habe ich alle durchprobiert, und auch Variable/Fixed step beeinflusst.

Ich bin auch für alternative Implementierungsmöglichkeiten in in Simulink für diese Funktion offen.


Danke schonmal im vorraus!

simu2.JPG
 Beschreibung:
Sprungtantwort mit Simulink

Download
 Dateiname:  simu2.JPG
 Dateigröße:  34.22 KB
 Heruntergeladen:  1348 mal
simu1.JPG
 Beschreibung:
Modelll der Übertragungsfunktion

Download
 Dateiname:  simu1.JPG
 Dateigröße:  41.59 KB
 Heruntergeladen:  1537 mal
matl.JPG
 Beschreibung:
Sprungantwort mit Maltab

Download
 Dateiname:  matl.JPG
 Dateigröße:  39.01 KB
 Heruntergeladen:  1274 mal
Private Nachricht senden Benutzer-Profile anzeigen


controlnix
Forum-Century

Forum-Century


Beiträge: 106
Anmeldedatum: 10.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.11.2012, 17:49     Titel:
  Antworten mit Zitat      
Poste doch mal den Matlab-Code, damit man sehen kann, was hier verglichen wird.
Du sprichst von Übertragungsfunktion, machst aber m.E. was ganz anderes.
Private Nachricht senden Benutzer-Profile anzeigen
 
HurstPeter22
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 07.11.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.11.2012, 18:55     Titel:
  Antworten mit Zitat      
Mehr ist es nicht:

Code:
s=tf('s')
Gs = (1/s^2) * (1 - 2*exp(-s*0.5) + exp(-s))
step(Gs)


Grüße HurstPeter22
Private Nachricht senden Benutzer-Profile anzeigen
 
controlnix
Forum-Century

Forum-Century


Beiträge: 106
Anmeldedatum: 10.06.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.11.2012, 21:51     Titel:
  Antworten mit Zitat      
Ist wirklich ganz einfach gewesen.
Habe Dein Simulink Modell mal eben nachgebaut, Euler als Integrationsverfahren mit fester Schrittweite gewählt und alles funktioniert wie erwartet (gleiches Ergebnis wie in Matlab).
Als Schrittweite habe ich probiert 0.1sec und kleiner -> liefert immer das richtige Ergebnis.

Für die beiden Totzeitblöcke habe ich die TransportDelay-Blöcke mit nur 1 Eingang verwendet (Totzeit-Wert ist dann im Block einzutragen). Die Blöche mit variabler Totzeit habe ich nicht ausprobiert. Vielleicht prüfst Du das mal.
Private Nachricht senden Benutzer-Profile anzeigen
 
HurstPeter22
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 07.11.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.11.2012, 22:04     Titel:
  Antworten mit Zitat      
Hiho.

controlnix hat Folgendes geschrieben:
Für die beiden Totzeitblöcke habe ich die TransportDelay-Blöcke mit nur 1 Eingang verwendet (Totzeit-Wert ist dann im Block einzutragen). Die Blöche mit variabler Totzeit habe ich nicht ausprobiert. Vielleicht prüfst Du das mal.


Geht leider nicht, weil die Totzeit variabel sein muss :-/


controlnix hat Folgendes geschrieben:
Ist wirklich ganz einfach gewesen.
Habe Dein Simulink Modell mal eben nachgebaut, Euler als Integrationsverfahren mit fester Schrittweite gewählt und alles funktioniert wie erwartet (gleiches Ergebnis wie in Matlab).
Als Schrittweite habe ich probiert 0.1sec und kleiner -> liefert immer das richtige Ergebnis.


Genau das gleiche habe ich auch eben festgestellt. Problem ist nur, dass ich in leicht veränderter Konstellation (z.B. oben gepostetes Modell als Subsystem verwenden) wieder von neuem rumprobieren muss welche Einstellungen passe.

Wo ist hier das Problem? Die Übertragungsfunktion ist doch stink einfach. Ich habe es auch schon als LTI Block versucht mit gleichem Ergebnis Sad


Tritt der von mir beschriebene Effekt auch bei dir auf? Ist hier systematisch etwas falsch?


Danke für die bisherigen Posts! Grüße!
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.