Mundo Simulink

1 / 97
About This Presentation
Title:

Mundo Simulink

Description:

Title: PowerPoint Presentation Last modified by: Carlos Andre Created Date: 1/1/1601 12:00:00 AM Document presentation format: Apresenta o na tela – PowerPoint PPT presentation

Number of Views:1
Avg rating:3.0/5.0
Slides: 98
Provided by: ufr79

less

Transcript and Presenter's Notes

Title: Mundo Simulink


1
(No Transcript)
2
Mundo Simulink
3
Ajuda
?
4
Acessando o Simulink
5
Ambiente Simulink
A programação no Simulink segue uma interface
gráfica muito mais intuitiva e fácil de usar
6
Ambiente Simulink
Ambiente de Trabalho Simulink
7
Exemplos
8
Exemplo 1
9
Exemplo 1 Comportamento Senoidal
Biblioteca Sources
Biblioteca Math
10
Exemplo 1 Comportamento Senoidal
Ajuste automático da escala do gráfico
11
Exemplo 1 Comportamento Senoidal
Ajuste manual da escala do gráfico
12
Exemplo 1 Comportamento Senoidal
Agora quero multiplicar o resultado por -1
13
Exemplo 1 Comportamento Senoidal
14
Exemplo 1 Comportamento Senoidal
15
Exemplo 1 Comportamento Senoidal
Criando um sub-sistema
Sub-sistema
16
Exemplo 1 Comportamento Senoidal
Editando um sub-sistema
Sub-sistema
17
Exemplo 1 Comportamento Senoidal
Algumas vezes é mais fácil tratar os dados
gerados no ambiente Matlab. Usamos o bloco
to workspace
Biblioteca Sinks
Cria a variável A no workspace
18
Exemplo 1 Comportamento Senoidal
Configuração do bloco To Workspace
19
Exemplo 1 Comportamento Senoidal
No Workspace...
gtgt plot(tout,A)
20
Exemplo 1 Comportamento Senoidal
Rodando um bloco
21
Exemplo 1 Comportamento Senoidal
Combinando dois sinais
Entre outras aplicações, permite exibir duas ou
mais curvas no mesmo gráfico.
Bloco MUX Biblioteca Signals Sys.
22
Exemplo 1 Comportamento Senoidal
Dois ou mais gráficos
23
Exemplo 1 Comportamento Senoidal
Dois ou mais gráficos
Configurando...
24
Exemplo 2
25
Exemplo 2 Simulação de um modelo dinâmico
Temos a simulação de um tanque de nível sob a
influência de uma perturbação degrau na vazão da
alimentação. A figura descreve o sistema físico
que será simulado.
26
Exemplo 2 Simulação de um modelo dinâmico
Deduzindo o modelo matemático que descreve o
tanque
Assumindo que        - a densidade do líquido
e a área da seção transversal do
tanque A são constantes. - a relação
entre a vazão e a carga é linear
m
m3

