In: Electrical Engineering
Design a digital PID controller based on the Ziegler_Nichols method for for the following system:
G(s)=s/((s+1)^4 )
use the sampling time of T=0.1 seconds and simulate the resulting controlled system by applying a unit
step and then changing the value of input to another value after some appropriate time
Discus the effect of set point change.
Solution:
MATLAB Code:
num=[1 0]
den=[1 4 6 4 1];
sys=tf(num,den)
step(sys)
Output:
Digital PID controller:
MATLAB Code:
num=[1.05 4.2 4.2]
den=[1 0]
Ts=0.1
sys=tf(num,den,Ts)
Output:
For closed loop system:
MATLAB Code:
num=[1.05 4.2 4.2]
den=[1 4 6 4 1]
sys=tf(num,den)
step(sys)
T=feedback(sys,1)
step(T)
Output:
For open loop system with time t = 0.1s,
MATLAB Code:
num=[1.05 4.2 4.2];
den=[1 4 6 4 1];
sys=tf(num,den)
t=0:0.01:0.1
step(sys,t)
Output:
For open loop system with time t>0.1s( input magnitude value changes)
MATLAB Code:
num=[1.05 4.2 4.2];
den=[1 4 6 4 1];
sys=tf(num,den)
t=0.1:0.01:15;
opt=stepDataOptions('InputOffset',0,'StepAmplitude',2);
step(sys,opt,t)
Output: