Você está na página 1de 10

AUTOMAÇÃO

A LINGUAGEM DE

LADDER PROGRAMAÇÃO
LADDER
1ª PAR
PARTE
ARTE
Fernando Pazos

a estratégia de controle de um de-


Nos números anteriores de Mecatrônica Atual (ver números 2, 3 terminado sistema. Logo, é possível
e 4) fizemos uma abordagem sobre o tema “Controladores Lógi- utilizar os sinais de entrada forneci-
dos pelos sensores no controle dos
cos Programáveis”, sua estrutura básica, princípio de funciona-
diversos atuadores conectados nos
mento, CPU, módulos de entrada/saída, entre outras característi- pontos de saída.
cas. Neste número, será apresentada a programação específica Durante a década de 50, o recur-
desses dispositivos controladores, cada vez mais utilizados na in- so mais usado no controle lógico de
linhas de produção e em máquinas
dústria e em diferentes processos de automação. isoladas era constituído de mecanis-
mos baseados em dispositivos
eletromecânicos. Tais dispositivos

O
s controladores lógicos sico a ser controlado. Dispõem, ain-
programáveis, ou CLPs, são da, de diversos tipos de entrada, eram principalmente relés, e a com-
equipamentos eletrônicos onde são conectados sensores en- plexidade dos processos produtivos
empregados para controlar carregados de medir as variáveis fí- exigia instalações em painéis de
sistemas de automação flexíveis. Pos- sicas próprias do sistema. Os CLPs controle com centenas deles e, con-
suem diversos tipos de saídas, nas permitem desenvolver e alterar fa- seqüentemente, um número ainda
quais são conectados os atuadores cilmente a lógica para o acio- maior de interconexões entre eles.
encarregados de fornecer energia namento das suas saídas em fun- Freqüentemente aconteciam proble-
para o funcionamento do sistema fí- ção das entradas, mudando assim mas derivados do espaço ocupado

28 MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002


AUTOMAÇÃO
pelo equipamento de controle, es- LINGUAGENS CLPs. É por essa razão que foi de-
paço que devia ser preservado de DE PROGRAMAÇÃO senvolvida uma linguagem conhecida
poeira, umidade, calor, etc., e a como “ladder” (ou diagrama de con-
quantidade de falhas, sempre difí- Como em qualquer computador, o tatos), que hoje em dia constitui a lin-
ceis de achar e consertar, costuma- processador do CLP opera com uma guagem padrão, mas não a única, de
va ser excessiva. série de instruções e dados codifica- programação desses Controladores.
Uma outra circunstância compro- dos em forma de números binários, Os editores de programas na lin-
metedora consistia no fato de que, que ele pode entender; esse código é guagem “ladder” (normalmente para
como a programação lógica do pro- conhecido como código-objeto. Porém, microcomputadores), possuem um
cesso era realizada por conexões elé- a realização de programas diretamen- ambiente gráfico onde o programador
tricas fixas, eventuais alterações nes- te em código-objeto é inadequada, vai desenhando o diagrama de con-
sa lógica exigiam interrupções do pro- devido à dificuldade de lembrar a ins- tatos seguindo a lógica do programa
cesso produtivo para reconectar os trução que cada número representa, a ser implementado. Além disso, os
dispositivos. além de haver uma grande possibili- editores possuem uma opção de com-
No final da década de 50 e início dade de errar ao digitar-se um progra- pilação para traduzir o diagrama de-
dos anos 60, com o surgimento da ma constituído por números e muita senhado em um programa em códi-
tecnologia de estado sólido, disposi- dificuldade para encontrar os erros, go-objeto, o qual pode ser armazena-
tivos transistorizados passaram a ser caso o programa não execute as ações do como um arquivo executável. O pro-
utilizados, reduzindo assim alguns desejadas. grama executável deve ser transferi-
dos problemas existentes, entre eles, Por essa razão, nasceram as lin- do do computador ao CLP (operação
o tamanho dos painéis de controle. guagens de programação, que permi- conhecida como download), o que ge-
Porém, foi a criação dos componen- tem ao programador editar o progra- ralmente é feito por meio de um cabo
tes eletrônicos integrados em larga ma utilizando sentenças e estruturas de conexão entre portas seriais de
escala (LSI) e, principalmente, o de- escritas em forma bem mais próxima ambos equipamentos. Transferido o
senvolvimento dos micropro- da sua linguagem cotidiana e que re- aplicativo, o programa executor do
cessadores, nos anos 70, que permi- presentam melhor a ação a ser exe- CLP pode executá-lo dispensando o
tiram a miniaturização dos con- cutada. Nos computadores tradicio- computador, que pode assim ser
troladores digitais de processos e o nais, algumas linguagens já são mui- desconectado. Alguns modelos de
aparecimento dos Controladores Ló- to conhecidas e de domínio de uma CLP possuem uma bateria para man-
gicos Programáveis. grande quantidade de programadores, ter armazenado o aplicativo na memó-
Essa primeira geração de CLPs tais como C ou Pascal. O texto do pro- ria RAM sem perdê-lo ao desligar o
foi melhorando com a inclusão de grama escrito nessas linguagens é equipamento.
outros recursos importantes, entre conhecido como programa fonte, e Entretanto, outros modelos de CLP
eles, interfaces de operação e pro- deve passar por um processo chama- possuem um keypad com teclas com
gramação de fácil utilização, instru- do compilação, que consiste em tra- os contatos, entre outras opções, de
ções aritméticas, lógicas e de ma- duzir as sentenças escritas nessas lin- maneira tal que o programador pode
nipulação de dados, recursos de guagens ao código-objeto que o ir introduzindo o programa diretamen-
comunicação via redes de CLP, pos- processador possa entender, para o te no CLP, sem necessidade de dese-
sibilidades de configuração especí- programa poder ser executado. nhar o diagrama previamente no com-
fica para cada aplicação mediante Os CLPs nasceram com a neces- putador. Esses CLPs possuem na sua
o uso de módulos específicos sidade de substituir os painéis de con- memória um programa monitor, que
intercambiáveis, canais únicos de trole a relés; portanto, uma linguagem vai lendo o teclado e gerando o códi-
transferência de dados, ou de programação que fosse familiar à go-objeto correspondente na área de
barramentos, onde são conectadas experiência dos técnicos e engenhei- memória destinada ao aplicativo.
quantidades consideráveis de ros, acostumados com essa lógica, Com os recursos oferecidos pelas
sensores e atuadores, entre outros seria a escolha mais adequada para novas gerações de micropro-
muitos recursos. a geração de programas próprios para cessadores, a representação simbóli-

