0% found this document useful (0 votes)
61 views

Control Lab Matlab Report

The document describes three experiments conducted regarding control systems: 1) Pole placement design to place the poles of an open-loop transfer function. 2) Study of the Linear Quadratic Regulator (LQR) method to design an optimal state feedback controller. 3) Design of a discrete PID controller and fuzzy PID controller to regulate the response of an open-loop system.

Uploaded by

Tanuj Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views

Control Lab Matlab Report

The document describes three experiments conducted regarding control systems: 1) Pole placement design to place the poles of an open-loop transfer function. 2) Study of the Linear Quadratic Regulator (LQR) method to design an optimal state feedback controller. 3) Design of a discrete PID controller and fuzzy PID controller to regulate the response of an open-loop system.

Uploaded by

Tanuj Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 15

Submitted To: PROF.

JAGDISH
KUMAR
[Draw your reader in with an
engaging abstract. It is typically a
short summary of the document.
When youre ready to add your
content, just click here and start
typing.]

MODERN
CONTROL
SYSTEM LAB
Submitted By: Tanuj Kumar
12104025
Electrical 4Th year

EXPERIMENT -1
AIM TO STUDY THE POLE PLACEMENT DESIGN

clc
clear all
close all
s=tf('s')
g=((0.3158^2)/(s*s+2*3.166*0.3158*s+0.3158^2))
pole(g)
A = [-0.313 56.7 0; -0.0139 -0.426 0; 0 56.7 0];
B = [0.232; 0.0203; 0];
C = [0 0 1];
D = [0];
sys = ss(A,B,C,D);
% t = 0:0.1:10;
% u = 500*ones(size(t));
p1 = -1.9485;
p2= -0.0512;
p3= -2
K = place(A,B,[p1,p2,p3])
sys_cl = ss(A-B*K,B,C,D);
figure(1);
step(sys*10,200);
hold on;
figure(2);
step(sys_cl*10,200);
axis([0 200 0 10])

EXPERIMENT -2
AIM TO STUDY THE LINEAR QUADRATIC REGULATOR (LQR)
clc
clear all
close all
s=tf('s')
g=((0.3158^2)/(s*s+2*3.166*0.3158*s+0.3158^2))
pole(g)
A = [-0.313 56.7 0; -0.0139 -0.426 0; 0 56.7 0];
B = [0.232; 0.0203; 0];
C = [0 0 1];
D = [0];
sys = ss(A,B,C,D);
% t = 0:0.1:10;
% u = 500*ones(size(t));
p = 2;
Q = p*C'*C
R = 1;
[K] = lqr(A,B,Q,R)
sys_cl = ss(A-B*K, B, C, D);
figure(1);
step(sys*10,200);
ylabel('pitch angle (rad)');
title('Step Response of aircraft ');
hold on
figure(2);
step(10*sys_cl)
ylabel('pitch angle (rad)');
title('Closed-Loop Step Response of aircraft: LQR');
axis([0 200 0 10])

EXPERIMENT NO -3
AIM DESIGN OF DISCRETE PID CONTROLLER
sys=tf([2,3],[5,4])
Kp= 5
s=tf('s')
for Ki = 1:10:100
K=Kp+(Ki/s)
sys_cl= feedback((sys*K),1)
step(sys_cl)
hold on
end
Fuzzy PID
[System]
Name='PID_FUZZY'
Type='mamdani'
Version=2.0
NumInputs=2
NumOutputs=3
NumRules=75
AndMethod='min'
OrMethod='max'
ImpMethod='min'
AggMethod='max'
DefuzzMethod='centroid'
[Input1]
Name='e'
Range=[-20 160]
NumMFs=5
MF1='NL':'trimf',[-65 -20 25]
MF2='NS':'trimf',[-20 25 70]
MF3='ZE':'trimf',[25 70 115]
MF4='PS':'trimf',[70 115 160]
MF5='PL':'trimf',[115 160 205]
[Input2]
Name='edot'
Range=[-20 160]
NumMFs=5
MF1='NL':'trimf',[-65 -20 25]
MF2='NS':'trimf',[-20 25 70]
MF3='ZE':'trimf',[25 70 115]
MF4='PS':'trimf',[70 115 160]
MF5='PL':'trimf',[115 160 205]
[Output1]

