[Scilab-users] System Identification for First order delay and dead time

tim at wescottdesign.com tim at wescottdesign.com
Sun Sep 25 02:22:11 CEST 2016


I suggest that you roll your own cost function, and use optim.

Where possible, with optim, if part of the problem is nonlinear and part 
is linear, it's good to use a plain old linear least-squares fit for the 
plain old linear part.  In your case, that's K.  Tau and Td will have to 
be determined by optim.

The cost function should generate a vector for ymodel with K = 1, then 
find the best fit for K with

K = y / ymodel;

then return a cost

cost = norm(y - K * ymodel);

wrap that all up in NDCost and then optim, and away you'll go.

On 2016-09-24 06:59, Fukashiimo wrote:
> Hello,
> 
> I am looking for a Scilab software which is similar to Matlab System ID 
> tool
> box.
> 
> I would like to obtain values of parameters, Tau, K and Td for 
> following
> first order delay + Dead time model from time series data.
> ymodel = (K/(Tau*s+1))*exp(-Td*s)*u
> ymodel: process output, u: process input
> SISO continuous time
> 
> Object function: Min ( (y-ymodel)^2)
> 
> Could you please tell me which package I should use to solve this 
> issue?
> 
> Best Regards,
> 
> 
> 
> --
> View this message in context:
> http://mailinglists.scilab.org/System-Identification-for-First-order-delay-and-dead-time-tp4034608.html
> Sent from the Scilab users - Mailing Lists Archives mailing list
> archive at Nabble.com.
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> http://lists.scilab.org/mailman/listinfo/users




More information about the users mailing list