Figura 1 - Diagrama "ladder" básico. Figura 2 - Diagrama "ladder" da função NOT. Figura 3 - Diagrama "ladder" da função AND.

MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002 29


AUTOMAÇÃO
ca dos programas tornou-se, em al- delo possui um conjunto de instruções Onde I0 é a entrada digital nú-
guns casos, impossível de ser específicas, e por tal motivo, recomen- mero 0 do CLP e Q0 é a saída digi-
implementada por meio de um diagra- da-se que, ao se implementarem pro- tal número 0 do CLP. Desta manei-
ma de contatos. É o caso das senten- gramas reais, realize-se primeiramen- ra, fica claro nesse diagrama de con-
ças que representam chamadas a te um estudo detalhado do manual tatos que o estado da saída Q0 de-
sub-rotinas, saltos a outras instruções, fornecido pelo próprio fabricante. penderá do estado da entrada I0:
chamadas a procedimentos e fun- quando esta for ativada, fechando a
ções, e algumas sentenças de A LINGUAGEM “LADDER” chave I0, se fechará o circuito elé-
processamento aritmético ou lógico. trico entre os pólos virtuais da fonte
Por essa razão, alguns programas de O diagrama de contatos de um de alimentação (representados pelas
editoração de aplicativos para CLP programa realizado em linguagem duas linhas verticais) e se ativará,
possuem outras linguagens alterna- “ladder” consiste em um desenho for- portanto, a saída Q0. Se, por exem-
tivas de programação, que contem- mado por duas linhas verticais, que plo, conectarmos um pulsador à en-
plam essas outras opções. A mais representam os pólos positivo e ne- trada digital I0 do CLP, e uma lâmpa-
utilizada dessas outras linguagens gativo de uma bateria ou fonte de ali- da à sua saída digital Q0 (a forma de
é a de “mnemônicos booleanos”, mentação genérica. Entre essas duas conexão depende da interface de en-
que consiste em um conjunto de ins- linhas verticais são desenhados ra- trada/saída), o que ocorrerá ao exe-
truções representadas por peque- mais horizontais que possuem cha- cutar esse programa é que a CPU irá
nas palavras, chamadas de ves, que podem ser de lógica normal- continuamente efetuar a leitura da
mnemônicos, seguidas de dados so- mente aberta ou fechada, e que re- entrada I0, e atribuirá à saída Q0 o
bre os quais a instrução opera como, presentam os estados das entradas valor lido. Em outras palavras, se o
por exemplo, os números de entra- do CLP. Nesses ramais horizontais pulsador for fechado, fará com que a
das e saídas, operandos em uma são representadas (em geral com um entrada I0 passe a nível lógico 1, o
operação aritmética ou lógica, etc. círculo) as saídas do CLP, de manei- que implicará que a saída, segundo o
Essa linguagem, muito próxima da ra tal que o estado delas depende do programa, passe também a nível ló-
linguagem Assembly, para mi- estado das entradas desse mesmo gico 1, acendendo a lâmpada
croprocessadores, embora seja ramal. conectada em Q0.
mais difícil de implementar, é mais Por exemplo, um programa básico
condizente com a forma como os de uma entrada (sensor) controlando Implementação
processadores operam e, portanto, uma saída (atuador) terá o aspecto da função NOT
a maneira mais racional de progra- mostrado na figura 1.
mar um CLP. Se o projetista desejar utilizar ló-
Neste artigo, centralizaremos a gica negativa, isto é, que o estado da
nossa atenção na realização de pro- saída seja o inverso do estado da en-
gramas na linguagem “ladder”, por ser trada, deverá programar a entrada I0
a mais utilizada na programação de como uma chave normalmente fecha-
CLPs, mas sem deixar de observar da, de modo que quando essa entra-
que, por nos encontrarmos em um da se ativar, se abra o circuito entre
mundo tecnologicamente bastante di- os pólos vir tuais da bateria,
nâmico, essas linguagens menciona- desativando a saída Q0. O diagrama
das podem ser suplantadas de uma “ladder” correspondente terá, então, o
hora para outra por outras mais avan- aspecto ilustrado na figura 2.
çadas. Observe que isso não implica
Finalmente, cabe observar que tais Tabela 1 - Tabela-verdade do diagrama da que o pulsador, ou genericamente,
linguagens não são únicas para todos figura 4. o sensor conectado à entrada I0,
os tipos de CLPs, mas que cada mo-

