# UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA Programa by QEg9iD

VIEWS: 19 PAGES: 51

• pg 1
```									Introduction to
Presentation Outline

   Examples
   Exercise
   Simulink is an interactive tool for modeling,
simulating and analyzing dynamic systems.
   Simulink integrates seamlessly with MATLAB,
analysis and design tools.
   Simulating a dynamic system is a two-step process
 create a model of the system to be simulated using
 use Simulink to simulate the behavior of the system for
a specified time span
• First launch MATLAB.
command window or click on the Simulink icon
on the MATLAB toolbar.
browser that allows you to
select blocks from libraries
of standard blocks:
 Continuous - blocks that
describe linear functions
 Discrete - blocks that
describe        discrete-time
components
 Functions & Tables -
general functions and table
look-up operations
 Math - blocks that describe
general mathematics
functions
   Nonlinear - blocks that describe nonlinear functions
   Signal & systems - blocks that allow multiplexing,
de-multiplexing, implement external input/output, pass
data to other parts of the model, create subsystems
and perform other functions
   Sinks - blocks that display or write block output
   Sources - blocks that generate signals
   Blocksets and toolboxes - the extras block library
of specialized blocks
Creating a New Model

 Click   the   new-
model icon in the
upper left corner
to start a new
 Select         the
obtain elements of
the model

Library of elements   Model is created in this window

Show/hide
Library
Browser
Block Diagram
A Simulink block diagram is a pictorial model of a
dynamic    system.    It  consists    of blocks
interconnected by lines.
Blocks represent elementary dynamical systems
that Simulink knows how to simulate. A block
comprises one or more of the following:
A   set of inputs.
A   set of states.
A   set of outputs.
To introduce blocks in your model, choose the block
from the library, click on it and drag it in your
model. Double clicking on the block will allow you
to change the block parameters.
Model Execution Phase
In this phase Simulink successively computes the
states and the outputs of the system at intervals
from the simulation start time to the stop time,
using information provided by the model.
Time steps - successive time points at which the
states and the outputs are computed.
Step size - the length of time between steps. It
depends on the type of solver:
   Fixed-step - a smaller step size produces a more
accurate simulation but results in a longer
execution time.
Model Execution Phase
   Variable step - depending on the application, it
can produce more accurate results without
sacrificing execution speed.

Parameters set up:
Simulation > Simulation parameters …

Simulink simulates a system when you choose start
from the model editor’s simulation menu.
Example 1: a Simple Model

   Build a Simulink model that solves the
differential equation

x  3sin 2t 

   Initial condition x (0)  1.

   First, sketch a simulation diagram of this
mathematical model (equation) (3 min.)
Simulation Diagram
   Input is the forcing function 3sin(2t)
   Output is the solution of the differential
equation x(t)

x (0) = -1

.
x       1        x
3sin(2t)                          x(t)
(input)            s            (output)
integrator

   Now build this model in Simulink
Select in Input Block

Drag a Sine Wave block
from the Sources library
to the model window
Select an Operator Block

Drag an Integrator block
from the Continuous
library to the model
window
Select an Output Block

Drag a Scope block from
the Sinks library to the
model window
Connect Blocks with Signals

the output port (>)
of the sine wave
block
   Drag from the sine
wave output to the
integrator input
   Drag from the
integrator output to       Arrows indicate the
the scope input        direction of the signal flow.
Select Simulation Parameters

Double-click on
the Sine Wave
block to set
amplitude = 3
and freq = 2

This produces the
desired input of
3sin(2t)
Select Simulation Parameters

Double-click
on the
Integrator
block to set
initial
condition = -1

This sets our
IC x(0) = -1.
Run the Simulation

In the model
window, from
the Simulation
select Start

Double-click on
the Scope to
view the
simulation
results
Simulation Results

To verify that this plot represents the solution to the
problem, solve the equation analytically.

The analytical
result,

x(t )  1  3 cos2t 
2   2

matches the plot
(the simulation
result) exactly.
Example 2

 Build a Simulink model that solves the
following differential equation

m  cx  kx  f (t )
x 
–   2nd-order mass-spring-damper system
–   Zero ICs
–   Input f(t) is a step with magnitude 3
–   Parameters: m = 0.25, c = 0.5, k = 1
–   m->mass; c->damping factor; k->spring
constant
Example 2

k
m         f (t)

x           c

 On the following slides:
– The simulation diagram for solving the
ODE is created step by step.
– After each step, elements are added to
 Optional exercise: first,    sketch   the
complete diagram (5 min.).
Create the Block Diagram
   First, solve for the term with highest-
order derivative

m  f (t )  cx  kx
x              
   Make the left-hand side of this equation
the output of a summing block

..
mx

summing
block
Drag a Sum block from the Math library

Double-click to change
the block parameters
to rectangular and + - -
Create the Block Diagram

   Add a gain (multiplier) block to
eliminate the coefficient and produce
the highest-derivative alone

..       ..
mx    1   x
m

summing
block
Drag a Gain block from the Math library

The gain is 4 since 1/m = 4.

Double-click to change
the block parameters.
Create the Block Diagram

   Add integrators to obtain             the
desired output variable

m
x    1   
x    1   
x   1   x
m        s       s
summing
block
Drag Integrator blocks from
the Continuous library

ICs on the
integrators are
zero.

Add a scope from the Sinks library.
Connect output ports to input ports.
Label the signals by double-clicking on the leader line.
Create the Block Diagram

   Connect to the integrated signals with
gain blocks to create the terms on the
right-hand side of the equation

m
x    1    
x        1   
x   1   x
m             s       s
summing          
cx        c
block
kx       k
Drag new Gain blocks
from the Math library
To flip the gain block, select it and
choose Flip Block in the Format pull-
down menu or double-clock on it.

c = 0.5

 Double-click on gain
blocks to set parameters
 Connect from the gain
block input backwards up
K = 1.0
to the branch point.
 Re-title the gain blocks.
Complete the Model

 Bring all the signals and inputs to the
summing block.
 Check signs on the summer.

f(t)   +
input          m
x    1   
x    1       
x       1       x    x(t)
-
m        s               s           output
-
x
c       c       
x
kx           k           x
Drag the Step function from the
Source library
Double-click on Step block
to set parameters. For a
step input of magnitude 3,
set Final value to 3
Run the Simulation
Results

Underdamped
response.
Overshoot of 0.5.
Final value of 3.
Is this expected?
Checking Results

x     c       1
   Standard form                 x  x  f (t )

k         k       k
m

Natural frequency        k
                       n     2.0
m

2  c
      0.5
   Damping ratio       n k

1
   Static gain         K  1
k
Checking Results

Damping ratio of 0.5 is less than 1:
– Expect the system to be underdamped.
– Expect to see overshoot.
Static gain is 1:
– Expect output magnitude to equal input
magnitude.
– Input has magnitude 3, so does output.
Simulation results conform to
expectations
Saving to Workspace
Drag the To Workspace
block from the Sink library
Saving to Workspace
Double click on the To
Workspace     block  to
change the parameters.

Check on MATLAB workspace if the variable is there.
Example: plot (tout, x); y = sqrt (x )
Inserting a S-Function
Drag a S-Function block
from the Functions &
Tables library
Inserting a S-Function
Double click on the S-
Function block to
change the S-Function
name and include

Use the template that comes with
Change the template based on
Inserting a S-Function
•   Type sfundemos at the MATLAB
command line.
•   Double click on M-files
•   Double click on M-file S-Function
Template
•   Save the file in another folder and with
another name
•   Change the function name:

function [sys,x0,str,ts]=sfungains(t,x,u,flag)
Inserting a S-Function
•   Change the S-Function size parameters:

sizes = simsizes;

sizes.NumContStates = 0;
sizes.NumDiscStates = 0;
sizes.NumOutputs    = 2;
sizes.NumInputs    = 0;
sizes.DirFeedthrough = 0;
sizes.NumSampleTimes = 1; % at least one sample time is
needed

sys = simsizes(sizes);
Inserting a S-Function

•   Edit the mdlOutputs m-function in

function sys=mdlOutputs(t,x,u)

K1 = 50;
K2 = 20;
sys = [K1 K2];
Inserting a S-Function

Drag a Demux block from
the Signals & Systems
library
Inserting a S-Function

Drag Display blocks from
the Sink library

Exercise

Given the following block diagram:

K3

+


u          +                        +       y
K1                        K4
_                        +

K2

K5
Exercise
1) Show the correspondence of this block diagram
with the RC circuit simulated in Assignment #1
(analytically).
2) Find K1, K2, K3, K4 and K5 in accordance to the
parameters of Assignment #1.
3) Implement the system in Simulink. Use
MATLAB to enter your parameters through a M-
file.