[Scilab-users] SS modeling using Identification tool box
noguchi
noguchi at kje.biglobe.ne.jp
Tue Mar 15 15:58:21 CET 2016
I could get ARX model using the data generated by first order delay + dead
time transfer function model as shown below:
//ARX model ID
z=poly(0,'z');
h=(0.066/(z-0.934))*(1/z^10)
u=zeros(1,200);
for i=10:1:100
u(1,i)=1;
end
for i=101:1:200
u(1,i)=0.5;
end
t=1:1:200;
y=flts(u,tf2ss(h)); //step response
plot(t,y,t,u)
//
figure(2)
[m] = arIdent(y,u,y,u,1:4,1:4,0,0:10,0);
//[fit, ys] = valSim(m.a, m.b, yv, uv);
[fit, ys] = valSim(m.a, m.b, y, u);
plot(y);
Howeverm using same data, I faced error message if I tried to get SS model
with following commnds:
//SS Model ID
yi=y(1:90);ui=u(1:90);
yv=y(91:$);uv=u(91:$);
yv=y;uv=u;
[m,A,B,C,D,K,R,x0,fit,fitTable] =
subspaceIdent(yi,ui,yv,uv,[6:8],[2:4],0,0);
[yp x] = lsim(A-K*C,[K B-K*D],C,[zeros(size(D,1),size(yv,2))
D],[yv';uv'],x0); // prediction
plot(yv);
plot(yp,'-r')
[Ds,NUM,chi]=ss2tf(m)
subspaceIdent(yi,ui,yv,uv,[6:8],[2:4],0,0); <== This command made following
error messages:
-->[m,A,B,C,D,K,R,x0,fit,fitTable] =
subspaceIdent(yi,ui,yv,uv,[6:8],[2:4],0,0);
!--error 27
zero division...
at line 13 of function myhouseholder called by :
at line 9 of function qrhouse called by :
at line 191 of function subid called by :
at line 89 of function subspaceIdent called by :
i,yv,uv,[6:8],[2:4],0,0)
May I ask how I can identify the SS model using this quite simple data set?
Y. Noguchi
--
View this message in context: http://mailinglists.scilab.org/SS-modeling-using-Identification-tool-box-tp4033740.html
Sent from the Scilab users - Mailing Lists Archives mailing list archive at Nabble.com.
More information about the users
mailing list