Seite 1 von 1

MatLab Frage

Verfasst: 12.02.2012 15:12
von franzman21
Ich steh auf dem Schlauch:
folgendes MIMO-system:

Code: Alles auswählen

A = [-1 0 0 0;1 2 0 0;0 -1 0 0;0 2 0 0]
B = [1 0;0 0;0 0;0 1]
C = eye(4)
D = [0 0;0 0;0 0;0 0]
alles was ich will, ist die ÜF -.-

Code: Alles auswählen

G = tf(zähler,nenner)
nun stehen da aber matrizen :?

ideen? DANKE!!!!

Re: MatLab Frage

Verfasst: 12.02.2012 16:22
von Robsen
Kannst du deine Frage mal etwas deutlicher formulieren? in welchem Zusammenhang steht denn G mit den anderen Matritzen und was stellen diese da?

PS: oder sollen das Zustandsmatritzen sein und du willst G(s)=C(sE-A)^-1 B+D
ausrechnen?
Matlab wird dir an dieser Stelle kaum einen Bruch ausgeben, da es nicht analytisch rechnen kann, du kannst die Matritzen aber in Simulink nachbauen.

Re: MatLab Frage

Verfasst: 12.02.2012 16:38
von franzman21
ja das sind die Zustandsmatrizen A,B,C,D und ich will daraus die Übertragungsfunktion G(s).
Wie geht das mit simulink?

Re: MatLab Frage

Verfasst: 12.02.2012 16:52
von Robsen
was hast du denn genau vor?
willst du am Ende G(s) dastehen haben? Dann rechne das ganze per Hand aus, wie du es in Systemtheorie gelernt hast - das geht defintiv schneller als sich in irgendwelche Programm einzuarbeiten, wobei ich nicht mal wüsste ob das überhaupt irgendeins kann.

Diese Übertragungsfunktion kannst du dann als Transfer-Fct in Simulink eingeben (da probier mal ein bisschen rum, wenn du den entsprechenden Block einmal gefunden hast, ist es ziemlich intuitiv) und dann z.B. mit einem Sprung anregen und dir das Ergebnis anzeigen lassen.

Da dein System relativ simpel aussieht, würde ich das genauso machen.

Alternativ kannst du Übertragungsfunktionen für jede einzelne Zeile deiner einzelnen Matritzen aufstellen (einfach ausmultiplizieren) und dann mit Simulink nachbauen (einfache Versärker, Addieren usw.) und bekommst am Ende wieder ein Signal was du dir anzeigen lassen kannst.
Dieser Weg macht aber nur Sinn, wenn die Übertragungsfunktion G(s) so komplex wird, dass man sie nicht mehr überschauen kann, oder auch nicht mehr eingeben kann.

Ich hab jetzt keine Zeit mir dein System im Detail anzuschauen, aber wenn du es analytisch lösen kannst, dann tu es.

Re: MatLab Frage

Verfasst: 12.02.2012 16:55
von franzman21
ja gut, danke erstmal!!
das problem ist, das ich das eben per matlab machen soll und nicht per hand.
ich frickel mal ein bisschen rum :)
€: ja G(s) ist mein ziel

Re: MatLab Frage

Verfasst: 12.02.2012 16:57
von Robsen
Ja vielleicht die Auswertung, aber nicht die Aufstellung der Übertragungsfunktion.
Kann auch sein, dass es da ne Geitner'sche Toolbox für dein problem gibt. Davon hab ich aber keine Ahnung, versteht eh nur der Geitner selber ;)

Re: MatLab Frage

Verfasst: 13.02.2012 11:48
von Robsen
Hab erfahren, dass es wohl doch ne Toolbox gibt, die dir die Zähler und Nennerkoeffizienten in einer Matrix ausgeben kann. Kannst ja mal danach suchen...

Re: MatLab Frage

Verfasst: 15.02.2012 15:13
von FSW
sry hab es erst jetzt gelesen, such einfach in der Matlab hilfe mal nach ss2tf