Você está na página 1de 50

Controladores Lgicos Programveis - Bsico

SUMRIO
INTRODUO

CONCEITUAO HISTRICA DO CONTROLADOR LGICO PROGRAMVEL

1.

DIVISO HISTRICA

2.

APLICAES PARA CLPS

3.

CONCEITOS E INFORMAES GERAIS

4.

REVISO TERICA

11

5.

ARQUITETURA E PROCESSAMENTO DO PROGRAMA

19

6.

CAPACIDADE DE MEMRIA

21

7.

ESTRUTURA E ORGANIZAO DE MEMRIA E I/OS

22

8.

PROCESSAMENTO DE PROGRAMA

28

9.

CONSTRUO DO CONTROLADOR LGICO PROGRAMVEL

31

10. LINGUAGENS DE PROGRAMAO - CLP

38

11. DECLARANDO VARIVEIS

49

12. ESTUDO DE CONTROLADOR LGICO PROGRAMVEL

50

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico

INTRODUO

A automao ocupa atualmente espao importante em muitos setores. Os recursos


investidos em automao industrial esto sendo voltados para o aumento da qualidade e
da produtividade. Um dos equipamentos que est sempre entre os mais aplicados, tanto
em sistemas de manufaturas quanto de processos, o Controlador Lgico Programvel
CLP, este segmento movimenta anualmente cifras gigantescas no mundo e tem sua
parcela no Brasil em produtos e servios.

O Controlador Lgico Programvel , portanto, objeto de estudo em diversos


setores, pois representa uma maneira prtica e econmica de automao. Tanto assim que
estes equipamentos podem ser encontrados em mdulos, tornando-se bastante versteis, o
que possibilita tambm a utilizao por aqueles que buscam pequenas automaes.

Esta apostila, que apenas parte de um conjunto de informaes de nosso curso,


tem como objetivo apresentar os fundamentos para o estudo dos Controladores Lgicos
Programveis, buscando direcionar os participantes realidade do mercado de trabalho,
bem como aprofundar os conhecimentos dos profissionais que j atuam na rea.

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico

Conceituao Histrica do Controlador Lgico Programvel


Um Controlador Lgico Programvel, ou Controlador Programvel conhecido
tambm por suas siglas CLP ou CP, respectivamente, no Brasil e pela expresso inglesa:
Programmable Logic Controller - PLC, um computador dedicado, baseado em um
processador que desempenha funes de controle de diversos tipos e diferentes nveis de
complexidade. Geralmente as famlias de Controladores Lgicos Programveis so
definidas pela capacidade de processamento de um determinado nmero de pontos de
Entradas e/ou Sadas (E/S), no entanto, existem outras questes que influenciam esta
definio, tais como: comunicao, memria, entre outras.

Um CLP era inicialmente indicado para lidar com sistemas caracterizados por
eventos discretos, ou seja, com processos em que as variveis assumem valores zero ou
um (ou variveis digitais, ou seja, que s assumem valores dentro de um conjunto finito).
No entanto, podem ainda lidar com variveis analgicas. As entradas e/ou sadas digitais
so os elementos discretos, as entradas e/ou sadas analgicas so os elementos variveis.

Os Controladores Lgicos Programveis, ou simplesmente CLPs como


chamaremos doravante estes equipamentos, esto muito difundidos nas reas de controle
de processos ou de automao industrial. No primeiro caso a aplicao ocorre nas
indstrias de processos contnuos, exemplos tpicos so indstrias qumicas e
petroqumicas, no outro caso a aplicao ocorre nas reas relacionadas com a produo
em linhas de montagem, por exemplo, na indstria automobilstica.

Em um sistema tpico, toda a informao dos sensores concentrada no CLP, que


de acordo com o programa em memria, define o estado dos pontos de sadas conectados
a atuadores. Os CLPs tm capacidade de comunicao de dados via canais seriais. Com
isto podem ser supervisionados por computadores formando sistemas de controle
integrados. Softwares de superviso interligam-se com redes de CLPs. Redes de campo
abertas (fieldbus) so de uso muito comum, permitindo aplicaes complexas como na
indstria automobilstica, siderrgica, de papel e celulose, entre outras.

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico

1. Diviso Histrica
Inicialmente, os CLPs ou PLCs eram chamados PCs - Programmable
Controllers, mas com o advento dos Computadores Pessoais (PCs - Personal
Computers), convencionou-se CLPs para evitar conflitos de nomenclatura. O
Controlador Lgico Programvel CLP surgiu na indstria automobilstica americana,
especificamente na Hydronic Division da General Motors, em 1968, para atender as
necessidades da indstria automobilstica, que at ento utilizava um hardware
chamado standard em seus processos de fabricao. Este hardware era um amontoado
de rels montados em uma placa para ser encaixada em uma segunda placa maior,
chamada Back-Plane (Placa Traseira). A Back-Plane era dotada de muitos terminais
que eram os contatos e as bobinas dos rels. Para se fazer a "lgica" de controle, bem
como o acionamento de diversos dispositivos da linha de produo era necessrio
conectar os terminais com muitos fios e eram estes prprios fios que faziam o papel dos
softwares modernos, ou seja, a lgica de controle do CLP. Sob a liderana do
engenheiro Richard Morley, foi preparada uma especificao que refletia as
necessidades de muitos usurios de circuitos reles, no s da indstria
automobilstica, como de toda a indstria manufatureira.
Nascia assim, um equipamento bastante verstil e de fcil utilizao, um
controlador seqencial que controlava a lgica da fbrica e os processos seqenciais,
chamado 084, pois foi o octagsimo quarto projeto da Bedford Associates. Para
desenvolver o mercado do 084, estes mesmos engenheiros da Bedford Associates,
inauguraram uma companhia chamada de MODICON (MOdular DIgital CONtrol) O
primeiro 084 foi instalado em Maro de 1969 na General Motors em Ypsilanti, desde
ento este equipamento vem sendo aprimorado, diversificando cada vez mais os setores
industriais e suas aplicaes.
Desde o seu aparecimento, at hoje, muita coisa evoluiu nos controladores
lgicos, como a variedade de tipos de entradas e sadas, o aumento da velocidade de
processamento, a incluso de blocos lgicos complexos para tratamento das entradas e
sadas e principalmente o modo de programao, a interface com o usurio e a
capacidade de comunicao destes equipamentos. Podemos didtica e historicamente
dividir os CLPs em geraes conforme a seguir:

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico

1 Gerao: Os CLPs de primeira gerao se caracterizam pela programao


intimamente ligada ao hardware do equipamento. A linguagem utilizada era o Assembly
que variava de acordo com o processador utilizado no projeto do CLP, ou seja, para poder
programar era necessrio conhecer a eletrnica do projeto do CLP. Assim a tarefa de
programao era desenvolvida por uma equipe tcnica altamente qualificada, gravando-se
o programa em memria EPROM, sendo realizada normalmente no laboratrio junto com
a construo do CLP.

2 Gerao: Aparecem as primeiras Linguagens de Programao no to dependentes


do hardware do equipamento, possveis pela incluso de um Programa Monitor no
CLP, o qual converte (no jargo tcnico, compila) as instrues do programa, verifica o
estado das entradas, compara com as instrues do programa do usurio e altera o estados
das sadas. Os Terminais de Programao (ou maletas, como eram conhecidas) eram na
verdade Programadores de Memria EPROM. As memrias depois de programadas eram
colocadas no CLP para que o programa do usurio fosse executado.

3 Gerao: Os CLPs passam a ter uma Entrada de Programao, onde um Teclado ou


Programador Porttil conectado, podendo alterar, apagar, gravar o programa do usurio,
alm de realizar testes (Debug) no equipamento e no programa. A estrutura fsica tambm
sofre alteraes sendo a tendncia para os sistemas modulares com bastidores ou racks.

4 Gerao: Com a popularizao e a diminuio dos preos dos microcomputadores


(normalmente clones do IBM PC), os CLPs passaram a incluir uma entrada para a
comunicao serial. Com o auxlio dos microcomputadores a tarefa de programao
passou a ser realizada nestes. As vantagens eram: a utilizao de vrias representaes
das linguagens; possibilidade de simulaes e testes; treinamento e ajuda por parte do
software de programao; possibilidade de armazenamento de vrios programas no
micro, entre outras.

5 Gerao: Atualmente existe uma preocupao em padronizar protocolos de


comunicao para os CLPs, de modo a proporcionar que o equipamento de um fabricante
converse com o equipamento de outro fabricante, no s CLPs, como controladores de
processos,

sistemas

supervisrios,

redes

internas

de

comunicao

outras,

proporcionando uma integrao a fim de facilitar a automao, gerenciamento e

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico

desenvolvimento de plantas industriais mais flexveis e normalizadas, fruto da chamada


