Você está na página 1de 42

Curso MATLAB 6

Instrutor: Marcelo Escobar


Simulink

Curso MATLAB 6

Exemplo: Simulao de um Reator

Simulink:

Referncias:

Apresentando o Simulink:
O simulink um aplicativo do matlab que permite analisar o
comportamento dinmico de sistemas a partir da construo de
um modelo matemtico.
Como Acessar:
>>simulink na Comand Window.
Ou no cone colorido na barra de ferramentas.
Ao abrir o simulink temos acesso ao Simulink Library Browser,
no qual ficam exibidos os cones dos diagramas de blocos
disponveis para a composio do modelo.
No menu file, temos a opo new model, no qual podemos criar
um modelo matemtico para o nosso sistema.
Os cones so inseridos no modelo com uma seleo seguida de
arraste.

Criando Modelos:
O tpico Sources nos fornece uma srie de possveis entradas
dos modelos.
O tpico Sink nos fornece uma srie de possveis retornos de
sadas dos modelos.
Um clique com o
mouse na fronteira
do bloco, nos permite
ligar os blocos entre si.

Criando Modelos:
Na barra de ferramentas do modelo, possui um cone de play
que simula o modelo.
Na barra de ferramentas, no menu Simulation, podemos
acessar e editar os parmetros da simulao.
Os cones arrastados para o modelo so genricos e podem ser
editados com um duplo clique sobre o cone.
Como exemplo, o cone
sin wave.

Criando Modelos:

Biblioteca
Sources

Biblioteca
Math

Exemplo: Adio de sinais

Ajuste de Escala:
Um autoscale pode ser acessado para ajustar o grfico.
Se a curva parecer dentada aumente o fator de refino.

Exemplo: Ajuste de Escala

Plotando Resultados:

Dois ou mais grficos:

Parmetros de Simulao:

Tempo inicial

Tempo final

Manipulao de Blocos Simulink:


No tpico Math temos uma srie de blocos pelos quais os
sinais podem passar, um dos mais comuns so os blocos de
ganho e o bloco de soma.
Soma de sinais: Math bloco sum
Multiplicao do sinal por um ganho: Math bloco gain
Obs: Os cones inseridos no modelo podem ser editados na
sua aparncia, assim como no Word, podemos ampliar e girar
o cone como quisermos, um clique com o boto direito sobre
o cone nos permite a edio e formatao.

Manipulao de Blocos Simulink:


No tpico Signals and Systens temos uma srie de blocos
pelos quais os sinais podem passar, um dos mais comuns so os
blocos multiplexador e o demultiplexador.
Multiplexador de sinal: combina entradas fornecendo uma
sada, como se tivssemos dois sinais armazenados numa
mesma varivel ps passagem no multiplexador.
Signals and Systens Mux
Demultiplexador de sinal: faz o contrrio, pega um sinal
mltiplo e divide em sinais nicos.
Signals and Systens Demux

Manipulao de Blocos Simulink:


No tpico Functions & Tables temos uma srie de blocos
pelos quais os sinais podem passar.Um dos mais importantes
O matlab function, que permite que usemos qualquer funo
do matlab ou mesmo uma que criamos. Com isso somos
capazes de gerar qualquer sinal.
O bloco S-function ser visto com mais detalhes mais
adiante.
Por fim temos os tpicos de modelos contnuos e discretos
que podemos utilizar, nada impede que usemos um modelo em
arquivo m do matlab. Alm disso temos uma srie de outras
ferramentas com cones que podem ser utilizados, esses
discutidos so os principais.

Exibio de Resultados:
O cone scope permite que mais de um grfico seja plotado no
mesmo eixo, basta usar um bloco Mux.
Alm disso a barra de ferramentas do scope , permite a
edio de nmero de eixos por janela, podendo assim plotar
dois grficos no mesmo scope com eixos diferentes.
Podemos enviar os dados tambm para o workspace com o
bloco to workspace fornecendo o nome da varivel na qual o
sinal vai ser armazenado.
Podemos simular o modelo atravs da Comand Window:
>>sim(nome do modelo)
Cada bloco permite a chamada de uma funo do matlab, s
fornecer o nome da funo em propriedades. A funo
executada com um clique sobre o cone.

Tipos de Modelos:
Modelos dinmicos so equaes diferencias que nos permitem
avaliar de que forma uma dada propriedade varia com o tempo.
Um vez obtido o modelo do processo, a resoluo da equao ou do
sistema de equaes diferenciais nos fornece as variveis de sada
do modelo.
Se usarmos os comandos ode vistos anteriormente estamos
considerando as entradas constantes. Na verdade o que queremos
analisar o comportamento da varivel de sada sujeita a um sinal
de entrada(dinmica).Podemos fazer isso usando ode, mas isso vai
requerer um Loop, e o clculo de um ode a cada iterao.
A vantagem do Simulink que com a adio de blocos no modelo
, podemos analisar facilmente os resultados.

Exemplo de Modelo:
Precisamos saber ento como a partir das equaes diferenciais
que governam o nosso processo, podemos fornecer esse modelo ao
Simulink.
Exemplo: Balano de Massa em um tanque.
m massa