Name='kp'
Range=[0 30]
NumMFs=7
MF1='PVL':'trimf',[-5 -5.551e-017 5]
MF2='PL':'trimf',[0 5 10]
MF3='PML':'trimf',[5 10 15]
MF4='PM':'trimf',[10 15 20]
MF5='PMS':'trimf',[15 20 25]
MF6='PS':'trimf',[20 25 30]
MF7='PVS':'trimf',[25 30 35]
[Output2]
Name='ki'
Range=[0 60]
NumMFs=7
MF1='PVL':'trimf',[-10 0 10]
MF2='PL':'trimf',[0 10 20]
MF3='PML':'trimf',[10 20 30]
MF4='PM':'trimf',[20 30 40]
MF5='PMS':'trimf',[30 40 50]
MF6='PS':'trimf',[40 50 60]
MF7='PVS':'trimf',[50 60 70.02]
[Output3]
Name='kd'
Range=[0 6]
NumMFs=7
MF1='PVL':'trimf',[-1 0 1]
MF2='PL':'trimf',[0 1 2]
MF3='PML':'trimf',[1 2 3]
MF4='PM':'trimf',[2 3 4]
MF5='PMS':'trimf',[3 4 5]
MF6='PS':'trimf',[4 5 6]
MF7='PVS':'trimf',[5 6 7.002]
[Rules]
1 1, 1 0 0 (1) : 1
1 2, 1 0 0 (1) : 1
1 3, 1 0 0 (1) : 1
1 4, 1 0 0 (1) : 1
1 5, 1 0 0 (1) : 1
2 1, 3 0 0 (1) : 1
2 2, 3 0 0 (1) : 1
2 3, 3 0 0 (1) : 1
2 4, 2 0 0 (1) : 1
2 5, 1 0 0 (1) : 1
3 1, 7 0 0 (1) : 1
3 2, 7 0 0 (1) : 1
3 3, 6 0 0 (1) : 1
3 4, 5 0 0 (1) : 1
3 5, 5 0 0 (1) : 1

4 1, 3 0 0 (1) : 1
4 2, 3 0 0 (1) : 1
4 3, 3 0 0 (1) : 1
4 4, 2 0 0 (1) : 1
4 5, 1 0 0 (1) : 1
5 1, 1 0 0 (1) : 1
5 2, 1 0 0 (1) : 1
5 3, 1 0 0 (1) : 1
5 4, 1 0 0 (1) : 1
5 5, 1 0 0 (1) : 1
1 1, 0 4 0 (1) : 1
1 2, 0 4 0 (1) : 1
1 3, 0 4 0 (1) : 1
1 4, 0 4 0 (1) : 1
1 5, 0 4 0 (1) : 1
2 1, 0 5 0 (1) : 1
2 2, 0 5 0 (1) : 1
2 3, 0 5 0 (1) : 1
2 4, 0 5 0 (1) : 1
2 5, 0 5 0 (1) : 1
3 1, 0 6 0 (1) : 1
3 2, 0 6 0 (1) : 1
3 3, 0 7 0 (1) : 1
3 4, 0 6 0 (1) : 1
3 5, 0 6 0 (1) : 1
4 1, 0 5 0 (1) : 1
4 2, 0 5 0 (1) : 1
4 3, 0 5 0 (1) : 1
4 4, 0 5 0 (1) : 1
4 5, 0 5 0 (1) : 1
5 1, 0 4 0 (1) : 1
5 2, 0 4 0 (1) : 1
5 3, 0 4 0 (1) : 1
5 4, 0 4 0 (1) : 1
5 5, 0 4 0 (1) : 1
1 1, 0 0 7 (1) : 1
1 2, 0 0 5 (1) : 1
1 3, 0 0 4 (1) : 1
1 4, 0 0 2 (1) : 1
1 5, 0 0 1 (1) : 1
2 1, 0 0 5 (1) : 1
2 2, 0 0 3 (1) : 1
2 3, 0 0 2 (1) : 1
2 4, 0 0 1 (1) : 1
2 5, 0 0 1 (1) : 1
3 1, 0 0 4 (1) : 1
3 2, 0 0 2 (1) : 1
3 3, 0 0 2 (1) : 1
3 4, 0 0 1 (1) : 1
3 5, 0 0 1 (1) : 1
4 1, 0 0 3 (1) : 1