globalizao. Existem Fundaes Mundiais para o estabelecimento de normas e
protocolos de comunicao.

Originalmente os CLPs foram usados em aplicaes de controle discreto (on/off liga/desliga), como os sistemas a rels, porm eram facilmente instalados, economizando
espao e energia, alm de possurem indicadores de diagnsticos que facilitavam a
manuteno. Uma eventual necessidade de alterao na lgica de controle da mquina era
realizada em pouco tempo, apenas com mudanas no programa, sem necessidade de
alterao nas ligaes eltricas. A dcada de 70 marca uma fase de grande aprimoramento
dos CLPs. Com as inovaes tecnolgicas dos microprocessadores, maior flexibilidade e
um grau maior de inteligncia, assim os Controladores Lgicos Programveis
incorporaram:
1972 - Funes de temporizao e contagem;
1973 - Operaes aritmticas, manipulao de dados e comunicao com
computadores;
1974 - Comunicao com Interfaces Homem-Mquina;
1975 - Maior capacidade de memria, controles analgicos e controle PID;
1979/80 - Mdulos de 1/0 remotos, mdulos inteligentes e controle de
posicionamento.

Nos anos 80 aperfeioamentos fizeram do CLP um dos equipamentos mais


atraentes na automao industrial. A possibilidade de comunicao em rede (1981) hoje
uma caracterstica indispensvel na indstria. Alm dessa evoluo tecnolgica, foi
atingido um alto grau de integrao, tanto no nmero de pontos como no tamanho fsico,
que possibilitou o fornecimento de minis e micros CLPs (a partir de 1982). Atualmente,
os CLPs apresentam as seguintes principais caractersticas:
Mdulos de I/0 de alta densidade (grande nmero de pontos de I/0 por mdulo);
Mdulos remotos controlados por uma mesma CPU;
Mdulos inteligentes (coprocessadores que permitem realizao de tarefas
complexas: controle PID, posicionamento de eixos, transmisso via rdio ou
modem, leitura de cdigo de barras);

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico


Softwares de programao em ambiente Windows (facilidade de programao);
Integrao de Aplicativos Windows (Access, Excel, Visual Basic) para
comunicao com CLPs;
Recursos de monitoramento da execuo do programa, diagnsticos e deteco de
falhas;
Instrues avanadas que permitem operaes complexas (ponto flutuante,
funes trigonomtricas);
Scan Time (tempo de varredura) reduzido (maior velocidade de processamento)
devido utilizao de processadores dedicados;
Processamento paralelo (sistema de redundncia), proporcionando confiabilidade
na utilizao em reas de segurana;
Pequenos e micros CLPs que oferecem recursos de hardware e de software dos
CLPs maiores;
Conexo de CLPs em rede (conexo de diferentes CLPs na mesma rede,
comunicao por meio de Rede Ethernet).

O mercado recebe constantemente novos e melhores produtos que agregam


valores e ao mesmo tempo que reduzem o custo das solues baseadas em CLPs.
Portanto, indispensvel uma atualizao contnua por intermdio de contato com
fabricantes e fornecedores, sendo a Internet uma tima opo.

2. Aplicaes para CLPs


Os controladores programveis so usados em uma larga variedade de aplicaes,
como para substituir circuitos lgicos eletromecnicos em mquinas antigas. Isto pode
reduzir o tempo de manuteno de um equipamento. Mais importante, os CLPs podem
aumentar a velocidade e a capacidade de um equipamento mais antigo. Fazer um
retrofitting de um equipamento antigo com um CLP para seu controle quase como
comprar uma mquina nova. CLPs esto sendo usados para controlar processos como a
produo qumica, produo de papel, produo de ao, e processamento de alimentos.
Em processos como estes, CLPs so usados para controlar a temperatura, presso,
mistura, concentrao, e assim por diante. So usados tambm para controlar a posio e
a velocidade em muitos tipos de processos de produo. Por exemplo, podem controlar

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico

sistemas automatizados complexos de armazenamento e de fornecimento assim como


equipamentos como robs e mquinas-ferramenta. Muitas empresas, consideradas
pequenas, comearam a produzir equipamentos especializados que so controlados
normalmente por CLPs e que possuem um custo bastante razovel. Exemplos deste tipo
de equipamento so transportadoras, paletizadoras, empacotadoras, processadores e
mquinas para manipulao de material em geral. CLPs esto sendo usados
extensivamente no controle de posio e de velocidade. Um CLP pode controlar a
posio e a velocidade muito mais rapidamente e de forma mais precisa que os
dispositivos mecnicos, tais como as engrenagens. Um sistema de controle eletrnico
no somente mais rpido, mas tambm no se desgasta e no perde a preciso como os
dispositivos mecnicos. CLPs so usados para quase todo tipo de processo. As
companhias ferrovirias equiparam locomotivas para retificao de trilhos com CLPs, so
usados tambm para fazer soar em seqncias perfeitas os sinos em torres de igrejas, em
horas exatas durante do dia e da semana. So usados em serrarias para serrar e classificar
por tamanho a madeira, de maneira tima. Os usos de CLPs so limitados somente pela
imaginao de engenheiros e de tcnicos que os usam.

3. Conceitos e Informaes Gerais

Visando uma equalizao das informaes e linguajar entre os participantes, a


partir deste ponto apresentaremos os principais conceitos que sero utilizados ao longo do
nosso curso.

Informao: Informaes de dados so representadas e transmitidas por meios de sinais.


O sinal uma parte ou o todo de uma informao.

Sinais: Um sinal a representao fsica de informao de dados. Assim sendo, podemos


dizer que o comportamento da tenso da sada de um tacogerador no decorrer do tempo
(variao de sua rotao) um sinal da mesma forma que o nvel de tenso na entrada
do controlador programvel, a tenso do tacogerador pode ter qualquer valor entre zero e
um valor mximo (sinal analgico).

Prof Osglay Izdio - IFPE

Controladores Lgicos Programveis - Bsico

Sinal Binrio: Como j mencionamos o processador do controlador programvel verifica


a existncia ou no de tenso nas suas entradas e os elementos atuadores conectados ao
controlador, so ligados de acordo com o nvel lgico das suas sadas. Estes estados das
entradas e das sadas, descritos textualmente com certa dificuldade, so entendidos muito
mais facilmente com a conceituao de sinal binrio, a maioria dos sinais usados em
comandos tem somente dois valores distintos, da o termo binrio.

Nvel lgico: Aos dois valores que um sinal binrio pode conter damos o nome de nvel
lgico, e os identificamos com os algarismos 0 e 1 ou seja, 0 indica ausncia de
sinal (por exemplo: contato aberto) e 1 indica sinal presente (por exemplo: contato
fechado). Vide figuras a seguir.

Sinais Analgicos: Um sinal analgico a representao de uma grandeza que pode


assumir no decorrer do tempo qualquer valor entre dois limites determinados. Por
exemplo: a variao de valor hmico, em um sensor tipo PT100, que proporcional
temperatura a que o mesmo submetido.

Informaes digitalizadas: Digitalizar uma grandeza analgica significa dividir a


mesma em vrios segmentos de forma que se possa fazer posteriormente uma relao
entre uma quantidade de segmentos e a grandeza analgica medida.

Tecnologia dos Controladores Programveis: A tcnica de automao diferencia


comandos "programados" por fiao, de comandos programados por memria.
Apresentaremos a seguir as caractersticas bsicas dos comandos convencionais (por
fiao) e dos comandos programveis (Controladores Programveis).
Comandos programados por fiao: Tambm conhecido por comandos
convencionais, so aqueles cuja funo estabelecida pela escolha de seus
elementos de comando e pela interligao entre eles, isto , associao de contatos
em srie, paralelo, entre outros. A localizao dos diversos aparelhos no quadro
de comando e sua respectiva fiao, dependem neste caso da funo a ser
executada. Um comando programado por fiao somente pode ser montado
mecnica e eletricamente depois que todo o esquema eltrico esteja definido.
Qualquer

alterao

Prof Osglay Izdio - IFPE

posterior

na

lgica

de

funcionamento,

implica

Controladores Lgicos Programveis - Bsico

obrigatoriamente na alterao da fiao e possivelmente tambm na quantidade


dos aparelhos eltricos do painel, como por exemplo: rels auxiliares, rels de
tempo, entre outros.

Comandos programados por memria: Entre os aparelhos usados para


comando, cujo programa armazenado em memria, destacam-se os
controladores programveis. A funo dos comandos programados por memria
no depende to somente da configurao mecnica de seus componentes e da
respectiva interligao entre eles. Aos Controladores Programveis so ligados
elementos de comando (botoeiras, chaves fim de curso, sensores de proximidade,
etc) e os elementos atuadores (contatores, vlvulas, indicadores etc). A funo
deste comando, isto , a tarefa que ele deve realizar, no apenas definida pela
maneira como os elementos esto interligados, mas sim pelo programa gravado na
memria do controlador. Programar significa, ento, definir de que maneira os
atuadores sero acionados pelo controlador programvel em funo das
informaes fornecidas pelos sensores.

