control system labs all
TRANSCRIPT
-
8/7/2019 control system labs all
1/87
Object: To become familiar with the basics of Mat lab.
Tools:
1) IBM PC
2) Mat lab 7 Version
Description:
What is MATLAB
The name MATLAB is short for Matrix Laboratory. It is a commercial software
package whose main function is to perform calculations on matrices, row vectors and
column vectors. It is widely used in both industry and academic institutions. It
possesses many of the features of a high level, numerically oriented programming
language, but in addition has a large collection of built-in functions for performing
matrix and vector operations in a way that is very simple for the user. For example, tofind the determinant of a matrix A one need only enter:
det(A)
MATLAB commands can be entered one line at a time, or the user can write programs
of MATLAB code and define his or her own functions. In this session, we shall only
use the one-line-at-a-time interpretive mode for simplicity, but the regular user will
find that the power of the package is considerably extended by writing his or her own
programs and functions.
Entering and quitting MATLAB
To enter MATLAB, simply double click on the MATLAB icon. To leave MATLAB
and return to the PCs operating system
Simply type: quit
Lab Practical # 01
An Introduction to MATLAB
-
8/7/2019 control system labs all
2/87
Aisha Muslim:
BS (TE)-044-07F
v = [2 4 7 5];w = [1 3 8 9];
Exercise#1:Investigate the effect of the following commands:
(a) v(2) (b) sum = v + w (c) diff = w - v (d) vw = [v w]
(e) vw(2:6) (f) v'
(a) v(2)
ans =
4
(b) sum = v + w
sum =
3 7 15 14
(c) diff = w - v
diff =
-1 -1 1 4
(d) vw = [v w]
vw =
2 4 7 5 1 3 8 9
(e) vw(2:6)
ans =
4 7 5 1 3
(f) v'
ans =
2
4
7
5
Control systems lab manual
-
8/7/2019 control system labs all
3/87
Aisha Muslim:
BS (TE)-044-07F
Now the matlab window shows all these commands excuted in command window
=
0
0
1
1
z
v = [2 4 7 5];
Exercise#2: Investigate the effect of the following commands
(i) z' (b) z*v (c) [v; w] (d) v*z (e) [z; v] (f) z + v
(i) z'
ans =
1 1 0 0
(b) z*v
ans =
Control systems lab manual
-
8/7/2019 control system labs all
4/87
Aisha Muslim:
BS (TE)-044-07F
2 4 7 5
2 4 7 5
0 0 0 00 0 0 0
(c) [v; w]
ans =
2 4 7 5
1 3 8 9
(d) v*z
ans =
6
Now the matlab window shows all these commands excuted in command window
Control systems lab manual
-
8/7/2019 control system labs all
5/87
Aisha Muslim:
BS (TE)-044-07F
(e) [z; v']
ans =
1
10
0
2
4
7
5
(f) z + v'
ans =
3
5
7
5
Now the matlab window shows all these commands window executed in command
window;
Control systems lab manual
-
8/7/2019 control system labs all
6/87
Aisha Muslim:
BS (TE)-044-07F
=
43
21M
Exercise#3:Investigate the effect of the following commands:
(a) N = inv(M) (b) M*N (c) I = eye(2) (d) M + I (e) M*z(1:2) (f) v(3:4)*M
(g) M(1,1) (h) M(1:2,1:2) (i) M(:,1) (j) M(2,:)
(a) N = inv(M)
N =
-2.0000 1.00001.5000 -0.5000
(b) M*N
ans =
Control systems lab manual
-
8/7/2019 control system labs all
7/87
Aisha Muslim:
BS (TE)-044-07F
1.0000 0
0.0000 1.0000
(c) I = eye(2)
I =
1 0
0 1
(d) M + I
ans =
2 2
3 5
Now the matlab window shows all these commands excuted in command window
Control systems lab manual
-
8/7/2019 control system labs all
8/87
Aisha Muslim:
BS (TE)-044-07F
(e) M*z(1:2)
ans =
3
7
(f) v(3:4)*M
ans =
22 34
(g) M(1,1)
ans =
1
Control systems lab manual
-
8/7/2019 control system labs all
9/87
Aisha Muslim:
BS (TE)-044-07F
(h) M(1:2,1:2)
ans =
1 2
3 4
(i) M(:,1)
ans =
1
3
(j) M(2,:)
ans =
3 4
Now the matlab window shows all these commands excuted in command window
Control systems lab manual
-
8/7/2019 control system labs all
10/87
Aisha Muslim:
BS (TE)-044-07F
Exercise#4: Use the help command to find out about the following built-in functions
and make up your own simple examples:1. ones 2. zeros 3. det 4. Linspace 5. Logspace
1. ones
ONES(N) is an N-by-N matrix of ones.
ONES(M,N) or ONES([M,N]) is an M-by-N matrix of ones.
2. zeros
ZEROS Zeros array.ZEROS(N) is an N-by-N matrix of zeros.
ZEROS(M,N) or ZEROS([M,N]) is an M-by-N matrix of zeros.
3. det
DET Determinant.
DET(X) is the determinant of the square matrix X.
4. Linspace
LINSPACE Linearly spaced vector.
LINSPACE(X1, X2) generates a row vector of 100 linearly
equally spaced points between X1 and X2.
5. Logspace
LOGSPACE Logarithmically spaced vector
LOGSPACE(X1, X2) generates a row vector of 50 logarithmically
equally spaced points between decades 10^X1 and 10^X2. If X2is pi, then the points are between 10^X1 and pi.
t=linspace(0,20,100);
Exercise#5:
1. Generate a vector yc containing the values of cos(t) for the time range givenabove.
The program code is
Control systems lab manual
-
8/7/2019 control system labs all
11/87
Aisha Muslim:
BS (TE)-044-07F
ys = sin(t);
To plot the set of points type:Plot(t,ys)The basic graph can be prettied up using the following self explanatory
sequence of commands:
xlabel('Time in seconds')ylabel('sin(t)')title(' Roll No=44')
grid
Control systems lab manual
-
8/7/2019 control system labs all
12/87
Aisha Muslim:
BS (TE)-044-07F
2. From the help entry for plot find out how to get both ys and yc plotted against t
on the same axis.
PLOT Linear plot.
PLOT(X,Y) plots vector Y versus vector X. If X or Y is a matrix,
then the vector is plotted versus the rows or columns of the matrix,
whichever line up. If X is a scalar and Y is a vector, length(Y)
disconnected points are plotted.
3. From the help entry for subplot find out how to plot ys and yc plotted on two
separate graphs, one above the other.
SUBPLOT Create axes in tiled positions.
H = SUBPLOT(m,n,p), or SUBPLOT(mnp), breaks the Figure window
into an m-by-n matrix of small axes, selects the p-th axes for
for the current plot, and returns the axis handle. The axes
are counted along the top row of the Figure window, then thesecond row, etc. For example,
SUBPLOT(2,1,1), PLOT(income)
SUBPLOT(2,1,2), PLOT(outgo)
Control systems lab manual
-
8/7/2019 control system labs all
13/87
Aisha Muslim:
BS (TE)-044-07F
Exercise#1:
(a) Find zeros of transfer function (if any)
Solution:
This function can be stored in the MATLAB workspace by typing
num = 100;den = [1 14 100];
zeros=roots (num)
zeros =
Empty matrix: 0-by-1
(b) Is the above system stable? Why?Answer:
yes, the system is stable because the real parts of complex poles lie in the left half
plane of the s plane.
(c) Use the plot function to plot the poles of the above transfer function marked by
the symbol x. Record this plot in your lab book with your Roll. No on the top
of the plot.
Control systems lab manual
G(S) ==100
S2+14S+100
Lab Practical #02
Basic Control Functions
-
8/7/2019 control system labs all
14/87
Aisha Muslim:
BS (TE)-044-07F
Exercise#2:
(a) What is the difference between the built-in function conv and series?
Answer:
Conv: this function first computes the numerator and denominator of theresultant transfer function separately by multiplying the respective entity.
Series: this is the built in function in mat lab to compute the transfer function oftwo functions attached in series by accepting the four parameters of the num and
denominator of series functions.
(b) Reduce each of the following block diagrams into a single block form. In each
case find poles and zeros and sketch pole zero diagram. In which block diagrams
you cannot use the function series? Why? Also determine whether the system is
stable or not?
(i)
In these diagrams we can use the series function because there are only two blocks connected
in series. So the code for single block is
num1 = 99;
den1 = [9 27];
num2 = 5*[3 27];
den2 = 7* [1 12 9 27];
[num12, den12] = series (num1, den1, num2, den2);printsys (num12, den12)
num/den =
1485 s + 13365
-------------------------------------------
63 s^4 + 945 s^3 + 2835 s^2 + 3402 s + 5103
Control systems lab manual
999S + 27
5(3S+27)
7(S3+12S
2+9S+27
-
8/7/2019 control system labs all
15/87
Aisha Muslim:
BS (TE)-044-07F
poles=roots(den12)
poles =
-11.4189
-3.0000
-0.2905 + 1.5100i
-0.2905 - 1.5100i
zeros=roots(num12)
zeros =
-9
pzmap(poles,zeros)
Control systems lab manual
-
8/7/2019 control system labs all
16/87
Aisha Muslim:
BS (TE)-044-07F
The system is stable because all poles lie on the left half plane.
(ii)
In these diagrams we can not use the series function because there are three blocks connected inseries. So the code for single block is
num1 = [2 4];
den1 = [1 0 0 0];
num2 = 4/5;
den2 = [1 3];
num3=[1 0 0];
den3=[1 -6];
num12 =conv(num1,num2);
den12 = conv(den1,den2);
Control systems lab manual
4/5S + 3
2S + 4
S3
S2
S - 6
-
8/7/2019 control system labs all
17/87
Aisha Muslim:
BS (TE)-044-07F
num123 =conv(num12,num3);
den123 = conv(den12,den3);
printsys (num123, den123)
num/den =
1.6 s^3 + 3.2 s^2
--------------------
S^5 - 3 s^4 - 18 s^3
poles=roots(den123)
poles =
0
0
0
6.0000
-3.0000
zeros=roots(num123)
zeros =
0
0
-2
The mat lab command window for above question is following;
Control systems lab manual
-
8/7/2019 control system labs all
18/87
Aisha Muslim:
BS (TE)-044-07F
pzmap(poles,zeros)
Control systems lab manual
-
8/7/2019 control system labs all
19/87
Aisha Muslim:
BS (TE)-044-07F
The system is unstable because pole of the function lie on the right half plane at s=6as well as on the right half plane.
(iii)
In these diagrams we can not use the series function because there are three
blocks connected in series. So the code for single block is
num1 = [1 0 0];
den1 = [1 3];
num2 = [1 6];
den2 = [1 1 1];
num3=[9 0];
den3=[1 8];
num4=22;
den4=[1 5.6];
Control systems lab manual
22S + 5.6
S + 6
S2+S+1
S2
S + 3
9SS + 8
-
8/7/2019 control system labs all
20/87
Aisha Muslim:
BS (TE)-044-07F
num12 =conv(num1,num2);
den12 = conv(den1,den2);
num123 =conv(num12,num3);
den123 = conv(den123,den3);
num1234 =conv(num123,num4);
den1234 = conv(den123,den4);
printsys (num1234, den1234)
num/den =
198 s^4 + 1188 s^3
-----------------------------------------------
s^7 + 10.6 s^6 - 14 s^5 - 379.2 s^4 - 806.4 s^3
poles=roots(den1234)
poles =
0
0
0
6.0000
-8.0000
-5.6000
-3.0000
zeros=roots(num1234)
zeros =
0
0
0
-6
Control systems lab manual
-
8/7/2019 control system labs all
21/87
Aisha Muslim:
BS (TE)-044-07F
The mat lab window of the above question is following;
pzmap(poles,zeros)
Control systems lab manual
-
8/7/2019 control system labs all
22/87
Aisha Muslim:
BS (TE)-044-07F
Exercise#3(a) Consider the following block diagram. Find the closed loop transfer function.
Solution:num1 = 9;
den1 = [1 5];
num2 = 1;
den2 = 1;
[n,d]=feedback(num1,den1,num2,den2);
printsys(n,d)
num/den =9
Control systems lab manual
C(S)R(S)-
9S + 5
-
8/7/2019 control system labs all
23/87
Aisha Muslim:
BS (TE)-044-07F
------
s + 14
(b) Find the closed loop transfer function of the following block diagram.
Solution:num1 = [1 2];
den1 = [1 3 12];
num2 = 1;
den2 = 1;
[n,d]=feedback (num1, den1, num2,den2,+1);
printsys(n,d)
num/den =
s + 2
--------------
s^2 + 2 s + 10
(c) Find the closed loop transfer function of the following block diagram.
Solution:
Control systems lab manual
C(S)R(S)+
S + 2S2 +3S +12
C(S)R(S)-
1S +1
2S
-
8/7/2019 control system labs all
24/87
Aisha Muslim:
BS (TE)-044-07F
num1 = 1;
den1 = [1 1];
num2 = 2;
den2 = [1 0];
[n,d]=feedback(num1,den1,num2,den2);
printsys(n,d)
num/den =
s
------------
s^2 + s + 2
(d) Find the closed loop transfer function of the following block diagram.
num1 = [1 0];
den1 = [1 6];
num2 = [2 1];
den2 = [1 2];
[n,d]=feedback(num1,den1,num2,den2);
printsys(n,d)
num/den =
s^2 + 2 s
----------------
3 s^2 + 9 s + 12
The mat lab command window executing the above commands is shown asfollowing;
Control systems lab manual
C(S)R(S)-
SS +6
2S+1S+2
-
8/7/2019 control system labs all
25/87
Aisha Muslim:
BS (TE)-044-07F
Introduction
Simulink is a software package for modeling, simulating, and analyzing dynamic
systems. It supports linear and nonlinear systems, modeled in continuous time,
sampled time, or a hybrid of the two. One can easily build, analyze and visualize
models.
Thousands of engineers around the world using it to model and solve real problems.
Simulink provides a graphical user interface (GUI) for building models as blockdiagrams, using click-and-drag mouse operations. With this interface, you can draw
Control systems lab manual
Lab Practical # 03
Introduction to Simulink
-
8/7/2019 control system labs all
26/87
Aisha Muslim:
BS (TE)-044-07F
the models just as you would with pencil and paper. Knowledge of this tool will serve
you well throughout your professional career.
Exercise#1: - Perform the indicated tasks using SIMULINK.
(a) Find the step response of the following transfer function.
Solution:
First in the untitled page of mat lab simulinks we created this model by copying the
blocks into the model from the respective Simulink block libraries:
Sources library (the step response)
Sinks library (the Scope block)
Continuous library (the transfer function block)
Control systems lab manual
S+1S+1
G(S)G(S) == 11
-
8/7/2019 control system labs all
27/87
Aisha Muslim:
BS (TE)-044-07F
The result of above after choosing the Start from the Simulation menuand watch the simulation output on the Scope.
Control systems lab manual
-
8/7/2019 control system labs all
28/87
Aisha Muslim:
BS (TE)-044-07F
(c) Differentiate the ramp function and check the result on the scope.
Solution:
First in the untitled page of mat lab simulinks, we created this model by copying the
blocks into the model from the respective Simulink block libraries:
Sources library (the step response)
Sinks library (the Scope block)
Continuous library (the transfer function block)
Control systems lab manual
-
8/7/2019 control system labs all
29/87
Aisha Muslim:
BS (TE)-044-07F
This is shown as below
Control systems lab manual
-
8/7/2019 control system labs all
30/87
Aisha Muslim:
BS (TE)-044-07F
The result of above after choosing the Start from the Simulation menuand watch the simulation output on the Scope.
(d) Amplify sine wave using gain block.Solution:
First in the untitled page of mat lab simulinks, we created this model by copying the
blocks into the model from the respective Simulink block libraries:
Sources library (the sine wave)
Sinks library (the Scope block)
Control systems lab manual
-
8/7/2019 control system labs all
31/87
Aisha Muslim:
BS (TE)-044-07F
This is shown as below
After double clicking the gain block we get its properties block and setting the
gain from 1 to 2 first we get the amplified sine wave with the amplitude 2 even the
amplitude of the sine wave in the properties block is still 1 .
Control systems lab manual
-
8/7/2019 control system labs all
32/87
Aisha Muslim:
BS (TE)-044-07F
Now the result on the scope is shown below after clicking the start from the
simulation menu.
Control systems lab manual
-
8/7/2019 control system labs all
33/87
Aisha Muslim:
BS (TE)-044-07F
(e) Simulate the JK flip-flop in toggle mode and copy resultant waveform in youranswer book.SOLUTION:
Control systems lab manual
-
8/7/2019 control system labs all
34/87
Aisha Muslim:
BS (TE)-044-07F
(e) Explain briefly the function of each block you have used.
(f) Also explain in which library or sub-library this block is present?
1. Step block:Generate a step function
LibrarySources
Description:The Step block provides a step between two definable levels at a specified time. If the
simulation time is less than the Step time parameter value, the block's output is the
Initial value parameter value. For simulation time greater than or equal to the Step
time, the output is the Final value parameter value.
2. Transfer Fcn:It Implements a linear transfer function
Library:Continuous
Description:The Transfer Fcn block implements a transfer function where the input (u) and output
(y) can be expressed in transfer function form.A Transfer Fcn block takes a scalar input. If the numerator of the block's transfer
function is a vector, the block's output is also scalar. However, if the numerator is a
matrix, the transfer function expands the input into an output vector equal in width to
the number of rows in the numerator. For example, a two-row numerator results in a
block with scalar input and vector output. The width of the output vector is two.
3. Scope:Display signals generated during a simulation
Library
SinksDescription:The Scope block displays its input with respect to simulation time. The Scope
block can have multiple axes (one per port); all axes have a common time range
with independent y-axes. The Scope allows to adjust the amount of time and the
range of input values displayed. We can move and resize the Scope window and
you can modify the Scope's parameter values during the simulation. When we
start a simulation, Simulink does not open Scope windows, although it does
write data to connected Scopes. As a result, if we open a Scope after a
simulation, the Scope's input signal or signals will be displayed. If the signal is
Control systems lab manual
-
8/7/2019 control system labs all
35/87
Aisha Muslim:
BS (TE)-044-07F
continuous, the Scope produces a point-to-point plot. If the signal is discrete,
the Scope produces a stair-step plot.
4. Gain :Multiply the input by a constant
LibraryMath Operations
Description :The Gain block multiplies the input by a constant value (gain). The input and
the gain can each be a scalar, vector, or matrix. You specify the value of the
gain in the Gain parameter. The Multiplication parameter lets you specifyelement-wise or matrix multiplication. For matrix multiplication, this parameter
also lets you indicate the order of the multiplicands. The gain is converted from
doubles to the data specified in the block mask offline using round-to-nearest
and saturation. The input and gain are then multiplied, and the result is
converted to the output data type using the specified rounding and overflow
modes.
5. Sine Wave:Generate a sine wave
Library:Sources
Description:The Sine Wave block provides a sinusoid. The block can operate in either time-
based or sample-based mode.
Time-Based Mode:
The output of the Sine Wave block is determined by Time-based mode has two
submodes: continuous mode or discrete mode. The value of the Sample time
parameter determines whether the block operates in continuous mode or discrete
mode: 0 (the default) causes the block to operate in continuous mode. >0 causesthe block to operate in discrete mode.
Sample-Based Mode:
Sample-based mode uses the following formula to compute the output of the
Sine Wave block.
Y = a sin(2*pi*(k+0)/p+b)
where
A is the amplitude of the sine wave.
p is the number of time samples per sine wave period.
k is a repeating integer value that ranges from 0 to p-1.o is the offset (phase shift) of the signal.
Control systems lab manual
-
8/7/2019 control system labs all
36/87
Aisha Muslim:
BS (TE)-044-07F
b is the signal bias.
In this mode, Simulink sets k equal to 0 at the first time step and computes the
block's output, using the preceding formula. At the next time step, Simulinkincrements k and recomputes the output of the block. When k reaches p,
Simulink resets k to 0 before computing the block's output. This process
continues until the end of the simulation.
Control systems lab manual
-
8/7/2019 control system labs all
37/87
Aisha Muslim:
BS (TE)-044-07F
1. Introduction:A Control system can be represented as:
d/dx = Ax + BU
d/dx = Cx + DUWhere A, B, C and D are matrices, x is the state vector, y is the output vector and u is
the input vector. The above representation can be obtained from the differential
equation or transfer function of the system under considerations.
MATLAB has built-in functions tf2ss (transfer function to state space) andss2tf(state
space to transfer function) to convert transfer function model into state spacerepresentation and vice versa. Following examples demonstrate the use of both of
these functions.
Exercise#1: -Find the state space representation of the following transfer functions.
1).
Solution:
num= [1 2];den= [1 7 12];
[A, B, C, D]=tf2ss (num, den);
printsys (A, B, C, D)
Control systems lab manual
G(S) =
S+2
S 2+ 7S + 12
Lab Practical # 04State Space Representation
-
8/7/2019 control system labs all
38/87
Aisha Muslim:
BS (TE)-044-07F
After executing the above code in command window of mat lab we get the
following result
a =x1 x2
x1 -7.00000 -12.00000
x2 1.00000 0
b =
u1
x1 1.00000
x2 0
c =
x1 x2
y1 1.00000 2.00000
d =
u1
y1 0
2).
Solution:
num= [1 3 2];
den= [1 3 1 0];
[A, B, C, D]=tf2ss (num, den);printsys (A, B, C, D)
After executing the above code in command window of mat lab we get the
following result
a =
x1 x2 x3
x1 -3.00000 -1.00000 0
x2 1.00000 0 0
x3 0 1.00000 0
Control systems lab manual
G(S) =
=
(S+1)(S +2)
S(S 2+3S+1)
-
8/7/2019 control system labs all
39/87
Aisha Muslim:
BS (TE)-044-07F
b =
u1x1 1.00000
x2 0
x3 0
c =
x1 x2 x3
y1 1.00000 3.00000 2.00000
d =
u1
y1 0
Now the mat lab window shows the results of above questions:
Control systems lab manual
-
8/7/2019 control system labs all
40/87
Aisha Muslim:
BS (TE)-044-07F
Exercise#2:
Find the transfer functions of the following systems
(a).
Solution:
A= [-1 0 0; 0 -2 -3; 0 0 3];
B= [3;-6; 3];
C= [1 1 1];
D=0;
[num, den] =ss2tf (A, B, C, D);printsys (num, den)
After executing the above code in command window of mat lab we get the
following result
num/den =
4.2188e-015 s^2 + 9 s - 3
-------------------------S^3 - 7 s - 6
Control systems lab manual
-
8/7/2019 control system labs all
41/87
Aisha Muslim:
BS (TE)-044-07F
2).Solution:
A= [0 1 0; 0 0 1;-6 -11 -6];
B= [0; 0; 0];
C= [1 0 0];
D=0;
[num, den]=ss2tf (A, B, C, D);
printsys (num, den)
After executing the above code in command window of mat lab we get thefollowing result
num/den =
4.2188e-015 s^2 + 9 s - 3
-------------------------
S^3 - 7 s - 6
Eigen values
Exercise#3:
Find the Eigen values of the systems with
A=
A= [0 2 0 0 0;0.1 0.35 0.1 0.1 0.75;0 0 0 2 0;0.4 0.4 -0.4 -0.4 0;0 -0.03 0 0 -1];
B=eig (A)
After executing the above commands in mat lab command window we get;
B =
0.8061
Control systems lab manual
0 2 0 0 0
0.1 0.35 0.1 0.1 0.75
0 0 0 2 0
0.4 0.4 -0.4 -0.4 0
0 -0.03 0 0 -1
-
8/7/2019 control system labs all
42/87
Aisha Muslim:
BS (TE)-044-07F
-0.2223 + 0.9426i
-0.2223 - 0.9426i
-0.4321-0.9794
Now the mat lab window showing the above commands is given below;
b)... compute the eign values of the system given in exercise 2(a) and 2(b).1).
Solution:
A= [-1 0 0; 0 -2 -3; 0 0 3];
B=eig (A)
After execution we get
B =
Control systems lab manual
-
8/7/2019 control system labs all
43/87
-
8/7/2019 control system labs all
44/87
Aisha Muslim:
BS (TE)-044-07F
(a): System given in (a) at t=4;
Solution:
t=4;
A= [-1 0 0; 0 -2 -3; 0 0 3];
B=expm (A*t)
After execution of the above code we have
B =
1.0e+005 *
0.0000 0 0
0 0.0000 -0.9765
0 0 1.6275
b) System given in (b) at t=0;
Solution:
t=0;A= [0 1 0; 0 0 1;-6 -11 -6];
B=expm (A*t)
After execution of the above code we have
B =
1 0 0
0 1 0
0 0 1
Control systems lab manual
-
8/7/2019 control system labs all
45/87
Aisha Muslim:
BS (TE)-044-07F
Now the mat lab window shows the above all programs;
Control systems lab manual
-
8/7/2019 control system labs all
46/87
Aisha Muslim:
BS (TE)-044-07F
1. Introduction
When a time domain signal is applied to a control system it produces a response of
that signal in time domain. This response of the system is called time response of a
control system. At the first instant the system exhibits some transients and after some
time it comes to steady state. While designing a control system the information of
transient response characteristics and the steady state characteristics is very important.
In this lab we will apply different test signals (Step, Impulse and Ramp) to a particular
control system and from the response of that signal we will acquire the information
about the peak response, steady state, settling time, rise time and steady state error.
Exercise#1: - Find transient and steady state characteristics of the following transfer
functions.
a).
num = [1 2];
den = [1 7 12];
step(num,den)grid on
After executing in command window we get the following result
Control systems lab manual
Lab Practical # 05Time Response of a Control System
-
8/7/2019 control system labs all
47/87
Aisha Muslim:
BS (TE)-044-07F
b).
num = [1 3 2];den = [1 3 1 0];
step(num,den)grid on
Control systems lab manual
-
8/7/2019 control system labs all
48/87
Aisha Muslim:
BS (TE)-044-07F
Exercise#2: - Reduce the following open loop systems into a single block and find
time response of the system.
(i)
Solution:
num1= [1 0];den1= [9 17];num2= [9 27];den2= [2 9 27];[num12, den12]=series (num1, den1, num2, den2);printsys(num12, den12)
After executing the above code we get the single transfer function as
Control systems lab manual
S9S + 17
9(S+3)
2S2
+ 9s +27
-
8/7/2019 control system labs all
49/87
Aisha Muslim:
BS (TE)-044-07F
num/den =
9 s^2 + 27 s------------------------------18 s^3 + 115 s^2 + 396 s + 459
>>
Now for the transient and steady state response in terms of step input is
step (num12, den12)
The result in mat lab figure is following;
(ii)
num1 = [2 4];
Control systems lab manual
4/5S + 3
2S + 4
S3
S2
S - 6
-
8/7/2019 control system labs all
50/87
Aisha Muslim:
BS (TE)-044-07F
den1 = [1 0 0 0];
num2 = 4/5;
den2 = [1 3];
num3=[1 0 0];
den3=[1 -6];
num12 =conv(num1,num2);
den12 = conv(den1,den2);
num123 =conv(num12,num3);
den123 = conv(den12,den3);
printsys (num123, den123)
After executing the above code we get the single transfer function as
num/den =
1.6 s^3 + 3.2 s^2
--------------------
S^5 - 3 s^4 - 18 s^3Now for the transient and steady state response in terms of step input isstep(num123,den123)
The result in mat lab figure is following;
Control systems lab manual
-
8/7/2019 control system labs all
51/87
Aisha Muslim:
BS (TE)-044-07F
Exercise#3: - Find time response of following closed loop systems.
(i)
Solution:
num1 = 9;
den1 = [1 5];
num2 = 1;
den2 = 1;[n,d]=feedback (num1, den1, num2, den2);
Control systems lab manual
C(S)R(S)-
9S + 5
-
8/7/2019 control system labs all
52/87
Aisha Muslim:
BS (TE)-044-07F
printsys(n,d)
For the equilent transfer function of the feedback system we get the following result
from mat lab command window;
num/den =
9
------
s + 14
Now for the transient and steady state response in terms of step input is
step(n,d)
The result in mat lab figure is following;
Control systems lab manual
-
8/7/2019 control system labs all
53/87
Aisha Muslim:
BS (TE)-044-07F
(ii)
Solution:num1 = 1;
den1 = [1 1];
num2 = 2;
den2 = [1 0];
[n,d]=feedback(num1,den1,num2,den2);
printsys(n,d)
For the equilent transfer function of the feedback system we get the following result
from mat lab command window;
num/den =
s
------------
s^2 + s + 2
Now for the transient and steady state response in terms of step input is
step(n,d)
Control systems lab manual
C(S)R(S)-
1S +1
2S
-
8/7/2019 control system labs all
54/87
Aisha Muslim:
BS (TE)-044-07F
The result in mat lab figure is following
Control systems lab manual
-
8/7/2019 control system labs all
55/87
Aisha Muslim:
BS (TE)-044-07F
Introduction
Generalized transfer function of second order system is represented by the following
equation
Where n is the natural un-damped frequency and is damping ratio. Thus the
response of the second order system depends upon both factors. In this lab we will
analyze the effect of variation of damping ratio and natural un-damped frequency on
the response of the system.
Exercise#1: -
(a) Find Step response of the system when
n = 0.1 rad/sec
= 0.2, 0.5, 0.81, 2.5
After putting = 0.2 and n = 0.1 rad/sec we get the transfer function
Control systems lab manual
G(S) =S2 + 2nS +n
2
n2
G(S) =S2 + 2nS +n
2
n2
Lab Practical # 06Time domain analysis of Second Order System
-
8/7/2019 control system labs all
56/87
Aisha Muslim:
BS (TE)-044-07F
By entering the following MATLAB code we can find the step response of the system
num = 0.01den = [1 0.04 0.01];
step (num, den)grid on
The command window shows the value of the numerator as
num =
0.0100
The step response figure is given below
Control systems lab manual
G(S) =0.01
S 2+0.04S+0.01
-
8/7/2019 control system labs all
57/87
Aisha Muslim:
BS (TE)-044-07F
After putting = 0.5 and n = 0.1 rad/sec we get the transfer function
By entering the following MATLAB code we can find the step response of the system
num = 0.01den = [1 0.01 0.01];
step (num, den)
grid onThe command window shows the value of the numerator as
num =
0.0100
The step response figure is given below
Control systems lab manual
G(S) =0.01
S 2+0.01S+0.01
-
8/7/2019 control system labs all
58/87
Aisha Muslim:
BS (TE)-044-07F
After putting = 0.81 and n = 0.1 rad/sec we get the transfer function
By entering the following MATLAB code we can find the step response of the system
num = 0.01
den = [1 0.162 0.01];step (num, den)grid on
The command window shows the value of the numerator as
num =
0.0100
The step response figure is given below
Control systems lab manual
G(S) =0.01
S 2+0.162S+0.01
-
8/7/2019 control system labs all
59/87
Aisha Muslim:
BS (TE)-044-07F
After putting = 2.5 and n = 0.1 rad/sec we get the transfer function
By entering the following MATLAB code we can find the step response of the system
num = 0.01den = [1 0.5 0.01];
step (num, den)
grid onThe command window shows the value of the numerator as
num =
0.0100
Control systems lab manual
G(S) =0.01
S 2+0.5S+0.01
-
8/7/2019 control system labs all
60/87
Aisha Muslim:
BS (TE)-044-07F
The step response figure is given below
(c).What is the effect of increasing the value of .
Answer:
The effect of increasing the value of damping ratio . in part (1) of the question is
that the systems transient response is more stable and more time the system willtake to reach the steady state.
Exercise#2: -
(a) Find impulse response of the system when
n = 0.1 rad/sec
= 0.2, 0.5, 0.81, 2.5
After putting = 0.2 and n = 0.1 rad/sec we get the transfer function
Control systems lab manual
G(S) =S2 + 2nS +n
2
n2
-
8/7/2019 control system labs all
61/87
Aisha Muslim:
BS (TE)-044-07F
By entering the following MATLAB code we can find the impulse response of the
system
num = 0.01den = [1 0.04 0.01];
impulse(num,den)grid on
The command window shows the value of the numerator as
num =
0.0100
The impulse response figure is given below
After putting = 0.5 and n = 0.1 rad/sec we get the transfer function
Control systems lab manual
G(S) =0.01
S 2+0.04S+0.01
-
8/7/2019 control system labs all
62/87
Aisha Muslim:
BS (TE)-044-07F
By entering the following MATLAB code we can find the impulse response of the
system
num = 0.01den = [1 0.01 0.01];
impulse(num,den)
grid on
The command window shows the value of the numerator as
num =
0.0100
The impulse response figure is given below
Control systems lab manual
G(S) =0.01
S 2+0.01S+0.01
-
8/7/2019 control system labs all
63/87
Aisha Muslim:
BS (TE)-044-07F
After putting = 0.81 and n = 0.1 rad/sec we get the transfer function
By entering the following MATLAB code we can find the impulse response of the
system
num = 0.01den = [1 0.162 0.01];impulse(num,den)
grid on
The command window shows the value of the numerator as
num =
0.0100
The impulse response figure is given below
Control systems lab manual
G(S) =0.01
S 2+0.162S+0.01
-
8/7/2019 control system labs all
64/87
Aisha Muslim:
BS (TE)-044-07F
After putting = 2.5 and n = 0.1 rad/sec we get the transfer function
By entering the following MATLAB code we can find the impulse response of the
system
num = 0.01den = [1 0.5 0.01];
impulse(num,den)grid on
The command window shows the value of the numerator as
num =
0.0100
Control systems lab manual
G(S) =0.01
S 2+0.5S+0.01
-
8/7/2019 control system labs all
65/87
Aisha Muslim:
BS (TE)-044-07F
The impulse response figure is given below
(b) What is the effect of increasing the value of .
Answer:
The effect of increasing the value of damping ratio . in part (1) of the question is
that the systems transient response is more stable and more time the system will
take to reach the steady state.
Exercise#3: -
(a) Find ramp response of the system when
n = 0.1 rad/sec
= 0.2, 0.5, 0.81, 2.5
Control systems lab manual
G(S) =S2 + 2nS +n
2
n2
-
8/7/2019 control system labs all
66/87
Aisha Muslim:
BS (TE)-044-07F
After putting = 0.2 and n = 0.1 rad/sec we get the transfer function
By using the following MATLAB code we can find the ramp response of the system
t=0:0.01:10;r=t;num = 0.01
den = [1 0.04 0.01];plot(r,t)
hold onlsim(num,den,r,t)hold off
grid on
The command window shows the value of the numerator as
num =
0.0100
The ramp response figure is given below
Control systems lab manual
G(S) =0.01
S 2+0.04S+0.01
-
8/7/2019 control system labs all
67/87
Aisha Muslim:
BS (TE)-044-07F
After putting = 0.5 and n = 0.1 rad/sec we get the transfer function
By using the following MATLAB code we can find the ramp response of the system
t=0:0.01:10;r=t;num = 0.01
den = [1 0.01 0.01];plot(r,t)
hold onlsim(num,den,r,t)
hold offgrid on
Control systems lab manual
G(S) =0.01
S 2+0.01S+0.01
-
8/7/2019 control system labs all
68/87
-
8/7/2019 control system labs all
69/87
Aisha Muslim:
BS (TE)-044-07F
By using the following MATLAB code we can find the ramp response of the system
t=0:0.01:10;r=t;
num = 0.01den = [1 0.162 0.01];
plot(r,t)hold onlsim(num,den,r,t)hold off
grid on
The command window shows the value of the numerator as
num =
0.0100
The ramp response figure is given below
Control systems lab manual
-
8/7/2019 control system labs all
70/87
-
8/7/2019 control system labs all
71/87
Aisha Muslim:
BS (TE)-044-07F
(f) What is the effect on steady state error with the increasing the value of .
Answer:
The slope of the transient response of the system is more steepest after increasing
the value of .
Exercise#4: -
(a) Find step, ramp and impulse response of the system whenn = 0.1, 0.2, 0.5 and 1 rad/sec = 0.2
Step responses:
After putting n = 0.1 and = 0.2 rad/sec we get the transfer function
Control systems lab manual
G(S) =S2 + 2nS +n
2
n2
G(S) =0.01
S 2+0.04S+0.01
-
8/7/2019 control system labs all
72/87
Aisha Muslim:
BS (TE)-044-07F
By entering the following MATLAB code we can find the step response of the system
num = 0.01
den = [1 0.04 0.01];step (num, den)grid on
The command window shows the value of the numerator as
num =
0.0100
The step response figure is given below
Control systems lab manual
-
8/7/2019 control system labs all
73/87
Aisha Muslim:
BS (TE)-044-07F
After putting n = 0.2 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the step response of the system
num = 0.04
den = [1 0.08 0.04];step (num, den)grid on
The command window shows the value of the numerator as
num =
Control systems lab manual
G(S) =0.04
S 2+0.08S+0.04
-
8/7/2019 control system labs all
74/87
Aisha Muslim:
BS (TE)-044-07F
0.0400
The step response figure is given below
After putting n = 0.5 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the step response of the system
num = 0.25
den = [1 0.2 0.25];step (num, den)
grid on
Control systems lab manual
G(S) =0.25
S 2+0.2S+0.25
-
8/7/2019 control system labs all
75/87
Aisha Muslim:
BS (TE)-044-07F
The command window shows the value of the numerator as
num =
0.2500
The step response figure is given below
After putting n = 1 and = 0.2 rad/sec we get the transfer function
Control systems lab manual
G(S) = 1S 2+0.4S+1
-
8/7/2019 control system labs all
76/87
-
8/7/2019 control system labs all
77/87
Aisha Muslim:
BS (TE)-044-07F
Impulse responses:After putting n = 0.1 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the impulse response of the
system
num = 0.01den = [1 0.04 0.01];
impulse (num, den)grid on
The command window shows the value of the numerator as
num =
0.0100
The impulse response figure is given below
Control systems lab manual
G(S) =0.01
S 2+0.04S+0.01
-
8/7/2019 control system labs all
78/87
Aisha Muslim:
BS (TE)-044-07F
After putting n = 0.2 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the impulse response of the
system
num = 0.04den = [1 0.08 0.04];impulse (num, den)
grid on
The command window shows the value of the numerator as
num =
Control systems lab manual
G(S) =0.04
S 2+0.08S+0.04
-
8/7/2019 control system labs all
79/87
Aisha Muslim:
BS (TE)-044-07F
0.0400
The impulse response figure is given below
After putting n = 0.5 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the impulse response of the
system
num = 0.25den = [1 0.2 0.25];
impulse (num, den)grid on
The command window shows the value of the numerator as
Control systems lab manual
G(S) =0.25
S 2+0.2S+0.25
-
8/7/2019 control system labs all
80/87
Aisha Muslim:
BS (TE)-044-07F
num =
0.2500
The impulse response figure is given below
By entering the following MATLAB code we can find the impulse response of the
system
num = 1;
den = [1 0.4 1];impulse (num, den)
grid on
Control systems lab manual
G(S) = 1S 2+0.4S+1
-
8/7/2019 control system labs all
81/87
Aisha Muslim:
BS (TE)-044-07F
The command window shows the value of the numerator as
num =
1.0000
The impulse response figure is given below
Ramp responses:
After putting n = 0.1 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the ramp response of the
system
t=0:0.01:10;r=t;
Control systems lab manual
G(S) =0.01
S 2+0.04S+0.01
-
8/7/2019 control system labs all
82/87
Aisha Muslim:
BS (TE)-044-07F
num = 0.01
den = [1 0.04 0.01];
plot(r,t)hold onlsim(num,den,r,t)
hold offgrid on
The command window shows the value of the numerator as
num =
0.0100
The ramp response figure is given below:
After putting n = 0.2 and = 0.2 rad/sec we get the transfer function
Control systems lab manual
G(S) =0.04
S 2+0.08S+0.04
-
8/7/2019 control system labs all
83/87
Aisha Muslim:
BS (TE)-044-07F
By entering the following MATLAB code we can find the ramp response of the
system
t=0:0.01:10;r=t;
num = 0.04den = [1 0.08 0.04];
plot(r,t)hold onlsim(num,den,r,t)hold off
grid on
The command window shows the value of the numerator as
num =
0.0400
The ramp response figure is given below:
Control systems lab manual
-
8/7/2019 control system labs all
84/87
Aisha Muslim:
BS (TE)-044-07F
After putting n = 0.5 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the ramp response of the
system
t=0:0.01:10;r=t;
num = 0.25;den = [1 0.02 0.25];
plot(r,t)hold onlsim(num,den,r,t)hold off
grid on
Control systems lab manual
G(S) =0.25
S 2+0.2S+0.25
-
8/7/2019 control system labs all
85/87
Aisha Muslim:
BS (TE)-044-07F
The command window shows the value of the numerator as
num =
0.2500
The ramp response figure is given below:
After putting n = 1 and = 0.2 rad/sec we get the transfer function
By entering the following MATLAB code we can find the ramp response of the
system
t=0:0.01:10;
r=t;num = 1;den = [1 0.4 1];
plot(r,t)hold on
Control systems lab manual
G(S) =1
S 2+0.4S+1
-
8/7/2019 control system labs all
86/87
Aisha Muslim:
BS (TE)-044-07F
lsim(num,den,r,t)
hold off
grid on
The command window shows the value of the numerator as
num =
1.0000
The ramp response figure is given below:
(b) What is the effect of increasing the value of .
Control systems lab manual
-
8/7/2019 control system labs all
87/87
Aisha Muslim:
BS (TE)-044-07F