m taxa

F
h
g

massa especfica
vazo volumtrica
altura
gravidade

dm
me m s
dt

m . A.h

m i .Fi

dh
A
Fin k . h
dt

Sadas: [ variveis que queremos obter] -h


Estados: [propriedades que variam com tempo nas edif]- h
Entradas: [ propriedades que afetam nossas variveis de sada]
E variam com o tempo] -Fi
Parmetros: [ propriedades fixas do modelo] A e k

Fs k . h

Modelo do tanque:
Os estados so identificados pela derivada em relao ao tempo.
Em muitas vezes, os estados, so as nossas variveis de sada.
Os parmetros so as propriedades que no variam com o tempo, nesse
caso, a rea do tanque no varia com o tempo.
A vazo de entrada uma entrada do sistema, pois esta sujeito a
perturbaes externas.
Podemos construir o modelo, usando por exemplo a lgebra de blocos:

Simulando o Modelo:
Precisamos fornecer os valores para as variveis Fi, k e A.
K=1.2m2/s; A=28m2; Fi=10m3/s;
O bloco utilizado para Fi um bloco degrau, uma entrada muito
comum, na qual em um dado instante,a varivel de entrada assume um
novo valor.Vamos editar um degrau no instante 2, de 10 para 12 m 2.

Fi

Linearizao do Modelo:
Uma outra forma muito comum de tratar o modelo linearizando
utilizando a expanso em srie de Taylor :
Modelo

dsn
f n (e, s)
dt
yn g n (e, s)
df1

ds1
ds df 2

ds1
dt
df
m
ds1

n- numero de sadas
m-numero de equaes
p-numero de entradas

df1
ds2
df 2
ds2
df m
ds2

df1

dsn

df 2
.s
dsn

df m

dsn

df1
de1
df 2
de1
df m
de1

df1
de2
df 2
de2
df m
de2

df1

de p
df 2
.e

de p
df m
de p

Representao em Espao de Estados:


Agora as variveis so variveis desvio em relao ao estacionrio.

s s sest

As matrizes jacobianos, so aplicadas no ponto estacionrio de operao,


assim todas os elementos das matrizes so numricos e o nosso modelo
agora linear.

dg1

ds1
dg 2
y
ds1
dg
m

ds1

dg1
ds2
dg 2
ds2
dg m
ds2

dg1

dsn

dg 2
.s
dsn

dg m

dsn

dg1
de1
dg 2
de1
dg m
de1

dg1
de2
dg 2
de2
dg m
de2

dg1

de p
dg 2
.e
de p
dg m
de p

As matrizes A,B,C e D formam a chamada representao em espao de


