Lab Experiment 1 (B)

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 15

B-Introduction to Simulink and its components.

Learn and IMITATE the


process to produce a sample model

Objective:

 To learn how to find the transfer function of a system.


 Introduction to MATLAB Simulink and study of system modeling in Simulink.

Partial Fractions:
The partial fraction expansion for F(s)=b(s)/a(s) can be found using the statement:
[r,p,k]=residue(b,a)
where r is residue, p roots of denominator and k direct quotient which is found by dividing
polynomials prior to performing a partial fraction expansion, In an example, the end result of the
Laplace transform solution of a differential expression is 32s/s(s+4)(s+8) we can find the partial
fraction of this solution by simply defining the numerator and denominator.

 Num=32;
 Den=[1 12 32 0];
 [r,p,k]=residue(Num ,Den)

Creating Transfer Functions:


A transfer function can be expressed as nominator polynomial divided by a denominator
polynomial that is F(s)= N(s)/D(s). The nominator N(s) is represented by a row vector, numf,
that contains the coefficients of N(s). similarly the denominator of D(s) is represented by a row
vector ,denf , that contains the coefficients of D(s). We form F(s) with the command
T=tf (numf, denf)
T is called a linear time invariant (LTI) object. This object or transfer function can be used as an
entity in other operations, such as addition or multiplication. We demonstrate with
F(s)= 10 (s2+3s+5)/(s2+s+2)

 numf=10*[1 3 5];
 denf=[1 1 2];
 T=tf (numf, denf)

10s2+30s+50 / s2+s+2

Transfer Function:
Transfer Function nominator and denominator vectors can be converted between polynomial
form containing the coefficients and factored form containing the root. The MATLAB functions
tf2zp (numtf , dentf) , converts the denominator and nominator from coefficients to roots. The
results are in the form of vectors, we demonstrate this
F(s)=s2+s+3 / s3+ 2s2+s+10

 Numtf = [1 1 3]
 Dentf = [1 2 1 1 0]
 [Numfzp,denfzp] = tf2zp(Numtf,Dentf)

Introduction to Simulink:
Simulink is a graphical extension to MATLAB for modeling and simulation of systems. One of
the main advantages of Simulink is the ability to model a nonlinear system, which a transfer
function is unable to do. Another advantage of Simulink is the ability to take on initial
conditions. When a transfer function is built, the initial conditions are assumed to be zero.
In Simulink, systems are drawn on screen as block diagrams. Many elements of block diagrams
are available, such as transfer functions, summing junctions, etc., as well as virtual input and
output devices such as function generators and oscilloscopes. Simulink is integrated with
MATLAB and data can be easily transferred between the programs.
Starting Simulink:
Simulink is started from the MATLAB command prompt by entering the following command:
simulink
Alternatively, you can hit the Simulink button at the top of the MATLAB window as shown
here:

When it starts, Simulink brings up a single window, entitled Simulink Start Page which can be
seen here.

Once you click on Blank Model, a new window will appear as shown below.
Model Files:
In Simulink, a model is a collection of blocks which, in general, represents a system. In addition
to creating a model from scratch, previously saved model files can be loaded either from
the File menu or from the MATLAB command prompt. As an example, download the following
model file by right-clicking on the following link and saving the file in the directory you are
running MATLAB from.
simple.slx
Open this file in Simulink by entering the following command in the MATLAB command
window. (Alternatively, you can load this file using the Open option in the File menu in
Simulink, or by hitting Ctrl-O in Simulink).
simple
The following model window should appear.
A new model can be created by selecting New from the File menu in any Simulink window (or
by hitting Ctrl-N).

Basic Elements:
There are two major classes of items in Simulink: blocks and lines. Blocks are used to generate,
modify, combine, output, and display signals. Lines are used to transfer signals from one block
to another.
Blocks
There are several general classes of blocks within the Simulink library:
 Sources: used to generate various signals
 Sinks: used to output or display signals
 Continuous: continuous-time system elements (transfer functions, state-space models, PID
controllers, etc.)
 Discrete: linear, discrete-time system elements (discrete transfer functions, discrete state-
space models, etc.)
 Math Operations: contains many common math operations (gain, sum, product, absolute
value, etc.)
 Ports & Subsystems: contains useful blocks to build a system