Figura 4 - Diagrama “ladder” da função AND Figura 6 - Diagrama “ladder” da função OR


com um contato NF. Figura 5 - Diagrama “ladder” da função OR. com um contato NF.

30 MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002


AUTOMAÇÃO
deva ser normalmente fechado, mas chaves que representam as entra- só estará desativada quando esti-
que a lógica que o programa das em série. verem desativadas as duas entra-
aplicativo implementa é a lógica A seguir, é apresentado na figura das I0 e I1. Se alguma delas (ou
negativa, ao contrário do exemplo 4 um exemplo em que uma dessas as duas) estiverem ativadas, em
anterior. Isso significa que, caso a chaves é normalmente fechada. estado lógico 1, o programa exe-
CPU leia na entrada I0 o valor 0 Isso implica em que a saída Q0 cutor ativará a saída, alimentando
(pulsador desativado), colocará na só estará ativada quando a entrada o atuador ligado nela. Na lógica do
saída Q0 o valor 1, acendendo a I0 estiver também em estado lógico diagrama de contatos, o circuito
lâmpada ou ativando o atuador 1 (fechando a primeira chave), e a v i r t u a l e s t a r á fe c h a d o q u a n d o
conectado nela. Se o programa exe- entrada I1 estiver desativada em es- qualquer uma, ou as duas chaves,
cutivo, ao efetuar a varredura, ler na tado lógico 0 (mantendo a segunda estiverem fechadas, ativando as-
entrada I0 o valor 1 (pulsador ativa- chave fechada). Em outras palavras, sim a saída Q0.
do), escreverá na saída Q0 o valor a lógica do programa se cor- Aqui também pode acontecer
0 apagando a lâmpada. responde com a tabela-verdade que o estado da saída dependa de
(tabela1). mais de duas entradas. Nesse
Implementação Onde se deve entender o esta- caso, basta desenhar no ramal
da função AND do 0 como entrada ou saída correspondente todas as chaves
desativada, e o estado 1 como en- correspondentes a todas as entra-
Quando se quiser que uma saí- trada ou saída ativada. das das quais depende a saída em
da fique ativada apenas quando paralelo.
dois sensores estiverem ativados Implementação Atente para o exemplo dado na
juntos, deveremos implementar a da função OR figura 6 em que uma dessas cha-
função AND no diagrama “ladder”, ves é normalmente fechada.
o qual terá o aspecto exibido na Quando se desejar que uma saí- Nesse caso, a saída Q0 estará ati-
figura 3. da se ative diante da ativação de vada quando se ativar a entrada I0,
Assim, seguindo a lógica descri- qualquer uma de duas entradas, quando se desativar a entrada I1, ou
ta pela tabela verdade da função AND, dever-se-á implementar uma função quando se cumprirem ambas as con-
a saída Q0 só estará ativada quando OR no diagrama “ladder”, o qual dições; pode ser visto de modo inver-
as duas entradas, I0 e I1, estiverem terá o seguinte aspecto, visto na fi- so: a saída Q0 só estará desativada
ativadas. Caso alguma delas se en- gura 5. quando a entrada I0 estiver desativada
contre em estado lógico 0 (entrada Assim, seguindo a lógica defi- e a entrada I1 estiver ativada, único
desativada), a saída Q0 estará nida pela função OR, a saída Q0 caso em que o caminho entre os pó-
desativada. Na lógica do diagrama de los virtuais da bateria do diagrama fica
contatos, apenas quando as duas aberto. Em outras palavras, esse dia-
chaves estiverem fechadas é que o grama responde à tabela-verdade 2
circuito virtual estará fechado e, por- (tabela 2).
tanto, será ativada a saída Q0, ativan-
do o atuador ligado nela. Implementação
Obviamente, assim como na fun- da função NAND
ção AND, o estado da saída pode
depender de mais de duas entradas. Se desejarmos que uma saída
Nesse caso, é suficiente desenhar esteja desativada apenas quando
no ramal correspondente todas as duas entradas estiverem ativadas,
Figura 7 - Diagrama “ladder” da função deve-se implementar no diagrama
NAND.
“ladder” uma função NAND. Para
implementar tal função, existem
duas possibilidades.