Figura 1 - Exemplo de Sinal Analgico

Prof Osglay Izdio - IFPE

10

Controladores Lgicos Programveis - Bsico

Figura 2 - Exemplo de Sinal Digital

Figura 3 - Exemplo de Sinal binrio

4. Reviso terica
Nesta etapa inicial tambm ser feita uma reviso de alguns pontos importantes
para a compreenso do funcionamento dos Controladores Lgicos Programveis.

Sistemas de numerao: O processador do Controlador Lgico Programvel no s


processa os nveis lgicos de entrada e sadas, como tambm precisa ler e processar

Prof Osglay Izdio - IFPE

11

Controladores Lgicos Programveis - Bsico

valores numricos. Devido ao fato de o processador ser constitudo de elementos que s


reconhecem os nveis lgicos 0 e 1, ele somente consegue interpretar valores
numricos que sejam representados com os algarismos 0 e 1. O sistema numrico que
trabalha apenas com estes dois algarismos o sistema binrio. Para melhor compreenso
do sistema de numerao binrio, vamos rever as caractersticas do sistema de numerao
do nosso dia a dia, que o sistema decimal.
Sistema numrico decimal: O sistema numrico decimal que utilizamos diariamente,
tem as seguintes caractersticas:

Dez algarismos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (Base 10).

Peso que so as potncias da base 10 (unidade, dezena, centena,


milhar...)

Um nmero decimal uma cadeia de dgitos em que cada um deles tem um peso
de acordo com a sua posio. O valor do nmero igual soma dos produtos de cada
digito pelo seu respectivo peso. A reparao do nmero decimal 205, , na realidade,
uma forma de se escrever a soma: 200+0+5. (duas centenas + 0 dezenas + 5 unidades).
Observe a lgica do sistema para representar o nmero 205:
Algarismo... 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Pesos: Potncia base 10
100 =1
101 =10
102 =100
103 = 1000

= unidade
= dezena
= centena
= milhar etc.

Exemplo:
205 = 2 x 102 + 0 x 101 + 5 x 100

Sistema numrico binrio: O sistema binrio apresenta as seguintes caractersticas:

Dois algarismos: 0 e 1 (base 2)

Pesos que so potncias da base 2 (1, 2, 4, 8, 16, 32, 64...)

Para se calcular o valor de um nmero binrio, devemos proceder exatamente


como para os nmeros decimais, ou seja, multiplicamos os algarismos pelo seu respectivo
peso (potncia de 2 para binrio e 10 para decimal) e em seguida somamos os produtos
obtidos.

Prof Osglay Izdio - IFPE

12

Controladores Lgicos Programveis - Bsico

Algarismo... 0 e 1
Pesos: potncias da base 2
20 = 1
21 = 2
22 = 4
23 = 8
24 = 16
25 = 32
26 = 64
27 = 128

Exemplo de representao de representao de um nmero binrio:


11001101 =

1x1=
0x2=
1x4=
1x8=
0 x 16 =
0 x 32 =
1 x 64 =
1 x 128 =
Soma

1
0
4
8
0
0
64
128
205

Sistema numrico Hexadecimal:


Pelo fato de os nmeros binrios possurem bem mais algarismos que os
respectivos nmeros decimais, lidar com eles para ns bastante difcil, principalmente
pela dificuldade que temos de memorizar os longos nmeros composto de zeros e uns (0,
1). Contamos neste caso com a ajuda de outro sistema numrico, o sistema hexadecimal,
pouco mais inteligvel e para o qual os nmeros binrios podem ser transformados sem
dificuldades.
O sistema hexadecimal tem as seguintes caractersticas:
Dezesseis Algarismos: 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. ( Base 16 )
Pesos: Potncias da base 16
160 = 1
161 = 16
162 = 256
163 = 4096
Exemplo: CD = (12 x 161) + (13 x 160) = 205

Prof Osglay Izdio - IFPE

13

Controladores Lgicos Programveis - Bsico

Identificao das Funes Lgicas: A seguir as formas usuais de identificarmos uma


funo lgica.

Descrio textual: mesmo as funes lgicas mais simples no so descritas


textualmente sem o risco desta descrio ficar incompleta, normalmente as descries so
extensas e tem interpretao dbia.

Tabela-verdade: nesta tabela so representadas todas as possibilidades de combinao de


nveis lgicos de sinal nas entradas e o nvel lgico resultante de cada combinao.
Diagrama sinal-tempo: a representao grfica do comportamento da sada da funo
em relao ao comportamento da(s) entrada(s) da funo, no decorrer do tempo.

lgebra lgica: tambm conhecida como lgebra Booleana. Funes binrias podem ser
descritas matematicamente por equaes Booleanas. A lgebra de Boole de fcil
interpretao, enquanto no se usam as funes com efeito de memorizao.

Smbolos grficos: quando analisamos funes separadamente, pode-se usar qualquer


das formas propostas at aqui. Quando, porm, a inteno descrever uma tarefa de
comando, que sempre compreende uma quantidade considervel de funes lgicas, a
representao com smbolos lgicos mais simples, mais clara e, sobretudo, inequvoca.

Entretanto, nem todas as identificaes acima so comumente usadas. As mais


utilizadas so: Tabela-verdade, Diagrama sinal-tempo e Smbolos grficos. O smbolo de
uma funo lgica no define a tcnica com a qual ela deve ser realizada, se com recursos
mecnicos, hidrulicos, pneumticos, eltricos, eletrnicos ou com uma combinao
dessas possibilidades.

Faremos a seguir uma introduo s funes lgicas associativas, descritas mais


adiante. Outros tipos de funes lgicas (tais como temporizadores, contadores,
memorizadores, entre outras) esto sendo descritos separadamente, em momento
oportuno, devido s particularidades de cada uma.

Prof Osglay Izdio - IFPE

14

Controladores Lgicos Programveis - Bsico

Funes Associativas
Um padro para representar os smbolos lgicos (IEEE/ANSI) foi desenvolvido
em 1984. Este padro utiliza smbolos retangulares com uma notao especial indicando
como a sada do dispositivo depende de suas entradas. Na figura abaixo temos a
representao dos smbolos tradicionais e os seus equivalentes no padro IEEE/ANSI. O
tringulo tanto na entrada como na sada indica inverso dos sinais ou, de outra forma, se
a sada ou a entrada ativa em nvel baixo.

Figura 4 Simbologia de Funes Associativas Conforme Norma IEEE/ANSI 91-1984

Funo E (AND): Analisando um diagrama de comando na tcnica de rels,


encontramos a realizao da funo E, onde existem dois (ou mais) contatos em srie. Na
figura, o contato Q, que a associao dos dois contatos A e B pela funo E, fecha
quando A estiver fechado e B tambm estiver fechado. Em outras palavras: se A = "1" e
B = "1", ento Q = "1". Com dois contatos temos 4 combinaes diferentes possveis (a
base do sistema -2- elevada quantidade de variveis lgicas, igual ao nmero de
combinaes possveis: 22 = 4). Assim, podemos demonstrar a funo "E" atravs da

Prof Osglay Izdio - IFPE

15

Controladores Lgicos Programveis - Bsico

tabela-verdade conforme indicado na figura. A funo "E" chamada, em ingls, de


AND.

Figura 5 - Funo E (AND)

Funo OU (OR): Na tcnica de rels a funo OU realizada com 2 (ou mais)


contatos em paralelo. Na figura, o contato Q se fechar quando o contato A fechar, ou o
contato B fechar, ou ainda quando A e B estiverem fechados simultaneamente. Em outras
palavras, se A = "1" ou B = "1" (ou A e B = "1"), ento Q = "1". Analisando a tabelaverdade de unia funo OU compreende-se o significado desta identificao: o nmero de
entradas que precisam ter nvel lgico "1" para que a sada da funo tenha nvel lgico
"1" maior ou igual a 1. A funo chamada, em ingls, de OR.

Figura 6 - Funo OU (OR)

Prof Osglay Izdio - IFPE

16

Controladores Lgicos Programveis - Bsico

Funo inversor NO (NOT): Obtm-se, na tcnica de rels, a inverso do nvel


lgico de um sinal, como mostra o diagrama da figura: o contato Q ser aberto no
momento que o contato A fechar, e vice-versa. Em outras palavras: se A = "1" ento Q =
"0", e se A = "0", ento Q = "1". A funo inversor tambm chamada de funo NO
(em ingls, NOT ou inverter). O sinal de sada de um inversor sempre de nvel lgico
antivalente (complementar) ao do sinal de entrada.

Figura 7 - Funo Inversor (NOT)

