Escolar Documentos
Profissional Documentos
Cultura Documentos
Curso MATLAB 6 Smlink
Curso MATLAB 6 Smlink
Curso MATLAB 6
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
Ajuste de Escala:
Um autoscale pode ser acessado para ajustar o grfico. Se a curva parecer dentada aumente o fator de refino.
Plotando Resultados:
Parmetros de Simulao:
Tempo inicial
Tempo final
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.
Demultiplexador de sinal: faz o contrrio, pega um sinal mltiplo e divide em sinais nicos. Signals and Systens Demux
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
V
dm ! me m s dt
F h g
m ! V . A.h
m i ! V .Fi
! k. h
dh ! 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
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 m2.
Fi
Linearizao do Modelo:
Uma outra forma muito comum de tratar o modelo linearizando utilizando a expanso em srie de Taylor : Modelo
df1 de p df 2 .(e de p df m de p
(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 de1 dg 2 de 1 dg m de 1
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.
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.
q1
q2
h q3
q3 ! h / R
dh h V ! Vq1 Vq 2 V dt R
Kp h' ( s ) ! G1 ( s ) ! ' X s 1 q1 ( s )
h ( s) ! q2 (s)
2 ( s) !
X s 1
onde:
Kp ! R X ! AR
K p ! R ! 6.37 X ! AR ! 1.25
Corrente q1
Corrente q2
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 VF AC P T A T (HVk0e ! dt VVC P
E RT C
UA Tc T
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
Exemplo S-function:
Configurando o bloco S-function:
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