Tabela 2 - Tabela-verdade do diagrama da


figura 6, onde a lógica dos estados é a Figura 8 - Diagrama “ladder” alternativo da
mesma utilizada no exemplo anterior. função NAND. Figura 9 - Diagrama “ladder” da função NOR.

MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002 31


AUTOMAÇÃO
A primeira delas é aplicar a “lei de Também aqui, obviamente, po- diagrama, com I0 e I1 como variá-
De Morgan” observando que: A · B = demos implementar a função NAND veis de entrada e Q0 como variável
A + B . O aspecto do diagrama de con- para mais de duas entradas com de saída, responde àquela da fun-
tatos é o ilustrado na figura 7. qualquer uma das duas possibilida- ção NOR.
Observe-se que a tabela-verda- des descritas. A segunda possibilidade, simi-
de que representa a lógica desse larmente ao descrito na seção an-
diagrama, com I0 e I1 como variá- Implementação terior, consiste em aplicar a fun-
veis de entrada e Q0 como variável da função NOR ção OR representando-a em uma
de saída, responde àquela da fun- variável intermediária, para apli-
ção NAND. Se quisermos que uma saída car a função NOT nessa variável.
A segunda possibilidade é esteja ativada apenas quando duas Assim, o aspecto do diagrama de
implementar uma função AND se- entradas estiverem desativadas, contatos seria o apresentado na
guida de uma função NOT. Para deveremos implementar no diagra- figura 10.
isso, seria necessária a utilização ma de contatos uma função NOR. Veja que a saída “virtual” M0 esta-
de uma variável intermédia, que Neste caso, também contamos com rá desativada quando as duas entra-
representasse o resultado da fun- as duas possibilidades descritas na das, I0 e I1, estiverem desativadas,
ção AND e sobre a qual aplicaría- seção anterior. respondendo à lógica da função OR.
mos a função NOT. Efetivamente, A primeira é aplicar a “lei de De Isso significa que, quando o progra-
na maioria dos CLPs estão dispo- Morgan”, lembrando que A + B = ma executor realizar a varredura, co-
níveis para o programador uma A·B locará nessa posição de memória cha-
série de bits em posições de me- O aspecto do diagrama de con- mada de M0 o bit correspondente à
mória na área da tabela de entra- tatos, então, seria aquele desenha- lógica descrita. Em seguida, colocará
da/saída, posições que não se do na figura 9. no bit correspondente à saída real Q0,
correspondem com entradas e saí- Observe-se que a tabela-verda- o estado contrário, isto é, o programa
das reais, mas estão lá para o pro- de que representa a lógica desse implementará uma função NOT com
gramador utilizar como variáveis. esse bit M0 como entrada e Q0 como
Assim sendo, o diagrama de con- saída.
tatos poderia ficar com o aspecto Também neste caso, obviamen-
mostrado na figura 8. te, podemos implementar a função
Note que a saída “virtual” M0 es- NOR para mais de duas entradas,
tará ativada quando as duas entra- com qualquer uma das duas possi-
das, I0 e I1, estiverem ativadas, res- bilidades descritas.
pondendo à lógica da função AND.
Isso significa que, quando o progra-
ma executor realizar a varredura,
colocará nessa posição de memó-
ria (chamada de M0) o bit corres-
pondente à lógica descrita. Em se-
guida, colocará no bit correspon-
dente à saída real Q0, o estado
c o n t r á r i o, i s t o é , o p r o g r a m a
implementará uma função NOT
com esse bit M0 como entrada e
Q0 como saída.
Figura 12 - Diagrama “ladder” do circuito de
intertravamento.