Funo NO-E: A funo NO-E (em ingls: NOT AND ou NAND) a fuso de uma
funo E, que associa os sinais de entrada, com uma funo NO, que inverte o sinal de
sada da funo E. No programa do CLP, invertemos os sinais da entrada, e no os da
sada. Na tcnica de rels, portanto, o diagrama equivalente funo NO-E igual ao
da funo E, sendo que o contato Q um abridor. Temos, alis, dois tipos de diagrama
equivalente, o exemplificado acima, e o diagrama em que temos os sinais de entrada
inversores, sendo o contato Q um fechador. A funo NAO-E chamada, em ingls, de
NAND.

Prof Osglay Izdio - IFPE

17

Controladores Lgicos Programveis - Bsico

Figura 8 - Funo NO - E

Funo NAO-OU (NOR): A funo NO-OU (em ingls: NOT OR ou NOR) a fuso
OU, que associa os sinais de entrada, com uma funo NO, que inverte o sinal de sada
da funo OU. Podemos ter, tambm, os sinais da entrada chamados de inversores, e a
sada como um circuito E ou OU comum. Na tcnica de rels, portanto, o diagrama
equivalente funo NO-OU igual ao da funo OU, sendo que o contato Q um
abridor. A funo NO-OU, em ingls, chamada de NOR-gate.

Figura 9 - Funo NAO-OU

Funo OU-EXCLUSIVO: A funo OU-EXCLUSIVO uma forma particular da


funo OU. Na tcnica de rels, a funo OU-EXCLUSIVO realizada como mostra
o diagrama da figura: dois circuitos paralelos, com elementos de comando (A e B) em

Prof Osglay Izdio - IFPE

18

Controladores Lgicos Programveis - Bsico

cada circuito, cada elemento interferindo no circuito vizinho por meio de contatos de
bloqueio (a e b). Tem-se, ento, que o contato Q se fechar exclusivamente quando A se
fechar ou quando B se fechar. Enquanto ambos estiverem abertos ou fechados
simultaneamente, o contato Q permanecer aberto. Em outras palavras: Q = "1"
exclusivamente quando A "1" e B = "0" ou quando A= "0" e B= "1". A funo OUEXCLUSIVO existe com duas ou mais entradas e tambm conhecida como funo "1
de N". Em ingls a funo OU-EXCLUSIVO chamada de EX-OR ou XOR.

Figura 10 - Funo OU-EXCLUSIVO

5. Arquitetura e Processamento do Programa


A escolha da configurao de um controlador programvel depende, basicamente,
da quantidade de elementos de comando e operadores a ele conectados e ainda do
tamanho do programa a ser gravado em sua memria. Independente do tipo, todos os
controladores programveis so constitudos das mesmas partes bsicas: Fonte de
alimentao, memria de programa, processador, mdulos de entrada e sada e mdulos
de comunicao. Os elementos de comando (botes, sensores etc.) so ligados aos
mdulos de entrada e os elementos operadores (contatores de potncia, vlvulas etc.) so
ligados aos mdulos de sada. O programa (software) escrito com o auxlio de um
terminal de programao. O terminal de programao, que na maioria dos casos um PC,
de suma importncia tambm para alteraes de programa, testes de funcionamento,
diagnose de falhas etc. O processador (CPU) executa o programa contido na sua memria
verificando as variveis de entradas, dados da comunicao, entre outros. O resultado do

Prof Osglay Izdio - IFPE

19

Controladores Lgicos Programveis - Bsico

processamento destes sinais, de acordo com o programa, enviado s respectivas sadas,


ligando ou desligando os elementos operadores a ele conectados.

A mais importante caracterstica dos controladores programveis a flexibilidade


que o usurio possui em alterar o programa de controle. A memria do CLP a rea onde
todas as sequncias de instrues ou programas, so armazenados e executados pelo
processador para promover o controle desejado dos dispositivos. Podemos dividir a
memria total em duas partes do CLP:
Memria executiva;
Memria de aplicao.

Memria executiva uma coleo de programas armazenados permanentemente que so


considerados como parte do CLP. Estes programas gerenciam todas as atividades de
sistema, tais como o programa de controle e a comunicao com dispositivos perifricos.
Seria como o sistema operacional do CLP. Esta seo no acessvel ao usurio.

Memria de aplicao uma rea destinada ao programa de aplicao. Esta rea


formada por vrias partes, cada uma com suas funes especficas.

Tipos de Memrias: Os requisitos para o armazenamento e a leitura dos dados em


memria para o sistema executivo ou de aplicao no so as mesmas. Desta forma as
informaes no so armazenadas num mesmo tipo de memria. Por exemplo, o sistema
executivo requer uma memria que armazene permanentemente seu contedo e no possa
ser alterada devido a perda de energia ou pelo usurio. Este tipo de memria no
interessante para o programa de aplicao, cujas informaes devem ser alteradas
freqentemente. As memrias podem ser divididas em dois tipos:
Volteis: perde o contedo se a energia for retirada. Os dados tambm podem ser
facilmente alterados e de maneira mais rpida que o segundo tipo.
No-volteis: retm o contedo programado, mesmo durante perdas de energia.

Os CLPs possuem memrias para diferentes tipos de utilizao. A seguir temos


uma breve descrio dos principais tipos.

Prof Osglay Izdio - IFPE

20

Controladores Lgicos Programveis - Bsico

Read Only Memory (ROM) so memrias no volteis, somente de leitura. No podem


ser alteradas pelo usurio. Nela so armazenados os programas executivos. Podem ser
utilizados em programas de aplicao, porm somente quando necessria devido a
velocidade e custo relevantes.

Random-Access Memory (RAM) so memrias volteis de leitura/escrita (R/W) do


programa de aplicao. Nas aplicaes com CLPs as RAMs usam baterias para manter o
programa de aplicao armazenado mesmo se a fonte de alimentao estiver desligada. A
maior vantagem do uso a leitura e escrita com acesso rpido.

Programmable Read-Only Memory (PROM) um tipo especial de ROM. Esta


memria pode ser reprogramada. Porm para reprogramar, necessrio um dispositivo
especial externo.

Erasable Programmable Read-Only Memory (EPROM) um tipo especial de PROM


que pode ser apagada atravs de uma luz ultravioleta. Muitos CLPs possuem EPROMs
como dispositivo de armazenamento no-voltil do sistema executivo.

Electrically Erasable Programmable Read-Only Memory (EEPROM) um tipo de


memria no voltil que pode ser apagada atravs de um sinal eltrico. A maioria dos
CLPs possuem EEPROM como dispositivo de armazenamento do sistema executivo.
Desta forma, a verso do sistema operacional do CLP pode ser alterada diretamente pelo
usurio, sem a necessidade de retirar o dispositivo para reprogramao.

6. Capacidade de Memria
A capacidade de memria um conceito vital quando consideramos uma
aplicao com CLP. Especificando a quantidade certa de memria pode-se economizar
custos de hardware e tempo associado adio de memria. As aplicaes so
especificadas em unidades de k, onde cada unidade de k representa 1024 alocaes de
palavras. Dependendo da configurao e de acordo com o marca/modelo do CLP, a
capacidade varia bastante, sendo normalmente dimensionada em kBytes, kWords ou
kBits.

Prof Osglay Izdio - IFPE

21

Controladores Lgicos Programveis - Bsico

7. Estrutura e Organizao de Memria e I/Os


O sistema de memria, como mencionado anteriormente, composto por duas
grandes sees a memria de sistema (executiva) e a de aplicao as quais so
compostas por outras reas. Na figura a seguir ilustrada esta organizao conhecida
como mapa de memria. Embora as duas sees principais, sistema e aplicao, so
mostradas prximas uma da outra, elas no so necessariamente adjacentes, nem
fisicamente ou por endereo.

Figura 11 - Mapa Simplificado de Memria

O mapeamento de memria mostra no s o que est na memria, mas tambm


onde os dados esto armazenados de acordo com o chamado endereo de memria.
Embora dois diferentes controladores programveis raramente possuam mapa de
memria idntico, uma discusso generalizada da organizao ainda vlida porque
todos os CLPs possuem requisitos de armazenamento semelhantes. De modo geral, todos
os CLPs precisam ter quatro reas de armazenamento:

rea executiva: uma srie de programas que compem o sistema por si s. Estes
programas de superviso dirigem as aes do sistema, tais como comunicao com os
perifricos, execuo do programa de controle e demais atividades de sistema. Este
conjunto de programas tambm conhecido como Programa Monitor que o responsvel
pelo funcionamento geral do CLP, pelo gerenciamento de todas as atividades. No pode
ser alterado pelo usurio e fica armazenado em memrias do tipo PROM, EPROM ou
EEPROM. Funciona de maneira similar ao Sistema Operacional dos microcomputadores.
o Programa Monitor que permite a transferncia de programas entre um
microcomputador ou Terminal de Programao e o CLP, gerenciar o estado da bateria do
sistema, controlar os diversos opcionais etc.

