problem while tuning PID controller

1 view (last 30 days)
I try to tune a PID-Controller in Matlab2010b if i use a discrete one i get the error Message "The second input argument of the "d2d" command must be a positive scalar." if i use a continuous one i get "Input to SVD must not contain NaN or Inf." what i have to pay attention that this block works fine? My system can became NaN due to a Sqrt-expression....

Accepted Answer

Arkadiy Turevskiy
Arkadiy Turevskiy on 6 Feb 2012
What is the purpose of the memory block that you are using at the output of the PID controller? Long story short, that is what creates the problem.

More Answers (4)

Arkadiy Turevskiy
Arkadiy Turevskiy on 12 Dec 2011
Can you provide the plant model?

Martin1986
Martin1986 on 13 Dec 2011
yes sure i put it on file exchange or you go to here
the file is created on linux with 2010b it is only a part of the system, the massflow(the output which i try to control) will normally have a influence to the 3. input of the subsystem too...

Yoni
Yoni on 19 Jan 2012
Hi Martin,
I've had the same problem.
It seems the discrete PID option does not handle a sampling time of "-1" (should have inherited the sampling time it that case)
So the workaround for your problem is to enter your own explicit expression for the sampling time. do not leave it on "-1".
This should eliminate the "The second input argument of the "d2d" command must be a positive scalar."
Cheers, Yoni
  1 Comment
Nail
Nail on 14 May 2018
Also, simulation time must not be set to "inf".

Sign in to comment.


Martin1986
Martin1986 on 8 Feb 2012
o.O actually this was a try to avoid this problems(and avoid a algebric loop because the starting value must be 0), finally i made some small changes in my Model and than it works also fine ;) i think the block works fine but the debuging is a little bit problematic ;) because if you have a bigger plant it is quite tricky to find the exact cause of the problem

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!