Figura 10 - Diagrama “ladder” alternativo da Figura 11 - Diagrama “ladder” da expressão


função NOR. lógica. Figura 13 - Circuito de SET e RESET.

32 MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002


AUTOMAÇÃO
Elaboração É claro que podemos (e sempre binacional, isto é, uma lógica onde o
de circuitos será conveniente) simplificar primei- estado das variáveis de saída depen-
ro essa expressão, antes de de exclusivamente dos estados das
Evidentemente, em muitas situa- implementar o diagrama de conta- variáveis de entrada nesse momento.
ções deveremos implementar lógi- tos. Isso é possível aplicando as “leis Todavia, deve-se atentar para o que
cas correspondentes a expressões de De Morgan” e as propriedades da acontece com a lógica do seguinte
algébricas mais complexas, devido álgebra de Boole. Mas, a título de diagrama de contatos; veja figura 12.
ao fato de que o estado do atuador ilustração implementaremos um dia- Qual será o estado da saída Q0
poderá depender de combinações grama de contatos seguindo a lógi- quando as entradas I0 e I1 estiverem
complexas de estados de vários ca dessa expressão sem simplifica- desativadas? Tudo dependerá do es-
sensores. Isso sempre será possí- ção alguma. Tal diagrama poderá ter tado anterior dessas entradas; isto
vel implementar utilizando variáveis o aspecto visto na figura 11. quer dizer que a saída já não mais
intermédias. Onde supomos as variáveis de depende exclusivamente da condição
Por exemplo, suponha-se que se entrada A, B e C conectadas às en- das entradas nesse momento, mas de
deseja implementar em um diagra- tradas I0, I1, e I2, respectivamen- um histórico desses estados. A lógica
ma de contatos a lógica represen- te, e a variável S na saída Q0. desse diagrama não é mais
tada pela expressão algébrica se- Observe-se que, assim como na combinacional, mas sim seqüencial.
guinte, onde o estado da função expressão lógica aparece mais de Se inicialmente a entrada I0 es-
(saída) depende dos estados de três uma vez a mesma variável, aqui tiver desativada, seja qual for o es-
variáveis binárias (entradas) chama- também utilizamos a mesma entra- tado da entrada I1, a saída virtual
das de A, B e C: da em mais de um ramal. Isso não M0 estará desativada e, portanto, a
representa inconveniente algum. saída real Q0 também. Ao se ativar
S=A·B+C+B·A+B Quando o programa executor a entrada I0 (mantendo I1
efetuar o ciclo de varredura, lerá os desativada), se fechará o caminho
estados das três entradas I0, I1, e entre os pólos virtuais da bateria,
I2, e escreverá nas posições de me- ativando as saídas M0 e Q0. Mas,
mória correspondentes, M0 a M6, os ao ativar a saída M0, se fechará o
estados respectivos à lógica descri- circuito pelo outro ramal, porque
ta pelo programa, para finalmente também estará se fechando a cha-
estabelecer o estado da saída Q0 ve M0, chave e saída tem seu esta-
segundo esta lógica. do armazenado no mesmo bit da
memória. Assim sendo, se posterior-
Circuitos de mente for desativada a chave I0, a
intertravamento saída M0 per manecerá ativada,
uma vez que o circuito permanece
Figura 14 - Circuito de detecção de borda.
Até agora, todos os exemplos mos- fechado pelo ramal inferior. Mudou
trados respondem à lógica com- o estado da saída mesmo tendo no-
vamente as duas entradas
desativadas. Essa situação persis-

Figura 16 - Exemplo de aplicação de um


Figura 15 - Diagrama de tempos do circuito de detecção de borda. circuito de detecção de borda.

MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002 33


