Undefined function or method 'pid' for input arguments of type 'double'.

Hi, I am a beginner and would like to try out matlab for my assignment. I am encountering the error as ' Undefined function or method 'pid' for input arguments of type 'double'.' I can't figure out why. Please help.
clear all
clc
syms s
Gnum =exp(-0.5);
Gden = [7.724 32.317 25.220]; %((s+1)*((s+5)^2));
G=tf(Gnum,Gden);
H = 1;
T = feedback (G,H);
step(T)
hold on
Kp = 26.995;
Ki = 21.067;
Kd = 6.452;
Gc = pid(Kp,Ki,Kd);
Mc = feedback(Gc*G,H);
step = (Mc);
grid on

댓글 수: 5

pid should return double too. just like tf or feedback function I guess. but the error encountered was
??? Undefined function or method 'pid' for input arguments of type
'double'.
Error in ==> Untitled4 at 17 Gc = pid(Kp,Ki,Kd);
though I put all value as int, the error shows the same thing.
I'll ask again, what does
which pid
return when you type that at the matlab prompt? That will tell us whether the function is visible to matlab or not.
you r right. pid function is not visible. I am using 2009a currently and trying to upgrade to newer version which includes that function.

댓글을 달려면 로그인하십시오.

답변 (1개)

Arkadiy Turevskiy
Arkadiy Turevskiy 2014년 11월 26일

0 개 추천

As you might have already realized, the pid objects were introduced in Control System Toolbox in release 2010b, so you would not be able to use them in 2009a.

카테고리

질문:

2014년 11월 24일

답변:

2014년 11월 26일

Community Treasure Hunt

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

Start Hunting!

Translated by