4 2, 0 0 1 (1) : 1
4 3, 0 0 1 (1) : 1
4 4, 0 0 1 (1) : 1
4 5, 0 0 1 (1) : 1
5 1, 0 0 1 (1) : 1
5 2, 0 0 1 (1) : 1
5 3, 0 0 1 (1) : 1
5 4, 0 0 1 (1) : 1
5 5, 0 0 1 (1) : 1

[System]
Name='PRI'
Type='mamdani'
Version=2.0
NumInputs=2
NumOutputs=3
NumRules=75
AndMethod='min'
OrMethod='max'
ImpMethod='min'
AggMethod='max'
DefuzzMethod='centroid'
[Input1]
Name='e'
Range=[-20 160]
NumMFs=5
MF1='NL':'trimf',[-65 -20 25]
MF2='NS':'trimf',[-20 25 70]
MF3='ZE':'trimf',[25 70 115]
MF4='PS':'trimf',[70 115 160]
MF5='PL':'trimf',[115 160 205]
[Input2]
Name='edot'
Range=[-20 160]
NumMFs=5
MF1='NL':'trimf',[-65 -20 25]
MF2='NS':'trimf',[-20 25 70]
MF3='ZE':'trimf',[25 70 115]
MF4='PS':'trimf',[70 115 160]
MF5='PL':'trimf',[115 160 205]
[Output1]

Name='kp'
Range=[0 30]
NumMFs=7
MF1='PVL':'trimf',[-5 -5.551e-017 5]
MF2='PL':'trimf',[0 5 10]
MF3='PML':'trimf',[5 10 15]
MF4='PM':'trimf',[10 15 20]
MF5='PMS':'trimf',[15 20 25]
MF6='PS':'trimf',[20 25 30]
MF7='PVS':'trimf',[25 30 35]
[Output2]
Name='ki'
Range=[0 60]
NumMFs=7
MF1='PVL':'trimf',[-10 0 10]
MF2='PL':'trimf',[0 10 20]
MF3='PML':'trimf',[10 20 30]
MF4='PM':'trimf',[20 30 40]
MF5='PMS':'trimf',[30 40 50]
MF6='PS':'trimf',[40 50 60]
MF7='PVS':'trimf',[50 60 70.02]
[Output3]
Name='kd'
Range=[0 6]
NumMFs=7
MF1='PVL':'trimf',[-1 0 1]
MF2='PL':'trimf',[0 1 2]
MF3='PML':'trimf',[1 2 3]
MF4='PM':'trimf',[2 3 4]
MF5='PMS':'trimf',[3 4 5]
MF6='PS':'trimf',[4 5 6]
MF7='PVS':'trimf',[5 6 7.002]
[Rules]
1 1, 1 0 0 (1) : 1
1 2, 1 0 0 (1) : 1
1 3, 1 0 0 (1) : 1
1 4, 1 0 0 (1) : 1
1 5, 1 0 0 (1) : 1
2 1, 3 0 0 (1) : 1
2 2, 3 0 0 (1) : 1
2 3, 3 0 0 (1) : 1
2 4, 2 0 0 (1) : 1
2 5, 1 0 0 (1) : 1
3 1, 7 0 0 (1) : 1
3 2, 7 0 0 (1) : 1
3 3, 6 0 0 (1) : 1
3 4, 5 0 0 (1) : 1
3 5, 5 0 0 (1) : 1