AUTOMAÇÃO
te até ativar-se a entrada I1, abrin- combinações e seqüências de es- Circuitos de
do o circuito e desativando a saída tados nas entradas. detecção de borda
M0, e logo também a chave M0. Se Finalmente, cabe destacar que al-
depois se desativar I1, o circuito per- guns modelos de CLP permitem utili- Existem algumas situações em
manecerá aberto e portanto a saí- zar uma saída real também como en- que é necessário registrar não o
da M0 desativada. trada virtual. Nesse caso, faz-se des- estado de uma entrada, mas o ins-
Em síntese, I0 é chamado de necessária a utilização da variável tante em que essa entrada comu-
pulsador de start , pelo fato de que M0, uma vez que tanto saída como ta. Isso é realizado por meio de
ao ser pressionado ativa a saída, chave podem ser chamadas de Q0. circuitos de detecção de borda,
a qual permanece nessa condição que podem detectar tanto o flanco
mesmo depois de soltar o Sentenças SET e RESET ascendente (instante de ativação
pulsador, e I1 é chamado pulsador da entrada), como o flanco des-
de stop , porque ao ser pressiona- Uma outra maneira de conseguir cendente (instante de desativação
do desativa a saída, a qual per- um intertravamento é através do uso da entrada). Esses circuitos se
manece nesse estado mesmo da sentença SET, a qual permite ati- aproveitam da característica dis-
após desativar I1. var uma saída ante uma condição creta do CLP e do tempo de var-
Este circuito de intertravamento, de entrada e permanecer nesta con- redura em que a CPU demora para
também conhecido como circuito de dição mesmo mudando o estado da ler os estados das entradas. Ob-
relé, devido ao fato de que a sua ló- entrada. Para desativar a saída, serve o seguinte exemplo, dado na
gica também pode ser imple- deve-se utilizar a sentença RESET, figura 14.
mentada com um relé convencional, a qual desativa a saída ante uma Inicialmente, quando a entrada
é a base de todos os circuitos de condição da entrada e permanece I0 está desativada, as variáveis
lógica seqüencial, os quais podem desativada mesmo mudando essa M0 e M1 estão em estado lógico
ser muito mais complexos e com condição de entrada. 0. Quando o programa executor ler
saídas dependendo de diversas Os diferentes modelos de CLP um estado lógico 1 na entrada I0,
divergem na forma de implementar e estado lógico 0 na variável M1,
esse par de instruções, daremos colocará um 1 nas variáveis M0 e
aqui um exemplo genérico, ilustra- M1. Mas no seguinte ciclo de var-
do na figura 13. redura, ao ter lido um 1 na variá-
Aqui, diante da ativação da en- vel M1, colocará um 0 na variável
trada I0, se estabelecerá (SET) na M0. Isso implica que a variável M0
saída Q0 o estado lógico 1, o qual permanecerá em estado lógico 1
permanecerá nessa condição inde- apenas durante um ciclo de var-
finidamente, mesmo mudando o es- redura, o que normalmente dura
tado da entrada. Diante da ativação uns poucos microssegundos (mui-
da entrada I1, se desativará tos CLP permitem fixar o tempo de
(RESET) a saída Q0, continuando
Figura 17 - Diagrama “ladder” de um nesse estado mesmo desativando-
temporizador. se a entrada I1.

Figura 19 - Diagrama “ladder” de um


Figura 18 - Diagrama de tempos de um circuito temporizador. temporizador com retardo no desligamento.

34 MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002


AUTOMAÇÃO
varredura). O estado dessa variá- nha inferior se fechará agora, manten- onde se determina o tempo de re-
vel será um impulso de cur ta du- do M2 ativado e, por conseguinte, a tardo, especificado como um múl-
ração que aparece no instante de saída Q0 também. Ao se ativar pela tiplo de uma base de tempo de-
ativação da entrada I0. segunda vez I0, será ativada a variá- terminada; nesse exemplo, a base
O diagrama de tempos que re- vel M0 abrindo a linha inferior do ter- de tempo foi escolhida 0,1s e o
presenta essa situação é o mostra- ceiro ramal e, logo, desativando M2 valor de PV em 300, o que signifi-
do na figura 15. e conseqüentemente a saída Q0. No ca que o retardo será de 30 s. A
Atente para o fato de que, na re- seguinte ciclo de varredura, ao se base de tempo em geral pode ser
alidade, M0 não mudará de estado desativar a variável M0, a variável escolhida entre algumas opções
no exato instante de comutação de M2 ainda permanecerá desativada, pré-determinadas. O símbolo %
I0, que é o instante de ativação do por estar o terceiro ramal aberto, especifica endereço de memória,
sensor conectado nessa entrada, prosseguindo a saída Q0 que pode ser de entrada (%I0),
mas a partir do seguinte ciclo de desativada. saída (%Q0), ou auxiliar do tipo re-
varredura, permanecendo em esta- gistrador (%R1). A contagem de
do lógico 1 apenas durante um ci- Temporizadores impulsos, cada um acontecendo a
clo. cada período de tempo determina-
Um exemplo de aplicação práti- A maioria dos CLPs atuais pos- do pela base de tempo (no exem-
ca desse circuito é quando se de- suem um recurso de retardo de plo: 0,10s) é ar mazenada numa
seja ativar e desativar uma saída tempo, ou temporizador. A manei- variável auxiliar endereçada em
com um único pulsador. Quando ra como ele é inserido no diagra- %R1. Assim, quando se ativar a en-
este é pressionado, se ativará a saí- ma de contatos, assim como algu- trada I0, começará uma contagem
da, e quando for pressionado pela mas par ticularidades sobre seu de impulsos até 300 (ou 30s). De-
segunda vez, será desativada, e uso são próprias de cada modelo corrido esse tempo, será ativada a
assim por diante. O circuito comple- de CLP. Daremos aqui uma defini- saída Q0. Se, no entanto, a entrada
to para essa implementação pode fi- ção genér ica, a qual deve ser I0 se desativar antes da contagem
car com o aspecto exibido na figu- adaptada segundo o manual for- finalizar, a saída Q0 não se ativa-
ra 16. necido pelo fabricante na hora de rá em momento algum, zerando a
Os dois primeiros ramais são ser implementado um circuito com contagem armazenada em %R1
iguais aos do diagrama anterior, a temporizador. novamente. O diagrama de tempos
variável M0 só se ativará quando se O diagrama de contatos básico ilustrado na figura 18 traz essa si-
ativar o pulsador conectado à entra- é similar ao seguinte, indicado na fi- tuação.
da I0 e permanecerá ativada durante gura 17. Além desse diagrama básico, é
um impulso. Ao se ativar M0, ativar- Onde I0 é a entrada que contro- possível implementar outros dia-
se-á M2, devido a que a linha superi- la a ativação da base de tempo e gramas de contatos que utilizam
or do terceiro ramal estará fechada, e PV ( Preset Value ) é a entrada temporizadores e apresentam ou-
portanto se ativará a saída Q0. Um tros efeitos. Mostraremos, a título
ciclo de varredura depois, ao se de ilustração, apenas um par de
desativar M0, o terceiro ramal ainda exemplos. O primeiro deles con-
continuará fechado, devido a que a li- siste em ativar uma saída quando
se ativa uma entrada, e mantê-la