min
min
m2
27
Exemplo 2 Simulação de um modelo dinâmico
O modelo é descrito por uma equação de balanço
transiente de massa no tanque
m
g
m2
min
m3
Substituindo a hipótese ii na equação anterior
ficamos com
28
Exemplo 2 Simulação de um modelo dinâmico
Introduzindo as variáveis-desvio e aplicando a
Transformada de Laplace, chegamos as funções de
transferência
onde
29
Exemplo 2 Simulação de um modelo dinâmico
Para o exemplo em questão considere um tanque de
0.5 m de diâmetro e uma válvula na saída na
linha atuando sob uma resistência linear (R) de
6.37 min/m2.
Serão simulados um degrau de 1 ft3 na vazão q1 a
partir do tempo igual a 0 min (step) e um degrau
de 1 ft3 na vazão q2 a partir do tempo igual a 10
min(step1).
A 3.1415 (0.5/2)2 A 0.196 R 6.37
30
Exemplo 2 Simulação de um modelo dinâmico
Corrente q1
Corrente q2
31
Exemplo 2 Simulação de um modelo dinâmico
Biblioteca Source
Biblioteca Continuous
32
Exemplo 2 Simulação de um modelo dinâmico
Degrau começa no tempo zero
Degrau começa no tempo dez
Bloco Função de Transferência
33
Exemplo 2 Simulação de um modelo dinâmico
A amplitude do degrau é 1
34
Exemplo 2 Simulação de um modelo dinâmico
35
Exemplo 3
36
Exemplo 3 Controlando o tanque de nível
Considerando um sistema de controle de nível
mostrado abaixo. O nível de líquido é medido e a
saída do transmissor de nível (LT) é enviada
para um controlador feedback (LC) que controla o
nível pelo ajuste da vazão volumétrica q2. A
segunda vazão de fluido, q1, corresponde à
variável perturbação (corrente chegando de outra
unidade, não posso controlar essa corrente).
37
Exemplo 3 Controlando o tanque de nível
Considerando uma válvula com a seguinte função de
transferência
Considerando um medidor com a seguinte função de
transferência
3,60 m
Linguagem de engenharia
0 m
0 psi
15 psi
Linguagem de máquina
38
Exemplo 3 Controlando o tanque de nível
Erro (sp - valor medido)
Set-point
Valor medido
39
Exemplo 3 Controlando o tanque de nível
40
Exemplo 3 Controlando o tanque de nível
Bloco Ganho
Quando a função de transferência é
simplesmente uma constante, como no caso do
medidor, podemos representa-lá pelo bloco Gain.
41
Exemplo 3 Controlando o tanque de nível
Bloco PID
O controlador é representado pelo
bloco PID Controller. Podemos regular a sua ação
proporcional, integral e derivativa.
42
Exemplo 3 Controlando o tanque de nível
Ajuste de Controladores
Na prática o melhor ajuste para um
controlador é obtido pela combinação da ação P
(proporcional), I (integral), e D (derivativa).
Podemos usar o Simulink para obter uma estimativa
inicial desse ajuste.
43
Exemplo 3 Controlando o tanque de nível
Ajuste de Controladores
Tente P 2 2 2 2 I
0 25 1 1D 0 0 0
5
Na prática o melhor ajuste para um
controlador é obtido pela combinação da ação P
(proporcional), I (integral), e D (derivativa).
Podemos usar o Simulink para obter uma estimativa
inicial desse ajuste.
44
Revisão de fminsearch
45
(No Transcript)
46
Exemplo 4
Exemplo 4
47
Exemplo 4
A seguinte malha de controle foi elaborada no
Simulink. Usar o Matlab para ajustar o
controlador.
degrau unitário no instante 5
P I D
48
Exemplo 4
Programa principal
clear all close all warning off options
optimset('display','iter') global P I D
erro Pmin fminsearch('custo', 1 5 1,options)
49
Exemplo 4
Função custo
function erro custo(x) global P I D
erro Px(1) Ix(2) Dx(3) Tsim('malha',0
65) errosum(erro.2)
50
Exemplo 4
Solução encontrada para degrau unitário no SP
Pmin 4.5075 2.6329 -0.0000
51
Exemplo 4
Arquitetura Simulink usada para gerar o
gráfico do slide anterior
52
Exemplo 4b
Exemplo 4b
53
Exemplo 4b
Ao invés de minimizar o somatório quadrático do
erro, posso minimizar o somatório quadrático
ponderado com o tempo. Ou seja, erros em tempos
mais elevados são mais significativos.
54
Exemplo 4b
55
Exemplo 4b
Programa principal
clear all close all warning off options
optimset('display','iter') global P I D erro
tempo Pmin fminsearch('custo', 10 5 1,options)
56
Exemplo 4b
Função custo
function erro custo(x) global P I D erro
tempo Px(1) Ix(2) Dx(3) Tsim('malha',0
65) errosum(erro.2) somatorio quadratico
do erro errosum((erro.tempo).2) somatorio
quadratico do erro ponderado com o tempo
57
Exemplo 4b
Resultado obtido Pmin 25.8333 5.3333
-0.0000
Chute inicial usado 10 5 1
58
Ajuste de TF
59
?
60
(No Transcript)
61
(No Transcript)
62
Ferramenta completa para treinamento...
63
Passando dados para o Simulink
64
Gerador de dados experimentais
65
(No Transcript)
66
Usando os dados experimentais
67
(No Transcript)
68
Exemplo 5
69
Exemplo 5 Bloco S-function
Equações para modelar um CSTR
70
Exemplo 5 Bloco S-function
Passando as equações para o formato Matlab
dCa (Fi(cai-Ca)/V) - kCa dV Fi-F dT
(FiCpro(Ti-T) DeltaHkCaV - UA(T-Tc))
/(VroCp)
71
Exemplo 5 Bloco S-function
onde Fi vazão de alimentação do reator
(ft3/h) Cai concentração da alimentação do
reator (lbm/ft3) Ca concentração no reator
(variável) k é dado pela equação k
k0exp(-E/(RT)) V volume do reator F vazão de
saída (ft3/h) Cp calor especifico 0.75
btu/lbm.R ro densidade 50 lb/ft3 Ti
temperatura de alimentação (R) T temperatura do
reator DeltaH calor de reação -30000 BTU/
lbm U coeficiente de troca térmica 150
BTU/(h.ft2.R)
continua...
72
Exemplo 5 Bloco S-function
onde A área de troca térmica 250 ft2 Tc
temperatura do fluido de alimentação (R) E
energia de ativação 30000 BTU/lbm R constante
dos gases 1.99 BTU/lbm.R
Legenda
parâmetros freqüentemente alterados
parâmetros raramente alterados
parâmetros calculados
73
Exemplo 5 Bloco S-function
74
Exemplo 5 Bloco S-function
Biblioteca Functions Tables
Parâmetros freqüentemente alterados
Parâmetros raramente alterados (máscara)
75
Exemplo 5 Bloco S-function
76
Exemplo 5 Bloco S-function
Em resumo
77
Exemplo 5 Bloco S-function
Configurando o bloco S-function
Nome do arquivo com as equações
Parâmetros alterados pela máscara
78
Exemplo 5 Bloco S-function
Criando uma máscara
79
Exemplo 5 Bloco S-function
Localização do arquivo com as equações
O arquivo com as equações deve estar localizado
no mesmo local dos arquivos Simulink!
O Current Directory do Matlab deve apontar para
esse local!
80
Exemplo 5 Bloco S-function
Criando o arquivo com as equações
function sys,x0 reator(t,x,u,flag,U,A,DeltaH,r
o,Cp,E,R,k0) Simula um reator CSTR (mistura
perfeita) no qual se conduz uma reação
exotérmica (A-gtB), resfriado por
serpentina   switch flag case 0
Dimensiona o sistema e inicializa os estados
sysestados,0,saídas,entradas,0,0
sys 3,0,3,5,0,0 Condições
iniciais ca 0.1315
lbm/ft3, concentração inicial no reator T
584.4115 R, temperatura
do reator V 200
ft3, volume do reator x0 ca T
V'
continua...
81
Exemplo 5 Bloco S-function
Criando o arquivo com as equações
function sys,x0 reator(t,x,u,flag,U,A,DeltaH,r
o,Cp,E,R,k0) Simula um reator CSTR (mistura
perfeita) no qual se conduz uma reação
exotérmica (A-gtB), resfriado por
serpentina   switch flag case 0
Dimensiona o sistema e inicializa os estados
sysestados,0,saídas,entradas,0,0
sys 3,0,3,5,0,0 Condições
iniciais ca 0.1315
lbm/ft3, concentração inicial no reator T
584.4115 R, temperatura
do reator V 200
ft3, volume do reator x0 ca T
V'
sys é a saída do modelo, cujo significado
depende de flag x0 é o vetor de condições
iniciais (funciona apenas quando flag 0 ) t
é o tempo de simulação x é o vetor de estados
do modelo u é o vetor de entradas do modelo
(recebido do bloco Mux) flag é um parâmetro que
informa o tipo de informação que o integrador
espera receber a cada chamado U,...,k0
são os parâmetros adicionais que podem ser
passados à função através de uma
mascara (devem estar declarados na configuração
do bloco S-function).
82
Exemplo 5 Bloco S-function
Criando o arquivo com as equações
function sys,x0 reator(t,x,u,flag,U,A,DeltaH,r
o,Cp,E,R,k0) Simula um reator CSTR (mistura
perfeita) no qual se conduz uma reação
exotérmica (A-gtB), resfriado por
serpentina   switch flag case 0
Dimensiona o sistema e inicializa os estados
sysestados,0,saídas,entradas,0,0
sys 3,0,3,5,0,0 Condições
iniciais ca 0.1315
lbm/ft3, concentração inicial no reator T
584.4115 R, temperatura
do reator V 200
ft3, volume do reator x0 ca T
V'
continua...
83
Exemplo 5 Bloco S-function
function sys,x0 reator(t,x,u,flag,U,A,DeltaH,r
o,Cp,E,R,k0) Simula um reator CSTR (mistura
perfeita) no qual se conduz uma reação
exotérmica (A-gtB), resfriado por
serpentina   switch flag case 0
Dimensiona o sistema e inicializa os estados
sysestados,0,saídas,entradas,0,0
sys 3,0,3,5,0,0 Condições
iniciais ca 0.1315
lbm/ft3, concentração inicial no reator T
584.4115 R, temperatura
do reator V 200
ft3, volume do reator x0 ca T
V'
continua...
84
Exemplo 5 Bloco S-function
function sys,x0 reator(t,x,u,flag,U,A,DeltaH,r
o,Cp,E,R,k0) Simula um reator CSTR (mistura
perfeita) no qual se conduz uma reação
exotérmica (A-gtB), resfriado por
serpentina   switch flag case 0
Dimensiona o sistema e inicializa os estados
sysestados,0,saídas,entradas,0,0
sys 3,0,3,5,0,0 Condições
iniciais ca 0.1315
lbm/ft3, concentração inicial no reator T
584.4115 R, temperatura
do reator V 200
ft3, volume do reator x0 ca T
V'
Estimativas iniciais para o cálculo do sistema de
equações diferenciais (cálculo numérico)
continua...
85
Exemplo 5 Bloco S-function
case 1 Calcula as derivadas
Atualiza entradas cai u(1)
lbm/ft3, concentração da alimentação0.5
Fi u(2) ft3/hr, vazão de
alimentação40 F u(3)
vazão de retirada40 Tc u(4)
R, temperatura do fluido de
refrigeração594.6 Ti u(5)
R, temperatura da alimentação530
Cálculo das derivadas   Ca x(1) T
x(2) V x(3)   k
k0exp(-E/(RT))   dCa (Fi(cai-Ca)/V) -
kCa dV Fi-F dT
(FiCpro(Ti-T) DeltaHkCaV - UA(T-Tc))
/(VroCp)   sys dCa dT dV
continua...
86
Exemplo 5 Bloco S-function
case 1 Calcula as derivadas
Atualiza entradas cai u(1)
lbm/ft3, concentração da alimentação0.5
Fi u(2) ft3/hr, vazão de
alimentação40 F u(3)
vazão de retirada40 Tc u(4)
R, temperatura do fluido de
refrigeração594.6 Ti u(5)
R, temperatura da alimentação530
Cálculo das derivadas   Ca x(1) T
x(2) V x(3)   k
k0exp(-E/(RT))   dCa (Fi(cai-Ca)/V) -
kCa dV Fi-F dT
(FiCpro(Ti-T) DeltaHkCaV - UA(T-Tc))
/(VroCp)   sys dCa dT dV
continua...
87
Exemplo 5 Bloco S-function
case 1 Calcula as derivadas
Atualiza entradas cai u(1)
lbm/ft3, concentração da alimentação0.5
Fi u(2) ft3/hr, vazão de
alimentação40 F u(3)
vazão de retirada40 Tc u(4)
R, temperatura do fluido de
refrigeração594.6 Ti u(5)
R, temperatura da alimentação530
Cálculo das derivadas   Ca x(1) T
x(2) V x(3)   k
k0exp(-E/(RT))   dCa (Fi(cai-Ca)/V) -
kCa dV Fi-F dT
(FiCpro(Ti-T) DeltaHkCaV - UA(T-Tc))
/(VroCp)   sys dCa dT dV
continua...
88
Exemplo 5 Bloco S-function
case 1 Calcula as derivadas
Atualiza entradas cai u(1)
lbm/ft3, concentração da alimentação0.5
Fi u(2) ft3/hr, vazão de
alimentação40 F u(3)
vazão de retirada40 Tc u(4)
R, temperatura do fluido de
refrigeração594.6 Ti u(5)
R, temperatura da alimentação530
Cálculo das derivadas   Ca x(1) T
x(2) V x(3)   k
k0exp(-E/(RT))   dCa (Fi(cai-Ca)/V) -
kCa dV Fi-F dT
(FiCpro(Ti-T) DeltaHkCaV - UA(T-Tc))
/(VroCp)   sys dCa dT dV
continua...
89
Exemplo 5 Bloco S-function
case 3 Calcula as saídas   sys x(1) x(2)
x(3)   otherwise   sys   end
90
Exemplo 5 Bloco Integrador
91
Exemplo 5 Bloco Integrador
A outra técnica para resolver sistemas
de equações diferenciais no Simulink é
utilizando o bloco Integrator. A vantagem dessa
técnica é que podemos construir a equação de
modo totalmente intuitivo, como veremos
abaixo. Por simplicidade vamos trabalhar com
uma única equação diferencial, mas a técnica
pode ser estendida para sistemas de equações.
92
Exemplo 5 Bloco Integrador
1/A
( h-hestrela )
93
Exemplo 5 Bloco Integrador
Bloco Fcn (Functions Tables)
94
Exemplo 5 Bloco Integrador
K ( h - hestrela )
95
Exemplo 5 Bloco Integrador
Fe - K( h - hestrela )
96
Exemplo 5 Bloco Integrador
(1/A) (Fe - K( h - hestrela ))
97
(No Transcript)
Write a Comment
User Comments (0)