状态空间模型的形式为:dx = Ax + Bu y = Cx + Du
线性化的非线性状态空间模型采用以下形式:
dΔx = AΔx + BΔu
Δy = CΔx + DΔu
在哪里:
Δx = [x1 - x10; x2 - x20; x3 - x30; .... ; xn - xn0]
Δu = [u1 - u10; u2 - u20; u3 - u30; .... ; um - um0]
x10, x20, x30, xn0, u10, u20, u30, um0 是线性化的常数/初始值。
所以!问题是关于 MATLAB 命令“lsim”:
lsim (sys, u, t, x0)
在这种情况下,sys 是线性化状态空间模型中的 A、B、C、D 矩阵。u 是信号向量,t 是时间向量。但是 x0....我可以说 x0 是 x10、x20、x30、....、xn0 吗?
我也可以说 u = u - u0 ,并且 u0 是 , u10 u10, u20, u30,... , um0 吗?
例子:
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)
这将导致:
Δx = [x1 - 2; x2 + 2; x3 - 1]
Δu = [u1 + 0.2; u2 - 1.2; u3 - 3]
我对吗?