Documente Academic
Documente Profesional
Documente Cultură
2009
Faculdade de Telmaco Borba Avenida Marechal Floriano Peixoto 1181 Alto das Oliveiras
84266-010 Telmaco Borba Paran WWW.FATEBTB.EDU.BR (42) 3271 8000
iii
ALM
CDD 660
vi
AGRADECIMENTOS
vii
viii
ALMEIDA, Alexandre Marques de. Modelagem, Simulao e Controle de um
Sistema de Evaporao Mltiplo Efeito de Licor Negro. 2009. Monografia
(Trabalho de Concluso de Curso) Faculdade de Telmaco Borba.
RESUMO
ix
ALMEIDA, Alexandre Marques de. Modeling, Simulation and Control of a Multiple
Effect Black Liquor Evaporator System. 2009. Monografia (Trabalho de Concluso
de Curso) Faculdade de Telmaco Borba.
ABSTRACT
In the pulp and paper industries, the main purpose of the evaporation process is to
increase the dry solids content of the black liquor by evaporating water until reaching
a concentration that allows burning in the recovery boiler. This concentration is above
60% dry solids. For so much, it is done necessary an efficient control in this process
to guarantee the optimization of their operational conditions. In this work it was
modeled, simulated and implemented strategies of liquor level in the effects and of
the concentration of solids control in the black liquor of multiple effect evaporator
system, composed by six stage of direct feeding (forward). The mathematical
modeling of the evaporation developed using phenomenological models mass and
energy balances using correlations for the physical properties of the black liquor
(GULLICHSEN and FOGELHOLM, 2000) and of the saturated steam (PERRY and
GREEN, 1999). The software simulator was developed in FORTRAN language in
Microsoft Visual Studio compiler. For the system of conventional control it was used
algorithms of proportional (P) and proportional integral (PI) control. Besides, an
advanced predictive control system was implemented for the concentration of solids
of the black liquor in the evaporation, through a dynamic matrix control (DMC) of the
type SISO (single input, single output) belonging to the model predictive control
(MPC). Comparing those control strategies through quadratic performance index for
the controlled variable (ISE) and for the manipulated variable (ISU). With the tuned in
controllers, it was compared the performance of these then, proving the superiority
and robustness of the controller DMC compared P and PI conventional control.
x
SUMRIO
Pg.
DEDICATRIA..................................................................................................
AGRADECMENTOS..........................................................................................
vi
EPGRAFE.........................................................................................................
vii
RESUMO............................................................................................................
viii
ABSTRACT........................................................................................................
ix
LISTA DE FIGURAS..........................................................................................
xiii
LISTA DE TABELAS.........................................................................................
xviii
xix
1.
INTRODUO TERICA..........................................................................
1.1.
1.2.
1.2.1.
Tipos
Caractersticas
de
Evaporadores
Mais
Utilizados............................................................................
1.2.1.1.
1.2.1.2.
1.3.
12
12
13
1.2.1.3.
16
1.2.1.4.
17
19
1.3.1.
Composio......................................................................
20
1.3.2.
Viscosidade......................................................................
22
1.3.3.
24
1.3.4.
Densidade.........................................................................
27
xi
1.3.5.
1.4.
Especfico
ou
Capacidade
Calorfica
Especfica.........................................................................
28
1.3.6.
Tenso Superficial............................................................
32
1.3.7.
Condutividade Trmica.....................................................
33
1.3.8.
Presso de Saturao......................................................
33
1.3.9.
34
1.3.10.
36
1.3.11.
37
37
1.4.1.
38
1.4.2.
40
1.4.3.
Tcnicas
1.4.4.
1.5.
Calor
de
Sintonia
de
Controladores
Convencionais....................................................................
43
44
46
1.5.1.
47
1.5.2.
49
1.5.3.
53
OBJETIVOS...............................................................................................
55
2.1.
Motivao........................................................................................
55
2.2.
Formulao do Problema................................................................
56
2.3.
Objetivo Geral..................................................................................
57
2.4.
Objetivos Especficos......................................................................
57
REVISO BIBLIOGRFICA......................................................................
59
3.1.
59
3.2.
61
PROCEDIMENTOS METODOLGICOS..................................................
63
4.1.
63
4.1.1.
65
68
2.
3.
4.
4.2.
xii
4.3.
72
4.4.
75
4.5.
de
Estabilidade
do
Sistema
de
Controle
Linearizado.........................................................................
81
83
RESULTADOS E DISCUSSO.................................................................
87
5.1.
87
5.2.
4.6.
5.
Anlise
77
Estgio.............................................................................................
90
5.2.1.
92
5.2.2.
95
5.2.3.
101
5.2.4.
115
6.
CONCLUSES..........................................................................................
123
7.
125
REFERNCIAS BIBLIOGRFICAS..................................................................
126
ANEXOS............................................................................................................
129
ANEXO A:
ANEXO B:
130
DE
UM
SISTEMA
DE
EVAPORAO
MLTIPLO EFEITO....................................................................
131
xiii
LISTA DE FIGURAS
Pg.
FIGURA 1.1 Diagrama da natureza cclica do processo de recuperao
Kraft (Fonte: adaptado de PHILIPP e DALMEIDA, IPT vol.1 p.176, 1988)....
11
12
13
14
FIGURA 1.9 Evaporador do tipo tubular de filme descendente onde licor flui
dentro dos tubos (Fonte: GULLICHSEN e FOGELHOLM, 2000)......................
15
FIGURA 1.10 Evaporador do tipo tubo de filme descendente onde licor flui
fora dos tubos (Fonte: GULLICHSEN e FOGELHOLM, 2000)..........................
16
17
18
18
xiv
FIGURA 1.14 Viscosidade do licor negro a 115 C em funo do contedo
de slidos secos (Fonte: GULLICHSEN e FOGELHOLM, 2000)......................
24
31
32
36
39
39
42
44
45
48
49
63
78
82
85
xv
FIGURA 4.5 Esquema do projeto para o lao principal do programa
SimulEvap........................................................................................................
86
87
88
88
89
92
92
93
93
94
95
96
96
97
xvi
FIGURA 5.14 Resposta tempo da simulao para a varivel controlada (C6)
mostrando a perturbao tipo PRBS em C0 com controle PI. Tempo de
simulao de 5 horas (Figura 5.14a) e 2 horas (Figura 5.14b)..........................
98
99
100
102
104
106
108
109
109
110
112
xvii
FIGURA 5.25 Influncia do coeficiente peso ( ) na resposta da varivel
controlada (C6) com controlador DMC para simulaes com perturbao
PRBS de 300 segundos em C0..........................................................................
113
113
115
116
117
118
119
120
121
xviii
LISTA DE TABELAS
Pg.
TABELA 1.1 Composio dos slidos secos do licor negro de uma
polpao Kraft de folhosas (hadrwood) da Escandinvia.............................
21
22
23
31
35
71
90
103
105
107
111
122
xix
LISTA DE ABREVIATURAS E SMBOLOS
A*
a(
BPR
Cp
DMC
E 0 (
E (
ek(
)
)
%)
u (
Componente do vetor E (
e 0
0
Componente do vetor E (
GC ( s )
H (TC )
xx
h(
IMC
ISE
ISU
ISU WP0 PI
ISU WDMC
0
kln
KC
KI
KC(%)
K = AT A + I
AT
Kp
MPC
m(t )
mk(
%)
PRBS
Controlador Proporcional
PI
PID
Psat
SP
SISO
S0
xxi
Tsat
Tlicor
T feed
Tvapor
TR
TS
Vetor
das
variveis
correspondente a v = F 0
restantes
F1
F2
para
F3
linearizao
F4
F 5
do
modelo
x (1)
x( 2)
F2
F3
F4
F5 ]
transiente
y (t )
y0 (
z
Vetor
modelo
das
variveis
correspondente a z = C 0
z
restantes
F 6
para
linearizao
do
xxii
SMBOLOS GREGOS
u ( k )
u
( %)
1
1.
INTRODUO TERICA
2
no ltimo estgio da evaporao, atravs de um controlador preditivo baseado em
modelo (MPC1) que neste trabalho optou-se pela aplicao do algoritmo de controle
por matriz dinmica (DMC2) encontrada na literatura. Foi ento comparado o
desempenho dos dois sistemas de controle a fim de comprovar a superioridade do
sistema de controle avanado preditivo frente a controles convencionais que no
levam em conta a dinmica de um processo altamente no linear como a
evaporao. A planta de evaporao de mltiplo efeito proposto para o trabalho
do tipo de alimentao direta (forward) com seis estgios, sendo o fluxo de vapor
vivo no mesmo sentido do fluxo de licor negro.
A motivao para a aplicao de um controlador DMC deve-se ao grande
potencial deste tipo de controlador no controle de diversos tipos de processos no
lineares e dinmicos, como tambm estudos ainda escassos desta tcnica na rea
de celulose e papel. No entanto vale salientar que o interesse inicial deste trabalho
era de desenvolver um controlador preditivo baseado em redes neurais artificiais
para a concentrao de slidos no estgio final da evaporao, sendo que tal
estratgia foi abortada e substituda pelo algoritmo DMC devido limitao de
tempo para implementao e treinamento da rede neural utilizada.
1.1.
3
(1988), no processo Kraft os principais objetivos da recuperao qumica so: i) a
total recuperao dos reagentes qumicos para a produo de licor de cozimento
(licor branco) com composio adequada e constante; ii) produo de vapor e
energia eltrica para atender ao processo atravs da queima dos materiais
orgnicos provenientes da madeira; e iii) reduo significativa do fluxo de efluentes
com grandes potencial poluidor.
O processo de recuperao qumica tem por finalidade reduzir as perdas de
produtos qumicos ao mnimo e diminuir o consumo de energia, tornando menores
os custos de produo. A falta de um sistema de recuperao e consequentemente
a descarga de licor negro significa o desperdcio de combustvel e reagentes
qumicos, alm de provocar a poluio e degradao do meio ambiente (PHILIPP e
DALMEIDA, 1988).
Segundo o PHILIPP e DALMEIDA (1988), as principais etapas do processo
de recuperao so:
Lavagem da polpa a fim de obter a separao mais completa possvel de
licor negro com menor diluio;
Evaporao da gua do licor negro at uma concentrao de slidos
suficientemente alta para que possa ser queimado na caldeira de
recuperao;
Queima do licor negro concentrado seguido da dissoluo dos fundidos;
Caustificao, que tem por objetivo a converso do carbonato de sdio em
hidrxido de sdio.
No sistema Tomlinson de recuperao, o licor negro evaporado de 60 a
65% de slidos sendo queimado a seguir. A operao desse sistema mais fcil e
seu rendimento pode chegar a ultrapassar 90% na recuperao qumica e produzir
5,5 t de vapor/t de celulose (PHILIPP e DALMEIDA, 1988). A Figura 1.1 e Figura
1.2 mostram a natureza cclica do processo Kraft e os diversos ciclos
independentes dentro do processo. Na Figura 1.3 encontrado um fluxograma
tpico de um processo de recuperao qumica de uma indstria de celulose.
4
gua
Lavagem da
lama de cal
Estocagem de
Licor Branco
Engrossador da
lama de cal
CaO
Clarificador
Forno de cal
Caustificadores
Estocagem de
Licor Verde
Cavacos
Digestor
Clarificador de
Licor Verde
Tanque de descarga
gua
Lavagem da polpa
Polpa para
branqueamento
ou mquina
Tanque de dissoluo
Estocagem Licor
Negro Fraco
Evaporao
Estocagem de
Licor Negro Forte
Lavagem de dregs
Estocagem de
Licor Fraco
Smelt
Fornalha de
recuperao
NaSO4 de
reposio
FIGURA 1.1
FIGURA 1.2
FIGURA 1.3
Fluxograma tpico do processo de recuperao qumica (Fonte: adaptado de PHILIPP e DALMEIDA, IPT vol.1 p.174, 1988).
6
O ciclo de recuperao qumica no processo Kraft se inicia com a lavagem
da polpa marrom. O licor negro fraco (diludo) recuperado da polpa marrom contm
em torno de 14 a 17% de slidos dissolvidos. Destes slidos, aproximadamente um
tero composto por sais inorgnicos provenientes do licor branco e dois teros
so materiais orgnicos extrados da madeira (GREEN e HOUGH, 1992 apud
MIELI, 2007). Este licor negro fraco contm muita gua para aplicao direta como
combustvel na caldeira de recuperao qumica, portanto necessrio remover
esta gua, aumentando a concentrao de slidos neste licor fraco (GULLICHSEN
e FOGELHOLM, 2000).
O licor negro fraco proveniente do sistema de lavagem da polpa precisa
ento ser concentrado acima de 65% de slidos secos para possibilitar sua queima
na caldeira de recuperao por fora da matria orgnica contida neste licor. A
remoo da gua contida no licor diludo feito em evaporadores de mltiplo efeito,
que so simplesmente trocadores de calor instalados em srie. Evaporadores
mltiplo efeito contm, tipicamente de cinco a sete efeitos.
Os vapores condensados durante a evaporao, por possurem compostos
de enxofre dissolvido, pode constituir uma importante fonte de poluio. Os
condensados contaminados so normalmente submetidos a um tratamento setorial
atravs de uma coluna de destilao a ar ou vapor, comumente denominada torre
de stripping, sendo que os gases no-condensveis (GNC) so encaminhados
para queima e os condensados tratados reutilizados no processo. So gerados
tipicamente 1 a 2 m3 de efluentes da planta de evaporao, por tonelada de polpa
produzida (GREEN e HOUGH, 1992 apud MIELI, 2007).
O licor negro concentrado segue para a caldeira de recuperao onde a
matria orgnica queimada e os sais inorgnicos so reduzidos a um fundido
(smelt), cujos principais componentes so sais de sdio (Na2CO3 e Na2S).
Segundo POLOWSKI (2004), a caldeira de recuperao qumica o
segundo estgio do ciclo de recuperao depois da evaporao, sendo que esta
possui trs funes bsicas: i) recuperar os reagentes inorgnicos em forma
apropriada para o seu reuso; ii) recuperar a energia em forma de vapor e iii) reduzir
ou eliminar os impactos ambientais, tanto do ar como nas guas. Para compensar a
perda de reagentes, antes da queima adicionada uma quantidade de reposio de
Na2SO4 que durante a queima do licor, transformado em Na2S (POLOWSKI,
7
2004; MIELI, 2007).
Os fundidos (smelt) proveniente da queima do licor concentrado , ento,
regenerado na planta de caustificao para a formao do licor branco (composto
em sua maioria por NaOH e Na2S) que utilizado na polpao para a produo de
celulose.
O material orgnico contido no licor negro possui uma considervel
quantidade de energia que pode ser recuperada na forma de calor na caldeira de
recuperao qumica. Sendo tambm, recuperados os materiais inorgnicos
simultaneamente na queima deste licor, que so posteriormente tratados na planta
de caustificao a fim de transformar os sais fundidos (smelt) da caldeira
novamente em licor branco, que utilizado para um novo processo de cozimento da
madeira, fechando assim, o ciclo do processo Kraft (GULLICHSEN e
FOGELHOLM, 2000).
A caustificao a etapa final do ciclo de recuperao do licor branco, que
segundo POLOWSKI (2004) um processo complexo e heterogneo que envolve a
adio de xido clcio (CaO) ao licor verde para converter o carbonato de sdio
(Na2CO3) em hidrxido de sdio, produzindo o licor branco. O licor branco
separado da lama formada no processo e enviada ao digestor como licor de
cozimento.
1.2.
8
no processo Kraft a de concentrar o licor negro obtido do sistema de lavagem da
polpa a uma densidade tal que, quando injetado na fornalha de recuperao,
ignifique e continue a queimar por fora da matria orgnica que contm.
Em uma fbrica de celulose, quando ocorre o processamento dos cavacos
de madeira em polpa celulsica, materiais orgnicos como lignina, hemicelulose,
como tambm uma parte secundria das fibras de celulose, se dissolvem no licor de
cozimento. Segundo GULLICHSEN e FOGELHOLM (2000), estes materiais
orgnicos como tambm componentes inorgnicos dissolvidos no licor de
cozimento residual da reao chamado de licor negro.
O propsito principal da planta de evaporao aumentar o contedo de
slidos secos do licor negro pela evaporao da gua at alcanar uma
concentrao que se possa queimar este licor na caldeira de recuperao. Esta
concentrao normalmente 65%-75% de slidos secos. Muitas instalaes
modernas operam a um nvel acima de 80% slidos secos (GULLICHSEN e
FOGELHOLM, 2000).
Ainda de acordo com ASSIS (2001), trs grandezas so importantes
quando se trata de sistemas de evaporao:
Capacidade: definido como o nmero de quilogramas de solvente
evaporado por hora, ou seja:
capacidade =
kg de solvente evaporado
h
(1.1)
economia de vapor =
kg de solvente evaporado
kg de vapor dgua alimentado
(1.2)
capacidade
economia
(1.3)
9
toneladas de gua evaporada (SENAI CETCEP, 2002). A Figura 1.4 mostra a
relao entre a economia de vapor e o nmero de efeitos.
6,0
5, 0
4,0
3, 0
2,0
1, 0
FIGURA 1.4
10
alimentao do licor negro em uma planta de evaporao mltiplo efeito pode ser
de trs formas principais, tais como:
Alimentao direta: a alimentao de licor feita no primeiro efeito (mais
quente) e percorre os efeitos no mesmo sentido do fluxo de vapor.
utilizada quando a temperatura de alimentao alta;
Alimentao inversa: a alimentao de licor feita no ltimo efeito (mais
frio) e percorre os efeitos no sentido inverso ao fluxo de vapor. utilizada
quando a temperatura de alimentao baixa;
Alimentao mista: a alimentao de licor feita em um efeito intermedirio,
que possui uma temperatura prxima temperatura da alimentao.
comum o uso de pr-aquecedores entre os efeitos.
Descries detalhadas dos diferentes tipos de evaporadores, vantagens,
desvantagens, aplicaes indicadas e caractersticas, podem ser encontradas em
KERN (1999) e PERRY e GREEN (1999). Segundo estes autores, a seleo do tipo
de evaporador mais indicado para uma aplicao particular feito atravs das
caractersticas do fluxo de alimentao de licor e do produto desejado. Pontos a
serem considerados so: presena ou no de cristalizao durante a evaporao,
formao de incrustaes, qualidade do produto (pode implicar em baixo tempo de
reteno ou operao a baixas temperaturas, os quais sero restries ao sistema
de controle), corroso e formao de espuma. No presente trabalho sero
abordados somente os principais tipos de evaporadores aplicados na indstria de
celulose e papel segundo GULLICHSEN e FOGELHOLM (2000) e PHILIPP e
DALMEIDA (1988).
A Figura 1.5 e Figura 1.6 mostram fluxogramas tpicos de uma planta de
evaporao em mltilo efeito aplicados em uma indstria de celulose e papel.
11
Polpa com alto
teor de lignina
gua
Licor
diludo
Espuma
Tanque de
filtrado do
1 lavador
Licor
diludo
Tanque
de licor
fraco
Para o
coletor de
condensado
Condensado
Sabo fraco
Licor
concentrado
Licor fraco
Licor para o
tanque de
descarga
Vapor
vivo
Licor
Condensado
para caldeira
Sabo
Tanque
de
espuma
Tanque
de
sabo
fraco
Tanque
de
sabo
tall-oil
Tanque
de
espuma
de
sabo
Sabo
Sabo
FIGURA 1.5
Tanque
de licor
forte
Fluxograma tpico do processo de evaporao mltiplo efeito e de recuperao de sabo tall-oil (Fonte:
adaptado de PHILIPP e DALMEIDA, IPT vol.1 p. 261, 1988).
12
FIGURA 1.6
1.2.1.1.
13
Vapor Secundrio
Defletor
Controle de Nvel
Entrada de Vapor
Sada de Gases
Condensado Secundrio
Entrada de Licor
Sada de Licor
FIGURA 1.7
O licor presente dentro dos tubos, neste evaporador, sofre um praquecimento inicial e ento gradualmente comea a entrar em ebulio. O vapor
libertado na ebulio tem um volume especfico alto que aumenta a velocidade da
mistura de licor e vapor, e a taxa de transferncia de calor no trocador de calor. A
taxa de transferncia de calor baixa. Com uma carga parcial acima de 50%, as
condies de fluxo estabilizam-se regularmente desde que a velocidade de vapor
dentro dos tubos seja suficientemente alta. Isto significa que evaporadores de filme
ascendente no podem ser usados quando existe uma baixa carga parcial
(GULLICHSEN e FOGELHOLM, 2000).
1.2.1.2.
14
constante em relao concentrao do licor alimento. A taxa de circulao
tambm constante. Estas caractersticas fazem o evaporador de filme
descendente insensvel a variaes na carga de evaporao. Evaporadores de filme
descendente podem operar ento com uma carga de 30-100% da sua capacidade,
dependendo principalmente da preciso dos elementos de controle. Devido a esses
fatores, os evaporadores de filme descendente tm sido escolhidos para a maioria
das instalaes novas nos ltimos anos (GULLICHSEN e FOGELHOLM, 2000).
De acordo com SENAI CETCEP (2002), duas configuraes tem sido
usadas para concentrar licor negro em processos de recuperao:
Evaporador tipo de tubos verticais: licor dentro dos tubos;
Evaporador tipo placas verticais ou de lamela: licor fora das placas.
Um terceiro tipo o evaporador de spray horizontal, onde o licor
pulverizado na parte externa do banco de tubos horizontal, este tipo de evaporador
tem sido usado na evaporao de licor sulfito (SENAI CETCEP, 2002). A Figura
1.8 mostra um tipo de evaporador de filme descendente de lamela.
Sada de Vapor
Entrada de Vapor
Sada de Licor
Condensado
Sujo
Condensado
Limpo
Entrada de Licor
FIGURA 1.8
15
A Figura 1.9 mostra um evaporador tubular de filme descendente com fluxo
de licor dentro de tubos. O evaporador tem um elemento de aquecimento e um
corpo de vapor. O elemento de aquecimento bem parecido com um evaporador
LTV que consiste em uma concha verticalmente montada e um trocador de calor de
tubo.
Distribuio
de licor
Sada de gases
Elemento de
aquecimento
Circulao
de licor
Sada de
condensado
Entrada
de
vapor
Sada de
vapor
Separador de gotculas
FIGURA 1.9
Entrada de licor
Evaporador do tipo tubular de filme descendente onde licor flui dentro dos
tubos (Fonte: GULLICHSEN e FOGELHOLM, 2000).
16
Sada de vapor
Separador
de gotculas
Distribuio
de licor
Entrada de vapor
Bancada de tubos
Circulao
de licor
Sada de condensado
Cmara inferior de licor
Entrada de licor
Sada de licor
FIGURA 1.10
Evaporador do tipo tubo de filme descendente onde licor flui fora dos
tubos (Fonte: GULLICHSEN e FOGELHOLM, 2000).
1.2.1.3.
17
FIGURA 1.11
1.2.1.4.
18
e trixido de enxofre. Os compostos de sdio so coletados e recuperados por
precipitadores eletrostticos, instalados em muitas fbricas aps os evaporadores
de contato direto. Uma baixa temperatura dos gases de combusto diminui o
arraste do licor pelo gs e favorece a captao do sulfato de sdio, devido
reduo da velocidade nos tubos coletores. A baixa temperatura, porm, favorece a
corroso promovida por compostos contendo enxofre. A Figura 1.12 e Figura 1.13
mostram configuraes tpicas de evaporadores de contato direto.
Elemento de
tubos rotatrio
Tanque de licor
FIGURA 1.12
Para
pulverizadores
de licor
Evaporador
de ciclone
Alimentao
de gases de
combusto da
caldeira de
recuperao
Tanque de
mistura de
sais
Bombas de
recirculao
Alimentao
de licor
FIGURA 1.13
Evaporador
de
contato
direto
de
ciclone
(Fonte:
adaptado
de
19
Para reduzir a gerao de sulfeto de hidrognio no evaporador de contato
direto, o licor negro oxidado frequentemente para converter sulfeto de sdio a
tiosulfato de sdio e sulfato de sdio. A oxidao usa ar ou oxignio molecular. Para
evitar emisses odorferas, o processo inteiro de polpao opera a uma sulfididade
muito baixa, de 7% a 10%, quando comparado com um valor normal, de 25% a 35%
(GULLICHSEN e FOGELHOLM, 2000).
1.3.
20
Tenso superficial do licor;
Calor especfico do licor (Cp);
Condutividade trmica do licor ( kln );
Presso de saturao do vapor (Psat);
Temperatura de saturao do vapor (Tsat);
Temperatura do licor na cmara de evaporao (Tlicor = Tsat + BPR);
Calor latente especfico do vapor ( );
Solubilidade de compostos no licor negro.
As propriedades do licor negro dependem das matrias-primas utilizadas no
cozimento, das condies de cozimento (temperatura, tempo, carga de qumicos),
dos equipamentos utilizados para o cozimento, e o tratamento do licor aps o
cozimento. As propriedades do licor negro no so constantes. A oxidao e
tratamento trmico tm um maior impacto nas propriedades do licor (GULLICHSEN
e FOGELHOLM, 2000).
1.3.1. Composio
inorgnicas.
As
combinaes
orgnicas
primrias
so
lignina,
21
TABELA 1.1
78,0
37,5
22,6
14,4
0,5
Polissacardeos, %
3,0
Inorgnicos, % em peso
22,0
NaOH, %
2,4
NaHS, %
3,6
Na2CO3 e K2CO3, %
9,2
Na2SO4, %
4,8
0,5
NaCl, %
0,5
0,2
22
TABELA 1.2
Tipo de madeira
processada
Localizao
da indstria
Na
Cl
Softwood
Escandinvia 35,8
3,6
0,06 19,6
1,8
4,6
0,5
Softwood
Escandinvia 34,6
3,3
0,07 19,8
1,4
5,2
0,5
Softwood
Escandinvia 34,6
3,4
0,07 17,2
3,2
5,4
0,3
Softwood
Escandinvia 33,9
3,3
0,07 19,6
3,2
5,7
0,3
Hardwood
Escandinvia 33,2
3,3
0,08 20,8
2,6
5,2
0,3
Hardwood/
Eucalyptus
Amrica do
Norte
37,3
3,6
0,09 17,3
1,8
3,4
1,6
Hardwood/
Eucalyptus grandis
Brasil/
Fbrica A
33,9
3,6
0,01 22,6
1,8
3,7
4,5
Hardwood/
Eucalyptus grandis
Brasil/
Fbrica B
35,4
3,7
20,9
1,1
3,0
4,3
Hardwood/
Eucalyptus grandis
Brasil/
Fbrica C
29,5
3,6
18,6
1,2
4,4
2,6
Hardwood/
Eucalyptus grandis
Brasil/
Fbrica D
34,8
3,4
0,04 18,4
1,0
3,6
3,2
1.3.2. Viscosidade
B
T3
(1.4)
23
Onde A e B so calculados pelas seguintes equaes polinomiais:
A = AH 2O + a1 . X + a2 . X 2 + a3 . X 3
(1.5)
A = BH 2 O + b1 . X + b2 . X 2 + b3 . X 3
(1.6)
TABELA 1.3
Softwood Hardwood
Tropical
a1
9,1578
3,3532
10,482
a2
-56,723
3,7654
-54,046
a3
72,666
-2,4907
61,933
b1
-4,22E+08
-5,44E+07
-4,02E+08
b2
3,35E+09
2,19E+08
3,01E+09
b3
-3,49E+09
1,70E+08
-2,66E+09
24
muito mais baixo na planta de evaporao. Neste trabalho, ser desprezado o efeito
da viscosidade na dinmica do processo. A Figura 1.14 mostra a viscosidade
experimental do licor negro a 115 C em funo da concentrao de slidos secos
no licor.
FIGURA 1.14
25
temperatura mais alta que gua mesma presso. Esta diferena de temperatura
a elevao de ponto de ebulio (EPE). A EPE especfica para cada tipo de licor
negro e depende da concentrao de slidos, da composio, da temperatura e das
substncias dissolvidas no licor. A EPE aumenta com o aumento da concentrao
de slidos secos (GULLICHSEN e FOGELHOLM, 2000). Esta propriedade de
fundamental importncia na modelagem da evaporao, pois a EPE influi
diretamente na dinmica do processo.
A elevao do ponto de ebulio funo da concentrao de slidos
presentes no licor negro, sendo que para licores de pinho, existem vrias
correlaes empricas propostas na literatura, onde pode-se destacar os trabalhos
desenvolvidos por: CLAY e GRACE (1984); FREDERICK et al. (1980); ROBINSON
E CLAY (1986) e SZYMONSKI e GRACE (1985) apud CARDOSO (1998) e
MARTINELLI (2000). Maiores detalhes sobre os resultados das correlaes
empricas da literatura podem ser encontrados em GREEN e HOUGH (1992) apud
CARDOSO (1998).
Um estudo mais recente foi realizado por ZAMAN et al. (1998), onde foram
correlacionados a EPE com a presso, com a concentrao de slidos no licor e
com
variveis
do
processo
de
polpao
atravs
de
dados
coletados
X
BPR = ( a1 + b1 .P ) .
1 X
para X 0,65
X
BPR = ( a2 + b2 .P ) + ( a3 + b3 .P ) .
1 X
para X 0,65
(1.7)
(1.8)
26
(1.9)
com R 2 = 0,93
b1 = 5, 772 10-1 +1, 288 10-3 t 3, 26 10-3 T +1, 625 10-2 AE +
1,1110-4 S 3,198 10-6 tT 1, 655 10-6 tS 3,936 10-5 TAE +
1,5 10-7 t 2 + 4, 48 10-6 T 2 + 2, 255 10-5 AE 2 + 2, 734 10-8 tTAE
(1.10)
com R 2 = 0,97
(1.11)
com R 2 = 0,97
b2 = 1,558 + 5, 050 10-4 t + 6,93 10-3 T + 9, 266 10-3 AE 3, 72110-5 tAE
8,177 10-5 tS + 2,113 10-6 TS 7, 054 10-5 AES 8, 079 10-6 T 2
2, 610 10-4 AE 2 +1,514 10-6 tAES +1,390 10-7 tTS
(1.12)
com R 2 = 0,95
(1.13)
com R 2 = 0,81
b3 = 8,334 10-3 1, 736 10-2 t + 2,161 10-5 T + 3,869 10-5 tT +
1,12 10-3 tAE + 4, 64 10-4 tS 3,36 10-7 t 2 1,566 10-6 S 2 +
6, 405 10-8 tTAES 2,876 10-5 tAES 2, 496 10-6 tTAE 1, 029 10-6 tTS
(1.14)
com R 2 = 0,80
Em GULLICHSEN e FOGELHOLM (2000), pode ser encontrada uma
equao para calcular a elevao do ponto de ebulio do licor negro em funo da
concentrao de slidos presso atmosfrica:
BPR = 6,173.C 7, 48.C. ( C )
0,5
+ 32, 747.C 2
(1.15)
27
C a concentrao de slidos secos no licor em kg/kg.
Para presses superiores a atmosfrica a seguinte correo necessria:
(1 + 0, 6 )
=
. (Tp 373,16 )
T 100
T p
(1.16)
1.3.4. Densidade
(T a5 )
(T a5 )
= a0 + a1.
+ a2 .
. ( a3 + a4 .C )
1000
1000
2
(1.17)
28
Uma equao para a densidade de licor negro baseado em dados
experimentais a seguinte:
1
ln,90
(1 C ) + 0, 476.C + 0, 0911.C.
H 2O,90
(C )
0,5
90
(1.18)
(1.19)
29
MASSE et al. (1987); ZAMAN e FRICKE (1996) apud MARTINELLI (2000).
A capacidade calorfica especfica do licor negro depende das capacidades
calorficas dos seus componentes. Observa-se que ocorrem diminuies no calor
especfico com o aumento na concentrao de slidos do licor negro (GULLICHSEN
e FOGELHOLM, 2000). Esta propriedade de fundamental importncia para a
modelagem dos balanos energticos na evaporao. Uma frmula emprica para
calcular o efeito de slidos secos na capacidade calorfica especfica a seguinte:
C p ,X
C p ,ref
= 1
(X X )
ref
2 ,14 X ref
(1.20)
= 1
(T T )
ref
377 Tref
(1.21)
kJ/kg.C;
T a temperatura do licor negro, em C;
Tref a temperatura de referncia do licor negro, em C.
Outra correlao emprica para o clculo da capacidade calorfica especifica
do licor negro apresentada por MASSE et al. (1987) apud GULLICHSEN e
FOGELHOLM (2000) e MARTINELLI (2000), que desenvolveram um modelo
termodinmico relacionando a temperatura com a concentrao de slidos secos no
licor para determinao da capacidade calorfica.
30
a .T
C p = a1. (1 X ) + a2 + 5 C
1000
a5 .T C
. X + a4
1000
a6
(1 X ) . X
(1.22)
. a3 . X
H (TC ) = C p d C = .
a5 . (1 X ) . X a6 . (T 2 T0 2 ) +
2 1000
1000
t0
t
(1.23)
a1 . (1 X ) . (T T0 ) + a2 . X . (T T0 ) + a4 . (1 X ) . X . (T T0 ) , T0 = 0C
a6
31
TABELA 1.4
Definido por
Constantes
Ajustado com o
MASSE et al.
SOLVER
(1987)
a1
4,216
4,106
a2
1,675
-1,210
a3
3,310
49,971
a4
4,870
33,542
a5
20,0
503,142
a6
3,00
4,866
550
500
450
400
350
300
250
200
150
100
50
-0,1
0,0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
Cp 40C
Ajuste 40C
Cp 80C
Ajuste 80C
Cp 120C
Ajuste 120C
FIGURA 1.15
32
FIGURA 1.16
33
(1.24)
b = b1 + b2 .T
B
Psat = exp A +
+ C.ln (Tsat )
Tsat
(1.25)
34
Tsat
ln ( Psat ) + A
B.exp
C
1
C ln ( Psat ) + A
= exp LambertW
C
(1.26)
C
(1.27)
35
TABELA 1.5
Psat
Antoine (bar)
Tsat
Experimental (K)
Tsat
Ajustado (K)
Erro
quadrtico
0,0010
0,0023
0,0049
0,0100
0,0192
0,0353
0,0620
0,1049
0,1712
0,2705
0,4151
0,6202
0,9040
1,2883
1,7983
2,4625
3,3129
4,3847
5,7158
7,3469
9,3203
11,6805
14,4725
17,7422
21,5351
25,8963
250,0
260,0
270,0
280,0
290,0
300,0
310,0
320,0
330,0
340,0
350,0
360,0
370,0
380,0
390,0
400,0
410,0
420,0
430,0
440,0
450,0
460,0
470,0
480,0
490,0
500,0
250,536
259,845
269,766
279,901
290,060
300,164
310,195
320,165
330,094
340,007
349,924
359,859
369,822
379,817
389,842
399,893
409,963
420,042
430,117
440,178
450,211
460,203
470,142
480,016
489,813
499,522
0,287
0,024
0,055
0,010
0,004
0,027
0,038
0,027
0,009
0,000
0,006
0,020
0,032
0,034
0,025
0,011
0,001
0,002
0,014
0,032
0,044
0,041
0,020
0,000
0,035
0,228
36
520
500
480
Tsat experimental
Tsat ajustado eq. (1.27)
460
440
420
400
380
360
340
320
300
280
260
240
0,0005
0,0050
0,0500
0,5000
5,0000
50,0000
FIGURA 1.17
(1.28)
( C2 + C3 Tr +C4 Tr2 )
. (1 Tr )
(1.29)
37
1.4.
= SP PV
(1.30)
38
(1.31)
100%
KC
(1.32)
39
Uma caracterstica do controlador proporcional que ele no consegue
"zerar" o desvio do set-point, deixando um erro residual (off-set). A Figura 1.18
mostra o comportamento de uma varivel controlada por um controlador
proporcional aps uma perturbao externa em degrau. O set-point indicado
PV
Set-point
Off-set
Tempo
FIGURA 1.18
SP
KC
Processo
PV
FIGURA 1.19
Medidor
40
Basicamente, segundo OLIVEIRA (1999), todo controlador do tipo
proporcional apresenta as seguintes caractersticas:
Correo proporcional ao desvio;
Existncia de uma realimentao negativa;
Deixa erro de off-set aps uma variao de carga.
(1.33)
1
I =
, sendo usado para descrever a ao integral do controlador. Os
KI
fabricantes preferem usar o termo taxa de reajuste (reset time), que definida
como o inverso de I , ( 1 I ).
Integrando a equao (1.33), encontra-se a sada atual do controlador em
qualquer tempo dado como:
41
m (t ) =
1
( t ) dt + S 0
I 0
(1.34)
1
m ( t ) = K C + ( t ) dt + bias
I 0
(1.35)
1
GC ( s ) = K C 1 +
I s
(1.36)
42
FIGURA 1.20
Ao de um controlador PI no controle de um trocador de calor com setpoint varivel (Fonte: COOPER, 2008).
43
44
Me
Ms
FIGURA 1.21
45
SP
C (s)
Gp ( s )
G (s)
*
p
FIGURA 1.22
1
K vaso
(1.37)
y 1
u t
(1.38)
(1.39)
46
controle de nveis de tanques e vasos, e o algoritmo proposto o seguinte.
Inicialmente, para a sintonia do ganho proporcional (KC):
Definir uma perturbao esperada mxima para a vazo de alimentao do
vaso (ou de sada, dependendo da posio da varivel manipulada): FD ;
Definir o limite mximo desejado para a variao do nvel: hmax ;
O ganho proporcional proposto ser ento: K C =
FD
;
( hmax SP )
FD rangenvel
%
do controlador normalizado: KC( ) =
.
rangevazo ( hmax SP )
Posteriormente, para a sintonia do tempo integral ( I ):
Estimar o tempo de residncia no vaso para a perturbao considerando o
volume de lquido entre o set-point e hmax : TR =
volume
;
FD
1.5.
47
impulso (ou degrau) ou modelos no paramtricos. Outras tcnicas preditivas
trabalham com modelos paramtricos no contexto adaptativo (NEITZEL, 1995).
De modo geral, estas tcnicas so denominadas MPC (Model Predictive
Control), que se referem a uma famlia de controladores onde h a utilizao de um
modelo para o processo a ser controlado. A tcnica MPC fornece a metodologia de
se manipular variveis de modo sistemtico durante o projeto e a implementao do
controlador. O MPC um mtodo baseado em controle timo, isto , que seleciona
as entradas de controle de forma a minimizar uma funo objetivo. O clculo da
funo objetivo baseia-se tanto em valores atuais de sadas do processo quanto em
valores preditos por um modelo explcito do processo.
O MPC utiliza um modelo no paramtrico para representar o processo,
motivo pelo qual pode ser chamado de controle com modelo interno (IMC), e
controla o sistema realizando uma otimizao das sadas do processo para um
intervalo finito de tempo no futuro.
Muitos estudos so encontrados na literatura sobre a aplicao de controle
da famlia MPC, onde as primeiras aplicaes foram os controles MAC (Model
Algorithmic Control), DMC (Dynamic Matrix Control) e IMC (Internal Model
Control) apresentadas respectivamente por RICHALET et al. (1979); CULTER e
RAMAKER (1979); CUTLER (1983) e GARCIA (1982) apud NEITZEL (1995).
48
domnio do tempo.
A estratgia DMC caracterizada pela sua metodologia digital e, portanto,
utiliza-se de uma modelagem matemtica dinmica que descreve o comportamento
das variveis de sada do processo. Obtendo-se um modelo que represente o
processo a ser controlado, pode-se predizer o valor da sada do processo (varivel
controlada), para ento, calcular a ao de controle necessria pra corrigir algum
erro existente entre a varivel controlada e a referncia (set-point). A ao do
controlador DMC pode ser visualizada na Figura 1.23.
y ( k + j )
u ( k + 1)
y ( m)
u ( k )
u (m)
k+R
k
FIGURA 1.23
J = y ( k + 1) SP ( k + 1)
j =1
(1.40)
49
perturbao
W(0)
a1
a2
a3
an
a4
C(6)
tempo
FIGURA 1.24
vantagem
dos
modelos
no-paramtricos
em
comparao
aos
y ( k ) = a ( i ) u ( k i )
i =0
(1.41)
Onde:
u ( k ) = u ( k ) u ( k 1)
(1.42)
50
Para a converso da resposta degrau em uma resposta impulso do modelo
de convoluo, deve-se levar em conta o conceito de que a resposta impulso pode
ser expressa como a derivada primeira da resposta degrau (PAL, 2001). Para um
sistema digital, os coeficientes de resposta ao impulso so obtidos fazendo-se a
diferena entre os coeficientes de resposta ao degrau, como mostrado na equao
a seguir:
h ( i ) = a ( i ) a ( i 1)
h (0) = 0
(1.43)
y ( k + 1) = y ( 0 ) + h ( i ) u ( k + 1 i )
i =1
(1.44)
51
N
y ( k + j ) = y ( k + j 1) + h ( i ) u ( k + j i )
(1.45)
i =1
( j i 0 ) (NEITZEL, 1995):
j
y ( k + j ) = y ( k + j 1) + h ( i ) u ( k + j i ) +
i =1
h ( i ) u ( k + j i )
(1.46)
i = j +1
h ( i ) u ( k + j i )
i = j +1
(1.47)
y 0 ( k + 1) = y ( k ) + h ( i ) u ( k + 1 i )
i=2
(1.48)
) , tem-se:
y ( k + j ) = y 0 ( k + j ) + a ( j m + 1) u ( k + m 1)
m =1
(1.49)
Definindo e ( k + j ) = SP ( k + j ) y ( k + j ) , obtm-se:
e ( k + j ) = a ( j ) u ( k ) a (1) u ( k + j ) + SP ( k + j ) y 0 ( k + j )
(1.50)
(1.51)
52
E = A u + E 0
(1.52)
e k + R
a R
a1
a2
a1
a R 1
aR 2
0 u k e k0+1
0 u k +1 e k0+ 2
0 u k + 2 + e k0+ 3
a1 uk + R e k + R
(1.53)
(1.54)
(1.55)
u = AT A +
AT E 0
(1.56)
53
*
u = AT A + I
AT E 0
u = K E 0
(1.57)
54
Coeficiente peso de sintonia ( ): possui funo parecida com o fator de
supresso de movimento, no entanto, atua sobre o vetor dos erros preditos.
Este parmetro foi aplicado com o intuito de aumentar a estabilidade do
lao de controle juntamente com o fator . Para tanto sero discutidos os
melhores valores de sintonia, pois no se tem conhecimento de valores
usuais na literatura, sendo que no normalmente aplicado no DMC
tradicional.
Tempo de amostragem ( TS ): no considerado como parmetro de sintonia
do DMC, porm SEBORG (1989) apud PAL (2001) sugere que a
estabilidade do sistema s mudanas neste parmetro seja testada e
considerada. A varivel TS est relacionada com a dinmica do processo,
no sentido de que quanto maior for TS
55
2.
2.1.
OBJETIVOS
Motivao
56
2.2.
Formulao do Problema
Controlador por Matriz Dinmica com Uma Entrada e Uma Sada (monovarivel)
57
2.3.
Objetivo Geral
convencional
pela
implementao
de
algoritmos
de
controle
2.4.
Objetivos Especficos
58
59
3.
3.1.
REVISO BIBLIOGRFICA
60
JESUS (2004) desenvolveu modelos em estado estacionrio e um modelo
dinmico para uma planta de evaporao em mltiplo-efeito de uma usina de
acar com o objetivo de construir um sensor neural para a determinao do Brix do
ltimo efeito. Sendo que os resultados foram satisfatrios, mostrando grande
potencial para a utilizao dos modelos desenvolvidos para a inferncia das
variveis mais importantes na etapa de evaporao e cristalizao.
WESTPHALEN (1999) desenvolveu um modelo matemtico para a
simulao esttica e dinmica de sistemas de evaporao. Este modelo foi
implementado na forma de um programa de computador baseado na programao
orientada por objetos e no uso de listas de conexes. A influncia de variveis como
nmero e arranjo dos efeitos, temperatura da alimentao, aproveitamento do
condensado e recompresso de vapor no projeto de um sistema de evaporao foi
ilustrada no estudo de caso de solues de acar.
A flexibilidade do programa desenvolvido por WESTPHALEN (1999) foi
exemplificada na simulao esttica de um evaporador de suco de laranja,
revelando resultados prximos a valores publicados na literatura. Atravs dos
resultados da simulao dinmica de um evaporador de suco de ma mostrou que
o modelo dinmico foi capaz de reproduzir os dados reais de operao. Por fim, foi
proposta uma metodologia para a integrao energtica de um sistema de
evaporao baseado na anlise de Pinch. Esta metodologia consiste na otimizao
das correntes de extrao de vapor e sua aplicao no processo de fabricao de
glicose cristal.
CARDOSO (1998) analisou a unidade de recuperao do processo Kraft
da
Cenibra
(Celulose
Nipo
Brasileira),
avaliando
novas
alternativas
de
61
temperaturas das regies de combusto do licor, proporcionando assim um
acrscimo de 10% na produo de vapor.
3.2.
para
evaporadores
de
mltiplo
efeito,
combinando
relaes
62
desenvolvido, foi efetuado estudos de simulao de diversas alternativas de
controle, incluindo solues clssicas e baseadas em modelos de controle preditivo
generalizado (Generalized Predictive Control, GPC).
WILSON et al. (1990) desenvolveram e testaram um modelo baseado em
controle preditivo de um sistema de evaporao industrial. Um modelo no-linear
para representao e simulao da planta e um sistema de controle preditivo
generalizado
(GPC),
incluindo
uma
compensao
feedforward
para
as
63
4.
PROCEDIMENTOS METODOLGICOS
4.1.
Wk
Vapor flash
de sada
k
Pk Tk
Vapor de
Wk-1
aquecimento
de entrada
Uk Ak
Qk
hk
Licor negro
diludo de entrada
Fk-1 , Tk-1
k-1 , Ck-1 , Cpk-1
Fk , Tk
Wk-1
Licor negro
concentrado
k , Ck , Cpk de sada
Condensado
FIGURA 4.1
64
Onde:
65
caracterstico do ciclo de recuperao do processo Kraft de uma fbrica de
celulose e papel tpica.
A temperatura no evaporador a temperatura do licor negro em decorrncia
da dinmica rpida da vaporizao, isto , a vaporizao pode ser considerada
desprezvel at que a temperatura do ponto de ebulio seja atingida (FRANKS,
1972).
d k ( t ) hk ( t )
Ak
= Fk 1 k 1 ( t ) Fk k ( t ) Wk ( t )
dt
(4.1)
dh ( t )
d (t )
Ak k ( t ) k
+ hk ( t ) k
= Fk 1 ( t ) k 1 ( t ) Fk ( t ) k ( t ) Wk ( t )
dt
dt
(4.2)
dhk Fk 1 k 1 Fk k Wk
=
dt
Ak k
(4.3)
d hk ( t ) k ( t ) Ck ( t )
Ak
= Fk 1 ( t ) k 1 ( t ) Ck 1 ( t ) Fk ( t ) k ( t ) Ck ( t )
dt
(4.4)
(4.5)
66
A derivada da densidade em relao ao tempo (considerando a relao
emprica proposta em GULLICHSEN e FOGELHOLM (2000), utilizada para
relacionar a densidade do licor negro com a temperatura e o teor de slidos) dada
pela expresso:
d k ( t ) a1
dT ( t )
a
= 3 + 2 5 ( Tk ( t ) a5 ) ( a3 + a4 Ck ( t ) ) k
+
dt
dt
10 5 10
dCk ( t )
a1
a2
2
a
+
a
+
(
)
(
)
0
5
5
4
k
k
3
6
10
10
dt
(4.6)
(4.7)
k ( t ) Ck ( t ) + hk ( t ) Ck ( t )
dt
=
Ak
dTk ( t )
dCk ( t )
dCk ( t )
+ ( 635, 0 )
( 0, 64 )
+ hk ( t ) k ( t )
dt
dt
dt
(4.8)
Fk 1 ( t ) k 1 ( t ) Ck 1 ( t ) Fk ( t ) k ( t ) Ck ( t )
dhk ( t )
dT ( t )
k ( t ) Ck ( t ) + hk ( t ) Ck ( t ) ( 0, 64 ) k
+
dt
dt
( 0,19 )
=
Ak
dC ( t )
hk ( t ) Ck ( t ) ( 635, 0 ) + hk ( t ) k ( t ) k
dt
190
1200
Fk 1 ( t ) k 1 ( t ) Ck 1 ( t ) Fk ( t ) k ( t ) Ck ( t )
(4.9)
67
inferior a 10%, mas a contribuio na dificuldade de soluo do modelo
significativa, resolveu-se desprezar tambm esta parcela. Assim, o modelo
correspondente ao balano de massa nos componentes toma a seguinte forma:
dC ( t )
dh ( t )
Ak k
k ( t ) Ck ( t ) + hk ( t ) k ( t ) k
dt
dt
Fk 1 ( t ) k 1 ( t ) Ck 1 ( t ) Fk ( t ) k ( t ) Ck ( t )
(4.10)
dCk ( t ) Ck ( t ) Wk + Fk 1 k 1 Ck 1 ( t ) Ck ( t )
=
dt
Ak hk ( t ) k
(4.11)
[U A]k Tk 1 Wk 1 k 1
[U A]k
(4.12)
Fk 1 k 1 C pk 1 Tk 1 + Wk 1 k 1 Fk k C pk Tk
Wk =
C T +
pk
(4.13)
68
4.2.
(4.14)
UA 2 (T1 T2 ) 1 ( F0 0 F11 ) = 0
(4.15)
(4.16)
UA 4 (T3 T4 ) 3 ( F2 2 F3 3 ) = 0
(4.17)
UA5 (T4 T5 ) 4 ( F3 3 F4 4 ) = 0
(4.18)
UA 6 (T5 T6 ) 5 ( F4 4 F5 5 ) = 0
(4.19)
(4.20)
(4.21)
(4.22)
( F4 4 F3 3 ) 4 + ( CP 3T3 CP 4T4 3 ) 3 F3 + 3 F2 2 = 0
(4.23)
( F5 5 F4 4 ) 5 + ( CP 4T4 CP 5T5 4 ) 4 F4 + 4 F3 3 = 0
(4.24)
( F6 6 F5 5 ) 6 + ( CP 5T5 CP 6T6 5 ) 5 F5 + 5 F4 4 = 0
(4.25)
69
z = [ W0 , T1 , T2 , T3 , T4 , T5 ,UA,F1 , F2 , F3 , F4 , F5 ]
O sistema de equaes, f ( z ) = 0, z
12
(4.26)
,f
12
0,1 m 3 s
las na forma:
Ax ( ) = b
1
(4.27)
0
0
A=
0
0
F0 0CP1
CP1 1 F1
0
CP 2 1 F1
0
0
0
0
0
0
0
CP 2 2 F2
0
0
CP 3 2 F2
CP 3 3 F3
0
0
CP 4 3 F3
CP 4 4 F4
CP 5 4 F4
CP 5 5 F5
0
0
(4.28)
E o vetor b por:
( F1 1 F0 0 ) 1 F0 0CP 0T feed
( F2 2 F1 1 ) 2 + 1 1 F1 1 F0 0
( F3 3 F2 2 ) 3 + 2 2 F2 2 F1 1
b=
( F4 4 F3 3 ) 4 + 3 3 F3 3 F2 2
( F5 5 F4 4 ) 5 + 4 4 F4 4 F3 3
( F6 6 F5 5 ) 6 CP 6T6 5 5 F5 5 F4 4
(4.29)
F2
F3
(1)
F4
( 2)
como funo
70
seis ltimas equaes (correspondentes aos balanos de energia), reduzindo a
dimenso do problema e eliminando as dificuldades decorrentes do escalamento.
Nestas
( )
F x( 2) = 0, x( 2)
condies
6
,F
problema
ser
resolvido
toma
forma
1
.
x4(1) =
( F5 5 F4 4 CP 3 F3 3 F5 5 F4 4 CP 3 F3 3 )
6 + 2 4 + 2 5 +
2
F 5 5 + C T
(
)
4
4
5
4
4
P6
6
3
( F3 3 )2 4 F5 5 F3 3
6 F6 6
+ ( F5 5 ) 5
F F F + F
5 5 4 4 4 4 4 3 2 2
x5( ) =
1
(1)
x6 =
F 4 + 2 5 + C P 6 T6 + 6
( F4 4 )2 5 + F4 4 5 5
F
6 6 6
( F )2 F F
5
5
5
4
3
3
5
5
F5 5 CP 4 F4 4
(4.30)
F5 5 5 + 6 + C P 6 T6 5 F4 4 6 F6 6
C P 5 F5 5
(4.31)
(4.32)
71
TABELA 4.1
Valores do ponto de equilbrio calculado para o regime permanente do sistema de evaporao estudado.
Sada Estgios
Entrada 1
Estgio
42,69
26,36
27,88
5,62
10,71
14,99
28,28
0,125
0,086
0,078
0,069
0,058
0,042
0,014
0,140
0,175
0,255
0,273
0,318
0,410
0,850
8,0
4,747
2,454
2,325
1,874
1,174
0,224
442,83
424,45
419,99
414,09
405,97
388,27
353,42
2054,86
2116,45
2130,62
2148,99
2173,55
2224,21
2314,14
3955,9
4552,37
4535,34
4501,61
4430,02
4145,38
2531,12
1059,4
1436,74
1442,36
1449,63
1459,3
1478,97
1512,23
{U .A} .
0,0
72
4.3.
(4.33)
73
Modelo para o 1 estgio da evaporao:
T1 =
[U A]1 Tvapor W0 0
[U A]1
(4.34)
F0 0 C p0 T feed + W0 0 F1 1 C p1 T1
C T +
W1 =
p1
(4.35)
dh1 ( t ) F0 0 F1 1 W1
=
dt
A1 1
(4.36)
dC1 ( t ) C1 ( t ) W1 + F0 0 C0 ( t ) C1 ( t )
=
dt
A1 h1 ( t ) 1
(4.37)
[U A]2 T1 W1 1
[U A]2
T2 =
W2 =
(4.38)
F1 1 C p1 T1 + W1 1 F2 2 C p2 T2
C T +
p2
(4.39)
dh2 ( t ) F1 1 F2 2 W2
=
dt
A2 2
(4.40)
dC2 ( t ) C2 ( t ) W2 + F1 1 C1 ( t ) C2 ( t )
=
dt
A2 h2 ( t ) 2
(4.41)
T3 =
[U A]3 T2 W2 2
[U A]3
W3 =
(4.42)
F2 2 C p2 T2 + W2 2 F3 3 C p3 T3
C T +
p3
dh3 ( t ) F2 2 F3 3 W3
=
dt
A3 3
(4.43)
(4.44)
74
dC3 ( t ) C3 ( t ) W3 + F2 2 C2 ( t ) C3 ( t )
=
dt
A3 h3 ( t ) 3
(4.45)
[U A]4 T3 W3 3
[U A]4
T4 =
W4 =
(4.46)
F3 3 C p3 T3 + W3 3 F4 4 C p4 T4
C T +
p4
(4.47)
dh4 ( t ) F3 3 F4 4 W4
=
dt
A4 4
(4.48)
dC4 ( t ) C4 ( t ) W4 + F3 3 C3 ( t ) C4 ( t )
=
dt
A4 h4 ( t ) 4
(4.49)
[U A]5 T4 W4 4
T5 =
[U A]5
W5 =
(4.50)
F4 4 C p4 T4 + W4 4 F5 5 C p5 T5
C T +
p5
(4.51)
dh5 ( t ) F4 4 F5 5 W5
=
dt
A5 5
(4.52)
dC5 ( t ) C5 ( t ) W5 + F4 4 C4 ( t ) C5 ( t )
=
dt
A5 h5 ( t ) 5
(4.53)
T6 =
[U A]6 T5 W5 5
[U A]6
W6 =
(4.54)
F5 5 C p5 T5 + W5 5 F6 6 C p6 T6
C T +
p6
(4.55)
75
4.4.
dh6 ( t ) F5 5 F6 6 W6
=
dt
A6 6
(4.56)
dC6 ( t ) C6 ( t ) W6 + F5 5 C5 ( t ) C6 ( t )
=
dt
A6 h6 ( t ) 6
(4.57)
x = h1 h 2
h3
h4
h5
h6
C1 C 2
C 5 C 6
C3 C4
(4.58)
F1
F2
F3
F4
F 5 e z = C 0
F 6 , obtm-se:
dx
= Ax + B(1) v + B( 2) z
dt
(4.59)
A=
7,7
7,1
0
8,2
8,7 8,8
0
9,3
9,8 9,9
10,4
10,9 10,10
0
11,5
11,10 11,11
12,6
12,11 12,12
(4.60)
76
(1)
1,1
B(1) = (1)
7,1
(1)
1,2
(1)
2,2
(1)
2,3
(1)
3,3
0
(1)
3,4
(1)
4,4
(1)
4,5
(1)
5,5
0
(1)
8,2
(1)
9,3
(1)
10,4
(1)
11,5
(1)
6,5
(1)
6,6
( 2)
; B = ( 2)
7,1
(1)
12,6
( 2)
6,2
(4.61)
6+ k , k =
Fk 1 k 1 ( Ck Ck 1 ) Ck Wk
,k =1 6
Ak hk2 k
6+ k ,6+ k =
6+( k +1),k =
(4.64)
(4.65)
k 1
,k =1 6
A k
(4.66)
6(1+)k ,k =
( 2)
=
7,1
Fk k
,k =1 6
Ak hk +1 k +1
(4.63)
1
,k =1 5
A
k(1,k) +1 =
k(1,k) =
Fk 1 k 1 Wk
,k =1 6
Ak hk k
(4.62)
k 1 ( Ck 1 Ck )
,k =1 6
A hk k
F0 0
A h1 1
(4.67)
(4.68)
77
( 2)
6,2
=
4.5.
1
A
(4.69)
78
Ao do sistema de controle
A
P
A
P
A
P
A
P
A
P
A
P
V-13
A
P
Fluxo de material
FIGURA 4.2
Fluxograma do sistema com controle de nvel em reverso para uma evaporao de mltiplo efeito com seis estgios.
79
A equao para o clculo do erro est na forma adimensional, numa escala
de 0-100%, como usual nos terminais dos SDCDs. Os smbolos hmin e hmax
correspondem aos valores mnimos e mximos do range dos instrumentos de
medida. O valor desejado, set-point, SPh , est em unidades de processo (m, no
k
ek( %) =
100
SPhk hk ( t )
hmax hmin
(4.70)
(4.71)
SPh hk ( t )
mk( % )
= Fssk 1 + kvk K c(k% ) k
hmax hmin
100
SPhk hk ( t )
hmax hmin
SPh hk ( t )
= Fssk 1 1 + K c(k%) k
hmax hmin
(4.72)
(4.73)
dx
= A* x + B ( 2 ) z
dt
(4.74)
80
a1,1
*
A =
a
7,1
a2,2
0
a3,3
a4,4
a5,5
a6,6
a7,7
a8,7
a8,2
a8,8
a9,3
a9,8
a10,4
a9,9
a10,9
a10,10
a11,10
a11,5
a11,11
a12,11
a12,6
a12,12
(4.75)
ak ,k =
Fssk 1 k 1 K c(k%)
A k ( hmax hmin )
, k =1 6
(4.76)
0
1
1
(%)
Fss0 0 hmax hmin + K c1 SPh1 W1 ( hmax hmin ) C1
a7,1 =
( hmax hmin ) A h12 1
a6+ k ,k
Ck Wk ( hmax hmin )
, k =2
=
2
A hk k ( hmax hmin )
a6+( k +1),6+ k
a6+ k ,6+ k
(4.77)
,k =1
=
A hk +1 k +1 ( hmax hmin )
(4.78)
(4.79)
(4.80)
81
Fssk 1 k 1 K c(k%)
A k ( hmax hmin )
Como k [1 6] , k(
%)
,k =1 6
(4.81)
6(+%k) =
) , k = 1
SPhk hk
Fssk 1 k 1
Wk
%
1
+ K c(k )
A hk k Fssk 1 k 1
hmax hmin
(4.82)
seguintes restries:
Se
k 1 Fss Wk
k 1
k 1 Fss ( SPh hk )
k 1
Se
k 1 Fss Wk
k 1
k 1 Fss ( SPh hk )
k 1
hmax - hmin
Wk
< 0, K c(k% ) 1
k 1 Fssk 1 SPhk hk
(4.83)
hmax - hmin
Wk
> 0, K c(k% ) 1
k 1 Fssk 1 SPhk hk
(4.84)
82
hmax - hmin
Wk
K ck 1
k 1 Fssk 1 SPhk hk
hmax - hmin
Wk
K ck 1
k 1 Fssk 1 SPhk hk
SPhk
FIGURA 4.3
dx
= A* x, x ( t0 ) = x 0 descrita pela
dt
expresso x ( t ) = PeDt P-1 x0 , com D = P-1A* P onde D uma matriz diagonal cujos
elementos so os valores caractersticos k( % ) . Assim a resposta genrica para um
elemento x j ( t ) do vetor x ( t ) :
12
( %)
x j ( t ) = qk( %) x k ,0 ek
(4.85)
k =1
12
x j ( t ) = qk x k ,0 e
k =1
(%)
k( %)
(4.86)
83
4.6.
84
Funes para o clculo das propriedades fsicas e termodinmicas do licor
e do vapor, tais como: temperatura de saturao do vapor ( Tsat ( P ) ); presso
de saturao do vapor ( Psat (T ) ); calor latente de vaporizao ( ( P ) );
elevao do ponto de ebulio do licor ( BPR ( C , P ) ); capacidade calorfica
do licor negro ( C p ( C , T ) ) e densidade do licor negro ( ( C , T ) );
Sub-rotina Perturba: implementa a perturbao no sistema, escolhido pelo
usurio;
Sub-rotina Modelo: para a construo das equaes diferenciais do nvel e
da concentrao de slidos do licor nos evaporadores;
Sub-rotina Armazena: salva todos os resultados da simulao nos
arquivos txt criados pela sub-rotina Relatorio;
Sub-rotina Atualiza PropFis: atualiza as propriedades fsicas do licor e
vapor para verificao de estabilidade do sistema;
Sub-rotina Converte100: converte os valores da vazo de licor e vapor,
concentrao, nvel de licor, temperatura do licor e o set-point em
porcentagem (normalizao dos parmetros);
Sub-rotina MatrizK: para a construo da matriz K, definida pela equao
(1.51) do controlador DMC;
Sub-rotina MatrizA: para a construo da matriz A, definida pela equao
(1.48) do controlador DMC;
Sub-rotina DeltaU: calcula os valores de u , definido pela equao (1.37)
para implementao do controlador DMC;
Sub-rotina Controle PI: implementa a estratgia de controle convencional
P e PI para o nvel e concentrao de licor nos evaporadores;
Sub-rotina Controle DMC: implementa a estratgia de controle avanado
preditivo por matriz dinmica (DMC);
Programa Principal: executa, gerencia e chama as demais sub-rotinas,
implementando o lao de integrao dos modelos matemticos, simulando
e controlando a dinmica do processo proposto de evaporao.
85
O algoritmo do programa principal mostrado na Figura 4.4.
SIM
Ativar controle de
nvel ?
NO
Ativar controle de
concentracao no ltimo
estagio ?
Definir parmetros de
sintonia do controlador
P e PI: KC, KI
NO
SIM
NO
Ativar o controlador
DMC para C6 ?
SIM
Definir parmetros de
sintonia do controlador
DMC: R, e
Armazenar os resultados da
simulao em txt.
Call relatorio ( )
FIGURA 4.4
86
Para o desenvolvimento do lao de integrao dos modelos matemticos e
para simulao dinmica do processo foi utilizada a sub-rotina IVPRK da biblioteca
IMSL do compilador INTEL FORTRAN. Na Figura 4.5 mostrado o esquema de
construo do lao principal de integrao do programa desenvolvido para
simulao dinmica da evaporao em mltiplo efeito.
FIGURA 4.5
87
5.
5.1.
RESULTADOS E DISCUSSO
dh ( t )
= K p F
dt
(5.1)
"Set-Point" Nv el
1,00
0,99
0,98
0,97
0,96
0,95
0,0
0,2
0,4
0,6
0,8
1,0
1,2
1,4
1,6
1,8
2,0
H 1 [m]
H 2 [m]
H 3 [m]
H 4 [m]
H 5 [m]
H 6 [m]
Tempo [h]
FIGURA 5.1
88
0,14
0,12
0,10
0,08
0,06
0,04
0,02
0,00
0,0
0,2
0,4
0,6
0,8
1,0
1,2
1,4
1,6
1,8
2,0
F 0 [m 3/s]
F 1 [m 3/s]
F 2 [m 3/s]
F 3 [m 3/s]
F 4 [m 3/s]
F 5 [m 3/s]
F 6 [m 3/s]
Tempo [h]
FIGURA 5.2
1,0016
1,0014
1,0012
1,0010
1,0008
1,0006
1,0004
1,0002
1,0000
0,9998
0,9996
0,00
0,02
0,04
0,06
0,08
0,10
0,12
0,14
0,16
0,18
0,20
Tempo [h]
FIGURA 5.3
89
0,14
0,12
0,10
0,08
0,06
0,04
0,02
0,00
0,0
0,2
0,4
0,6
0,8
1,0
1,2
1,4
1,6
1,8
2,0
F 0 [m 3/s]
F 1 [m 3/s]
F 2 [m 3/s]
F 3 [m 3/s]
F 4 [m 3/s]
F 5 [m 3/s]
F 6 [m 3/s]
Tempo [h]
FIGURA 5.4
ISE = ( t ) dt
2
(5.2)
90
como pode ser observado na Figura 4.2. Simulaes com degrau positivo na vazo
de licor mostrou-se pouco eficaz como perturbao, pois os controladores devero
atuar justamente nessa varivel. Na Tabela 5.1 tem-se uma comparao dos
desempenhos dos controladores P e PI pelo mtodo de sintonia IMC (CAMPOS e
TEIXEIRA, 2006; LIESLEHTO, 2009).
TABELA 5.1
KC
KI
ISE
33,22
0,0
24,12
PI
66,45
0,5
0,0
5.2.
u * ( t ) dt
ISUWDMC
=
0
0
(5.3)
91
Onde u
calculada pelo controlador DMC. Para efeito comparativo foi definido, ento, um
ndice de desempenho para a varivel manipulada (ISU) tambm para os
controladores convencionais P e PI, como mostrado na equao (5.4).
ISUWP0 PI = m ( t ) dt
2
(5.4)
dC6 ( t )
+ C6 ( t ) = K p C0
dt
C6 ( t ) = C0 K p 1 e
(5.5)
(<http://ae.tut.fi/~juke/java/pidtuning/index.html>
LIESLEHTO,
2009),
obtendo uma estimativa calculada dos parmetros dos controladores que foram,
ento, para o controlador P: KC = 0,5646; para o controlador PI: KC = 0,5081 e KI =
0,0381. Sendo, portanto, estes os valores utilizados para as simulaes e para
comparao com o controlador DMC.
Na Figura 5.5 apresentado o diagrama de blocos simplificado para as
estratgias de controle da concentrao, implementadas no sistema de evaporao
estudado para as simulaes em regime transiente.
92
SP
Gp ( s )
C (6)
FIGURA 5.5
0,160
C 6 [kg/kg]
"Set-Point" C 6
Degrau +10% em C 0 [kg/kg]
0,155
0,95
0,150
0,90
0,145
0,85
0,140
0,80
1,00
0,135
0
Tempo [h]
FIGURA 5.6
93
43,0
C 6 [kg/kg]
"Set-Point" C 6
Vazo de v apor [kg/s]
42,5
0,95
42,0
41,5
0,90
41,0
40,5
0,85
40,0
0,80
0,0
0,5
1,0
1,5
2,0
2,5
3,0
3,5
4,0
4,5
1,00
39,5
5,0
Tempo [h]
FIGURA 5.7
43,0
C 6 [kg/kg]
"Set-Point" C 6
Vazo de v apor [kg/s]
42,5
0,95
42,0
41,5
0,90
41,0
40,5
0,85
40,0
0,80
0,0
0,5
1,0
1,00
39,5
1,5
Tempo [h]
FIGURA 5.8
94
O comportamento tpico do controlador P foi observado, com um elevado
erro de off-set, sendo necessria a ao integral para reduzir este erro, portanto,
este controlador pouco efetivo no controle do processo obtendo um baixo
desempenho.
A fim de analisar o comportamento do controlador P, foi tambm aplicada
uma perturbao tipo excitao com rudo binrio pseudo-aleatrio (PRBS) com
t = 300 segundos na concentrao de alimentao da evaporao (C0), como
C 6 [kg/kg]
"Set-Point" C 6
PRBS C 0
0,165
0,95
0,160
0,155
0,90
0,150
0,145
0,85
0,140
0,80
0,170
1,00
0,135
0
10
Tempo [h]
FIGURA 5.9
95
C 6 [kg/kg]
"Set-Point" C 6
W 0 [kg/s]
42,5
0,95
42,0
0,90
41,5
41,0
0,85
40,5
0,80
0
43,0
1,00
40,0
10
Tempo [h]
FIGURA 5.10
96
C 6 [kg/kg]
"Set-Point" C 6
Degrau +10% C 0
0,19
0,95
0,18
0,90
0,17
0,85
0,16
0,15
0,80
0,14
0,75
0,0
0,2
0,4
0,6
0,8
1,0
1,2
1,4
1,6
1,8
0,20
1,00
2,0
Tempo [h]
FIGURA 5.11
C 6 [kg/kg]
"Set-Point" C 6
W 0 [kg/s]
0,95
40
0,90
35
0,85
30
0,80
0,75
0,0
0,2
0,4
0,6
0,8
1,0
1,2
1,4
1,6
1,8
45
1,00
25
2,0
tempo [h]
FIGURA 5.12
97
C 6 [kg/kg]
"Set-Point" C 6
W 0 [kg/s]
0,95
40
0,90
35
0,85
30
0,80
0,75
0,0
0,1
0,2
0,3
0,4
45
1,00
25
0,5
tempo [h]
FIGURA 5.13
98
C 6 [kg/kg]
"Set-Point" C 6
PRBS 300 s C 0
(A)
0,160
0,95
0,155
0,90
0,150
0,85
0,145
0,80
0,140
0,75
0,165
1,00
0,135
0
Tempo [h]
C 6 [kg/kg]
"Set-Point" C 6
PRBS 300 s C 0
(B)
0,160
0,95
0,155
0,90
0,150
0,85
0,145
0,80
0,140
0,75
0,0
0,2
0,4
0,6
0,8
1,0
1,2
1,4
1,6
1,8
0,165
1,00
0,135
2,0
Tempo [h]
FIGURA 5.14
99
45
0,95
40
0,90
35
0,85
30
0,80
C 6 [kg/kg]
"Set-Point" C 6
W 0 [kg/s]
0,75
1,00
25
0
Tempo [h]
FIGURA 5.15
100
0,165
C 6 [kg/kg]
"Set-Point" C 6
PRBS 300 s C 0
(A)
0,160
0,95
0,155
0,90
0,150
0,85
0,145
0,80
0,140
0,75
0
1,00
0,135
10
Tempo [h]
(B)
0,95
40
0,90
35
0,85
30
0,80
C 6 [kg/kg]
"Set-Point" C 6
W 0 [kg/s]
0,75
45
1,00
25
0
10
Tempo [h]
FIGURA 5.16
101
no
so
fisicamente
compreensveis
quando
comparado
aos
5 TR
TR
(5.6)
TS
10
TR
5 T
R
TS
10
50
(5.7)
102
facilitando a comparao de desempenho das estratgias de controle estudadas.
Com o tempo de amostragem definido, construiu-se a matriz A, a partir da Figura
5.17.
1,30
1,25
1,20
1,15
1,10
1,05
1,00
0,95
0,90
0,85
0,80
-200
200
400
600
800
1000
1200
1400
1600
C6 [kg/kg]
FIGURA 5.17
4242
42
103
evaporao (C0). Inicialmente na Tabela 5.2 e Figura 5.18, tem-se as respostas
para simulao com variao de R (horizonte de predio) e com e fixos.
TABELA 5.2
C6 final
Beta ( ) Gamma ( )
2,0513
0,1454
0,850
5,0
50,0
10,0
2,0513
0,1454
0,850
10,0
50,0
10,0
2,0513
0,1454
0,850
15,0
50,0
10,0
2,0513
0,1454
0,850
20,0
50,0
10,0
2,0513
0,1454
0,850
25,0
50,0
10,0
2,0513
0,1454
0,850
30,0
50,0
10,0
2,0513
0,1454
0,850
35,0
50,0
10,0
2,0513
0,1454
0,850
40,0
50,0
10,0
(5.8)
104
2,2
55
2,0
50
1,8
45
40
1,4
35
1,2
30
1,0
25
BETA, GAMMA
1,6
0,8
20
0,6
15
0,4
10
0,2
0,0
5
5
10
15
20
25
30
35
40
ISE (C 6)
ISU (W 0)
C 6 f inal
BETA
GAMMA
FIGURA 5.18
105
TABELA 5.3
C6 final
Beta ( )
Gamma ( )
2,0513
0,1454
0,850
30
0,01
10
2,0513
0,1454
0,850
30
0,1
10
2,0513
0,1454
0,850
30
1,0
10
2,0513
0,1454
0,850
30
5,0
10
2,0513
0,1454
0,850
30
10
10
2,0513
0,1454
0,850
30
20
10
2,0513
0,1454
0,850
30
30
10
2,0513
0,1454
0,850
30
40
10
2,0513
0,1454
0,850
30
50
10
10
2,0513
0,1454
0,850
30
100
10
11
2,0513
0,1454
0,850
30
200
10
12
2,0513
0,1454
0,850
30
300
10
13
2,0513
0,1454
0,850
30
400
10
14
2,0513
0,1454
0,850
30
500
10
15
2,0513
0,1454
0,850
30
1000
10
16
2,0513
0,1454
0,850
30
5000
10
17
2,0513
0,1454
0,850
30
10000
10
2,2
32
2,0
30
1,8
28
26
1,6
24
1,4
22
1,2
20
1,0
18
0,8
16
0,6
14
0,4
12
0,2
10
0,0
-2000
2000
4000
6000
8000
10000
8
12000
106
ISE (C 6)
ISU (W 0)
C 6 f inal
R
GAMMA
FIGURA 5.19
107
TABELA 5.4
ISU (W0)
C6 final
Beta ( )
Gamma ( )
0,9573
0,4657
0,850
30
100
1,2485
0,2352
0,850
30
100
1,4024
0,2074
0,850
30
100
1,5603
0,1868
0,850
30
100
1,7215
0,1705
0,850
30
100
1,8853
0,1569
0,850
30
100
2,0513
0,1454
0,850
30
100
10
2,9035
0,1066
0,850
30
100
15
3,7773
0,0841
0,850
30
100
20
10
4,6623
0,0693
0,850
30
100
25
11
5,5540
0,0590
0,850
30
100
30
12
6,4498
0,0513
0,850
30
100
35
13
7,3485
0,0454
0,850
30
100
40
14
8,2492
0,0407
0,850
30
100
45
15
9,1514
0,0369
0,850
30
100
50
16
10,0546
0,0337
0,850
30
100
55
17
10,9587
0,0310
0,850
30
100
60
18
12,7688
0,0268
0,850
30
100
70
19
14,5807
0,0236
0,8501
30
100
80
20
16,3937
0,0210
0,8501
30
100
90
21
18,2075
0,0190
0,8503
30
100
100
22
36,2507
0,0096
0,8545
30
100
200
23
53,3573
0,0063
0,8616
30
100
300
24
68,6256
0,0046
0,8687
30
100
400
25
81,8341
0,0035
0,8749
30
100
500
26
124,7679
0,0013
0,8943
30
100
1000
27
201,1461
2,16E-05
0,9253
30
100
10000
108
220
1,0
200
180
0,8
160
140
ISE
120
100
0,4
80
60
0,2
0,6
40
20
0,0
0
-20
-2000
2000
4000
6000
8000
10000
-0,2
12000
ISE (C 6)
ISU (W 0)
C 6 f inal
R = 30
BETA = 100
FIGURA 5.20
109
0,156
0,154
0,152
0,95
0,150
0,148
0,90
0,146
0,144
0,85
0,142
0,140
0,80
0
1,00
0,138
10
"Set-Point" C 6
C 6 gamma = 3
C 6 gamma = 5
C 6 gamma = 10
C 6 gamma = 30
C 6 gamma = 50
C 6 gamma = 100
C 6 gamma = 500
C 6 gamma = 1000
C 6 gamma = 10000
Degrau +10% C 0
Tempo [h]
FIGURA 5.21
43
42
41
40
39
38
0
10
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
=
=
=
=
=
=
=
=
=
3
5
10
30
50
100
500
1000
10000
Tempo [h]
FIGURA 5.22
110
Na Figura 5.23 apresentado o detalhamento dos parmetros de sintonia
que obtiveram um melhor resultado de desempenho.
1,00
0,95
0,90
0,85
0,0
0,5
1,0
1,5
2,0
2,5
3,0
3,5
4,0
"Set-Point" C6
C6 gamma = 3
C6 gamma = 5
C6 gamma = 6
C6 gamma = 7
C6 gamma = 8
C6 gamma = 9
C6 gamma = 10
C6 gamma = 20
C6 gamma = 30
C6 gamma = 40
C6 gamma = 50
Tempo [h]
FIGURA 5.23
111
TABELA 5.5
ISU (W0)
C6 final
Beta ( ) Gamma ( )
4,214
3,37E+00
0,8536
30
100
4,661
1,38E+00
0,8558
30
100
5,271
4,47E-01
0,8588
30
100
10
5,839
1,38E-01
0,8605
30
100
20
6,209
6,79E-02
0,8604
30
100
30
6,534
4,11E-02
0,8600
30
100
40
6,839
2,79E-02
0,8596
30
100
50
7,131
2,04E-02
0,8593
30
100
60
7,414
1,57E-02
0,8591
30
100
70
10
7,691
1,25E-02
0,8589
30
100
80
11
7,963
1,03E-02
0,8588
30
100
90
12
8,231
8,65E-03
0,8587
30
100
100
13
10,843
2,88E-03
0,8594
30
100
200
14
13,346
1,58E-03
0,8615
30
100
300
15
15,646
1,05E-03
0,8639
30
100
400
16
17,689
7,58E-04
0,8661
30
100
500
17
24,633
2,64E-04
0,8735
30
100
1000
18
37,749
4,06E-06
0,8860
30
100
10000
112
40
4,0
35
3,5
2,5
ISE (C 6)
25
2,0
20
1,5
15
1,0
10
3,0
30
0,5
0,0
0
-2000
2000
4000
6000
8000
10000
-0,5
12000
ISE (C 6)
ISU (W 0)
C 6 f inal
R = 30
BETA = 100
FIGURA 5.24
113
0,180
0,175
0,170
0,95
0,165
0,160
0,90
0,155
0,150
0,85
0,145
0,140
0,80
0
1,00
0,135
10
"Set-Point"
C 6 gamma
C 6 gamma
C 6 gamma
C 6 gamma
C 6 gamma
C 6 gamma
C 6 gamma
C 6 gamma
C 6 gamma
PRBS C 0
C6
= 10
=30
=50
= 80
= 100
= 300
= 500
= 1000
= 10000
Tempo [h]
FIGURA 5.25
42,8
42,6
42,4
42,2
42,0
41,8
41,6
41,4
41,2
41,0
40,8
40,6
40,4
40,2
40,0
0
10
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
W 0 gamma
=
=
=
=
=
=
=
=
=
10
30
50
80
100
300
500
1000
10000
Tempo [h]
FIGURA 5.26
114
Um comportamento observado do controlador DMC frente a uma excitao
por PRBS a tendncia em transferir o seu efeito peridico para a varivel
controlada (C6), suavizando a ao sobre a varivel manipulada (W0), isso se deve
possivelmente ao fato do controlador agir como um amortecedor de flutuaes do
processo. Esse tipo de comportamento deve ser analisado mais criteriosamente em
trabalhos futuros, pois exige um estudo do lao de controle e da dinmica do
processo, o que pode levar a um grande esforo computacional.
Com base nas simulaes pode-se constatar que a melhor sintonia para o
controlador DMC situa-se na faixa de 5 a 100 para o parmetro . Onde, tm-se os
melhores ndices de desempenho para uma faixa de entre 5 e 10 para
perturbao degrau positivo em C0 e uma faixa de entre 50 e 100 para
perturbao PRBS em C0, como pode ser observado na Figura 5.22, Figura 5.23,
Figura 5.25 e Figura 5.26.
Na Figura 5.27, tem-se ento a resposta tempo para as melhores
simulaes com base em valores timos de gamma ( ), escolhidos atravs da
anlise dos ndices de desempenho ISE e ISU definidos pelas equaes (5.2) e
(5.3) respectivamente. Como j comentado, atravs da visualizao da Figura 5.27,
observa-se que a ao do controlador DMC mais intensa sobre a varivel
controlada, com uma perturbao degrau positiva, comparada a uma perturbao
PRBS, o que era esperado.
115
43
(A)
42
0,95
41
40
0,90
39
38
0,85
37
36
1,00
35
0
"Set-Point" C 6
C 6 gamma = 5
C 6 gamma = 6
C 6 gamma = 7
C 6 gamma = 8
C 6 gamma = 9
C 6 gamma = 10
W 0 gamma = 5
W 0 gamma = 6
W 0 gamma = 7
W 0 gamma = 8
W 0 gamma = 9
W 0 gamma = 10
Tempo [h]
43
(B)
42
0,95
41
40
39
38
37
0,85
36
1,00
35
0
"Set-Point" C 6
C 6 gamma = 50
C 6 gamma = 60
C 6 gamma = 70
C 6 gamma = 80
C 6 gamma = 90
C 6 gamma = 100
W 0 gamma = 50
W 0 gamma = 60
W 0 gamma = 70
W 0 gamma = 80
W 0 gamma = 90
W 0 gamma = 100
Tempo [h]
FIGURA 5.27
116
para resposta a uma perturbao tipo PRBS na concentrao do licor de
alimentao da planta de evaporao (C0). A fim de comparar os ndices de
desempenho ISE e ISU do controlador DMC com os controladores convencionais P
e PI sintonizados pelo mtodo de Ziegler e Nichols. A varivel escolhida para as
perturbaes a que melhor representa desvios que podem afetar o processo em
uma planta industrial.
A Figura 5.28 mostra o comportamento da resposta simulada da varivel
controlada com uma perturbao em degrau de +10% na concentrao de
alimentao do primeiro estgio de evaporao (C0). Observa-se nesta figura, que o
controlador PI possui uma oscilao maior, porm atinge o set-point mais
rapidamente que os controladores P e DMC. O controlador DMC possui uma
resposta com maior sobre-elevao (overshoot) no instante transiente da
simulao comparado aos controladores P e PI, no entanto ainda no se pode
avaliar o controlador PI como o melhor para controle do processo, pois o
comportamento que este controlador impe varivel manipulada um ponto
importante a ser analisado.
0,26
"Set-Point " C 6
C 6 controle P
C 6 controle PI
C 6 controle DMC
Degrau +10% C 0
0,95
0,24
0,22
0,90
0,20
0,85
0,18
0,16
0,80
0,14
1,00
0,75
0
Tempo [h]
FIGURA 5.28
117
A Figura 5.29 apresenta a comparao entre os comportamentos da
varivel manipulada para os controladores P, PI e DMC.
44
42
40
38
36
34
W 0 controle P
W 0 controle PI
W 0 controle DMC
32
0
Tempo [h]
FIGURA 5.29
118
implementadas na varivel controlada pelo controlador PI restringem bruscamente a
vazo de vapor, o que pode dificultar a ao do elemento final de controle,
chegando at a atingir o limite fsico da vlvula de vapor, fechando-a
completamente ou interferindo no seu funcionamento. Impedindo a conservao da
ao do controlador PI ou proporcionando uma resposta instvel de controle (efeito
de instabilidade do lao de controle).
A fim de comprovar os efeitos acima discutidos, a Figura 5.30 e Figura 5.31
mostram a resposta simulada para a varivel controlada e manipulada com
aplicao de uma perturbao tipo rudo pseudo-aleatria (PRBS) com t = 300
segundos na concentrao do licor negro diludo de alimentao (C0).
0,20
"Set-Point" C 6
C 6 controle P
C 6 controle PI
C 6 controle DMC
PRBS 300s C 0
0,95
0,19
0,18
0,90
0,17
0,16
0,85
0,15
0,80
0,14
0,75
1,00
0,13
0
Tempo [h]
FIGURA 5.30
119
44
42
40
38
36
34
W0 controle P
W0 controle PI
W0 controle DMC
32
0
Tempo [h]
FIGURA 5.31
120
2,4
(A)
ISE controle PI
ISE controle DMC
ISE controle P
2,2
2,0
140
120
100
1,6
1,4
80
1,2
60
1,0
0,8
40
ISE (C 6) controlador P
1,8
0,6
20
0,4
0,2
0
0,0
-0,2
0
-20
10
Tempo [h]
350
0,24
(B)
0,22
300
0,20
250
0,16
200
0,14
0,12
150
0,10
0,08
100
0,06
0,04
ISU (W 0) controlador P e PI
0,18
50
0,02
0
0,00
-0,02
0
-50
10
Tempo [h]
FIGURA 5.32
121
20
8
ISE controle PI
ISE controle DMC
ISE controle P
(A)
18
16
14
5
12
4
10
8
6
ISE (C 6) controlador P
4
1
2
0
-1
0
-2
10
Tempo [h]
0,014
60
ISU controle DMC
ISU controle P
ISU controle PI
0,012
(B)
50
0,010
0,008
30
0,006
20
0,004
10
ISU (W 0) controlador P, PI
40
0,002
0
0,000
-0,002
0
-10
10
Tempo [h]
FIGURA 5.33
122
TABELA 5.6
Tipo de
Perturbao
Degrau C0
PRBS C0
Controlador
ISE (C6)
ISU (W0)
ISE (C6)
ISU (W0)
93,957
29,950
18,136
5,781
PI
0,043
277,425
1,508
56,189
DMC
1,722
0,171
7,691
0,013
123
6.
CONCLUSES
124
do controlador DMC, o efeito da variao dos parmetros (fator de supresso de
movimento) e R (horizonte de predio) no tiveram influncia nas aes de
controle. Somente o coeficiente peso que interfere nas aes do controlador
DMC, portanto buscou-se uma melhor sintonia para este parmetro. Para o
coeficiente peso notou-se que um aumento do seu valor leva varivel
manipulada a atuar mais suavemente reduzindo o ndice ISU, no entanto o efeito
sobre a varivel controlada acaba sendo ruim deixando a resposta cada vez mais
lenta, aumentando o ndice ISE. Atravs do balanceamento desses fatores
encontrou-se a melhor sintonia para o controlador DMC, com = 100 , R = 30 e = 8
para respostas com perturbao degrau e com = 100 , R = 30 e = 80 para
respostas com perturbao PRBS. Outra concluso importante referente adoo
do controlador DMC, que este possui alta estabilidade, pois no necessrio um
conhecimento profundo do processo a ser controlador para realizar a sua sintonia
adequadamente, sendo esta uma caracterstica comum dos controladores
convencionais. O controlador DMC absorve a dinmica do processo sem a
necessidade de uma re-sintonia de seus parmetros, variaes nos parmetros so
admitidos sem grande impacto nas aes de controle, o que ocorreu somente com
valores muito elevados para os parmetros de sintonia.
Comparando o desempenho dos controladores P, PI e DMC para controle
da concentrao pode-se concluir que o controlador DMC o mais indicado para a
estratgia de controle proposta neste trabalho. Mesmo o controlador P e PI tendo
uma resposta mais rpida, o controlador DMC aplica aes de controle mais suaves
impedindo que o limite fsico do elemento final de controle (vlvula de vapor) seja
ultrapassado ou completamente saturado, o que extremamente interessante no
controle da evaporao de licor negro, estabilizando a vazo de vapor necessria
para a concentrao do licor. Conclui-se tambm, que a sintonia do controlador
DMC mais simples que os controladores convencionais, atravs de um simulador
pode-se encontrar a melhor sintonia estudando seus parmetros separadamente.
125
7.
126
REFERNCIAS BIBLIOGRFICAS
127
GUERRA, Fbio Alessandro. Anlise de Mtodos de Agrupamento para o
Treinamento de Redes Neurais de Base Radial Aplicadas Identificao de
Sistemas. 2006. 122 p. Dissertao (Mestrado) - PUC-PR, Pontifcia Universidade
Catlica do Paran, Curitiba, PR.
GULLICHSEN, Johan; FOGELHOLM, Carl-Johan. Papermarking Science and
Technology Book 6: Chemical Pulping. Fapet Oy, Helsinki, Finland. 2000.
JESUS, Charles Dayan Farias. Validao da Simulao Dinmica das Etapas de
Evaporao e Cristalizao da Produo de Acar com Dados Obtidos em
Plantas Industriais. 2004. 155 p. Tese (Doutorado) - UFSCAR, Universidade
Federal de So Carlos. Centro de Cincias Exatas e Tecnologia. So Carlos SP.
KERN, Donald Q. Procesos de Transferencia de Calor. McGraw Hill Book
Company, Inc. Compaa Editirial Continental S.A. Trigsima Primeira Reimpresin.
Mexico. 1999.
KWONG, Wu Hong. Introduo ao Controle de Processos Qumicos com
MATLAB. Volume I e II. Editora da UFSCar, 215 p. So Carlos, SP. 2002.
MARTINELLI, Srgio H. S. Modelagem, Simulao e Controle de Processos no
Sistema de Evaporao da Klabin Paran Papis. 2000. 80 p. Dissertao
(Mestrado) UEM, Universidade Estadual de Maring. Maring, PR.
MIELI, Joo Carlos de Almeida. Sistemas de Avaliao Ambiental na Indstria
de Celulose e Papel. 2007. 90 p. Tese (Doutorado) Universidade Federal de
Visosa. Visosa, MG.
NEITZEL, Ivo. Um Controlador DMC Autosintonizante. 1995. 72 p. Tese
(Doutorado) Universidade Federal do Rio de Janeiro. COPPE/UFRJ. Rio de
Janeiro, RJ.
OLIVEIRA, Adalberto Luiz de Lima. Instrumentao: Fundamentos de Controle
de Processos. Apostila de Instrumentao. SENAI/CST/CTIIAF. Vitria, ES. 1999.
PAL, Fernando. Controle Preditivo de Colunas de Absoro com o Mtodo de
Controle Por Matriz Dinmica. 2001. 143 p. Tese (Doutorado) - UNICAMP,
Universidade Estadual de Campinas Faculdade de Engenharia Qumica.
Campinas, SP.
PHILIPP, Paul; DALMEIDA, Maria L. O. Celulose e Papel: Tecnologia de
Fabricao da Pasta Celulsica. 2 ed. Vol I. So Paulo. Ed. SENAI/IPT, 559 p.
1988.
PERRY, Robert H.; GREEN, Don W. Perrys Chemical Engineers Handbook. 7
Edition. McGraw-Hill Handbooks Companies. 1999.
PIMENTA, Pedro Correia Cravo. Estudos de Simulao Assistidos por
Computador: Desenvolvimento e Testes de Estratgias Integradas a
Evaporadores de Duplo Efeito. 1996. 217 p. Tese (Doutorado) - Faculdade de
Engenharia da Universidade do Porto. Portugal.
128
POLOWSKI, Natascha Vigdis. Modelagem e Anlise de Digestores Kraft
Descontnuos. 2004. 126 p. Tese (Mestrado) - UNICAMP, Universidade Estadual
de Campinas Faculdade de Engenharia Qumica. Campinas, SP.
RANGAIAH, G. P.; SAHA, P.; TAD, M.O., Nonlinear Model Predictive Control of
an Industrial Four-Stage Evaporator System Via Simulation. Chemical
Engineering Journal. 2001.
SENAI - CETCEP. Tecnologia de Matrias Primas: Evaporao. Apostila do
Curso Tcnico em Celulose e Papel. 2 Mdulo. Telmaco Borba, PR. 2002.
SOUZA, Cludio Arcanjo. Produo de Celulose do Ponto de Vista de Seus
Processos Qumicos e Ambientais. I Semana de Engenharia Ambiental
UFMS/VCP/MS. Apresentao em PowerPoint: 51 slides. Disponvel em:
<http://www.e-ambiental.com/_files/534462d5a822122007181848.pdf>. Acessado
em: 08 jun. 2009.
LIESLEHTO, Jukka. Collection of Java Applets for PID Controller Tuning. TUT.
Tampere University of Technology. Department of Automation Science and
Engineering.
Tampere,
Finlndia
Disponvel
em:
<http://ae.tut.fi/~juke/java/pidtuning/index.html>. Acessado em: 10 set. 2009.
WESTPHALEN, Denis Libert. Modelagem, Simulao e Otimizao de Sistemas
de Evaporao. 1999. 221 p. Tese (Doutorado) - UNICAMP, Universidade Estadual
de Campinas Faculdade de Engenharia Qumica. Campinas, SP.
WILSON, A; PARDA, C; VEGA, P. Simulated Predictive of an Industrial Process.
Chemical Engineering Departament. Bradford University. UK. 1990.
ZAMAN, A. A., MCNALLY, T. W., FRICKE, A. L. Vapor Pressure and Boiling Point
Elevation of Slash Pine Black Liquors: Predictive Models with Statistical
Approach. Industrial Engineering Chemical Research, v.37, n. 1. 1998. pp. 275283.
129
ANEXOS
130
ANEXO A: MATRIZ DINMICA CALCULADA PARA O CONTROLADOR DMC
131
!====================================================================
!PROGRAMA 'SimulEvap' - SIMULAO E CONTROLE EVAPORAO DE LICOR NEGRO
!AUTORES: ALEXANDRE MARQUES E PROF. IVO NEITZEL
!VERSO 15 setembro de 2009
program SimulTrans_0A
INCLUDE 'link_fnl_shared.h'
use operacao
USE IVPRK_INT
USE UMACH_INT
external modeloTrans
real*8
::PARAM(50),TOL,Time,Hora_inic, Hora_fim
real*8
::X(12),ER8
real*8, allocatable
::simul(:,:),simulPF(:,:),simulCon(:,:),simulPARAM(:,:)
integer ::IDO,Nvar,k,Np
logical ::continuar,parar_PF
Dhora_ref = 1.0D-01
Nvar
= 12
6 niveis e 6 concentracoes
ER8
= epsilon(dble(1.0))
parar_PF
= .false.
call valorInicial(x)
call atualiza_PropFis(x,int(-1),parar_PF)
call usuario() !deve calcular Dtime em funo do num max de pontos a
armazenar
allocate (A(R,R))
if (.not.ALLOCATED(A)) then
print *, '[Principal] falha na alocacao dinamica de memoria [A] => programa
abortado <'
stop
end if
allocate (MK(R,R))
if (.not.ALLOCATED(MK)) then
132
print *, '[Principal] falha na alocacao dinamica de memoria [MK] =>
programa abortado <'
stop
end if
allocate (AT(R,R))
if (.not.ALLOCATED(AT)) then
print *, '[Principal] falha na alocacao dinamica de memoria [AT] =>
programa abortado <'
stop
end if
allocate (ATAGBI(R,R))
if (.not.ALLOCATED(ATAGBI)) then
print *, '[Principal] falha na alocacao dinamica de memoria [ATAGBI] =>
programa abortado <'
stop
end if
allocate (ATA(R,R))
if (.not.ALLOCATED(ATA)) then
print *, '[Principal] falha na alocacao dinamica de memoria [ATA] =>
programa abortado <'
stop
end if
allocate (ATAG(R,R))
if (.not.ALLOCATED(ATAG)) then
print *, '[Principal] falha na alocacao dinamica de memoria [ATAG] =>
programa abortado <'
stop
end if
allocate (ATAGB(R,R))
if (.not.ALLOCATED(ATAGB)) then
print *, '[Principal] falha na alocacao dinamica de memoria [ATAGB] =>
programa abortado <'
stop
end if
allocate (deltaUU(R))
if (.not.ALLOCATED(deltaUU)) then
print *, '[Principal] falha na alocacao dinamica de memoria [deltaUU] =>
programa abortado <'
stop
end if
allocate (Yol(R))
133
if (.not.ALLOCATED(Yol)) then
print *, '[Principal] falha na alocacao dinamica de memoria [Yol] =>
programa abortado <'
stop
end if
allocate (Eol(R))
if (.not.ALLOCATED(Eol)) then
print *, '[Principal] falha na alocacao dinamica de memoria [Eol] =>
programa abortado <'
stop
end if
IF (controle_DMC .EQ. 1)THEN
call MatrizDinamica (Np)
call matrizK ()
END IF
allocate (Simul(0:NumPontos+2,42))
if (.not.ALLOCATED(SIMUL)) then
print *, '[Principal] falha na alocacao dinamica de memoria [SIMUL] =>
programa abortado <'
stop
end if
allocate (SimulCon(0:NumPontos+2,18))
if (.not.ALLOCATED(SIMULCon)) then
print *, '[Principal] falha na alocacao dinamica de memoria [SIMULCon] =>
programa abortado <'
stop
end if
allocate (SimulPF(0:NumPontos+2,43))
if (.not.ALLOCATED(SIMULPF)) then
print *, '[Principal] falha na alocacao dinamica de memoria [SIMULPF] =>
programa abortado <'
stop
end if
allocate (SimulPARAM(0:NumPontos+2,23))
if (.not.ALLOCATED(SIMULPARAM)) then
print *, '[Principal] falha na alocacao dinamica de memoria [SIMULPARAM] =>
programa abortado <'
stop
end if
PARAM
= 0.0D00
PARAM(4)
= 5000.00
134
PARAM(10) = 1.0D-01 ! a preciso eh abosluta, max(erro)
Tol
= 0.0005
= 1.0
= 0
continuar = .true.
time
= 0.0D00
call atualiza_PropFis(X,k,parar_PF)
call converte100()
call armazena(time,k,Simul,SimulCon,SimulPF,SimulParam,continuar)
! contador de armazenamento
if (k.GT.(NumPontos+2)) exit
if (k.eq.nint((real(numpontos)/4.))) print *,' calculo == 25% Time = ',Time
if (k.eq.nint((real(numpontos)/2.))) print *,' calculo == 50% Time = ',Time
if (k.eq.nint((3.0*real(numpontos)/4.))) print *,' calculo == 75% Time =
',Time
pert_start = DTIME*pert_start_ponto
TIME_END
= TIME + DTIME
Hora_inic = Time
Dhora
= Dhora_ref
! segundos
call perturba(Hora_inic)
call controlPI(Hora_inic)
call atualiza_PropFis(X,k,parar_PF)
if (parar_PF) exit
! 1/10 segundo sem atualizar as prop fisicas ou controlador -> Dhora = 0.1
CALL IVPRK (IDO, modeloTrans, Hora_inic, Hora_fim, X, TOL=TOL, PARAM=PARAM)
Hora_inic = Hora_fim
if ( (Hora_fim + Dhora) .GT. Time_end ) Dhora = Time_end - Hora_fim
end do LH001
IDO = 3
135
CALL IVPRK (IDO, modeloTrans, Hora_inic, Hora_fim, X, TOL=TOL, PARAM=PARAM)
! no integra, apenas libera memoria
IDO
= 1
Time = Time_end
call atualiza_PropFis(X,int(-k),parar_PF)
call converte100()
call armazena(time,k,Simul,SimulCon,SimulPF,SimulPARAM,continuar)
call indexEvap ()
open(30,file='Indices_CAP_EV_CV.txt',status='unknown')
write(30,*) Capa,EcoVapor,ConsVapor
end do laco_integ
call relatorio(k,Simul,SimulCon,SimulPF,SimulPARAM)
call resumo(k,Simul,SimulCon,SimulPF,SimulPARAM)
deallocate
(Simul,SimulPF,SimulCon,SimulPARAM,A,MK,AT,ATAGBI,ATA,ATAGB,ATAG,deltaUU,Yo
l,Eol)
stop
end program SimulTrans_0A
!====================================================================
!MODULO PARA DECLARAO DAS VARIVEIS
MODULE OPERACAO
136
real*8, dimension(6) ::
KcH100ref,KiH100ref,KdH100ref,mH100,ISEH,SPH100,SPH,H100
real*8, dimension(6) :: KcH100,KiH100,KdH100,mH
real*8 :: KcC6100ref,KiC6100ref,KdC6100ref,mC6100,ISEC6,ISEW0,mC6
real*8 :: KcC6100,KiC6100,KdC6100,DW,DC,UltimaVez,Tprbs
REAL*8 :: Tf,Cf,UA,Tfeed,SPC6,SPC6100
REAL*8 :: ATROCA(6),AreaTQ(6),Capa,EcoVapor,ConsVapor
REAL*8 :: beta,gamma,Hpulso(42)
REAL*8, allocatable ::
A(:,:),MK(:,:),AT(:,:),ATAGBI(:,:),ATA(:,:),ATAGB(:,:),ATAG(:,:),deltaUU(:)
,Yol(:),Eol(:)
REAL*8 ::
Tfinal,TFhora,DTIME,Dhora_ref,Dhora,epsa,pert_start,pert_start_ponto
real*8
:: W00(0:2000),C66(0:2000)
integer :: NumPontos,ifreq,controle_DMC
Logical :: controla_nivel, controla_Conc,perturbacao
integer
:: tipo_perturbacao,R
:: true
! controla_Conc
:: true
! perturbacao
:: true
Tfeed = Tf
!====================================================================
!ROTINA PARA DEFINIO DOS PARMETROS INICIAIS PARA SIMULAO
!INTERFACE COM USURIO
subroutine usuario()
use operacao
integer :: NP,idummyH,idummyC
real*8
:: dummyH,dummyC
perturbacao
= .true.
controla_nivel = .true.
controla_Conc
= .true.
print*,''
print*,''
print *, '> Qual o tempo final [R4] (horas)? '
137
print *, '
1 hora
->
3600 segundos'
print *, '
6 horas
print *, '
read(*,*) TFhora
TFinal = (TFhora*3600) !converte o tempo final de horas para segundos
print*,''
print *, '> Numero maximo de pontos armazenaveis = ',NumPontosMax
print *, '> Quantos pontos deseja armazenar [I4] ? '
read(*,*)
NumPontos
print*,''
if (perturbacao) then
print*,''
print *, '> Qual eh a perturbacao desejada ?'
print *, '
(0)
print *, '
(1)
print *, '
(2)
print *, '
(3)
print *, '
(4)
print *, '
(5)
print *, '
(6)
print *, '
(7)
print *, '
(8)
print *, '
(9)
print *, '
print *, '
print *, '
print *, '
print *, '
em [W0]'
print *, '
em [C0]'
read(*,*) tipo_perturbacao
print*,''
if (tipo_perturbacao.LE.0)
tipo_perturbacao = 0.0
138
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 2) then
print*,''
print *, '> PERTURBACAO aplicada em F0'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 3) then
print*,''
print *, '> PERTURBACAO aplicada em C0'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 4) then
print*,''
print *, '> PERTURBACAO aplicada em F1'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 5) then
print*,''
print *, '> PERTURBACAO aplicada em C1'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 6) then
print*,''
print *, '> PERTURBACAO aplicada em F2'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 7) then
print*,''
print *, '> PERTURBACAO aplicada em C2'
139
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 8) then
print*,''
print *, '> PERTURBACAO aplicada em F3'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 9) then
print*,''
print *, '> PERTURBACAO aplicada em C3'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 10) then
print*,''
print *, '> PERTURBACAO aplicada em F4'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 11) then
print*,''
print *, '> PERTURBACAO aplicada em C4'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 12) then
print*,''
print *, '> PERTURBACAO aplicada em F5'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 13) then
print*,''
140
print *, '> PERTURBACAO aplicada em C5'
print*, ''
print *, '> Qual eh o ponto para inicio da perturbacao ?'
read(*,*) pert_start_ponto
print*, ''
else if (tipo_perturbacao .EQ. 14) then
print *, '> PRBS aplicado em W0'
Print *, '
read(*,*) Tprbs
print*, ''
else if (tipo_perturbacao .EQ. 15) then
print *, '> PRBS aplicado em C0'
Print *, '
read(*,*) Tprbs
print*, ''
end if
end if
controla_nivel = .false.
print *,'> Ativar controle de nivel ?'
print *,'
print *,'
read(*,*) idummyH
print*, ''
if (idummyH.eq.1) controla_nivel = .true.
controla_conc = .false.
print *,'> Ativar controle de concentracao no ultimo estgio ?'
print *,'
print *,'
read(*,*) idummyC
print*, ''
if (idummyC.eq.1) controla_conc = .true.
if (idummyC .eq. 1) then
print *,'> Deseja ativar o controlador DMC para C6 ?'
print *,'
print *,'
read(*,*) controle_DMC
print*, ''
end if
if (Numpontos.GE.NumpontosMax) then
Numpontos = NumPontosMax - 2
print *, '> Numero de pontos reduzido para = ',Numpontos
141
print*,''
end if
IF (controle_DMC .EQ. 1)THEN
! para DMC ==================================
Dtime = 37.1518D+00
!Ts 1
= 0.0D00
KiH100
= 0.0D00
KcC6100ref = 0.0D00
KiC6100ref = 0.0D00
KcC6100
= 0.0D00
KiC6100
= 0.0D00
return
end if
if (idummyH .eq. 1) then
print *,'> Sintonia do controlador de nivel PI pelo metodo IMC'
dummyH = 66.44518272425249 !controle PI
!dummyH = 33.222591362126245 !controle P
print*, ''
KcH100ref = dummyH
142
dummyH =(1.0/2.0)
KiH100ref = dummyH
end if
if (controle_DMC.eq.1) then
print *,'> Qual o FATOR DE SUPRESSAO DE MOVIMENTO desejado [BETA] ?'
read(*,*) beta
! >= 0.0
print*, ''
print *,'> Qual o FATOR DE PESO ISE desejado [GAMMA] ?'
read(*,*) GAMMA
! >= 0.0
print*, ''
print *,'> Qual o HORIZONTE DE PREDICAO desejado [R] ?'
read(*,*) R
print*, ''
end if
if (idummyC .eq. 1) then
if (controle_DMC .eq. 0) then
print *,'> Qual o metodo de sintonia do controlador PI para C6 ?'
print *,'
print *,'
print *,'
print *,'
print *,'
print *,'
print *,'
print *,'
read(*,*) metodo_sintonia
if (metodo_sintonia .LE. 1) metodo_sintonia = 1.0
if (metodo_sintonia .GE. 8) metodo_sintonia = 8.0
if (metodo_sintonia .eq. 1) then
dummyC = 0.013330399374030251
KcC6100ref = dummyC
dummyC = (1/31.506933004440004)
KiC6100ref = dummyC
else if (metodo_sintonia .eq. 2) then
dummyC = 0.02285211321262329
KcC6100ref = dummyC
dummyC = (1/26.2557775037)
KiC6100ref = dummyC
else if (metodo_sintonia .eq. 3) then
dummyC = 13.808761231805487
KcC6100ref = dummyC
143
dummyC = (1/3.055409951490694)
KiC6100ref = dummyC
else if (metodo_sintonia .eq. 4) then
dummyC = 9.88243250826724
KcC6100ref = dummyC
dummyC = (1/26.2557775037)
KiC6100ref = dummyC
else if (metodo_sintonia .eq. 5) then
dummyC = 14.82364876240086
KcC6100ref = dummyC
dummyC = (1/26.2557775037)
KiC6100ref = dummyC
else if (metodo_sintonia .eq. 6) then
dummyC = 3.912859772582152
KcC6100ref = dummyC
dummyC = (1/19.76730185969257)
KiC6100ref = dummyC
else if (metodo_sintonia .eq. 7) then
dummyC = 10.024263266245445
KcC6100ref = dummyC
dummyC = (1/19.76730185969257)
KiC6100ref = dummyC
else if (metodo_sintonia .eq. 8) then
dummyC = 0.5081275496138212 !sintonia PI
!dummyC = 0.5645861662375792 !sintonia P
KcC6100ref = dummyC
dummyC = (1/26.2557775037) !0.0 controle P
KiC6100ref = dummyC
end if
end if
end if
return
end
!====================================================================
!FUNES PARA CALCULO DAS PROPRIEDADES FSICAS E TERMODINMICAS DO
!LICOR NEGRO E VAPOR DE AQUECIMENTO
! =================================
! FUNO PARA CALCULO DA TEMPERATURA DE SATURAO
real*8 function Tsat(P)
144
! description 'P = bar, T = K';
real*8,parameter ::
a0=372.60383010627,a1=27.8194465102346,a2=2.50289032455847,a3=0.24279424689
0118,a4=0.0135656913605806
real*8,parameter::A=40.06169800,B=-6426.140857,C=-3.854678527,TolP=1.0D-12
real*8 ::lnP,P,P1,T1,Psat,P0,T0
real*8,intrinsic ::dlog10
integer :: kpress
P0=P
P1 = 30
lnP = dLOG(P0)
T0 = a0 + a1*(lnP) + a2*(lnP**2) + a3*(lnP**3) + a4*(lnP**4)
kpress = 0
do while ((dabs(P1-P0) .GT. TolP) .AND. (kpress.LT.10000))
h = -(P0 - dexp(A + B / T0 + C * dlog(T0))) / (-B / T0 ** 2 + C / T0) /
dexp(A + B / T0 + C * dlog(T0))
T1 = T0 - h
P1 = Psat(T1)
T0 = T1
kpress = kpress + 1
end do
if (kpress.GE.10000) print *, '[PropFis][Tsat][erro 100] nao converge [sem
rastreamento de posicao]'
Tsat = T1
return
end
! =================================
! FUNO PARA CALCULO DA PRESSO DE SATURAO
real*8 function Psat(T)
! description 'P = bar, T = K';
real*8 :: A,B,C,T,C1,ABC
Real*8, intrinsic ::dlog,dexp
A=40.06169800
B=-6426.140857
C=-3.854678527
C1 = c*dlog(T)
ABC=A+(B/T)+C1
Psat = dexp(abc)
return
end
145
! =================================
! FUNO PARA CALCULO DO CALOR LATENTE DE VAPORIZAO
real*8 function lambda(T)
! description 'T = K, lambda = J/kg'
real*8 ::T,e1,e2,e3,e4,Tc,PM,Tr
e1 = 52053000.
e2 = 0.3199
e3 = -0.212
e4 = 0.25795
Tc = 647.13
PM = 18.015
Tr = T/Tc
lambda = (e1/PM)*((1-(Tr))**(e2+e3*(Tr)+e4*((Tr)**2)))
return
end
! =================================
! FUNO PARA CALCULO DA ELEVAO DO PONTO DE EBULIO
real*8 function BPR(c,P)
! description
real*8 :: c,P,Tbolha
real*8, parameter
real*8, parameter
373.16
real*8, external
::Tsat
Tbolha = Tsat(P)
if (Tbolha.LE.0.0) then
print *, " erro Tsat negativo "
return
end if
BPR = (b1*c+b2*(c**(1.5))+b3*c**dois)*(um+(b4/100.)*(Tbolha-b5))
return
end
! =================================
! FUNO PARA CALCULO DA CAPACIDADE CALORFICA DO LICOR
real*8 function Cpp(c,T)
! description 'T = K, Cp = J / kg C c = kg/kg';
real*8 c,T,d1,d2,d3,d4,d5,d6
d1=4.105999677
146
d2=-1.210295433
d3=49.97195244
d4=33.54195928
d5=503.1421379
d6=4.86656831
Cpp = 1000.*(d1*(1-c)+(d2+(d3/1000.)*(T-273.15))*c+(d4-(d5/1000.)*(T273.15))*(1-c)*(c**d6))
return
end
! =================================
! FUNO PARA CALCULO DA DENSIDADE DO LICOR
real*8 function rho(c,T)
! description 'T = K, c = kg/kg, rho = kg/m3 '
real*8 c,T,a0,a1,a2,a3,a4,a5
a0 = 1.008
a1 = -.237
a2 = -1.94
a3 = 997.0
a4 = 649.0
a5 = 273.16
rho = (a0+a1*((T-a5)/1000.)+a2*(((T-a5)/1000.)**2))*(a3+a4*c)
return
end
!====================================================================
!ROTINA PARA ATUALIZAO DAS PROPRIEDADES DO LICOR E VAPOR
!VERIFICAO DA ESTABILIDADE DOS CALCULOS, ARAPUCAS DE ERRO
subroutine atualiza_PropFis(X,posicao,parar)
use operacao
real*8
::X(12)
integer ::posicao
logical ::parar
logical :: existe_erro
real*8
:: lambda,BPR,Cpp,Tsat,Psat,rho
integer :: k,erro,kpress
real*8
:: DPrel,Pressao,NovaPressao,Temp
real*8, parameter
::Tminimo=200.0,Tmaximo=500.0,Fminimo=0.0,Fmaximo=10.0,Wminimo=0.0,Wmaximo=
100.00
147
real*8, parameter
::Cminimo=0.0,Cmaximo=1.4,Hminimo=0.0,Hmaximo=10.0,TolDp=0.0000001
if (parar) return
existe_erro = .false.
parar = .false.
erro = 0
h(1) = x(1)
h(2) = x(2)
h(3) = x(3)
h(4) = x(4)
h(5) = x(5)
h(6) = x(6)
C(1) = x(7)
C(2) = x(8)
C(3) = x(9)
C(4) = x(10)
C(5) = x(11)
C(6) = x(12)
148
exit
end if
if (k.eq.0) cycle
if ( (H(k).LT.Hminimo).OR.(H(k).GT.Hmaximo) ) then
existe_erro = .true.
erro = 5
exit
end if
end do
if (existe_erro) then
print *, '[atualiza_dados] falha na base de informacoes '
print *, '
print *, '
print *, '
print *, '
Temperatura ',T(k)
print *, '
case (2)
print *, '
Vazao ',F(k)
print *, '
case (3)
print *, '
print *, '
case (4)
print *, '
Concentracao ',C(k)
print *, '
case (5)
print *, '
Nivel ',H(k)
print *, '
case default
print *, ' nao identificado '
end select
print *,'
vetor X'
write(*,9000) X
9000 format(1x,F15.4)
print *, ' [atualiza_dados] acao -> requisitado termino do programa '
print *, '
parar = .true.
149
pause
end if
! sao imposicoes de projeto: P(6), C(6)
DTR(6) = BPR(C(6),P(6))
TH2Osat(6) = Tsat(P(6))
T(6) = TH2Osat(6) + DTR(6)
do k=1,6
if(k.eq.1) then
T(1) = (UA * alpha(1) * T(0) - DHvap(0) * W(0)) / (UA * alpha(1))
if (T(1).GT.T(0)) T(1) = T(0)
DHvap(1) = lambda(T(1))
Cp(1) = Cpp(C(1),T(1))
dens(1) = rho(C(1),T(1))
W(1) = ( F(0) * dens(0)* Cp(0)*Tfeed - F(1) * dens(1)* Cp(1)*T(1) +
DHvap(0) * W(0) )/(Cp(1)*T(1)+DHvap(1))
if (W(1).LT.zero) W(1) = zero
else
T(k) = (UA * alpha(k) * T(k - 1) - DHvap(k - 1) * ( W(k-1) )) / (UA *
alpha(k))
if (T(k).GT.T(k-1)) T(k) = T(k-1)
DHvap(k ) = lambda(T(k))
Cp(k) = Cpp(C(k),T(k))
dens(k) = rho(C(k),T(k))
W(k) = ( F(k - 1) * dens(k - 1)* Cp(k-1)*T(k-1) - F(k) * dens(k)*
Cp(k)*T(k) + DHvap(k - 1) * ( F(k - 2) * dens(k - 2) - F(k - 1) * dens(k 1)) )/(Cp(k)*T(k)+DHvap(k))
if (W(k).LT.zero) W(k) = zero
end if
end do
do k=1,5
DPrel =1.0
Pressao = Psat(T(k))
150
kpress = 0
do while ((DPrel.GT.TOLdp) .AND. (kpress.LT.10000))
DT = BPR(C(k),Pressao)
Temp = T(k) - DT
NovaPressao = Psat(Temp)
DPrel = dabs((NovaPressao-Pressao)/Pressao)
kpress = kpress + 1
Pressao = NovaPressao
end do
if (kpress.GE.10000) print *, '[atualiza_PropFis][Psat][erro 101] nao
converge <=> contador =',posicao,' estgio =',k
DTR(k) = BPR(C(k),Pressao)
P(k) = Pressao
TH2Osat(k) = T(k) - DTR(k)
end do
return
end
!====================================================================
!ROTINA PARA DEFINIO DOS VALORES INICIAIS DO PROCESSO EM REGIME
!PERMANENTE - UNIDADES SI
subroutine valorinicial (x)
USE OPERACAO
real*8
:: x(12) !,Hmin(Nvar),Hmax(Nvar),Cmin(Nvar),Cmax(Nvar)
integer
:: k
42.6908787
W(1) =
26.3601
W(2) =
27.8777
W(3) =
5.6228
W(4) =
10.7145
W(5) =
14.998
W(6) =
28.2867
Wss
Wmin =
0.0
Wmax =
80.0
0.1248086
151
F(1) =
0.0858396
F(2) =
0.0782408
F(3) =
0.0692070
F(4) =
0.0581846
F(5) =
0.0423428
F(6) =
0.0144029
Fss
Fimn =
0.0
Fmax =
2.0*Fss
0.1400000
C(1) =
0.1749
C(2) =
0.2554
C(3) =
0.2733
C(4) =
0.3176
C(5) =
0.4101
C(6) =
0.8500000
Css
Cmin =
0.0
Cmax =
1.0
8.0000000
P(1) =
4.747
P(2) =
2.4544
P(3) =
2.3247
P(4) =
1.8742
P(5) =
1.1736
P(6) =
0.2237
443.5188014
T(1) =
424.9287784
T(2) =
403.0798
! 420.4691621
T(3) =
401.6475
! 414.5564791
T(4) =
395.6334
! 406.4075142
T(5) =
383.5324
! 388.6559435
T(6) =
356.3414
! 353.6389351
Tss
Tmin =
250.0
152
Tmax =
550.0
Tfeed =
358.1600037
= 817.55
Atroca(2)
= 817.55
Atroca(3)
= 817.55
Atroca(4)
= 817.55
Atroca(5)
= 817.55
Atroca(6)
= 817.55
= 2.0
AreaTQ(2)
= 2.0
AreaTQ(3)
= 2.0
AreaTQ(4)
= 2.0
AreaTQ(5)
= 2.0
AreaTQ(6)
= 2.0
= H
Hmin = 0.0
Hmax = 3.0
1.0000000
alpha(2) =
0.9000000
alpha(3) =
0.8000000
alpha(4) =
0.7000000
alpha(5) =
0.4000000
alpha(6) =
0.3000000
4713407.8858472
do k=1,6
153
UAa(k) = UA*alpha(k)
end do
do k=1,6
SPH(k) = h(k)
end do
SPC6 = C(6)
epsa = epsilon(dble(2))
KcH100ref
= 10.0
KiH100ref
= 0.0
KdH100ref
= 0.0
KcC6100ref = 0.0
KiC6100ref = 0.0
KdC6100ref = 0.0
ISEH = 0.0
ISEC6 = 0.0
ISEW0 = 0.0
do i=1,10
reg(i) = .true.
end do
UltimaVez = 0.0
DW =
0.02*Wss(0)
DC =
0.02*Css(0)
x(1)
= h(1)
x(2)
= h(2)
x(3)
= h(3)
x(4)
= h(4)
x(5)
= h(5)
x(6)
= h(6)
x(7)
= C(1)
x(8)
= C(2)
x(9)
= C(3)
x(10) = C(4)
x(11) = C(5)
x(12) = C(6)
return
154
end
!====================================================================
!ROTINA PARA CALCULO DAS EDO'S BALANO DE MASSA
!MODELAGEM MATEMTICA DO NVEL E DA CONCENTRAO DE SLIDOS
subroutine modeloTrans(Nvar,time,X,DER)
use operacao
integer ::Nvar
real*8
::X(Nvar),DER(Nvar),time
integer ::k
real*8
::lambda,rho,Cpp,DDHvap(0:6),Ddens(0:6),edoh(6),edoc(6),CCp(0:6)
h(1) = x(1)
h(2) = x(2)
h(3) = x(3)
h(4) = x(4)
h(5) = x(5)
h(6) = x(6)
C(1) = x(7)
C(2) = x(8)
C(3) = x(9)
C(4) = x(10)
C(5) = x(11)
C(6) = x(12)
do k =1,6
if (h(k).LT.zero) h(k) = zero
if (C(k).LT.zero) C(k) = zero
if (C(k).GT.um)
C(k) = um
end do
do k=1,6
edoh(k) = (F(k - 1) * (dens(k - 1)/dens(k)) - F(k)
- (W(k)/dens(k)) )/
AreaTQ(k)
if (h(k).LE.zero) then
edoC(k) = zero
else
edoC(k) = -(C(k) * F(k - 1) * dens(k - 1) - C(k) * W(k) - F(k - 1) * dens(k
- 1) * C(k-1)) / AreaTQ(k) / h(k) / dens(k)
end if
155
end do
der(1)
= edoh(1)
der(2)
= edoh(2)
der(3)
= edoh(3)
der(4)
= edoh(4)
der(5)
= edoh(5)
der(6)
= edoh(6)
der(7)
= edoC(1)
der(8)
= edoC(2)
der(9)
= edoC(3)
der(10) = edoC(4)
der(11) = edoC(5)
der(12) = edoC(6)
return
end
====================================================================
!ROTINA PARA ALOCAO DAS VARIAVEIS A SEREM ARMAZENADAS NA MEMRIA
subroutine armazena(time,k,Simul,SimulCon,SimulPF,SimulPARAM,continuar)
use operacao
real*8
::time,simul(0:Numpontos+2,*),simulCon(0:Numpontos+2,*),simulPF(0:Numpontos
+2,*),simulPARAM(0:Numpontos+2,*)
integer ::k
logical ::continuar
if (k.GT.(Numpontos+2)) then
continuar = .false.
print *, ' [principal][armazena] tentativa de armazenar acima do limite
disponivel'
print *, '
print *, '
encerra'
return
end if
simul(k,1)
= time
simul(k,2:8)
= F(0:6)
simul(k,9:15)
= W(0:6)
156
simul(k,16:22) = P(0:6)
simul(k,23:29) = T(0:6)
simul(k,30:36) = C(0:6)
simul(k,37:42) = H(1:6)
W00(k)
= W(0)
C66(k)
= C(6)
simulCon(k,1)
= time
simulCon(k,2:8)
= C100(0:6)
simulCon(k,9)
= SPC6100
simulCon(k,10)
= SPC6
simulCon(k,11:16)= H100(1:6)
simulCon(k,17)
= SPH100(1)
simulCon(k,18)
= SPH(1)
simulPF(k,1)
= time
simulPF(k,2:8)
= TH2Osat(0:6)
simulPF(k,9:15)
= dens(0:6)
simulPF(k,16:22) = DHvap(0:6)
simulPF(k,23:29) = Cp(0:6)
simulPF(k,30:36) = DTR(0:6)
simulPF(k,37:42) = UAa(1:6)
simulPF(k,43)
= UA
simulPARAM(k,1)
= time
simulPARAM(k,2:7)
= KcH100(1:6)
simulPARAM(k,8:13) = KiH100(1:6)
simulPARAM(k,14)
= KcC6100
simulPARAM(k,15)
= KiC6100
simulPARAM(k,16:21)= ISEH(1:6)
simulPARAM(k,22)
= ISEC6
simulPARAM(k,23)
= ISEW0
return
end
!====================================================================
!ROTINA SALVAR O RESULTADO DA SIMULAO EM ARQUIVO 'TXT'
subroutine relatorio(k,Simul,SimulCon,SimulPF,SimulPARAM)
use operacao
157
real*8
::simul(0:Numpontos+2,*),simulCon(0:Numpontos+2,*),simulPF(0:Numpontos+2,*)
,SimulPARAM(0:Numpontos+2,*)
integer ::k,j
open(20,file='Simul.txt',status='unknown')
open(21,file='SimulPF.txt',status='unknown')
open(22,file='SimulCon.txt',status='unknown')
open(23,file='SimulPARAM.txt',status='unknown')
write(20,8009)
8009
format(T11,'time',T28,'F0',T44,'F1',T60,'F2',T76,'F3',T92,'F4',T108,'F5',T1
24,'F6',T140,'W0',T156,'W1',T172,'W2',T188,'W3', &
T204,'W4',T220,'W5',T236,'W6',T252,'P0',T268,'P1',T284,'P2',T300,'P3',T316,
'P4',T332,'P5',T348,'P6',T364,'T0', &
T380,'T1',T396,'T2',T412,'T3',T428,'T4',T444,'T5',T460,'T6',T476,'C0',T492,
'C1',T508,'C2',T524,'C3',T540,'C4', &
T556,'C5',T572,'C6',T588,'H1',T604,'H2',T620,'H3',T636,'H4',T652,'H5',T668,
'H6')
write(20,8010) (Simul(j,1:42),j=0,k)
8010 format(42(F15.4,1x))
write(21,8019)
8019
format(T11,'time',T28,'TS0',T44,'TS1',T60,'TS2',T76,'TS3',T92,'TS4',T108,'T
S5',T124,'TS6',T140,'D0',T156,'D1',T172,'D2',T188,'D3', &
T204,'D4',T220,'D5',T236,'D6',T252,'HV0',T268,'HV1',T284,'HV2',T300,'HV3',T
316,'HV4',T332,'HV5',T348,'HV6',T364,'CP0', &
T380,'CP1',T396,'CP2',T412,'CP3',T428,'CP4',T444,'CP5',T460,'CP6',T476,'DT0
',T492,'DT1',T508,'DT2',T524,'DT3',T540,'DT4', &
T556,'DT5',T572,'DT6',T588,'UA1',T604,'UA2',T620,'UA3',T636,'UA4',T652,'UA5
',T668,'UA6',T684,'UA')
write(21,8020) (SimulPF(j,1:43),j=0,k)
8020 format(43(F15.4,1x))
write(22,8029)
8029
format(T11,'time',T28,'c0%',T44,'c1%',T60,'c2%',T76,'c3%',T92,'c4%',T108,'c
5%',T124,'c6%',T140,'SPc%',T156,'SPC',T172,'h1%',T188,'h2%', &
T204,'h3%',T220,'h4%',T236,'h5%',T252,'h6%',T268,'SPh%',T284,'SPH')
write(22,8030) (SimulCon(j,1:18),j=0,k)
158
8030 format(18(F15.4,1x))
write(23,8039)
8039
format(T11,'time',T28,'KcH1',T43,'KcH2',T59,'KcH3',T75,'KcH4',T91,'KcH5',T1
07,'KcH6',T123,'KiH1',T139,'KiH2',T156,'KiH3',T171,'KiH4',T187,'KiH5', &
T203,'KiH6',T219,'KcC6',T235,'KiC6',T252,'iH1',T268,'iH2',T284,'iH3',T300,'
iH4',T316,'iH5',T332,'iH6',T348,'iC6',T364,'iW0')
write(23,8040) (SimulPARAM(j,1:23),j=0,k)
8040 format(23(F15.4,1x))
return
end
!====================================================================
!ROTINA PARA CONVERSO DAS VARIAVEIS ABSOLUTAS EM PERCENTUAL
subroutine converte100()
use operacao
integer
::k
do k=1,6
h100(k)
SPH100(k)
C100(k)
F100(k)
Fss100(k)
W100(k)
T100(k)
end do
c100(0)
SPC6100
return
end
!====================================================================
!ROTINA PARA IMPLEMENTAO DAS PERTURBAES DEGRAU OU PRBS DEFINIDAS PELO
!USURIO
subroutine perturba(time)
use operacao
real*8 :: Tinicio,Tfim,time,X(12)
Tinicio
= pert_start
Tfim
= Tfinal
159
then
W(0) = (Wss(0))*1.10
else
W(0) = Wss(0)
end if
case (2) ! vazao de entrada de licor negro
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
F(0) = (Fss(0))*1.10
else
F(0) = Fss(0)
end if
case (3) ! concentracao de entrada
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
C(0) = (Css(0))*1.10
else
C(0) = Css(0)
end if
case (4) ! vazao de entrada de licor negro
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
F(1) = (Fss(1))*1.10
else
F(1) = Fss(1)
end if
then
160
then
C(1) = (Css(1))*1.10
else
C(1) = Css(1)
end if
case (6) ! vazao de entrada de licor negro
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
F(2) = (Fss(2))*1.10
else
F(2) = Fss(2)
end if
case (7) ! concentracao de entrada
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
C(2) = (Css(2))*1.10
else
C(2) = Css(2)
end if
case (8) ! vazao de entrada de licor negro
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
F(3) = (Fss(3))*1.10
else
F(3) = Fss(3)
end if
case (9) ! concentracao de entrada
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
C(3) = (Css(3))*1.10
else
C(3) = Css(3)
end if
case (10) ! vazao de entrada de licor negro
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
F(4) = (Fss(4))*1.10
else
F(4) = Fss(4)
end if
case (11) ! concentracao de entrada
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
C(4) = (Css(4))*1.10
else
then
161
C(4) = Css(4)
end if
case (12) ! vazao de entrada de licor negro
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
F(5) = (Fss(5))*1.10
else
F(5) = Fss(5)
end if
case (13) ! concentracao de entrada
IF ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
C(5) = (Css(5))*1.10
else
C(5) = Css(5)
end if
case (14) ! perturbao tipo PRBS em W0
if ((time.GT.Tinicio).AND.(time.LT.Tfim))
then
then
! UltimaVez e Tprbs sao
inicializados em Valor_inicial
UltimaVez = time
rtemp = ( reg(4).neqv.reg(5).neqv.reg(6).neqv.reg(8) )
if ( rtemp )then
C(0) = Css(0) + DC
else
C(0) = Css(0) - DC
162
end if
do j = 1, 7
reg(9-j) = reg(8-j)
end do
reg(1) = rtemp
end if
end if
end select
return
end
!====================================================================
!IMPLEMENTAO DO CONTROLADOR P E PI - VAZO DE ENTRADA 'FIN'
!VERSO COM CONTROLE DA VAZO DE ENTRADA DO EVAPORADOR
subroutine controlPI(time)
use operacao
real*8
:: time
real*8, save
::
erroH100(6),erroH(6),erroC6100,erroC6,erroH100_anterior(6),erroC6100_anteri
or
real*8
:: dummy
do k=1,6
erroH
= SPH(k) - H(k)
end do
erroC6 = SPC6 - C(6)
call converte100()
erroH100_anterior = erroH100
erroC6100_anterior = erroC6100
erroH100
= SPH100 - H100
= KcH100ref
KiH100
= KiH100ref
KcC6100 = KcC6100ref
KiC6100 = KiC6100ref
do k=1,6
if ( dabs(SPH(k)-H(k)).LT.((1.0D+08)*epsa)) cycle
163
dummy = (W(k) - dens(k-1)*Fss(k-1))*((Hmax(k) - Hmin(k)))/(dens(k-1)*Fss(k1)*(SPH(k)-H(k)))
if (dummy.GT.(0.0)) KcH100(k) = 0.9*dummy
if (KcH100(k).GT.KcH100ref(k)) KcH100(k) = KcH100ref(k)
end do
if (time.GT.pert_start) then
do k=1,6
ISEH(k) = ISEH(k) + DHora_ref*erroH(k)*erroH(k) ! 0-100% -> 0-1
end do
ISEC6 = ISEC6 + DHora_ref*erroC6*erroC6 !*(1.0D-04) ! 0-100% -> 0-1
ISEW0 = ISEW0 + Dhora_ref*(mC6100/100.0)*(mC6100/100.0)
end if
return
end
!====================================================================
!ROTINAS PARA IMPLEMENTAO DO CONTROLADOR DMC
!=================================================
!ROTINA PARA CONSTRUO DA MATRIZ DINMICA A
subroutine MatrizDinamica (Np)
use operacao
real*8,
real*8
parameter
:: Nmax = 42
:: C6k(Nmax+1),dummy,SS
164
integer
:: fim,j,i,Np
open(20,file='dados_matrizA.txt',status='old',action='read',position='REWIN
D',iostat=Np)
Np
= 1
fim = 0
lendo_vetor: do
read (20,fmt=*,iostat=fim) dummy
C6k(Np) = (dummy - SPC6)/(4.26908787)
if (fim .EQ. 0)
if (fim .GT. 0)
stop "> Erro na Leitura da Tabela <" ! algo deu errado ...
if (fim .LT. 0)
exit
! fim do arquivo
end do lendo_vetor
Np = Np - 1
A
0.0D00
if (R.GT.Np) then
print *, ' [MatrizA]: horizonte de predio (R) maior do que horizonte de
convolucao (Np)'
print *, '
print *, '
ACAO:
programa abortado'
stop
end if
Hpulso(1) = 0.0D00
do k=2,Nc
Hpulso(k) = C6k(k) - C6k(k-1)
end do
do j=1,R
do i=j,R
A(i,j)=C6k(i-j+1)
end do
end do
return
end
!=================================================
!ROTINA CALCULO MATRIZ K -> K = [(A^T*A + beta*I)^-1]*A^T
subroutine matrizK ()
USE LINRG_INT
USE NR2RR_INT
use operacao
integer
:: k,i
165
real*8
AT
:: ATANORM,ATABNORM,MKANORM,Anorm
= TRANSPOSE(A)
ATA = MATMUL(AT,A)
ATAG = ATA*gamma
do k=1,R
do i=1,R
ATAGB(k,i) = ATAG(k,i) + beta
end do
end do
Mk = MATMUL(ATAGBI,AT)
return
end
!=================================================
!FUNO PARA CALCULO DE DELTA U -> DELTA W0
!IMPLEMENTAO DO CONTROLADOR DMC
real*8
use operacao
integer :: k,j
DUKJ = 0.0D00
if (k .GT. (Nc+1)) DUKJ =
W00(k-j) - W00(k-j-1)
return
end
!=================================================
!ROTINA PARA IMPLEMENTAO DO CONTROLADOR DMC:
!R
:: time
::norma2Hpulso,norma2Yol,norma2Eol,R8norma2
integer
:: k,m,j,Ncc
external
:: DUKJ
166
!primeiro valor predito
Yol(1) = C66(k) - SPC6
do i=2,Nc
Yol(1) = Yol(1) + Hpulso(i)*DUKJ(k,i-1)
end do
deltaUU = matmul(MK,Eol)
if (time.GT.pert_start) then
ISEC6 = ISEC6 + DHora_ref*Eol(1)*Eol(1) !0-100% -> 0-1
ISEW0 = ISEW0 + Dhora_ref*deltaUU(1)*deltaUU(1)
end if
return
end