Académique Documents
Professionnel Documents
Culture Documents
Claudio Richter
2001
Controladores Programveis 1
Controladores Programveis
Introduo
Os controladores programveis (CP) ou controladores lgico-programveis (CLP ou PLC, em
ingls) surgiram para substituir painis de controle a rel, na dcada de 60. A grande vantagem
dos controladores programveis era a possibilidade de reprogramao. J os painis de controle
a rels necessitavam modificaes na fiao, o que muitas vezes era invivel, tornando-se mais
barato simplesmente substituir todo painel por um novo. Portanto, os CLPs permitiram transferir
as modificaes de hardware em modificaes no software.
Existe um paralelo do que aconteceu com os painis de controle a rels x controladores
programveis acontecendo atualmente na indstria eletrnica. At algum tempo atrs, eram muito
utilizados os CIs de lgica TTL (ou seus equivalentes CMOS), como portas NAND, OR, FLIP-
FLOPs, etc. Eles comearam a ser substitudos por lgica programvel (PAL Programmable
Array Logic) e, recentemente, por CPLD (Complex Programmable Logic Device) e FPGAs (Field
Programmable Gate Array). As FPGAs permitem integrar funes extremamente complexas,
como CPUs inteiras.
Com o sucesso de uso de CLPs na indstria, a demanda por novas funes e maior capacidade
aumentou consideravelmente. Os equipamentos cresceram em poder de processamento,
nmero de entradas e sadas (I/O), e novas funes. Entretanto, estes controladores ainda
usavam lgica discreta e s eram utilizados na indstria, pois seus custos tornavam inviveis
outras aplicaes (automao predial, por exemplo).
O advento do microprocessador permitiu uma diminuio nos custos e tamanho dos CLPs, com
aumento de poder de processamento e confiabilidade. Surgiram as redes locais para
comunicao entre CLPs e entre CLPs e computadores.
Atualmente existe uma forte tendncia a utilizao de pequenos controladores programveis,
controlando processos locais e comunicando-se com outros controladores e com sistemas
supervisrios. Assim, possvel descentralizar o controle industrial, evitando que uma pane
interrompa toda a planta. Muitas mquinas j possuem pequenos CLPs para control-las. Alm
disso, diversos sensores na indstria j utilizam microprocessadores junto ao sensor, para
conformar o sinal de sada (que ainda pode ser 4 a 20mA ou comunicao serial 485, por
exemplo). Com a diminuio de custos dos CLPs, estes passaram a ser utilizados em outros
campos, como na automao predial (controle de iluminao, alarme, ambincia ventilao,
temperatura e umidade, etc). No Brasil ainda pequeno o mercado de automao predial, mas
provavelmente ser um campo promissor em breve (ainda mais com o risco de cortes no
fornecimento de energia eltrica). A automao residencial tambm desponta como uma
aplicao para pequenos CLPs. Neste caso o maior problema, alm dos custos, a fiao
necessria, pois o projeto civil normalmente no prev eletrodutos para isso. Ento, a
comunicao entre diversos sensores e CLPs deve ser implementada via rede 485, rdio ou rede
eltrica. As aplicaes residenciais e prediais so vastas alarme contra intrusos, controle de
painis solares para aquecimento de gua, controle de iluminao, acionamento remoto de
equipamentos, economia de energia eltrica...).
Conceitos Bsicos
Ponto de Entrada
Considera-se cada sinal recebido pelo CLP a partir de dispositivos ou componentes externos
(sensores) como um ponto de entrada. Os pontos de entrada podem ser digitais ou analgicos.
Os pontos de entrada digitais, obviamente, reconhecem apenas dois estados: ligado ou
desligado. J os pontos de entrada analgicos reconhecem mais de dois estados normalmente
um nmero mltiplo de dois (4, 8, 16, 32, 64, 128, 256, ....). O nmero de estados depende do
nmero de bits usado pelo conversor A/D da entrada. Assim, um conversor A/D de 12 bits permite
1024 estados de entrada (210).
Ou seja, com a chave fechada a um longo perodo a corrente i=V/R, e a tenso sobre a bobina
nula (j que delta i = 0). Mas ao abrirmos a chave a corrente tende a zero instantaneamente, e
com isso o termo delta i / delta t tende ao infinito. Resulta que a tenso nos terminais da bobina
tende ao infinito. Esta alta tenso gera um arco eltrico na chave, pois a tenso nos terminais
chega a tal valor que rompe a rigidez dieltrica do ar (cerca de 1000 V/mm).
Por exemplo, digamos que a indutncia de determinada vlvula solenide de 10 mHy, a corrente
de acionamento da vlvula 200 mA, e a tenso de alimentao da vlvula 24 V. O circuito
est ligado quando, repentinamente, a chave aberta. Vamos supor que a chave leve cerca de
1 s para abrir. Ora, a tenso nos terminais da bobina nesta situao atingiria:
Quando a chave aberta, a bobina gera a tenso contra-eletromotriz, mas o diodo passa a
conduzir quando esta atinge cerca de -0,7V, mantendo a corrente na bobina. A corrente diminui
lentamente devido a resistncia associada a qualquer bobina (exceto se a bobina fosse feita de
material super-condutor), e evita-se o arco na chave.
Programa Aplicativo
A lgica que avalia a condio dos pontos de entrada e dos estados anteriores do CLP,
executando as funes desejadas e acionando as sadas, chamada de programa aplicativo ou
simplesmente programa do CLP.
Para isso, o CLP l ciclicamente as entradas, transferindo-as para uma memria imagem (que
recebe em cada endereo correspondente a uma entrada o seu valor 0 ou 1 no caso de entradas
digitais, ou um valor numrico no caso de entradas analgicas).
De posse da memria imagem e dos estados internos gerados pelos ciclos de execuo
anteriores, o CLP gera uma memria imagem das sadas conforme as operaes definidas no
programa.
Por fim, a memria imagem das sadas transferida para as sadas (valor 0 ou 1 causa o
desligamento ou acionamento de uma sada digital, ou um valor numrico modifica o valor de
corrente ou tenso de uma sada analgica).
Como para qualquer controle ou automatizao necessrio o maior grau de paralelismo
possvel (em qualquer processo sempre pode ocorrer mais de um evento diferente ao mesmo
tempo) empregado nos CLPs um mtodo que simula paralelismo.
Neste mtodo os parmetros de entrada (estado de ligaes e valores de variveis) so mantidos
numa tabela acessvel por qualquer um dos blocos de instruo que esteja sendo interpretado
(memria imagem das entradas). Uma segunda tabela (memria imagem das sadas), com os
resultados produzidos pela interpretao de cada bloco, vai sendo montada a medida que os
blocos vo sendo lidos e interpretados.
Assim, cada bloco poder utilizar qualquer um dos parmetros de entrada sem que estes sejam
alterados devido interpretao de algum outro bloco. Depois, no final do ciclo, a tabela de sada
(com os resultados) movida diretamente para a tabela de entrada para que os novos valores
estejam disponveis igualmente para todos os blocos no prximo ciclo.
fcil perceber que esta forma de funcionamento faz com que todos os blocos sejam
interpretados em paralelo, o que permite a elaborao de programas segmentados, onde cada
parte pode controlar um processo independentemente e ao mesmo tempo que as demais.
INCI
O
VARREDURA
DAS
ENTRADAS
EXECUO
DO
PROGRAMA
ATUALIZAO
DAS
SADAS
Este paralelismo, operado em ciclos, faz com que a atualizao da sada de um bloco de instruo
para a entrada de um ou mais blocos demore o equivalente ao tempo de um ciclo. Esta demora,
ou atraso, deve ser considerado no planejamento de um programa pois a conexo "encadeada"
de, por exemplo, 10 blocos de instruo ter um atraso de 10 ciclos desde o estmulo na entrada
do primeiro bloco at a sada no ltimo. Com um tempo de ciclo de 1/16s do DX isto resultaria
em um atraso de 0,625 segundos.
Componentes de um CLP
Linguagens de Programao
Linguagem de Rels e Blocos (Ladder)
Trata-se de uma linguagem grfica que permite transladar com relativa facilidade os diagramas
eltricos baseados em rels para o CLP. Existe uma linha vertical de energizao a esquerda e
outra linha a direita. Entre estas duas linhas existe a matriz de programao formada por xy
clulas, dispostas em x linhas e y colunas. Abaixo exemplificamos um caso de 32 clulas,
dispostas em 4 linhas e 8 colunas
Barra de Barra de
energia esquerda energia direita
Cada conjunto de 32 clulas chamado de uma lgica do programa aplicativo. As duas linhas
laterais da lgica representam barras de energia entre as quais so colocadas as instrues a
serem executadas. As instrues podem ser contatos, bobinas, temporizadores, etc.
A lgica deve ser programada de forma que as instrues sejam energizadas a partir de um
caminho de corrente entre as duas barras, atravs de contatos ou blocos de funes
interligados. Entretanto, o fluxo de corrente eltrica simulado em uma lgica flui somente no
sentido da barra de energia esquerda para a direita, diferentemente dos esquemas eltricos reais.
As clulas so processadas em colunas, iniciando pela clula esquerda superior e terminando
pela clula direita inferior.
Cada clula pode ser ocupada por uma conexo (fio), por um bloco (rel de tempo, operao
aritmtica,etc), ou ainda por um contato ou bobina.
Alm disso, existem algumas regras impostas na linguagem Ladder. Por exemplo, as bobinas
devem ocupar somente a ltima coluna a direita.
Abaixo temos a ordem de execuo das clulas em uma lgica Ladder. Note que o programa
aplicativo pode ser composto de vrias lgicas Ladder. Alm disso, um mdulo de configurao
permite especificar parmetros do CLP, como modelo, velocidade de ciclo, endereo do CLP na
rede de comunicao, etc.
1 5 9 13 17 21 25 29
2 6 10 14 18 22 26 30
3 7 11 15 19 23 27 31
4 8 12 16 20 24 28 32
.Config
1 2 3 4 5 6 7 8 9 10
. 11 12 13 14 15 16 17 18 19 20
. 21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
A primeira clula contm o bloco de configurao, onde se define a velocidade de ciclo
do programa e o endereo do controlador na rede DXNET (rede de comunicao entre CLPs,
perifricos e microcomputador).
No curso sero abordados exemplos de programao via linguagem de diagrama esquemtico
em controlador programvel DX Srie 100, da Dexter. Sero mostradas implementaes em
Ladder dos mesmos exemplos, para ilustrar a similaridade entre as linguagens.
Contato de
ALIMENTAO
tempo (NA)
Rel de Tempo
(Monoestvel)
CONTATO
ALIMENTAO Rel
Rel Cclico Temporizado
(Oscilador) CONTATO
T1 T2
CONTATO NF
Bobina da
Contactora
R S T
FASE
FUSVEL FUSVEIS
DE COMANDO DE FORA
CONTATOS DA
CONTATO DO
CONTACTORA C1
REL DE SOBRECARGA
C1
BOTOEIRA DE
B0 DESLIGAMENTO
ELEMENTOS DO
REL DE SOBRECARGA
CONTATO AUXILIAR
DE AUTO-RETENO
B1 C1
BOBINA DA
CONTACTORA
C1 ATERRAMENTO
MOTOR
NEUTRO
Note que este circuito, no caso de interrupo da rede eltrica, se desarma automaticamente.
Isso importante para segurana. Caso simplesmente fosse utilizada uma chave 1 plo, 2
posies para acionar a contactora, ao retornar a energia eltrica (no caso de um apago, por
exemplo) o motor seria energizado, pois a chave se manteria na posio ligada.
Circuito de Partida Direta Reversora
Neste caso existem dois botes de contato momentneo para partir o motor (B1 E B2). Um deles
faz o motor girar no sentido horrio e o outro no sentido anti-horrio. Um terceiro boto desliga o
motor (B0), independentemente do sentido de rotao. Note os contatos auxiliares NA das
contatoras usados para auto-reteno. Alm disso, as contatoras se inibem mutuamente atravs
dos contatos auxiliares NF. Assim, se a contactora C1 estiver energizada, a contactora C2 no
pode ser energizada, e vice-versa. Isso impede que o operador, inadvertidamente, acione
simultaneamente os dois sentidos de giro do motor. Caso as duas contactoras fossem
energizadas simultaneamente, o resultado seria a queima dos fusveis de fora (pois teramos
curto-cuircuito entre as fases R e S).
Note que para inverter o giro do motor basta inverter duas fases (no caso, so invertidas as fases
R e S).
R S T
FASE
C1 C2
B0
B1 C1 B2 C2
C2 C1
C1 C2
NEUTRO
R R
1
6 1
4
6
3 4
5
3 5 2
T S
T 2 S
Y (380V) (220V)
R S T
FASE
B0
C1 C2 C3
B1 C1
RT C1 C3
C2 C3
1 2 3 5 6 4
RT C3 C2 C1
NEUTRO
Bobinas
Existem os seguintes tipos principais de bobinas:
BOB Bobina simples
BBL Bobina Liga ou SET
BBD Bobina Desliga ou RESET
A bobina recebe energia
no terminal esquerdo
L
Nos terminais da bobina BBL
Como podemos perceber, a bobina simples comporta-se como uma contactora comum, ou seja,
quando energizada aciona seus contatos. J a bobina liga e bobina desliga funciona como uma
contactora com reteno, ou seja, um pulso em bobina liga aciona a contactora, e um pulso em
bobina desliga a desativa (como um flip-flop R-S). Note que todos os contatos associados a uma
bobina so acionados quando esta bobina energizada.
As bobinas podem ser associadas a sadas digitais do CLP, e contatos podem ser associados a
entradas digitais. Assim, ao energizar uma entrada o contato associado a ela acionado (se for
um contato NA ele se fechar; se for um contato NF ir abrir). J ao energizar uma bobina
associada a uma sada do CLP fazemos com que esta sada seja ativada (feche o contato do rel
de sada, por exemplo).
Ligaes
As ligaes so os fios de interconexo entre as clulas da lgica Ladder (contatos, bobinas e
blocos de funes). Podemos ter ligaes na horizontal, na vertical, e ainda uma ligao negada
(inversora). As ligaes horizontais e verticais simplesmente conectam sadas de clulas as
entradas de outras clulas. J a ligao negada inverte o sinal na sua entrada, como mostrado
abaixo:
A ligao negada recebe
energia no terminal esquerdo...
NEG
TEE
e gera uma pulso em sua sada,
de durao T.
T
O temporizador TED recebe
energia no terminal esquerdo...
TED
e gera uma pulso em sua sada,
de durao T, aps a desenergi-
zao da entrada.
Sadas
Trata-se das sadas digitais do CLP. Note o desenho, representando um rel. Este smbolo
associa o nodo ligado a sua entrada a uma sada digital do CLP.
Chaves NA e NF
A chave NA (normal aberta) fecha o circuito entre sua entrada (terminal a
esquerda) e a sada (terminal a direita), caso o nodo de controle (terminal
superior ou inferior; linha pontilhada) estiver energizado. similar a uma
chave interruptora comum.
A chave NF (normal fechada) abre o circuito entre sua entrada (terminal a
esquerda) e a sada (terminal a direita), caso o nodo de controle (terminal superior ou inferior;
linha pontilhada) estiver energizado. similar a uma chave de porta de geladeira. Ao pressionar
a chave, quando fechamos a geladeira, ela desliga a lmpada interna.
Note as setas indicando sentido da esquerda para direita (da entrada para sada). Elas indicam
que as chaves permitem apenas este sentido de energizao. Ou seja, uma energizao em uma
sada de uma chave no ir se propagar para a entrada da chave.
Monoestvel
Trata-se de um rel de tempo (o equivalente ao TEE, da Ladder). Ou seja, ao energizar o nodo
de entrada o nodo de sada permanece energizado durante um tempo programado T.
Atraso
Trata-se de rel de retardo. Ou seja, ao energizar o nodo de entrada o nodo de sada
energizado, aps um tempo programvel T. Ao desenergizar o nodo de entrada o nodo de sada
tambm desenergizado.
O bloco Atraso recebe energia
em sua entrada (terminal
esquerdo)...
T
Pulso
Este bloco opera exatamente da mesma forma que o de atraso, exceto que o atraso mantm a
sada ligada (aps o tempo de atraso especificado) enquanto a entrada estiver ligada e o pulso
produz apenas um pulso na sada, com a durao de 1 ciclo do CLP.
O bloco Pulso recebe energia em
sua entrada (terminal esquerdo)...
1 ciclo do CLP
Oscilador
Este bloco produz pulsos constantemente na sada, espaados por um intervalo de tempo
programvel. Permite piscar lmpadas ou acionar de forma intermitente sirenes de alarme, por
exemplo. Os pulsos de sada tm durao de 1 ciclo de CLP, e possuem perodo programvel T.
Nodo ED
Este bloco efetua a mesma funo do bloco anterior, s que o pulso gerado ao faltar energia
eltrica. Obviamente, este bloco s ir ser efetivo se o CLP estiver alimentado por pilhas.
Rtulo
O rtulo permite conectar dois pontos do programa sem a necessidade de puxar uma linha de
um ponto ao outro. Isto til em programas complexos, em que h dificuldade para efetuar todas
as ligaes.
Biestvel
Este bloco, a cada borda de subida do sinal de entrada, troca de estado sua sada. Com ele
podemos memorizar algum estado no programa ou dividir a freqncia de sada de um oscilador.
Funo
Este bloco manipula variveis do programa. As funes permitidas so soma, subtrao, mover
valor, deslocamento de bit direita ou esquerda e operaes lgicas como AND, OR e XOR.
Alm disso, este bloco permite testes como se a varivel maior ou menor que determinado
valor e teste de bit.
Bloco DX
Este bloco sempre est presente no canto esquerdo superior do programa aplicativo. Serve para
indicar parmetros do controlador,como seu endereo na rede local DXNET e a durao do ciclo
do CLP.
DXNET
Este o bloco que permite a intercomunicao com vrios DX utilizando-se a rede local
DXNET. Com ele podemos transferir o estado de uma ligao (ativa ou desativa) ou o valor de
uma varivel de um DX para qualquer outro DX. Com este recurso, pode-se fazer programas
bastante complexos apenas distribuindo as tarefas entre os vrios controladores ligados em
rede.
Expanso
O bloco de expanso acessa o conector de expanso existente no DX que, atravs de circuitos
opcionais, permite aumentar o nmero de entradas e sadas de 4 de cada para 12 de cada ou
a instalao de teclado/display para entrada de dados.
PWMin
Este bloco de instruo permite que o DX converta um sinal modulado em largura de pulso
para um valor de 8 bits a ser guardado em uma varivel do programa. O bloco possibilita a leitura
de sinais analgicos, pois efetua a converso analgica para digital (A/D de 8 bits). Com um
circuito usando o tradicional timer 555 e poucos componentes adicionais pode-se monitorar
tenses, temperatura, etc.
Nesta tela notamos, a direita, uma srie de desenhos que representam os diferentes
"componentes" que iro formar o "circuito" a ser transmitido para o DX. A rea livre, a esquerda,
onde o "circuito" elaborado. Basta capturar com o mouse os blocos existentes e ir montando
o circuito nessa rea. Por exemplo, se quisermos fazer um rel temporizado que, uma vez
ativado, fique ligado durante 5 segundos, independentemente da entrada, desenhamos:
Se transmitirmos este programa ao DX, cada vez que for energizada a entrada E1 a sada S1
ser acionada durante 5 segundos. Para transmitir o programa basta conectar o DX a porta
paralela do microcomputador via cabo prprio (acompanha o DX) e pressionar a tecla [DX]
existente na tela principal. Esta tecla abre uma janela com vrias opes, entre elas compilao
do programa e transmisso para o DX:
Deve surgir uma janela azul, com todos os programas de exemplo que acompanham o PG.
Selecione o programa desejado apontando-o e pressionando a tecla esquerda do mouse. Por
fim, pressione a tecla [Ler]:
Por exemplificar, carregue o programa ALARME. Note os sinais de entrada: E1, E2 e E3. E1
dispara o alarme com retardo de 10 segundos. Esta entrada pode ser ligada um sensor
magntico (reed-switch) ligado na porta de entrada da residncia. Assim, o proprietrio tem 10
segundos para desativar o alarme aps entrar em casa, antes que este dispare. A entrada E2
dispara o alarme imediatamente. Esta entrada pode sensoriar todas as outras aberturas (janelas,
outras portas) atravs de sensores magnticos colocados em srie. Caso qualquer um deles se
abrir o alarme ser disparado. Por fim, E3 ativa o alarme. Esta entrada deve ser ligada a uma
chave, permitindo ligar o alarme. A sada S1 usada para acionar uma buzina ou sirene de forma
intermitente (0,25 s ligado e 0,25 s desligado). Uma vez disparado, o alarme "toca" durante 1
minuto e depois se rearma. Note que foram usados apenas 8 blocos para elaborar este programa
(entradas e sadas no so contadas como blocos). Como o limite de blocos para o DX srie
100 de 127, podemos tornar o alarme muito mais complexo ou colocar outros programas para
rodar simultaneamente no mesmo DX!
Exemplos de Implementao
Chave de partida direta
Abaixo temos a chave de partida direta, implementada em linguagem de diagrama esquemtico
no controlador DX Srie 100. Note a chave NA de reteno. A entrada E1 desliga a sada S1, e
a entrada E2 liga a sada S1.
O mesmo circuito implementado em linguagem de rels e blocos (Ladder). Note que a entrada
E0.0 desliga a sada S1.0, e a entrada E0.1 liga esta sada.
O circuito de partida direta com reverso do motor mostrado abaixo, implementado em Ladder.
As entradas E0.1 e E0.2 ligam o motor e a entrada E0.0 o desliga.
00 0 1 0 1 0 1
01 0 1 1 0 1 0
10 0 1 1 0 1 0
11 1 0 1 0 0 1
0 0 Inalterada
0 1 1
1 0 0
1 1 Indefinida
Nota: Na verdade, existem muitas formas de implementar um flip-flop tipo R-S em um CLP. Por
exemplo, a chave de partida direta j estudada comporta-se como um flip-flop tipo R-S. Os
circuitos mostrados acima so os utilizados no exemplo a seguir (segurana em prensa). No caso
do flip-flop R-S implementado em diagrama esquemtico, foi inserida uma chave NF com nodo
de controle aberto para isolar entrada e sada do controlador DX (entradas e sadas no podem
ser conectadas diretamente). Lembre-se que as chaves so unidirecionais!
Segurana em prensa
Uma prensa automtica deve ativar somente se dois botes, devidamente afastados, forem
pressionados praticamente ao mesmo tempo (dentro de 0,2 segundos). Se um dos botes for
acionado e o outro depois deste tempo estipulado, o cilindro da prensa no deve avanar. Isso
impede que o operador fixe um dos comandos manuais na posio acionada e trabalhe da em
diante apenas com o outro. Desacionando qualquer um dos botes, o cilindro deve recuar
imediatamente. Abaixo, o programa implementado em Ladder.
ESTADO
1
ESTADO
4 ESTADO
2
ESTADO
3
Ou seja, temos uma mquina de estados com todos os estados definidos. Com base nisso
relativamente fcil elaborar o programa para o DX. No programa RESERV.UDX (listado a
seguir), usei a varivel v0 para criar a mquina de estados. Basicamente esta varivel vai
assumindo os valores de 0 a 5, conforme o estado atual. A mudana de estado determinada
pelas condies descritas acima. Esta maneira de resolver problemas de automao (via
mquina de estados) muito poderosa, pois mesmo processos muito complexos podem ser
tratados de forma sistemtica. Alm disso, o translado para o DX praticamente direto. Basta
eleger uma varivel que definir o estado corrente e colocar as condies para a mudana de
seu valor. Agora falta definir as entradas e sadas necessrias. Os sinais de entrada e sada so:
Entradas: Sensor Inferior E1
Sensor Superior E2
Botoeira Operador E3
Botoeira Pausa E4
Sadas: Vlvula d'gua S1
Sinal Luminoso S2
Vlvula Sada e Bomba de Drenagem S3
Agitador Mecnico S4
Note que a vlvula de sada e a bomba de drenagem so acionadas simultaneamente pela sada
S3. Examine cuidadosamente o programa RESERV.UDX. Foram inseridos comentrios para
ajudar...
ESTADO 5 ESTADO 1
DESCARGA ENTRADA DE GUA
V lvula d e sa d a V lvula d e g ua
e b o mb a lig a d a s lig a d a
Nve l a lto a c io na d o
A p s 4 ho ra s
ESTADO 4 ESTADO 2
DECANTAO
AVISA OPERADOR
Ne nhum a c io na - A viso lumino so
me nto lig a d o lig a d o
ESTADO 3 Bo to e ira d e o p e ra d o r a c io na d a
Ap s 4 ho ra s AGITAO
A g ita d o r lig a d o
Agora digamos que, ao instalar o sistema, surgiu a necessidade de abortar o ciclo de decantao
via comando do operador. Ou seja, se o operador quiser, ele pode encerrar o ciclo de decantao
antes de concluir as 4 horas programadas. Para isso vou utilizar a prpria botoeira de operador
(E3). Se ela for acionada durante o estado 4 (decantao) o controlador pula para o estado 5
(descarga). O diagrama de estados fica:
ESTADO 0 Nve l b a ixo a c io na d o
Nve l b a ixo a c io na d o TANQUE PARADO Pa usa d e sa tiva d a
Ne nhum a c io na -
me nto lig a d o
ESTADO 5 ESTADO 1
DESCARGA ENTRADA DE GUA
V lvula d e sa d a V lvula d e g ua
e b o mb a lig a d a s lig a d a
Nve l a lto a c io na d o
A p s 4 hora s Bo to e ira d e o p e ra d o r a c io na d a
ESTADO 4 ESTADO 2
DECANTAO
AVISA OPERADOR
Ne nhum a c io na - A viso lumino so
me nto lig a d o lig a d o
ESTADO 3 Bo to e ira d e o p e ra d o r a c io na d a
Ap s 4 ho ra s AGITAO
A g ita d o r lig a d o
Prensa Industrial
Outro exemplo de programao via mquina de estados. Ao pressionar uma tecla ligada
entrada E4, a sada S1 (responsvel pela pressurizao do sistema hidrulico ou pneumtico)
acionada. Esta entrada E4 serve como chave liga/desliga para a prensa. O pisto da prensa deve
avanar (S2 - rtulo 5) at o sensor fim de curso ligado E2 (rtulo 1). A seguir o pisto deve
recuar (S3 - rtulo 6) at o fim de curso E1 (rtulo 0). Este movimento deve ser repetido 5 vezes
(estado 1 e estado 2 da mquina de estados).
A seguir o DX pula para o estado 3, que continua recuando o pisto via sada S3, mas temporiza
1 segundo antes de passar para o estado 4, que aciona a sada S4, que abre a tampa do
compartimento da prensa (para expulso do material prensado). Aps dois segundos a tampa j
est aberta e o pisto acionado at o fim de curso E3. Note que a tampa permanece aberta via
sada S4 (rtulo 7).
Depois de atingir E3, o DX pula para estado 6 (v1=6), que faz o pisto recuar at o fim de curso
E2 (rtulo 1), mantendo a porta aberta. Uma vez atingido E2, a porta fechada e o pisto continua
recuando at atingir o fim de curso E1 (rtulo 0). Quando o pisto atinge E1, o sistema retorna ao
estado 0 e, caso a entrada E4 esteja acionada, inicia novo ciclo de prensagem. Assim, neste
processo pode-se identificar 7 estados:
Estado 0 Prensa Parada Nenhum acionamento ligado.
Estado 1 Prensa Avanando Apenas avano acionado.
Estado 2 Prensa Recuando Apenas recuo acionado.
Estado 3 Recuo p/abrir Porta Recuo acionado durante 1 seg.
Estado 4 Abertura de Porta Abertura de porta acionado.
Estado 5 Descarga Avano e abertura de porta
acionados.
Estado 6 Recuo p/fechar Porta Abertura de porta e recuo
acionados.
Estado 7 Fechamento de Porta Recuo acionado.
Agora falta definir as entradas e sadas necessrias. Os sinais de entrada e sada so:
Entradas: Fim de curso pisto recolhido E1
Fim de curso pisto prensando E2
Fim de curso pisto expulsando material E3
Chave liga/desliga E4
Sadas: Pressurizao do sistema S1
Avana pisto S2
Recua pisto S3
Abertura de tampa S4
Note que foram utilizadas duas variveis neste programa (alm das variveis utilizadas nos
blocos de temporizao):
v0 Contador de nmero de ciclos de prensagem.
v1 Indica estado da mquina de estados da prensa.
A varivel v0 incrementada cada vez que a prensa entra no estado 1. Para isso foi utilizado um
bloco de Pulso, pois este gera um pulso com durao de apenas um ciclo de execuo do DX,
e assim a varivel incrementada somente uma vez.
O diagrama de estados para este exemplo fica:
Fim d e c urso E1
ESTADO 0 Cha ve lig a / d e slig a a c io na d a
ESTADO 7 PRENSA PARADA
FECHA PORTA Ne nhum a c io na -
Re c ua p ist o me nto lig a d o
Fe c ha p o rta
ESTADO 4
ABRE PORTA
A b re p o rta
ESTADO 3
RECUA 1 SEG.
A p s 1 se g und o
Re c ua p ist o
PORTA
CMARA DE
PRENSAGEM
PISTO
Redes de Comunicao
As redes de comunicao surgiram para permitir troca de dados entre controladores
programveis e tambm para sua conexo a computadores. Podem ser do tipo mestre-escravo
- apenas um equipamento pode iniciar comunicao ou multi-mestre - qualquer dos equipamentos
ligados a rede pode iniciar comunicao. Neste caso, necessrio prever estratgias para evitar
conflitos (dois dispositivos usando simultaneamente a rede). Em termos de topologia, podem ser
tipo barramento todos os equipamentos ligados a mesma linha fsica, ou tipo anel a conexo
entre equipamentos feita um a um. No caso de anel, este pode ser fechado (o ltimo dispositivo
liga no primeiro) ou aberto. Existem ainda outras topologias, no abordadas neste documento.
TOPOLOGIA
EQUIP. 1 EQUIP. 2 EQUIP. 3 EQUIP. 4
BARRAMENTO
Barramento
Comum
TOPOLOGIA
EQUIP. 1 EQUIP. 2 EQUIP. 3 EQUIP. 4
EM ANEL
Caso sejam necessrias maiores distncias, pode-se usar o perifrico Modem para Controlador
DX. Este equipamento permite conectar os controladores via conexo serial RS-232C ou RS-
485 (ou ainda rdio-transmissor e rede telefnica, opes abordadas a seguir).
A conexo serial RS-232C muito utilizada em microcomputadores IBM-PC compatveis, para
conexo entre computadores ou instalao de perifricos, como o mouse. Trata-se de conexo
ponto a ponto, ou seja, permite a conexo de apenas dois equipamentos entre si. Permite
conexes confiveis at cerca de 500 metros, em taxas de transmisso lentas (300 bps).
A conexo serial RS-485, ao contrrio da RS-232C, permite ligar diversos equipamentos entre si
(topologia barramento), alm de ser confivel para distncias superiores a 5 Km, em taxas de
transmisso lentas (300 bps).
Rdio Transmisso
E caso sejam necessrias distncias ainda maiores, ou no existam linhas fsicas para conexo
dos equipamentos? Neste caso, uma soluo pode ser a rdio-transmisso dos dados. O
controlador DX pode ser conectado a outros controladores via rdio-transmissor, controlado pelo
Modem para Controlador DX. As distncias, neste caso, podem ultrapassar 50 Km. Na figura
abaixo ilustrada a conexo entre trs estaes remotas e uma estao central.
Rede Telefnica
Por fim, a conexo entre os controladores ou entre controladores e uma estao central pode ser
efetuada pela rede telefnica. Neste caso, a abrangncia da rede mundial! O Modem para
Controlador DX permite armazenar 16 nmeros telefnicos, cada um com at 16 dgitos, o que
permite inserir cdigo de pas e de rea. Abaixo um exemplo de conexo de dois controladores
DX via rede telefnica. No exemplo abaixo, o controlador DX da estao central comanda dois
rels da estao remota, e indica o estado dos rels da estao remota nas sadas S1 e S2. A
sada S3 indica erro na comunicao.
Programas Supervisrios
O programa PG - Programador Grfico permite programar o controlador DX e efetuar
monitorao e simulao de programas, sendo uma eficiente ferramenta para desenvolvimento
e teste dos programas aplicativos elaborados para o DX. Permite inclusive descarregar
programas e monitor-los remotamente, via rede telefnica.
Entretanto, quando se trata de obter dados do processo controlado o programa PG no a
ferramenta mais adequada. Isso porque o enfoque do PG no programa aplicativo, e no no
processo. Assim, variveis de processo no podem ser convertidas de seu valor binrio para a
respectiva grandeza que representam via PG. Isso dificulta muito a visualizao destas
grandezas. No possvel associar a determinadas variveis nveis de alarme, nem visualizar o
processo em si, independentemente do programa aplicativo desenvolvido para control-lo. Para
isso, necessrio o uso de um programa supervisrio. A Dexter comercializa o programa PGR
Programa de Gerenciamento Remoto, capaz de monitorar o processo via rede telefnica,
indicando estados de nodos (estados binrios), variveis (grandezas analgicas) e constantes
(set points do programa). Permite ainda a associao de nveis de alarme as grandezas,
indicando visual e auditivamente condies de perigo.
O software PGR roda em microcomputadores IBM-PC compatveis, sob Windows 95 ou 98.
Basicamente, ele permite criar um arquivo de estaes remotas, com cdigo e nome da estao,
nmero do telefone remoto, senha de acesso, disposio e parmetros dos dados monitorados
e tela de fundo. Para cada estao remota estes itens so configurveis e armazenados no
arquivo de estaes. Ao conectar uma estao remota (o PGR usa o modem interno do
microcomputador), a tela principal do PGR apresenta a tela configurada para a estao escolhida.
possvel monitorar e/ou modificar o valor de variveis, o valor de constantes e o estado de
nodos do controlador DX. Com isso, pode-se atribuir, por exemplo, a uma varivel do controlador
a temperatura ambiente e, no PGR, monitorar esta temperatura a distncia; ligar um nodo, que
pode modificar o comportamento do controlador ou acionar diretamente um dispositivo, como um
motor; pode-se ainda trocar o valor de uma constante de processo (set point), como a temperatura
ambiente desejada em uma instalao.