Convertir datos de matrices MIMO en un horario para la estimación de un modelo en tiempo continuo
Realice la estimación de una función de modelo en tiempo continuo convirtiendo en primer lugar datos de matrices en un horario.
Cargue los datos, que incluyen la matriz de entrada usteam
, la matriz de salida ysteam
y el tiempo de muestreo Ts
.
load sdatasteam.mat usteam ysteam Ts
Combine usteam
e ysteam
en el horario único ttsteam
. Para crear una variable para cada canal, debe especificar cada columna de matriz explícitamente.
tts = timetable(usteam(:,1),usteam(:,2),ysteam(:,1),ysteam(:,2),... 'rowtimes',seconds(Ts*(1:size(usteam,1)))); head(tts,4)
Time Var1 Var2 Var3 Var4 ________ _______ _______ ________ _________ 0.05 sec -1.5283 2.0584 0.57733 -0.12274 0.1 sec 1.4412 -2.005 0.75804 -0.086114 0.15 sec 1.4314 2.0584 -0.76577 -0.19845 0.2 sec 1.4412 -1.9806 0.47721 -0.20577
Realice la estimación de un modelo de espacio de estados en tiempo continuo.
nx = 3; sysc = ssest(tts,nx,'InputName',["Var1" "Var2"],'OutputName',["Var3" "Var4"]);
Compare el modelo con los datos.
compare(tts,sysc)