Blocks have zero to several input terminals and zero to several output terminals. Unused input
terminals are indicated by a small open triangle. Unused output terminals are indicated by a
small triangular point. The block shown below has an unused input terminal on the left and an
unused output terminal on the right.
Lines
Lines transmit signals in the direction indicated by the arrow. Lines must always transmit signals
from the output terminal of one block to the input terminal of another block. On exception to this
is a line can tap off of another line, splitting the signal to each of two destination blocks, as
shown below.

Lines can never inject a signal into another line; lines must be combined through the use of a
block such as a summing junction.
A signal can be either a scalar signal or a vector signal. For Single-Input, Single-Output (SISO)
systems, scalar signals are generally used. For Multi-Input, Multi-Output (MIMO) systems,
vector signals are often used, consisting of two or more scalar signals. The lines used to transmit
scalar and vector signals are identical. The type of signal carried by a line is determined by the
blocks on either end of the line.
Simple Example:

The simple model consists of three blocks: Step, Transfer Function, and Scope. The Step is
a Source block from which a step input signal originates. This signal is transferred through
the line in the direction indicated by the arrow to the Transfer Function Continuous block.
The Transfer Function block modifies its input signal and outputs a new signal on a line to
the Scope. The Scope is a Sink block used to display a signal much like an oscilloscope.
There are many more types of blocks available in Simulink, some of which will be discussed
later. Right now, we will examine just the three we have used in the simple model.

Modifying Blocks:

A block can be modified by double-clicking on it. For example, if you double-click on


the Transfer Function block in the Simple model, you will see the following dialog box.
This dialog box contains fields for the numerator and the denominator of the block's transfer
function. By entering a vector containing the coefficients of the desired numerator or
denominator polynomial, the desired transfer function can be entered. For example, to change the
denominator to

enter the following into the denominator field


[1 2 4]
and hit the close button, the model window will change to the following,
which reflects the change in the denominator of the transfer function.
The Step block can also be double-clicked, bringing up the following dialog box.
The default parameters in this dialog box generate a step function occurring at time = 1 sec, from
an initial level of zero to a level of 1 (in other words, a unit step at t = 1). Each of these
parameters can be changed. Close this dialog before continuing.
The most complicated of these three blocks in the Scope block. Double-clicking on this brings up
a blank oscilloscope screen.

When a simulation is performed, the signal which feeds into the scope will be displayed in this
window. Detailed operation of the scope will not be covered in this tutorial.
Running Simulations:
To run a simulation, we will work with the following model file:
simple2.slx
Download and open this file in Simulink following the previous instructions for this file. You
should see the following model window.
Before running a simulation of this system, first open the scope window by double-clicking on
the scope block. Then, to start the simulation, either select Run from the Simulation menu, click
the Play button at the top of the screen, or hit Ctrl-T.
The simulation should run very quickly and the scope window will appear as shown below.

Note that the step response does not begin until t = 1. This can be changed by double-clicking on
the step block. Now, we will change the parameters of the system and simulate the system again.
Double-click on the Transfer Function block in the model window and change the denominator
to:
[1 20 400]
Re-run the simulation (hit Ctrl-T) and you should see the following in the scope window.
Since the new transfer function has a very fast response, it compressed into a very narrow part of
the scope window. This is not really a problem with the scope, but with the simulation itself.
Simulink simulated the system for a full ten seconds even though the system had reached steady
state shortly after one second.
To correct this, you need to change the parameters of the simulation itself. In the model window,
select Model Configuration Parameters from the Simulation menu. You will see the following
dialog box.

There are many simulation parameters options; we will only be concerned with the start and stop
times, which tell Simulink over what time period to perform the simulation. Change Start
time from 0.0 to 0.8 (since the step doesn't occur until t = 1.0). Change Stop time from 10.0 to
2.0, which should be only shortly after the system settles. Close the dialog box and rerun the
simulation. Now, the scope window should provide a much better display of the step response as
shown below.
Post Lab Assignment:
1. Consider the two polynomials p(s) = s2 + 2s + 1 and q(s) = s + 1. Using MATLAB compute:
a. p(s) * q(s)
b. Roots of p(s) and q(s)
c. p(-1) and q(6)
2. Use MATLAB command to find the partial fraction of the following:
B( s) 2 s3 +5 s 2+ 3 s+ 6
a. =
A (s) s3 +6 s2 +11 s +6

B( s) s2 +2 s +3
b. =
A ( s) (s+1)2

3. Design a simple Model on Simulink and observe its behavior.


Comments:

_______________________________________________________________________________

_______________________________________________________________________________

_______________________________________________________________________________

Lab Instructor Signature: ______________________

You might also like