6 Análise para sistema de controlo de forno industrial
(Ward e Mellor)
Pretende-se substituir um sistema de controlo analógico de um forno de louça por um
sistema computorizado. Após várias reuniões entre os projectistas e os quadros técnicos da
empresa, obtiveram-se as seguintes especificações:
a) Introdução
As peças são secas passando-as por um forno. São posicionadas num tapete rolante que
as faz passar lentamente através do forno. O forno é aquecido por 3 queimadores a gás,
colocados em 3 diferentes secções do forno. A temperatura em cada uma destas áreas é
monitorada e controlada separadamente. Uma consola de operador permite ao operador
visualizar e controlar a operação de cada área. Este novo sistema de controlo
computorizado deverá ser ligado em rede com o computador de gestão central.
O esquema básico do sistema está representado na figura seguinte:
Queimadores
Luz
indicadora
Luz
indicadora
Pré-aquecimento
Secagem
Arrefecimento
Peça
Guarda
Guarda
Sensores de Temperatura
Fig. 6-1: Esquema básico do forno
Guias práticos STR
6-1
b) Entrada/Saída
As entradas do sistema estão disponíveis numa interface de instrumentação do processo e
provêm também do operador. Haverá necessidade de considerar entradas da interface de
comunicação:
•
Entradas do processo (no sistema de controlo computorizado):
i. Existe um sensor de temperatura para cada área. As áreas são
denominadas: pré aquecimento, secagem e arrefecimento. As entradas têm
uma gama de 0 a 10 volts e estão acessíveis nos pinos 1 a 3 do socket J2
ii. A velocidade do tapete é medida por um contador de pulsos e está
disponível no pino 4 do socket J2
iii. Existem 2 guardas de segurança no sistema rolante: guarda de entrada e
guarda de saída. Os sinais relacionado com estas guardas estão
disponíveis nos pinos 2 e 3 do socket J4, e um valor de 1 indica que as
guardas estão colocadas
iv. Um sinal de avaria no tapete está disponível no pino 6 do socket J4; um
valor de 1 indica funcionamento normal.
•
Saídas do processo (do sistema de controlo computorizado)::
i. Controlo dos queimadores: cada um dos 3 queimadores tem uma unidade
de controlo. A actuação fornecida aos queimadores é sob a forma de
voltagem, gama de 0 a 10 volts, 0 correspondendo a nenhum aquecimento
e 10 ao máximo aquecimento
ii. Controlo do tapete: Dois sinais são aplicados ao controlador do tapete
rolante: inicia movimento e para movimento. Estes sinais são aplicados
aos pinos 3 e 4 do socket J6
iii. Guardas: colocando a 1 o pino 6 do socket J6 arma os guardas e a luz
indicadora acende; colocando a 1 o pino 8, desarma os guardas e a luz de
funcionamento apaga.
Guias práticos STR
6-2
•
Entradas do operador:
i. O operador envia os seguintes comandos: Começa, Acaba, Reset,
Recomeça e Pausa. O operador pode também estipular as referências de
temperatura para cada área
•
Saídas para o display:
i. O display deverá conter informação sobre a temperatura das 3 áreas, a
velocidade do tapete, e alarmes.
•
Entradas e saídas para computador de gestão
i. Informação ainda não disponível.
Há várias ferramentas CASE que suportam estas metodologias. Para a solução deste
exercício foi utilizada a Select Yourdon, da Select Company.
Guias práticos STR
6-3
Resolução
(segundo a metodologia de Ward e Mellor)
6.1 O modelo do ambiente
De acordo com as especificações apresentadas, o modelo do ambiente do nosso sistema pode
ser representado como:
Computador
de gestão
Sensores
de Temperatura
Unidades
de aquecimento
Temperatura
forno
Sensor de
Velocidade
Tapete
Rolante
Aquecer
Inicia
Movimento
Velocidade
do Tapete
Controlador
Tapete
Rolante
Guarda de
entrada
Guardas
de Segurança
Para Movimento
Controlador
do
forno
Guarda de saida
Desarma Guardas
Avaria no
tapete
Sensor
Avaria
Tapete
Rolante
Entradas do processo
Arma Guardas
Display
Armar
Guardas
Saídas do processo
Comandos do
operador
Consola
do operador
Entradas do operador / Saídas para o Display
Fig. 6-2: Diagrama de contexto
Repare-se que o agrupamento das especificações de entrada saída, como apresentadas no
enunciado facilita a disposição dos fluxos no diagrama de contexto.
Quando estivesse disponível a informação, ter-se-ía de incluír as entradas e saídas para o
computador de gestão.
Guias práticos STR
6-4
Quanto à lista de acontecimentos, neste caso serão os eventos que podem alterar o
funcionamento do forno, e podem ser obtidos a partir das entradas do operador:
Começar
Recomeçar
Acabar
Reset
Pausa
R da temperatura das áreas de:
Pré-aquecimento, Secagem e Arrefecimento
O comando Recomeçar, na realidade pode ser implementado como Começar após pausa ou
Acaba, situação em que o tapete está parado e o aquecimento desligado.
Reinicializar sistema (reset), deve colocar o estado deste no estado inicial. É pois semelhante
à paragem total do sistema.
Um outro aspecto importante no modelo do ambiente é um dicionário contendo todos os elementos necessários tanto para o projectista como para o utilizador. A estrutura exacta
depende da ferramenta CASE utilizada, mas normalmente inclui a seguinte informação:
Nome: Designação do item;
Uso: Onde e como é usado;
Descrição do conteúdo: tipo de dados, gama de valores, etc.
Neste caso, utilizando a ferramenta Select Yourdon, poder-se-ía ter por exemplo:
Name: Temperatura forno
Type: Continuous flow
Units: (ºC)
Range: 0 - 250
Comment: Saída dos sensores de temperatura e entrada do sistema
de aquecimento
This item is used on the following diagrams:
CONTEXT.DAT Controlador do forno
CO1.DAT
Controlador do forno
CO2.DAT
Controla Temperatura da Area
Repare-se que ainda não estamos no modelo de implementação, logo expressamos a
temperatura na sua unidade de medida. É também mais perceptível para o utilizador final do
sistema, que deverá validar a analise em conjunto com o engenheiro de software. No modelo
de implementação especificar-se-ão características dependente do hardaware:
Units: Volts
Range. 0-10
Guias práticos STR
6-5
6.2 O modelo do comportamento
O modelo do comportamento ilustra como o sistema deve responder a acontecimentos
ocorridos no ambiente. Uma estrutura hierárquica é usada para representar este
comportamento. O nível superior do esquema de transformação, nível 0, poderá ser:
Guarda de
entrada
Guarda de saida
Monitoriza
Estados
Guardas
Estado
das
guardas
Guardas
Arma Guardas
1
Guardas
Desarma Guardas
reset
Comandos do
operador
Para
Comeca
Processa
Comandos
do Operador
Display
Controlo
do
Forno
3
Termina
movimento
Referencias
Funcionamento
Controlo
do
Tapete
Normal
D
Referencias
Inicia
Movimento
2
Pausa
E
Temperatura
Normal
Erro no Tapete
Temperatura
forno
Para Movimento
saturação
Referencias
Verifica
velocidade
do Tapete
Controla
Temperatura
da Area
4
Inicia
Movimento
6
5
Aquecer
Avaria no
tapete
Velocidade
do Tapete
Fig. 6-3: Diagrama de nível 0
Repare-se que a transformação de dados (1), monitoriza os sensores dos guardas de modo
que só após estas estarem efectivamente armadas (a sinalização de armar é enviada por (2)
para fora do ambiente e aplicada aos pinos 1 e 8 do socket J6) é que se pode sinalizar à
transformação de controlo (2) que se pode iniciar o funcionamento (Guardas).
O controlo do tapete (Inicia movimento e Para movimento – aplicados aos pinos 3 e 4 de J6)
é efectuado por (6) que recebe de (5) o erro na posição deste em relação à pretendida. Esta é
calculada considerando a velocidade do tapete.
Repare-se que as referências de temperatura enviadas pelo operador são guardadas num
armazém pela transformação Processa Comandos do Operador (3) de modo que Controla
Temperatura da Área (4) possa aceder em qualquer instante aos últimos valores válidos
Guias práticos STR
6-6
(terão de ser verificadas referências válidas). Se a temperatura for a normal, isto é a
pretendida (4) sinaliza (2) de modo que se possa iniciar o movimento do tapete.
Podia-se detalhar mais a transformação (3):
Fig. 6-4: Diagrama 3 (nível 1)
Poder-se-ía detalhar mais ainda a transformação (3.2), mas possivelmente podia-se
especificar já em pseudo-código 31. 3.2 e 3.3.
E
D
Temperatura
forno
Le Sensor
Temperatura
4.1
Temperatura
normal
Temperatura
saturação
Area
Temperatura
Inicial atingida
Referencias
Limites
atingidos
Iniciar
Controlo
Inicial
Temperatura
4.3
Dentro
limites
PID
E/D
4.4
Limites
Temperatura
4.2
E/D
Aquecer
Aquecer
Aquecer
Fig. 6-5: Diagrama 4 (nível 1)
Guias práticos STR
6-7
A transformação (4) está detalhada no diagrama anterior. Para cada área é lido o sensor de
temperatura (4.1) de modo que a unidade de aquecimento correspondente é actuada pelo
sinal de controlo aquecer, produzido por um algoritmo PID de posição elementar (4.4).
A temperatura inicial é obtida por (4.3). Isto pode ser utilizado para elevar a temperatura do
forno rapidamente a um valor, possivelmente elevado e próximo da referência, sendo depois
desligada por (4.2) (ao receber Temperatura inicial atingida), que liga também o PID (4.4),
para o controlo contínuo de temperatura.
Repare-se que como (4.2) usa fluxos de activação desactivação para (4.4) e (4.3) e tem de ser
também uma transformação de controlo, definida pela seguinte máquina de estados:
Start
off
“Iniciar”
E: 4.3
iniciar
"temperatura inicial atingida"
D: 4.3
E: 4.4
"temperatura normal"
"limites atingidos"
D: 4.4
"saturação"
normal
Fig. 6-6: Diagrama de transição para Limites Temperatura (4.2)
Quando (4.1) recebe o prompt de activação, envia o sinal iniciar à transformação de controlo
Limites temperatura (4.2).
A transformação (4.4) será ligada ou desligada por (4.2), de modo a evitar a saturação do
integral, sempre que a transformação de controlo (4.2) receber o par de sinais limites
atingidos / dentro_limites. Nestes casos (4.2) enviará o par de sinais saturação / temperatura
normal de modo a indicar a (2) o estado do controlador PID de temperatura. Assim como se
poderá observar na figura Fig. 6-7, (2) passa para o estado OFF, parando a produção da
fornada.
Guias práticos STR
6-8
Possivelmente (2) poderia também enviar alguma informação para o Computador de Gestão,
indicando à direcção a existência de uma anomalia que impedia a produção.
De qualquer forma a saturação só deveria acontecer numa situação em que o ambiente da
sala estiver muito quente ou demasiado frio de modo a impedir que a temperatura de cada
área do forno atinja a referência. Poder-se-ía contornar isto também controlando o ambiente
da sala.
Para a transformação Controlo do Forno (2), poder-se-ia ter um diagrama de transição de
estados como o seguinte:
Start
OFF
"Comeca"
"Arma Guardas"
Fecha
as guardas
“Reset”
"saturação"
"Para"
D: "Controla Temperatura
da Area"
"Desarma Guardas"
"Termina movimento"
"Guardas"
E: "Controla Temperatura
da Area"
Começa
Aquecimento
"Temperatura Normal"
"Inicia Movimento"
Tapeta
Começa
Tapete
em
"Comeca"
"Inicia Movimento"Pausa
"Funcionamento Normal"
Normal
"Pausa"
"Termina movimento"
Controlo do operador
Fig. 6-7: Diagrama de transição para Controlo do Forno
Guias práticos STR
6-9
6.3 O modelo de implementação
Na fase anterior os terminadores (dispositivos externos) de entrada,. foram considerados
como dispositivos virtuais que forneciam os sinais em condições utópicas ao sistema. Temos
agora de examinar cada um destes dispositivos e determinar que tipo de sinal fornecem ao
modelo de comportamento, e que operações devem ser desenvolvidas por este na interface.
Considere-se, por exemplo, o terminador Sensores de Temperatura. Vamos admitir que,
externamente ao sistema a implementar, existe um termopar e uma ADC que converte o sinal
contínuo para discreto. O sinal contínuo cobre uma gama de 0º a 250ºC, fornecendo o
termopar em consequência uma gama de 0 a 10 Volts. Este sinal é amostrado pela ADC, e
digitalizado com uma precisão de 12 bits. A gama deste sinal discreto teria de ser
subsquentemente convertida para ºC.
A informação anterior poderia ser incorporada nos diagramas do seguinte modo:
Especificando uma ADC no bloco terminador denominado Sensores de Temperatura.
Infelizmente tal não pode ser incorporado no diagrama por limitações da ferramenta CASE
utilizada, mas uma maneira de tornear o problema será incluir esta informação no dicionário,
relativamente ao fluxo Temperatura do forno:
Name: Temperatura forno
Type: Continuous flow
Units: Volts
Range: 0 - 10
Rate: 1 segundo, cíclico
Accuracy: 1 em 4096 (12 bits)
Comment: Saída dos sensores de
temperatura e entrada do sistema
de aquecimento
e ao terminador Sensores de Temperatura:
Name: Sensores de Temperatura
Type: Terminator
Comment: Temperatura na gama de 0 a
250ªC
Incorpora ADC de 12 bits, saída de
0 a 10 Volts
Guias práticos STR
6-10
De outra forma, a conversão da voltagem de saída da ADC de uma gama de 0 a 10 para de 0
a 250 poderia ser incorporada no sistema, a um nível de interface. Assim, no nível 0 do
esquema de transformação deveria incorporar interfaces de entrada para o terminador Sensor
de Temperatura.
Guarda de
entrada
Guarda de saida
Monitoriza
Estados
Guardas
Estado
das
guardas
Guardas
Arma Guardas
1
Guardas
Desarma Guardas
reset
Comandos do
operador
Controlo
do
Forno
Para
Comeca
Processa
Comandos
do Operador
Display
Inicia
Movimento
2
Pausa
3
Termina
movimento
Funcionamento
Normal
Referencias
D
E
Referencias
Temperatura
Normal
T
Inicia
Movimento
6
saturação
Temperatura
forno
Controlo
do
Tapete
Erro no Tapete
Para Movimento
Referencias
(0-10 v)
Temperatura
Interface
Temperatura
do forno
Temperatura
lida
Em
Cº
Controla
Temperatura
da Area
7
4
Verifica
velocidade
do Tapete
5
Avaria no
tapete
Velocidade
do Tapete
Aquecer
Fig. 6-8: Nível 0 (superior) do esquema de transformação, incorporando o sinal de trigger
A transformação de dados Interface Temperatura do forno pode ser mais detalhada como se
ilustra na figura seguinte.
Como a leitura do sensor de temperatura (amostragem) deve ser iniciada pelo sistema
ciclicamente, com por exemplo intervalos de 1 segundo, deve ser incluído no diagrama um
sinal de trigger proveniente de um timer, simbolizado por um terminador, de modo a activar
a transformação Interface temperatura do forno (7) periódicamente.
Repare-se que ao valor do sensor (Temperatura forno), um fluxo de dados contínuo, é
aplicado a um ADC (sample em hold), que é lido periodicamente (por 7.2), produzindo um
fluxo de dados discreto. Depois (7.1) converte esse valor para graus centígrados. Esta só é
activada quando (7.2) produz uma saída.
Guias práticos STR
6-11
Timer
Temperatura
temperatura
em ºC
lida
T
Temperatura
forno
(0-10 v)
Converte
para
ºC
temp_digital
Temperatura
em ºC
Le
ADC
(0-250 Cº)
7.2
basta multiplicar temp_digital em
3
7.1
volts por 25 para obter Cº
2
Fig. 6-9: Detalhe de Lê Sensor Temperatura
Este exemplo deve ser estendido a todos os terminadores, de modo a simultaneamente
incorporar a tecnologia, e especificar a interface entre o sistema a construir e o sistema a
controlar.
6.4 Regras de execução
Guarda de
entrada
Guarda de saida
Monitoriza
Estados
Guardas
Estado
das
guardas
Guardas
Arma Guardas
1
Guardas
Desarma Guardas
reset
Comandos do
operador
Controlo
do
Forno
Para
Comeca
Processa
Comandos
do Operador
Display
•
Inicia
Movimento
2
Pausa
3
Termina
movimento
Funcionamento
Normal
Referencias
D
E
Referencias
Temperatura
Normal
T
Controlo
do
Tapete
•
Inicia
Movimento
6
saturação
Erro no Tapete
Temperatura
forno
•
Referencias
Temperatura
lida
Interface
Temperatura
do forno
Controla
Temperatura
da Area
4
Para Movimento
Verifica
velocidade
do Tapete
5
Avaria no
tapete
Velocidade
do Tapete
Aquecer
7
Fig. 6-10: Nível superior com colocação inicial de tokens
Guias práticos STR
6-12
A Fig. 6-10 mostra o sistema com tokens iniciais. As colocações iniciais são baseadas nas
regras definidas no capítulo VI dos apontamentos teóricos, e seguindo a convenção de que
processos com um par de entradas de activação/desactivação estão inicialmente
desactivados.
Assumamos que o sistema encontra-se no estado representado na figura, mas que a
transformação de controlo (2) tem um token no estado Começa Aquecimento.
Quando ocorre o evento Temperatura Normal um token é colocada no fluxo de evento com o
mesmo nome. As regras de activação dizem-nos que o resultado é:
•
Move o token da transformação de controlo de Começa Aquecimento para Tapete
Começa, ie. muda o estado de acordo com o diagrama de transição (ou máquina de
estados) da Fig. 6-7.
•
De acordo com o mesmo diagrama é colocado um token no fluxo de eventos Inicia
Movimento
•
Assumindo que o diagrama de transição de Controlo do Tapete (6) é o da figura
seguinte, esta irá mudar para o estado Movimento
•
Será produzido o sinal Inicia Movimento para o Terminador Controlador Tapete
rolante (colocação de um token)
"Start"
"para movimento"
Parado
"Erro no tapete"
"Termina Movimento"
"Para Movimento"
"Inicia Movimento"
"Funcionamento normal"
"Inicia Movimento"
Movimento
Fig. 6-11: Diagrama de transição para Controlo do Tapete (6)
Guias práticos STR
6-13
Podia-se descrever também este processo em termos de plano de execução:
Passo Tempo
Pré-
Colocação
condições inicial de tokens
Selecção
Colocação final de tokens
de saídas
Inicia
Interface de Temperatura do forno (7), Verifica
l
velocidade do tapete (5), Processa Comandos do
Operador (3), Controlo do Forno (2) (Start), ...
...
...
...
...
...
...
kn
Tn
...
...
...
Interface de Temperatura do forno (7), Verifica
velocidade do tapete (5), Processa Comandos do
Operador (3), Controlo do Forno (2) (Começa
Aquecimento), ...
kn+1
Tn+1
Interface de Temperatura do forno (7), Verifica
Temperatura
velocidade do tapete (5), Processa Comandos do
Normal
Operador (3), Controlo do Forno (2) (Começa
tapete), Controlo do tapete (6) (muda para outro
estado), Inicia Movimento ...
...
...
...
...
...
...
Fig. 6-12: Exemplo de Tabela de Execução para o modelo da Fig. 6-8
Guias práticos STR
6-14
Download

6 Análise para sistema de controlo de forno industrial (Ward e Mellor)