Figura 20 - Diagrama de tempos do diagrama Figura 21 - Diagrama de contatos de um Figura 22 - Diagrama de tempos do oscilador
de contatos anterior. oscilador astável. astável.

MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002 35


AUTOMAÇÃO
nessa condição até 30 s depois da portanto também o segundo, que des- Off-delay timer (ofdt):
entrada se desativar (efeito de re- sa maneira só se manteve ativado No temporizador off-delay, a con-
tardo no desligamento). O diagrama durante um ciclo de varredura. Assim, tagem de tempo permanece zerada
de contatos que produz tal efeito é volta-se à condição inicial, recome- enquanto a entrada de controle esti-
aquele fornecido na figura 19. çando o ciclo novamente. Isto dura ver ativada. Diante da desativação da
O funcionamento desse diagra- enquanto I0 permanecer ativada. entrada de controle, inicia-se a con-
ma de contatos pode ser entendido Em muitos modelos de CLPs há tagem de tempo, a qual se detém
mais claramente mediante um dia- outros tipos de temporizadores. Em quando chega ao valor presetado ve-
grama de tempos, conforme mostra seguida, serão analisados dois dos zes a base de tempo. A saída prosse-
a figura 20. mais freqüentemente encontrados gue ativada sempre que a contagem
Deve-se notar que agora é a . de tempo for menor que o valor
desativação de I0, juntamente com a On-delay timer (ondtmr): presetado vezes a base de tempo, o
manutenção da variável M0 em esta- O temporizador on-delay acumu- que inclui o tempo que a entrada de
do lógico 1, a condição que inicializa la tempo enquanto recebe energia controle continuar ativada (devido a
o temporizador. Mas quando a chave da entrada de controle. A que durante esse tempo a contagem
M1 for fechada (30s depois), é que a desativação da entrada de controle é igual a zero). Veja o exemplo mos-
variável M0 será resetada. Durante a detém a contagem de tempo, mas o trado na figura 25 e 26.
ativação dessa variável é que a saída contador não é zerado, o que acon-
real Q0 é ativada. tece apenas diante da ativação de Contadores
O segundo exemplo que será uma entrada de Reset . O
apresentado é o clássico “oscilador temporizador passa energia na saí- Um outro recurso muito útil que a
astável”, realizado com dois da quando o tempo excede o valor maioria dos CLPs traz são os conta-
temporizadores; veja a figura 21. presetado vezes a unidade de tem- dores, os quais permitem quantificar
O diagrama de tempos que ilus- po. A contagem de tempo deve ser a ocorrência de eventos e executar
tra o funcionamento do oscilador é armazenada em uma posição de uma determinada ação depois de um
dado na figura 22. memória do tipo registrador. Atente determinado número de ocorrências.
Obviamente, a saída real Q0 para o exemplo mostrado na figura A maneira de implementar um conta-
acompanha o estado da chave M0. 23. dor em um diagrama “ladder” tam-
Deve-se obervar que, diante da ati- Acompanhe o diagrama de tem- bém varia bastante de um modelo
vação da chave principal I0, se ati- pos para o “on-delay”, na figura 24. de CLP para outro, sendo recomen-
vará o primeiro temporizador, cuja Neste exemplo, diante da ativa- dável, portanto, procurar o manual
contagem é armazenada no regis- ção da entrada de controle %I1 ini- do usuário para se informar sobre a
trador endereçado em %R1, fechan- cia-se a contagem de tempo, a qual forma de implementação específica
do a chave M0, t0 décimos de se- será ar mazenada no registrador no programa utilizado. Também exis-
gundo depois. Isso ativará o segun- %R5. A desativação de %I1 pára a tem diferentes tipos de contadores.
do temporizador, cuja contagem é contagem de tempo. Passados 5 Em alguns casos, os CLP têm con-
armazenada no registrador endere- segundos (50 vezes 0,1s) de tempo tadores apenas crescentes ou ape-
çado em %R4, e a chave M1 se total da entrada de controle ativa- nas decrescentes, enquanto que em
ativará t1 décimos de segundo após. da, será ativada a saída, a qual per- outros há contadores com uma en-
Mas, ao se ativar essa chave, se manecerá nessa condição até se trada de contagem crescente e ou-
desativará o primeiro temporizador e ativar a entrada de Reset %I2, a tra decrescente. Daremos aqui um
qual zera a contagem de tempo.