Prof Osglay Izdio - IFPE

22

Controladores Lgicos Programveis - Bsico

rea temporria: utilizada pelo sistema para armazenar uma quantidade pequena de
informaes temporrias, de forma que no seja necessrio o acesso a memria principal
que resultaria num tempo maior de acesso aos dados.

rea de dados: esta rea armazena todos os dados relacionados com o programa de
controle, tais como valores pr-selecionados de temporizadores/contadores e outras
constantes utilizadas pelo programa de controle. Esta tabela de dados tambm guarda as
informaes do estado das entradas e sadas.

rea do usurio: onde se armazena o programa da aplicao desenvolvido pelo


usurio. Pode ser alterada pelo usurio, j que uma das vantagens do uso de CLPs a
flexibilidade de programao. Inicialmente era constituda de memrias do tipo EPROM,
sendo hoje utilizadas memrias do tipo RAM (cujo programa mantido pelo uso de
baterias) e EEPROM sendo tambm comum o uso de cartuchos de memria, que permite
a expanso da capacidade de memria ou a troca do programa com a troca do cartucho de
memria.

A memria de aplicao armazena instrues programadas e qualquer dado que o


processador usar para executar suas funes de controle. Na figura a seguir mostrado
um mapa com tpicos elementos desta rea. Cada controlador programvel tem uma
quantidade mxima de memria de aplicao que varia e depende do tamanho do
controlador. O controlador armazena todos os dados na tabela de dados da memria de
aplicao.

Figura 12 Mapa da Memria de Aplicao

Prof Osglay Izdio - IFPE

23

Controladores Lgicos Programveis - Bsico

rea de Dados: est composta de vrias reas (veja figura anterior):


tabela de entrada;
tabela de sada;
rea de armazenamento.

a regio de memria destinada a armazenar os dados do programa do usurio.


Estes dados so valores de temporizadores, valores de contadores, cdigos de erro, senhas
de acesso, etc. So normalmente partes da memria RAM do CLP. So valores
armazenados que sero consultados e ou alterados durante a execuo do programa do
usurio. Em alguns CLPs, utiliza-se a bateria para reter os valores desta memria no caso
de uma queda de energia.

Memria Imagem das Entradas / Sadas: Sempre que a CPU executa um ciclo de
leitura das entradas ou executa uma modificao nas sadas, ela armazena os estados de
cada uma das entradas ou sadas em uma regio de memria denominada Memria
Imagem das Entradas/Sadas. Essa regio de memria funciona como uma espcie de
tabela onde a CPU ir obter informaes das entradas ou sadas para tomar as decises
durante o processamento do programa do usurio.
Tabela de Entrada: uma seqncia de bits que armazena o estado das entradas digitais
conectadas a interface de entrada do CLP. O nmero de mximo de bits da tabela de
entradas igual ao nmero de mximo de campos de entrada que podem ser conectados
ao CLP. Por exemplo, um controlador com um mximo de 64 campos requer uma tabela
de 64 bits. Durante a operao do CLP, o processador ler os estados de cada entrada e
colocar o valor (1 ou 0) no endereo correspondente da tabela de dados. A cada leitura
das entradas, a tabela ser atualizada para refletir as mudanas no mdulo e seus
dispositivos de campo conectados.

Prof Osglay Izdio - IFPE

24

Controladores Lgicos Programveis - Bsico

Figura 13 - Exemplo de Processamento na Tabela de Entrada

Tabela de Sada: uma seqncia de bits que controla o estado dos dispositivos de sada
digitais que so conectados ao CLP. O nmero de mximo de bits disponvel se iguala ao
nmero mximo de dispositivos de campo que podem se conectar com o CLP. Por
exemplo, um CLP com um mximo de 128 sadas requer uma tabela com 128 bits de
sada. Como a tabela de entrada, cada sada conectada tem um bit associado tabela de
sada. O processador controla os bits na tabela de sada de acordo com a interpretao da
lgica do programa de controle. Se um bit da tabela de sada ligado (1), ento a sada
conectada ligada tambm, se um bit zerado, a sada desligada (veja figura a seguir).

Prof Osglay Izdio - IFPE

25

Controladores Lgicos Programveis - Bsico

Figura 14 - Exemplo de Processamento na Tabela de Sada

rea de armazenamento: O propsito da rea de armazenamento guardar dados que


podem ser alterados, desde um bit a uma palavra. A rea de armazenamento consiste de
duas partes: uma rea de armazenamento de bits e uma rea de armazenamento de
registro/palavra (veja figura abaixo).

rea de armazenamento de bits contm bits de armazenamento internos, que so


chamados pelo programa para produo de estados internos. Estes bits no interagem
com dispositivos de entrada ou sada e sim variveis internas.

Prof Osglay Izdio - IFPE

26

Controladores Lgicos Programveis - Bsico

Figura 15 - Diviso da rea de Armazenamento

rea de armazenamento de registro/palavra usada para armazenar grupos de bits


(bytes e palavras). Esta informao armazenada em formato binrio e representa
quantidades ou cdigos. Se so armazenadas quantidades decimais, o padro binrio do
registro representa um nmero decimal equivalente. Se um cdigo armazenado, o
padro binrio representa um nmero em BCD ou caractere em cdigo ASCII. Valores
colocados na rea de armazenamento de registro/palavra representam entradas de dados
de uma variedade de dispositivos, como interruptores, entradas analgicas, e outros tipos
de variveis. Alm de valores de entrada, estes registros podem conter valores de sada
que so destinados para mdulos de sada conectados a dispositivos de campo, como
medidores analgicos, indicadores, vlvulas de controle, controladores de velocidade,
entre outros. Registros de armazenamento tambm so utilizados para armazenar
constantes fixas, como referncias de contadores/temporizadores e os valores de
contagem, como resultados de alguma aritmtica e valores de contadores/temporizadores
acumulados.

Prof Osglay Izdio - IFPE

27

Controladores Lgicos Programveis - Bsico

8. Processamento de programa

Quando o usurio escreve seu programa, o terminal de programao o transforma,


antes da transferncia para a memria do controlador programvel, em uma quantidade
correspondente de instruo de comando. Cada instruo ocupa uma clula da memria,
sendo que as mesmas so armazenadas na seqncia em que se encontra na lista de
instrues. (representao STL). O programa ento processado constantemente, de
forma seqencial e repetitiva. O processamento de todas as instrues do comeo ao fim
do programa chamado de ciclo de processamento (Scan). O tempo necessrio para este
processamento chamado de tempo de ciclo. A durao do tempo de ciclo depende da
velocidade de processamento do controlador programvel usado, e do tamanho do
programa a ser processado.

Figura 16 Ciclo (Scan) Tpico de Processamento do CLP

Interao entre Memria e I/Os


Nesta seo, apresentado um exemplo que resume as operaes at aqui
abordadas. No exemplo, assumiremos que temos uma memria de CLP simples,
organizada como mostrado na figura abaixo e um circuito simples que conectado a um
CLP pelas interfaces de I/O.

Prof Osglay Izdio - IFPE

28

Controladores Lgicos Programveis - Bsico

Figura 17 - Exemplo de Mapeamento de um CLP

As instrues representam o programa de controle simples, que mostrado na


figura a seguir, e armazenado na seo de memria de usurio onde 1s e 0s
representam as instrues.

Figura 18 - Exemplo de Circuito e Instrues de Programao


Durante a varredura do CLP, o programa executivo l o estado das entradas e os
coloca na tabela de entrada de dados. Ento, o controlador programvel varre a memria

Prof Osglay Izdio - IFPE

29

Controladores Lgicos Programveis - Bsico

de usurio para interpretar as instrues armazenadas. De acordo com o estado dos I/Os,
so armazenados os resultados da avaliao de programa na tabela de sada e na rea de
armazenamento (caso o programa use variveis internas). Depois da execuo do
programa, o programa executivo atualiza os valores armazenados na tabela de sada e
envia comandos aos mdulos de sada para ligar ou desligar os dispositivos de campo
conectados s respectivas interfaces. A figura a seguir mostra os passos que acontecero
durante a execuo do circuito no CLP.

Memria Imagem de Entradas e Sadas