4 1, 3 0 0 (1) : 1
4 2, 3 0 0 (1) : 1
4 3, 3 0 0 (1) : 1
4 4, 2 0 0 (1) : 1
4 5, 1 0 0 (1) : 1
5 1, 1 0 0 (1) : 1
5 2, 1 0 0 (1) : 1
5 3, 1 0 0 (1) : 1
5 4, 1 0 0 (1) : 1
5 5, 1 0 0 (1) : 1
1 1, 0 4 0 (1) : 1
1 2, 0 4 0 (1) : 1
1 3, 0 4 0 (1) : 1
1 4, 0 4 0 (1) : 1
1 5, 0 4 0 (1) : 1
2 1, 0 5 0 (1) : 1
2 2, 0 5 0 (1) : 1
2 3, 0 5 0 (1) : 1
2 4, 0 5 0 (1) : 1
2 5, 0 5 0 (1) : 1
3 1, 0 6 0 (1) : 1
3 2, 0 6 0 (1) : 1
3 3, 0 7 0 (1) : 1
3 4, 0 6 0 (1) : 1
3 5, 0 6 0 (1) : 1
4 1, 0 5 0 (1) : 1
4 2, 0 5 0 (1) : 1
4 3, 0 5 0 (1) : 1
4 4, 0 5 0 (1) : 1
4 5, 0 5 0 (1) : 1
5 1, 0 4 0 (1) : 1
5 2, 0 4 0 (1) : 1
5 3, 0 4 0 (1) : 1
5 4, 0 4 0 (1) : 1
5 5, 0 4 0 (1) : 1
1 1, 0 0 7 (1) : 1
1 2, 0 0 5 (1) : 1
1 3, 0 0 4 (1) : 1
1 4, 0 0 2 (1) : 1
1 5, 0 0 1 (1) : 1
2 1, 0 0 5 (1) : 1
2 2, 0 0 3 (1) : 1
2 3, 0 0 2 (1) : 1
2 4, 0 0 1 (1) : 1
2 5, 0 0 1 (1) : 1
3 1, 0 0 4 (1) : 1
3 2, 0 0 2 (1) : 1
3 3, 0 0 2 (1) : 1
3 4, 0 0 1 (1) : 1
3 5, 0 0 1 (1) : 1
4 1, 0 0 3 (1) : 1

4 2, 0 0 1 (1) : 1
4 3, 0 0 1 (1) : 1
4 4, 0 0 1 (1) : 1
4 5, 0 0 1 (1) : 1
5 1, 0 0 1 (1) : 1
5 2, 0 0 1 (1) : 1
5 3, 0 0 1 (1) : 1
5 4, 0 0 1 (1) : 1
5 5, 0 0 1 (1) : 1

EXPERIMENT - 4
AIM TO STUDY THE PHASE PLANE ANALYSIS
[x1,x2]=meshgrid(-1.5:.05:-.5,0:0.05:1);
x1dot= x1+2*x2;
x2dot=x1*x1-2*x2;
quiver(x1,x2,x1dot,x2dot);

[x1,x2]=meshgrid(-2:.2:2,-2:0.2:2);
x1dot= x1+2*x2;
x2dot=x1.*x1-2*x2;
quiver(x1,x2,x1dot,x2dot);

Phase Plane pendulum


L=1;
g=9.81;
[x1,x2]=meshgrid(-5:.2:5,-3:0.2:3);
x1dot= x2;
x2dot=-g/L*sin(x1);
quiver(x1,x2,x1dot,x2dot);

You might also like