Ein Zustandsraummodell ist von der Form: dx = Ax + Bu y = Cx + DuIst der MATLAB-Befehl lsim gut für linearisierte Zustandsraum-Modelle?
Nonlinear Zustandsraummodellen, die auf diesem Formular wird linearisiert wird:
dΔx = AΔx + BΔu
Δy = CΔx + DΔu
Wo:
Die Werte x10, x20, x30, xn0, u10, u20, u30, um0 sind Konstanten/Anfangswerte für die Linearisierung.
So! Die Frage ist, über den MATLAB-Befehl "lsim":
lsim (sys, u, t, x0)
In diesem Fall sys sind die A, B, C, D Matrizen aus dem lineraized Zustandsraummodell. Sie ist der Insignalvektor, t ist der Zeitvektor. Aber x0 .... kann ich sagen, dass x0 x10, x20, x30, ...., xn0 ist?
Kann ich auch sagen, dass u = u - u0 und U0 ist, u10 u10, u20, u30, ..., UM0?
Beispiel:
u = linspace(5, 5, 100); % insignal 5
t = linspace(0, 100, 100); % 100 seconds
u0 = [0.2; -1.2; -3];
u = u - u0; %
x0 = [-2; 2; -1]
lsim (sys, u, t, x0)
Dies wird Ergebnisse:
Δx = [x1 - 2; x2 + 2; x3 - 1]
Δu = [u1 + 0.2; u2 - 1.2; u3 - 3]
Habe ich Recht?
Gibt es einen Grund, dass Sie denken, Sie nicht richtig sein kann? Die Antwort auf die Frage "Ist diese speziell für diese Aufgabe entwickelte Funktion bei dieser Aufgabe gut?" ist relativ klar, denke ich, also was ist die eigentliche Frage? –
Die Frage ist, kann ich mein linearisiert Zustandsraummodell simulieren, wie ich oben gezeigt. –
Der Ansatz ist in der Regel: versuchen Sie es, wenn es funktioniert, dann schön! Wenn es nicht funktioniert, dann komm und frage danach –