Figura 23 - Exemplo de utilização do Figura 24 - Diagrama de tempos Figura 25 - Exemplo de utilização do


temporizador “on-delay”. do exemplo da figura 23. temporizador “off-delay”.

36 MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002


AUTOMAÇÃO
variável auxiliar do tipo registrador. Ob-
serve o exemplo trazido na figura 27.
Neste exemplo, a saída %Q1 será
ativada a partir da quinta ativação da
entrada %I1. O valor da contagem é
guardado no registro %R1, e é zerada
diante da ativação da entrada %I2.

Contador decrescente (dnctr):


Idem ao anterior, só que a conta-
gem do número de ativações da en-
trada de controle será decrescente a
partir do valor estabelecido em PV. A
saída será ativada quando a conta-
gem chegar a zero ou diminuir por
baixo de zero. A ativação da entrada
de Reset levará a contagem ao valor
presetado.

Figura 26 - Diagrama de tempos do exemplo dado. Outras instruções

exemplo genérico de contadores Além dessas instruções, também


crescentes e decrescentes. encontramos disponíveis outras re-
lacionadas operações matemáticas
Contador crescente (upctr): e lógicas, de comparação de dados
Função que conta em forma cres- (menor que, igual que, etc.) e de
cente o número de ativações da en- manipulação de dados (desloca-
trada de controle. Possui uma entra- mentos de bytes e words, registros
da de controle, uma entrada de com- de deslocamento, conversão entre
paração (PV, onde pode ser colocada dados BCD e inteiro, pulos e sub-
uma constante), uma entrada de rotinas). Cada CLP possui sua ma-
Reset de contagem, e uma saída, a neira específica de implementar es-
qual será ativada se a contagem do sas instruções, sendo, por conse-
número de ativações da entrada de guinte, recomendável consultar o
controle igualar ou ultrapassar a en- manual de usuário do programa es-
Figura 27 - Exemplo de utilização de um trada de comparação. O valor da con- pecífico do CLP.
contador crescente.
tagem deverá ser guardado em uma
EXERCÍCIO PROPOSTO

A título de exercício, propõe-se ao


leitor tentar implementar um diagra-
ma de contatos genérico para o con-
trole da seguinte instalação; veja fi-
gura 28.
Através do programa, o usuário
deverá ser capaz de selecionar o
modo de funcionamento: automático
ou manual.
No manual, a bomba poderá ser
ligada pressionando-se o botão
LIGA e desligada pressionando-se
o botão DESLIGA. Neste modo, as
bóias de nível não têm nenhuma
ação.
No automático, a bomba será li-
gada 10 s após a detecção de NÍ-
VEL BAIXO e desligada 10 s após
Figura 28 - Esquema da instalação proposta. a detecção de NÍVEL ALTO. l

MECATRÔNICA ATUAL Nº 5 - AGOSTO/2002 37

Você também pode gostar