Podemos ento resumir as funes verificadas em um ciclo de processamento, em
trs etapas distintas: no inicio de cada ciclo de programa, o sistema operacional verifica o
estado atual de todas as entradas digitais e registra esta informao em uma rea de
memria, denominada memria imagem das entradas. O que temos ento so bits nesta
memria imagem que correspondem ao estado das entradas no incio de cada ciclo. Em
seguida temos o incio do processamento do programa desenvolvido pelo usurio. Sempre
que no programa houver uma referncia a uma entrada, a CPU no verifica o estado atual
da entrada, mas sim o estado do bit correspondente na memria imagem. Este
procedimento garante que uma informao considerada no inicio do programa, mantm o
mesmo estado at o fim do processamento do mesmo. As informaes fornecidas pela
memria imagem das entradas, temporizadores, contatores etc. so as responsveis pela
tomadas de decises como, por exemplo, acionar uma sada, segundo previsto no
programa. De maneira anloga imagem das entradas, temos a imagem das sadas, ou
seja, durante a execuo do programa no so propriamente as sadas que so acionadas,
porm um bit correspondente a cada sada na rea de memria das sadas. Aps o termino
do processamento do programa, temos na memria imagem das sadas o estado que cada
uma, segundo o programa, deveria ter. O sistema operacional se encarrega de transferir o
estado da memria imagem das sadas para as sadas.

Prof Osglay Izdio - IFPE

30

Controladores Lgicos Programveis - Bsico

9. Construo do Controlador Lgico Programvel

A construo bsica, e todos os componentes necessrios, esto apresentados na


figura a seguir. A fonte de alimentao, por exemplo, gera atravs da alimentao da rede
a tenso necessria para os demais mdulos, para os CLPs compactos temos o mdulo
fonte incorporado. Nos controladores maiores a fonte de alimentao , normalmente, um
mdulo separado. A alimentao para os sensores, atuadores e sinalizadores, quando
necessria, deve ser fornecida por uma fonte separada. O crebro de todo controlador
programvel a unidade central de processamento (CPU). Neste mdulo so processados
os sinais dos mdulos de entrada e em funo do programa do usurio, so influenciados
os estados dos sinais dos mdulos de sada.

Figura 19 - Diagrama em blocos do CLP

Prof Osglay Izdio - IFPE

31

Controladores Lgicos Programveis - Bsico

Entradas / Sadas
Para que as CPUs dos Controladores Programveis possam realizar as suas
funes, eles precisam receber informaes do campo. Para que estas informaes
cheguem at a CPU, ou da CPU at os atuadores externos, existem mdulos de entrada e
sada, ou seja, mdulos que serviro de interface entre a CPU e os equipamentos e
dispositivos do sistema a ser controlado.

Mdulos ou Interfaces de Entrada


So circuitos utilizados para adequar eletricamente os sinais de entrada para que
possa ser processado pela CPU do CLP.

Entradas Digitais: So aquelas que possuem apenas dois estados possveis, ligado ou
desligado, e alguns dos exemplos de dispositivos que podem ser ligados a elas, entre
outros, so:
Botoeiras;
Chaves (ou micro) fim de curso;
Sensores de proximidade indutivos ou capacitivos;
Chaves comutadoras;
Termostatos;
Pressostatos;
Controle de nvel (bia);

As entradas digitais podem ser construdas para operarem em corrente contnua


(24 Vcc) ou em corrente alternada (110Vca ou 220Vca). Podem ser tambm do tipo N
(NPN) ou do tipo P (PNP). No caso do tipo N, necessrio fornecer o potencial negativo
da fonte de alimentao ao borne de entrada para que a mesma seja ativada. No caso do
tipo P necessrio fornecer o potencial positivo ao borne de entrada. Em qualquer dos
tipos de comum existir uma isolao galvnica entre o circuito de entrada e a CPU. Esta
isolao feita normalmente por acoplamento tico. As entradas de 24 Vcc so utilizadas
quando a distncia entre os dispositivos de entrada e o CLP no excedam 50 metros. Caso
contrrio, o nvel de rudo pode provocar disparos acidentais.

Prof Osglay Izdio - IFPE

32

Controladores Lgicos Programveis - Bsico

(a) Exemplo de circuito de entrada digital 24 Vcc

(b) Exemplo de circuito de entrada digital 110 / 220 VCA


Figura 20 (a) e (b) Exemplos de Circuitos de Entradas Digitais

Sadas Digitais
As sadas digitais admitem apenas dois estados: ligado e desligado. Podemos com
elas controlar, entre outros, dispositivos do tipo:
Rels;
Contatores ;
Rels de estato-slido
Solenides;
Vlvulas ;
Inversores de frequncia;

As sadas digitais podem ser construdas de trs formas bsicas: Sada digital a
Rel, Sada digital em 24Vcc e Sada digital a Triac. Nos trs casos, tambm comum,
prover o circuito com isolao galvnica, normalmente por acoplamento tico.

(a) Exemplo de sada digital rel

Prof Osglay Izdio - IFPE

33

Controladores Lgicos Programveis - Bsico

(b) Exemplo de sada digital transistor

Exemplo de sada digital Triac


Figura 21 (a) e (b) Exemplos de Circuitos de Sadas Digitais

Entradas Analgicas
As Interfaces de Entrada Analgica permitem que o CLP possa manipular
grandezas analgicas, enviadas normalmente por sensores eletrnicos. As grandezas
analgicas eltricas tratadas por estes mdulos so normalmente tenso e corrente. No
caso de tenso as faixas de utilizao so: 0 a 10Vcc, 0 a 5Vcc, 1 a 5Vcc, -5 a +5Vcc, -10
a +10 Vcc (no caso as interfaces que permitem entradas positivas e negativas so
chamadas de Entradas Diferenciais ), e no caso de corrente, as faixas utilizadas so: 0 a
20mA , 4 a 20mA.

Os principais dispositivos utilizados com as entradas analgicas, entre outros, so:


Sensores de presso manomtrica;
Sensores de presso mecnica (strain gauges - utilizados em clulas de carga);
Tacogeradores para medio rotao de eixos;
Transmissores de temperatura;
Transmissores de umidade relativa.

Prof Osglay Izdio - IFPE

34

Controladores Lgicos Programveis - Bsico

Uma informao importante a respeito das entradas analgicas a sua resoluo.


Esta normalmente medida em bits. Uma entrada analgica com um maior nmero de
bits permite uma melhor representao da grandeza analgica. Por exemplo: Uma placa
de entrada analgica de 0 a 10 Vcc com uma resoluo de 8 bits permite uma
sensibilidade de 39,2 mV, enquanto que a mesma faixa em uma entrada de 12 bits
permite uma sensibilidade de 2,4 mV e uma de 16 bits permite uma sensibilidade de 0,2
mV. Considerando que todos os bits sejam utilizados para quantificar o sinal.

Figura 22 - Exemplo de Circuito de Entrada Analgica

Sadas analgicas
Os mdulos ou interfaces de sada analgica converte valores numricos, em
sinais de sada em tenso ou corrente. No caso de tenso normalmente 0 a 10Vcc ou 0 a
5Vcc, e no caso de corrente de 0 a 20 mA ou 4 a 20mA. Estes sinais so utilizados para
controlar dispositivos atuadores, entre outros, do tipo:

Vlvulas proporcionais;
Motores C.C.;
Servo - Motores C.C;
Inversores de frequncia;
Posicionadores rotativos.

Prof Osglay Izdio - IFPE

35

Controladores Lgicos Programveis - Bsico

Figura 23 - Exemplo de Circuito de Sada Analgica

Mdulos Especiais de Entrada e Sada


Existem mdulos especiais, tanto de entrada quanto de sada, com funes
bastante especializadas.
Alguns exemplos para mdulos especiais de entrada so:
Mdulos Contadores de Fase nica;
Mdulos Contadores de Dupla Fase;
Mdulos para Encoder Incremental;
Mdulos para Encoder Absoluto;
Mdulos para Termopares ( Tipo J, K, L , S etc );
Mdulos para Termoresistncias ( PT-100, Ni-100, Cu-25 etc);
Mdulos para Sensores de Ponte Balanceada do tipo Strain - Gauges;
Mdulos para leitura de grandezas eltricas ( KW, KWh, KQ, KQh, cos Fi, I, V
etc).

Quanto aos mdulos especiais de sada, alguns exemplos so:


Mdulos PWM para controle de motores CC;
Mdulos para controle de Servomotores;
Mdulos para controle de Motores de Passo (Step Motor);
Mdulos para IHM (Interface Homem Mquina).

Registradores (Acumuladores): Os controladores programveis possuem reas de


memria chamadas de acumuladores onde podemos escrever e ler dados.

Prof Osglay Izdio - IFPE

36

Controladores Lgicos Programveis - Bsico

Flags: Nem sempre a utilizao dos sinais provenientes dos mdulos de entradas e sadas
(digitais ou analgicas) so suficientes para a elaborao de programas. Para estes casos,
os controladores programveis possuem reas de memria que podem ser utilizadas como
elementos auxiliares. Estes elementos auxiliares foram denominados de FLAGs. Os
flags podem ser utilizado na forma de bit, byte ou word (em algumas CPUs podem ser
utilizados na forma de dupla palavra - 32 bits). Podemos dividir os FLAGs em duas
categorias:

Flags remanentes: Assim denominados, pois o circuito de memria onde os mesmos se


encontram, so alimentados por uma bateria. Esta ligao (circuitobateria) faz com que
um flag que se encontre em nvel lgico 1 permanea neste estado, mesmo no caso de
falta de energia eltrica. Exemplo: Os flags remanentes so utilizados em programas de
mquinas que armazenem informaes do seu estado de funcionamento, e no caso de uma
parada por falta de energia eltrica, mantenha estas informaes, para que aps o
restabelecimento da energia, a mesma possa continuar processando um determinado
produto, exatamente no mesmo ponto que se encontrava no momento da desenergizao
(mquinas de empacotamento, paletizadores etc.).

Flags no remanentes: Os circuitos de memria onde os mesmos se encontram no so


alimentados por baterias de back-up. Isto faz com que um flag que se encontre em nvel
lgico 1 v para o nvel lgico 0 no caso de falta de energia eltrica.

Programao dos CLPs

A programao de um CLP feita por meio de uma Ferramenta de Programao


que pode ser um Programador Manual (Terminal de Programao, Handheld
Programmer), ou um PC com software de programao especfico.

Prof Osglay Izdio - IFPE

37

Controladores Lgicos Programveis - Bsico

Figura 24 Exemplo de Terminal de Programao Manual

10. Linguagens de Programao - CLP


As linguagens de programao usados em controladores programveis tm
evoludo desde os primeiros CLPs feitos nos anos 60. Como CLPs desenvolveram e se
expandiram, as linguagens de programao tambm se desenvolveram com eles. As
linguagens de hoje tm instrues novas e mais versteis. Alm disso, o desenvolvimento
de mdulos de I/O mais poderosos mudou tambm as instrues existentes. Estas
mudanas incluem a habilidade de endereamento de dispositivos, facilidades de
comunicao em rede, entre outros recursos importantes.
Para atender s demandas da comunidade industrial, um grupo de trabalho foi
formado dentro da International Electrotechnical Commission (IEC) em 1979, para
avaliar o projeto completo de controladores lgicos programveis, incluindo o hardware,
instalao, teste, documentao, programao e comunicao. O IEC uma organizao
normativa internacional formada por representantes de todo o mundo.
Foram formados diversos grupos de trabalho (foras tarefas) para elaborao das
diversas partes da norma IEC 1131. A Tabela a seguir apresenta o estado da norma em
1993, quando a parte 3 chamada de IEC 1131-3 foi publicada.

Prof Osglay Izdio - IFPE

38

Controladores Lgicos Programveis - Bsico

Tabela 1 Partes da Norma IEC 1131


PARTE
Part 1
Part 2
Part 3
Part 4
Part 5
Part 6
Part 7

Part 8

TTULO

CONTEDO

General Information

Definio da terminologia e
conceitos.
Teste de verificao e fabricao
eletrnica e mecnica.
Estrutura do software do CLP,
linguagens
e
execuo
de
programas.
Orientaes para seleo, instalao
e manuteno de CLPs.
Funcionalidades para comunicao
com outros dispositivos.
Reservada
Funcionalidades
de
software,
incluindo blocos funcionais padres
para tratamento de lgica nebulosa
dentro de CLPs.
Orientaes para implementao
das linguagens IEC 1131-3.

Equipment requirements
and tests
Programmable
Languages
User guidelines
Messaging
specification
Reservada
Fuzzy
Programming

service

Control

Guidelines
for
implementation
languages
programmable
controllers.

the
of
for

Recentemente, o IEC alterou a forma de codificao das suas normas incluindo


mais um algarismo. Desta forma, a norma 1131 passou a ser denominada IEC 61131.
A norma IEC 61131 foi elaborada com o objetivo de padronizar diversos aspectos
relacionados aos Controladores Programveis (CP), assim como aplicar modernas
tcnicas e linguagens de programao para o desenvolvimento de software para estes
sistemas. Como CP entende-se quaisquer equipamentos de controle com capacidade de
programao, tais como CLPs, SDCDs, Sistemas Hbridos, entre outros. A norma
composta por 8 partes, sendo que a parte 3 (61131-3) destinada ao modelo de software e
s linguagens de programao.
Os principais conceitos e caractersticas apresentados pela IEC 61131-3 so:
Base de dados com declarao de variveis e alocao dinmica;
Tipagem de dados;
Estruturao, modularizao, reutilizao e portabilidade de software;

Prof Osglay Izdio - IFPE

39

Controladores Lgicos Programveis - Bsico


Tcnicas de Orientao a Objetos;
Processamento multitarefa;
Cinco linguagens de programao.
Apesar da norma 61131-3 introduzir modernas tcnicas de programao para os
sistemas de controle, esta norma geralmente conhecida pela padronizao de cinco
linguagens de programao. Esta uma interpretao inadequada por parte dos usurios
de controle, pois as linguagens so simplesmente as ferramentas para implementar os
conceitos do modelo de software. As cinco linguagens definidas pela norma so:
Lista de Instrues IL;
Diagrama Ladder LD;
Diagrama de Blocos Funcionais FBD;
Texto Estruturado ST;
Sequenciamento Grfico de Funes SFC.
Na figura a seguir podemos observar uma mesma instruo implementada pelas
cinco diferentes formas.

Figura 25 - Linguagens da norma IEC 61131-3

Utilizando-se das linguagens de programao, possvel implementar as Funes


(Functions), Blocos Funcionais (Function Blocks) e Programas (Programs), os quais so
as Unidades de Organizao de Programas (POU) que incorporam o modelo de software.

Prof Osglay Izdio - IFPE

40

Controladores Lgicos Programveis - Bsico

O devido entendimento dos conceitos envolvidos pelo modelo de software, possibilitam


ao desenvolvedor aplicar as tcnicas de orientao a objetos, na busca de uma
estruturao de software de forma modular e reutilizvel. Alm disso, possvel
organizar os programas em um ambiente multitarefa de forma a tirar o mximo da
capacidade de processamento do controlador, de forma a atender as exigncias do
processo a ser controlado.
Servios de comunicao so definidos pela parte 5 da norma e permitem a
utilizao de diversos blocos funcionais padronizados para a troca de dados entre
controladores, interfaces de operao, softwares de superviso e demais sistemas que
necessitam interagir com os controladores. Os servios de comunicao foram definidos
dentro da filosofia Cliente Servidor e baseados na especificao MMS (Manufacturing
Message Specification).
Um dos aspectos relevantes na utilizao dos conceitos da norma 61131-3
consiste na encapsulao da complexidade do algoritmo de controle. As facilidades
proporcionadas pelos ambientes de programao dos modernos sistemas de controle
possibilitam a implementao de algoritmos sofisticados utilizando-se as linguagens mais
adequadas. Estes algoritmos so encapsulados em blocos funcionais, os quais podem ser
utilizados em todas as linguagens de programao. A partir da utilizao de blocos
funcionais, o algoritmo encapsulado passa a ser interpretado como uma funo de
transferncia, onde o usurio precisa se preocupar apenas com os sinais de entrada,
funcionalidade do bloco e sinais de sada, no sendo necessrio interpretar o algoritmo
interno do bloco. Este recurso facilita em muito o entendimento da funo de controle,
isentando o usurio do sistema de interpretar a codificao do algoritmo. Normalmente,
os ambientes de programao permitem animar os valores e estados de entrada e sada do
bloco durante a execuo do programa, tornando a manuteno do sistema uma tarefa
simples e rpida. Os programas so associados a tarefas com tempos de execuo
definidos, garantindo a execuo da funo de controle em tempo hbil para permitir o
bom desempenho e tempo de resposta exigido pelo processo controlado.

Prof Osglay Izdio - IFPE

41

Controladores Lgicos Programveis - Bsico

Os trs tipos de linguagens mais usados em CLPs so:


Ladder LD;
Lista de Instrues IL;
Grafcet SFC.

Essencialmente, ladder e Lista de Instrues implementam as instrues da


mesma maneira, diferindo no modo como elas so representadas. J o Grafcet
implementa controle instrues de uma maneira diferente, baseado em passos e aes em
um programa grfico.

Linguagem Ladder (linguagem de rels)


O controlador programvel foi desenvolvido para ser programado de forma fcil,
utilizando a simbologia de rels existente e expresses para representar a lgica de
programao para controlar uma mquina ou processo. A linguagem de programao
resultante que usou estes smbolos de rels originais foi denominada linguagem de rels.
A figura abaixo ilustra um circuito de rels e o diagrama ladder equivalente para num
CLP.

Diagramas Ladder (LD) usam um set de instrues padres para implementar


funes de controle. Este tipo de linguagem essencialmente o que sempre esteve
disponvel em CLPs. Usurios que tem familiaridade com o ladder podem usar as
mesmas tcnicas de programao e mtodos utilizados antigamente no SFC do ambiente
IEC 1131-3.