estados. No exemplo: A=[-k/(2A.sqrt(h)] B=[1/A] C=[1] D=[0]
O simulink possui um bloco no tpico Continuous em que podemos
fornecer as matrizes para simular o modelo.

Representao em Espao de Estados:

Transformada de Laplace :
Transformada de Laplace:
A propriedade mais importante da transformada de Laplace:
L{ a.Dny/dtn}=sn.Y(s)
Podemos obter a transformada de laplace usando o symbolic toolbox:
>>help laplace
Aplicando a transformada de laplace no nosso exemplo linearizado:
A.s.Y(s)-k.Y(s)=Fi

Fi=U(s)

Y(s)/U(s)= Fi/(A .s k)

Ou seja a funo de transferncia relaciona a entrada com a sada do sistema.


O simulink possui um bloco no tpico Continuous em que podemos fornecer
a funo de transferncia.

Funes de Transferncia :
A funo de transferncia de um sistema a razo de dois polinmios no domnio de
Laplace.
Podemos criar funes de transferncia na Comand Window:
>>help tf
O conceito de funo de transferncia muito importante no estudo de controle de
Processos, uma forma simples de se representar um modelo.
Cada equao diferencial linearizada pode ser representada por uma funo de
Transferncia.Para um sistema com mltiplas entradas e mltiplas sadas, teremos
uma Funo de transferncia que relaciona cada uma delas.
Esse curso tem carter de apenas fornecer as ferramentas necessrias para a analise
de dinmica de sistemas,com um conhecimento terico mais aprofundado sobre
controle de processos tudo ficar muito mais claro.

Propriedades das Transformadas:

Representao em Funes de Transferncia :

Exemplo Funes de Transferncia :


Temos a simulao de um tanque de nvel sob a influncia de uma
perturbao degrau na vazo da alimentao. A figura descreve
o sistema fsico que ser simulado.

q1

q2

h
q3

Exemplo Funes de Transferncia :


Deduzindo o modelo matemtico que descreve o tanque:
Assumindo que:
- a densidade do lquido e a rea da seo transversal do
tanque A so constantes.
- a relao entre a vazo e a carga linear:

dh
h
A
q1 q 2
dt
R

q3 h / R

Exemplo Funes de Transferncia :


Introduzindo as variveis-desvio e aplicando a Transformada de
Laplace, chegamos as funes de transferncia:

Kp
h' ( s )
G1 ( s )
'
s 1
q1 ( s )

Kp
h' ( s )
G2 ( s)
'
s 1
q 2 ( s)
onde:

Kp R

AR

Exemplo Funes de Transferncia :


Para o exemplo em questo considere um tanque de 0.5 m de dimetro
e uma vlvula na sada na linha atuando sob uma resistncia
linear (R) de 6.37 min/m2.
Sero simulados um degrau de 1 ft3 na vazo q1 a partir do tempo igual a 0 min
(step) e um degrau de 1 ft3 na vazo q2 a partir do tempo igual a 10 min(step1).

A = 3.1415 * (0.5/2)^2
A = 0.196
R = 6.37

K p R 6.37

AR 1.25

Exemplo Funes de Transferncia :

Corrente q1

Corrente q2

Exemplo Funes de Transferncia :


Degrau comea
no tempo zero

Degrau comea
No tempo dez

Bloco Funo
de Transferncia

Exemplo Funes de Transferncia :


Resultado obtido:

1 estado
estacionrio

2 estado
estacionrio

1
perturbao

2
perturbao

S-functions:
Equaes para modelar um CSTR:

dV
FA F
dt

dC A
FA A

C A C A k0e RT C A
dt
V

dT
F ACP T A T HVk0e

dt
VCP

E
RT C

UAT Tc

Passando as equaes para o formato Matlab:


dCa = (Fi*(cai-Ca)/V) - k*Ca;
dV = Fi-F;
dT = (Fi*Cp*ro*(Ti-T) + DeltaH*k*Ca*V - U*A*(T-Tc)) /(V*ro*Cp);

Exemplo S-function:
onde:
Fi: vazo de alimentao do reator (ft3/h)
Cai: concentrao da alimentao do reator (lbm/ft3)
Ca: concentrao no reator (varivel)
k: dado pela equao k = k0*exp(-E/(R*T))
V: volume do reator
F: vazo de sada (ft3/h)
Cp: calor especifico = 0.75 btu/lbm.R
ro: densidade =50 lb/ft3
Ti: temperatura de alimentao (R)
T: temperatura do reator
DeltaH: calor de reao = -30000 BTU/ lbm
U: coeficiente de troca trmica =150 BTU/(h.ft2.R)

Exemplo S-function:
onde:
A: rea de troca trmica = 250 ft2
Tc: temperatura do fluido de alimentao (R)
E: energia de ativao = 30000 BTU/lbm
R: constante dos gases = 1.99 BTU/lbm.R

Exemplo S-function:
Biblioteca
Functions & Tables

Parmetros
freqentemente
alterados

Parmetros raramente alterados


(mscara)

Exemplo S-function:
Configurando o bloco S-function:

Nome do arquivo com as


equaes
Parmetros alterados
pela mscara

Exemplo S-function:
Criando uma mscara:

Exemplo S-function:
Criando o arquivo com as equaes:
function [sys,x0] = reator(t,x,u,flag,U,A,DeltaH,ro,Cp,E,R,k0)
%
% Simula um reator CSTR (mistura perfeita) no qual se conduz uma
% reao exotrmica (A->B), resfriado por serpentina

%
switch flag
case 0 % Dimensiona o sistema e inicializa os estados
% sys=[estados,0,sadas,entradas,0,0]
sys = [3,0,3,5,0,0];
% Condies iniciais
ca = 0.1315;
%lbm/ft3, concentrao inicial no reator
T = 584.4115;
%R,
temperatura do reator
V = 200;
%ft3, volume do reator
x0 = [ca T V]';

Exemplo S-function:
Criando o arquivo com as equaes:
function [sys,x0] =
reator(t,x,u,flag,U,A,DeltaH,ro,Cp,E,R,k0)

sys a sada do modelo, cujo significado depende de flag


x0 o vetor de condies iniciais (funciona apenas quando flag = 0 )
t o tempo de simulao
x o vetor de estados do modelo
u o vetor de entradas do modelo (recebido do bloco Mux)
flag um parmetro que informa o tipo de informao que o integrador
espera receber a cada chamado
U,...,k0 so os parmetros adicionais que podem ser passados funo
atravs de uma mascara (devem estar declarados na configurao
do bloco S-function).

Exemplo S-function:
Criando o arquivo com as equaes:
case 1 % Calcula as derivadas
% Atualiza entradas
cai = u(1);
%lbm/ft3, concentrao da alimentao=0.5;
Fi = u(2);
%ft3/hr, vazo de alimentao=40
F = u(3);
%vazo de retirada=40
Tc = u(4);
%R, temperatura do fluido de refrigerao=594.6
Ti = u(5);
%R, temperatura da alimentao=530
% Clculo das derivadas

Ca = x(1);
T = x(2);
V = x(3);

k = k0*exp(-E/(R*T));

dCa = (Fi*(cai-Ca)/V) - k*Ca;


dV = Fi-F;
dT = (Fi*Cp*ro*(Ti-T) + DeltaH*k*Ca*V - U*A*(T-Tc)) /(V*ro*Cp);

sys = [dCa; dT; dV];

Exemplo S-function:
Criando o arquivo com as equaes:
case 3 % Calcula as sadas

sys = [x(1) x(2) x(3)];

otherwise

sys = [];

end

Você também pode gostar