You are on page 1of 12

1

a. G(s) =
(𝑠+5)(𝑠+15)(𝑠+20)

1.
Poles Zeros Gain Type Minimum Phase
(-5, -15, -20) No 1 0 Stable

2.
1
For G(s) =
(𝑠+5)(𝑠+15)(𝑠+20)

P Controller
sys =zpk([],[-5,-15,-20],1)
sys =tf(sys)
kp = 15000
system = feedback(kp*sys,1)
step(system)

PI Controller:
sys =zpk([],[-5,-15,-20],1)
C = pidtune(sys,'PI')
system = feedback(C*sys,1)
step(system)
PD Controller:
sys =zpk([],[-5,-15,-20],1)
C = pidtune(sys,'PD')
system = feedback(C*sys,1)
step(system)
PID Controller:
sys =zpk([],[-5,-15,-20],1)
C = pidtune(sys,'PID')
system = feedback(C*sys,1)
step(system)

Lead-Lag Controller:
sys =zpk([],[-5,-15,-20],1)
sisotool(sys)
Results
1
For G(s) = (𝑠+5)(𝑠+15)(𝑠+20)

a. The step response error is 1-0.90=0.1 as shown in figure 1


b. The ramp response error is 0
c. The stable and fast transient response is obtained as shown in figures
d. Comparison of different controllers

e. I will recommend PID controller because it combines the functionality of all the controllers
and provide the fast transient response and better steady state response. It provides the zero
steady state error, less overshoot, and less settling time.
1
b. G(s) =
𝑠(𝑠+5)(𝑠+15)(𝑠+20)

1.
Poles Zeros Gain Type Minimum Phase
(0, -5, -15, -20) No 1 1 Stable

2.
1
For G(s) =
(𝑠+5)(𝑠+15)(𝑠+20)

P Controller
sys =zpk([],[0, -5,-15,-20],1)
sys =tf(sys)
kp = 15000
system = feedback(kp*sys,1)
step(system)

PI Controller:
sys =zpk([],[0, -5,-15,-20],1)
C = pidtune(sys,'PI')
system = feedback(C*sys,1)
step(system)

PD Controller:
sys =zpk([],[0, -5,-15,-20],1)
C = pidtune(sys,'PD')
system = feedback(C*sys,1)
step(system)

PID Controller:
sys =zpk([],[0, -5,-15,-20],1)
C = pidtune(sys,'PID')
system = feedback(C*sys,1)
step(system)
Lead-Lag Controller:
sys =zpk([],[0,-5,-15,-20],1)
sisotool(sys)
Results
1
For G(s) = 𝑠(𝑠+5)(𝑠+15)(𝑠+20)

a. The step response error is 1-1=0


b. The ramp response error is 0
c. The stable and fast transient response is obtained as shown in figures
d. Comparison of different controllers

e. I will recommend PID controller because it combines the functionality of all the controllers
and provide the fast transient response and better steady state response. It provides the zero
steady state error, less overshoot, and less settling time. We can tune more the parameters
of PID from settings
1
c. G(s) =
𝑠2 (𝑠+5)(𝑠+15)(𝑠+20)
Poles Zeros Gain Type Minimum Phase
(0,0, -5, -15, -20) No 1 2 Stable

P Controller
sys =zpk([],[0, 0, -5,-15,-20],1)
C = pidtune(sys,'P')
system1 = feedback(C*sys,1)
step(system)

PI Controller:
sys =zpk([],[0,0, -5,-15,-20],1)
C = pidtune(sys,'PI')
system = feedback(C*sys,1)
step(system)
PD Controller:
sys =zpk([],[0,0, -5,-15,-20],1)
C = pidtune(sys,'PD')
system = feedback(C*sys,1)
step(system)
PID Controller:
sys =zpk([],[0,0-5,-15,-20],1)
C = pidtune(sys,'PID')
system = feedback(C*sys,1)
step(system)

Lead-Lag Controller:
sys =zpk([],[0,0,-5,-15,-20],1)
sisotool(sys)
Results
1
For G(s) = 𝑠2 (𝑠+5)(𝑠+15)(𝑠+20)

a. The step response error is 1-1=0


b. The ramp response error is 0
c. The stable and fast transient response is obtained as shown in figures
d. Comparison of different controllers
The system is very unstable and we cant get all the responses in single window. So we will
compare from each separate window. The response for only PID controller is valid.

e. I will recommend PID controller because it combines the functionality of all the controllers
and provide the fast transient response and better steady state response. It provides the zero
steady state error, less overshoot, and less settling time. We can tune more the parameters
of PID from settings

You might also like