Prof Osglay Izdio - IFPE

42

Controladores Lgicos Programveis - Bsico

Figura 26 Circuito Eltrico e Diagrama Ladder Equivalente

A evoluo do ladder original o fez mais poderoso. Foram somadas funes novas
ao ladder bsico com funes de temporizao, contagem, movimentao de dados,
funes aritmticas, lgicas, entre outras. O termo funo usada para descrever
instrues que, como o nome indica, execute uma manipulao com os dados. Estas
instrues ainda esto baseadas no princpio simples de lgica de rels, embora elas
permitem implementar operaes complexas. A forma de representao de uma funo
depende do fabricante do controlador, embora o formato delas seja muito semelhante.
Basicamente as instrues em ladder podem ser divididas em dois grupos:
instrues bsicas;
instrues avanadas.

Prof Osglay Izdio - IFPE

43

Controladores Lgicos Programveis - Bsico

A tabela a seguir mostra uma tpica classificao.

Tabela 2 - Classificao de instrues ladder

Bsicas

Avanadas

Rel Contato

Aritmtica de ponto flutuante

Bobina

Raiz quadrada

Temporizador

Movimentao de operandos

Contador

Movimentao em tabelas

Salto

Rotao de registradores

Soma

Blocos de diagnsticos

Multiplicao

Seqenciadores

Subtrao

PID

Comparao (>,<,=)

Lgica matricial

Diviso

Rede

Funo

Pilhas

Lista de Instrues
Alguns fabricantes de CLPs usam Lista de Instrues, tambm chamada de
Linguagem Booleana, que usa sintaxe de lgebra Booleana. Quer dizer, usa lgica AND,
OR e NOT para implementar os circuitos de controle conforme mostrado na figura
abaixo. Lista de instrues (IL) uma linguagem de baixo nvel semelhante de mquina
ou assembler usada com microprocessadores. Este tipo de linguagem til para
aplicaes pequenas, como tambm aplicaes que requerem otimizao de velocidade
do programa ou uma rotina especfica no programa. Como mencionado anteriormente, a
IL pode ser usada para criar blocos de funo. Uma aplicao tpica de IL poderia
envolver a inicializao para zerar (isto , reset) do valor dos acumuladores de todos os
cronmetros em um programa de controle. Como mostrado na figura abaixo, um
programador poderia usar a IL para criar um bloco de funo que carregaria os contedos
de todos os acumuladores dos cronmetros com o valor zero. Antigamente, quando os
CLPs restringiam-se a estas instrues e ainda no existia uma forma grfica de
programao. Na figura a seguir vemos um circuito eltrico e sua programao em lista
de instrues.

Prof Osglay Izdio - IFPE

44

Controladores Lgicos Programveis - Bsico

Figura 27 - Representao do Circuito em Lista de Instruo

Linguagem Grafcet
Grafcet (Graphe Fonctionnel de Commande tape Transition) uma linguagem
simblica, grfica que se originou na Frana e que representa o programa de controle
como passos ou estgios na mquina ou processo. A traduo para o portugus significa
"Diagrama Passo-transio-ao". O Grafcet a base para o padro de programao de
diagramas de funes sequenciais (SFC Sequential Function Charts), que permitem
usar vrias linguagens na programao de um CLP.

A figura a seguir ilustra um circuito simples representado em Grafcet. Note os


quadros do Grafcet promovem fluxograma com representao dos eventos que acontecem
em cada fase do programa de controle. Estes quadros usam trs componentes: passos,
transies e aes. Alguns controladores programveis podem ser diretamente
programados usando Grafcet. Contudo, uma vez programado no PC, as instrues de
Grafcet so convertidas para ladder e compilado ou interpretado para cdigo de mquina
para ser transferido ao CLP. O padro IEC 1131 tambm usa estes componentes, porm,
as instrues dentro das aes podem ser programadas usando um ou mais linguagens,
inclusive diagramas ladder.

Prof Osglay Izdio - IFPE

45

Controladores Lgicos Programveis - Bsico

Figura 28 - Representao de um circuito ladder e seu Grafcet

Diagrama de bloco de funo (FBD)

Diagrama de bloco de funo (FBD) uma linguagem grfica que permite ao


usurio programar elementos de tal um modo que eles aparecem interligados como em
circuitos eltricos. A figura abaixo ilustra este tipo de configurao. Note que a lgica de
sada do bloco na figura abaixo no incorpora uma bobina porque a sada representada
pela varivel nomeada na sada do bloco. Esta varivel pode ser usada ao longo do
programa em outras instrues e como uma sada de controle pela declarao do
endereo. O usurio ainda pode escolher usar uma representao de bobina se desejar,
porm, s ser permitido no ltimo bloco. O FBD usa blocos padres semelhantes aos do
ladder (tais como temporizadores, contadores, lgicas booleanas, entre outros).

Prof Osglay Izdio - IFPE

46

Controladores Lgicos Programveis - Bsico

Figura 29 - Programa em Diagrama de blocos de funo.

Alm de padro, o IEC 1131-3 permite aos usurios construir seus prprios blocos
de funo de acordo com a exigncia da aplicao. Isto chamado de encapsular uma
funo de bloco. Isto permite grande flexibilidade em programao, criando bibliotecas
de funes e usando-as tantas vezes quanto for necessrio. Abaixo mostrada como
podem ser usados diagramas ladder encapsulados para criar um bloco de funo.

Figura 30 - Diagrama em ladder encapsulado num bloco de funo.

A flexibilidade de criao de bloco aumentada pelo fato que o usurio pode


construir um bloco com qualquer outra linguagem (IL e ST).

Prof Osglay Izdio - IFPE

47

Controladores Lgicos Programveis - Bsico

Texto Estruturado (ST)


Texto Estruturado (ST) uma linguagem de alto nvel que permite estruturar
melhor aquelas tarefas mais complexas. ST se assemelha a linguagem BASIC ou
PASCAL que usa seqncia de dados para executam funes e passam parmetros e
valores entre as diferentes sees do programa. Como LD, FBD, e IL, a linguagem de
texto estruturado utiliza variveis
para identificar entradas, dispositivos de sada e qualquer outra varivel interiormente
criada. Este tipo de linguagem possibilita repeties, (WHILE....DO), condies
(IF...THEN ...ELSE), operaes booleanas e uma variedade de dados especficos, como
data, hora, entre outros.

Figura 31 - Exemplo de Texto Estruturado

Conclumos, ento,

que a norma IEC 1131-3 define duas linguagens grficas e

duas linguagens descritivas para uso em CLPs. As linguagens grficas usam smbolos
para programas instrues, enquanto que os baseados em texto usam caracteres para
programar instrues, sendo:
Linguagens grficas:
Diagramas Ladder (LD);
Funes em diagrama de blocos (FBD);
Linguagens descritivas:
Lista de instruo (IL);
Texto estruturado (ST).

Prof Osglay Izdio - IFPE

48

Controladores Lgicos Programveis - Bsico

Adicionalmente, o padro IEC 1131-3 incluiu uma rea de trabalho orientada a


objetos chamada Grfico de funes sequenciais (SFC - Sequential Functions Charts). A
SFC s vezes categorizada como uma linguagem do IEC 1131-3, mas de fato uma
estrutura organizacional que coordena as quatro linguagens de programao (isto , LD,
FBD, IL e ST). A estrutura de SFC est muito associada a um fluxograma e utiliza
linguagens diferentes para o controle e aes do programa. A estrutura de SFC tem suas
razes no padro francs Grafcet (IEC 848).

11. Declarando variveis

Durante a implementao de um sistema de controle, o usurio deve nomear ou


declarar, as variveis usadas. Esta declarao de variveis nada mais do que um
mapeamento de endereos, indicando quais dispositivos de campo so mapeados nos
dispositivos de I/O. A figura abaixo mostra um interruptor (LS1) colocado numa entrada
digital de um controlador programvel padro. Nesta configurao, o dispositivo
declarado no programa de controle como seu endereo. Em um ambiente de programao
IEC 1131-3, porm, um dispositivo pode ser descrito por qualquer nome alfanumrico.
Conseqentemente, o interruptor LS1 pode ser declarado como uma varivel chamada
LimitSwitch_1, ou outro nome apropriado (veja item b da figura a seguir).

Prof Osglay Izdio - IFPE

49

Controladores Lgicos Programveis - Bsico

Figura 32 - Representao de um circuito em ladder (a) e no padro IEC 1131 em duas


formas LD e ST (b).

12. Estudo de Controlador Lgico Programvel


A partir deste ponto, como parte dos nossos estudos, apresentaremos um CLP de
mercado, com foco nas caractersticas tcnicas, construtivas e de aplicao.

Prof Osglay Izdio - IFPE

50