Você está na página 1de 23

Sistemas Digitais 1

Módulo 17 – Prof. Celso

CLP – Controlador Lógico Programável

O CLP, ou PLC (Controlador Lógico Programável), nasceu da necessidade da


indústria automobilística de economizar tempo e dinheiro quando a mesma precisava
modificar a lógica de controle dos painéis de comando. Assim, em meados de 1968 nascia
na General Motors o CLP, cuja especificação foi liderado pelo engenheiro Richard Morley.
Esse CLP era um amontoado de relés colocados em placas que faziam conexão com outra
placa maior através da fiação. O circuito de fiação era na verdade o software de
programação.
Anos depois os relés eletromecânicos foram trocados por transistores e na metade
dos anos setenta, os circuitos integrados já compunham as placas dos CLPs. Essa pode ser
considerada a primeira geração do CLP.
A segunda geração surge com o advento dos microprocessadores e
microcontroladores. Os CLPs de segunda geração se caracterizam pela programação
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 necessário conhecer a eletrônica do projeto do CLP.
A terceira geração se caracteriza pelo início da programação de alto nível, sendo os
programas feitos em computadores pessoais (PC) e numa linguagem mais próxima do
usuário.

Os CLPs oferecem as seguintes vantagens:


- Ocupam menor espaço;
- Exibem menor potência elétrica;
- Podem ser reutilizados;
- São programáveis, permitindo alterar os parâmetros de controle;
- Apresentam maior confiabilidade;
- Manutenção mais fácil e rápida;
- Oferecem maior flexibilidade;
- Apresentam interface de comunicação com outros CLPs e computadores de
controle;
- Permitem maior rapidez na elaboração do projeto do sistema.

Estrutura do CLP

Um CLP pode ser dividido em 6 partes:


- Entradas
- Saídas
- Unidade Central de Processamento (CPU)
- Memória de programa e de dados
- Unidade de comunicação
- Fonte de alimentação
1
Sistemas Digitais 2
Módulo 17 – Prof. Celso

A figura abaixo mostra o diagrama da estrutura de um CLP:

Memória de programa Fonte de


e de dados Alimentação

E
N S
T A
Unidade Central de Í
R Processamento
A D
(CPU) A
D
A S
S

Isolamento Isolamento
Óptico Comunicação Óptico

Fonte de Alimentação: Responsável pela alimentação da CPU e dos módulos de entrada e


saída.Geralmente é uma fonte do tipo chaveada com uma tensão de saída de 24 Vcc.

Memória de programa: Responsável pelo armazenamento do programa aplicativo. O


programa aplicativo é um programa desenvolvido pelo usuário para desempenhar
determinadas tarefas.

Memória de dados: Local utilizado pelo CPU para armazenamento temporário de dados.

CPU (Unidade Central de Processamento): Responsável pela execução do programa


aplicativo e pelo gerenciamento do processo.

Sistema de Comunicação: Utilizada para conectar o Terminal de Programação. O Terminal


de Programação é um dispositivo que serve para introduzir o programa aplicativo no CLP.
O Terminal de Programação permite, também, monitorar passo-a-passo o programa
aplicativo. Além disso, o sistema de comunicação pode se comunicar com outros CLP
interligados em rede através de um CLP mestre ou com um modem via Internet. Esses
CLPs em rede junto com outros dispositivos podem fazer parte de uma rede de chão de
fábrica denominada de FildBus.

Entradas e Saídas: São módulos responsáveis pelo interfaceamento da CPU com o mundo
exterior adaptando os níveis de tensão e corrente e a conversão e a tradução de sinais. Cada
entrada ou saída de sinal é denominado de ponto. Para especificar um CLP é necessário
2
Sistemas Digitais 3
Módulo 17 – Prof. Celso

saber quantos pontos de entrada e quantos pontos de saída serão utilizados. Além disso,
essas entradas e saídas podem ser digitais ou analógicas. As entradas analógicas são
conversores A/D normalmente de 12 bits e as saídas analógicas são conversores D/A.

Na figura anterior, nota-se que entre a CPU e os módulos de entrada ou de saída


existe um isolamento óptico. Este isolamento, existente nas entradas e saídas digitais, serve
para proteger a CPU e para eliminar ruídos elétricos. As figuras seguintes mostram
circuitos de entradas e saídas típicas de um CLP.

Entrada Digital:

Saída Digital:

3
Sistemas Digitais 4
Módulo 17 – Prof. Celso

Entrada Analógica:

As grandezas analógicas normalmente tratadas por este módulo são correntes e


tensões. As tensões utilizadas estão na seguintes faixas:
0 a 10 vcc
0 a 5 Vcc
1 a 5 Vcc
-5 a +5 Vcc (Entradas diferenciais)
-10 a +10 Vcc (Entradas diferenciais)
No caso das correntes, as faixas são:
0 a 20 mA
4 a 20 mA.

Saída Analógica:

Os módulos ou interfaces de saída analógica converte valores numéricos, em sinais


de saída em tensão ou corrente. No caso de tensão normalmente a faixa são de:
0 à 10 VCC
0 à 5 VCC
No caso de corrente, as faixas são: de 0 à 20 mA ou 4 à 20 mA.
4
Sistemas Digitais 5
Módulo 17 – Prof. Celso

PRINCÍPIO DE FUNCIONAMENTO DO CLP

Os sinais dos sensores são aplicados na entrada do CLP e a cada ciclo (varredura do
programa) esses sinais são lidos e transferidos para a unidade de memória interna
denominada de memória imagem de entrada. Esses sinais são processados pelo programa
aplicativo e ao término de cada ciclo os resultados são atualizados na memória imagem e
então aplicados aos terminais de saída. A figura abaixo mostra esse processo.

Inicialização

Leitura das entradas

Atualização da memória
imagem

Processamento pelo
programa aplicativo

Atualização das saídas

PROGRAMAÇÃO DO CLP

O padrão IEC 1131-3 define 5 linguagens na tentativa de padronizar a linguagem de


programação dos CLPs:

Structured Text (ST) Textuais


Instruction List (IL)
Function Block Diagram (FBD)
Ladder Diagram (LD) Gráficas
Sequential Function Charts (SFC)
5
Sistemas Digitais 6
Módulo 17 – Prof. Celso

As linguagens Texto Estruturado (ST), Lista de Instruções (IL), Diagrama de Bloco


de Funções (FBD) e Diagrama de Contatos (LD) podem ser utilizadas dentro dos blocos de
ações e transições para construir o Diagrama Seqüencial de Funções (SFC).
A linguagem de Texto Estruturado (ST) é uma linguagem de programação tipo
pascal, C, Basic. O Diagrama Seqüencial de Funções (SFC) descreve o comportamento
seqüencial de um processo particionando o problema através de um modelo top-down. Um
exemplo dessa linguagem é o Grafcet. Essas duas linguagens não serão abordadas neste
tutorial.
Dentre as três linguagens restantes [Lista de Instruções (IL), Diagrama de Bloco de
Funções (FBD) e Diagrama de Contatos (LD)] a mais importante é o Diagrama de Contatos
que doravante será denominado de Linguagem Ladder. A linguagem ladder é substituta
direta dos antigos painéis controlados por relés.
A figura abaixo mostra o circuito elétrica para ligar uma lâmpada(L1) utilizando
uma botoeira (B1). A figura também mostra o mesmo circuito numa linguagem de relés.

Na figura acima note os símbolos utilizados para o os contatos abertos da botoeira e


do relé. O mesmo circuito é mostrado na figura abaixo montado no CLP e no diagrama
ladder:

6
Sistemas Digitais 7
Módulo 17 – Prof. Celso

A botoeira B1, normalmente aberta, esta ligada na entrada I00.0 do CLP. A lâmpada
foi ligada na saída Q50.0. Quando a botoeira for acionada a entrada I00.0 recebe a
alimentação fechando seu contato, o que irá energizar a saída Q50.0 que acende a luz.
Os CLPs podem possuir vários módulos de entradas e saídas tanto analógicas
quanto digitais, além de outros módulos especiais. Além disso, cada placa geralmente tem
mais de uma entrada ou saída. Portanto, a CPU do CLP necessita saber qual o endereço de
cada módulo e qual entrada ou saída esta conectada. Um exemplo de endereçamento é
mostrado abaixo:

Palavra de Endereçamento da Placa

I00.0 Q50.0

Número do Bit na Palavra de Endereçamento

Entrada Saída

Levando em consideração o exemplo anterior de acender a luz, isto poderia dizer


que temos uma placa de entrada digital no endereço 00 e uma placa de saída digital no
endereço 50. A placa de entrada digital e a de saída digital poderia ter 8 entradas cada
uma, sendo seus bits numerados de 0 a 7. Portanto, teríamos no exemplo anterior um
botoeira ligada no bit 0 da placa de entrada localizada no endereço 00 e uma lâmpada
ligada no bit 0 da placa de saída localizada no endereço 50.

A programação por lista de instruções seria:

LD I00.0  carrega acumulador com valor de entrada A = I00.0


ST Q50.0  Armazena valor do acumulador na saída Q50.0 = A

Tabela 01 - Lista de instruções:


Operador Modificador Operando Comentário
ADD ( Qualquer Adição
Operações DIV ( Qualquer Divisão
Básicas MUL ( Qualquer Multiplicação
SUB ( Qualquer Subtração
LD N Qualquer Carrega operando no acumulador
Funções ST N Qualquer Armazena acumulador no operando
& N, ( BOOL E lógico
AND N, ( BOOL E lógico
Funções OR N, ( BOOL OU lógico
Lógicas XOR N, ( BOOL OU – Exclusivo
R BOOL Reseta operando para False
S BOOL Seta operando para True

7
Sistemas Digitais 8
Módulo 17 – Prof. Celso

Modificadores:
N – nega um valor booleano
C – denota jump condicional (só pode ser usado com JUMP).

Exemplo: ANDN – equivale à porta NAND.

Tabela 02 - Desvios e comparações:


Operado Modificador Operando Comentário
EQ ( Qualquer Comparação de igual
GE ( Qualquer Comparação maior ou igual
GT ( Qualquer Comparação maior que
LE ( Qualquer Comparação menor ou igual
LT ( Qualquer Comparação menor que
NE ( Qualquer Comparação se diferente
JMP C, N Label Salto
CALL C, N Nome Chamada de função
RET C, N Retorno da função
( ) Prioridade

Tabela 03 – Operadores de Blocos de Função


Operador Bloco de Função Comentário
S1, R Biestável SR Seta e Reseta o Biestável SR
S, R1 Biestável RS Seta e Reseta o Biestável RS
CLK R_Trig, detector de Entrada de clock de borda de subida do bloco lógico
borda de subida
CLK F_Trig, detector de Entrada de clock de borda de descida do bloco
borda de descida lógico
CU, R, PV CTU, contador Parâmetros de controle para o contador incremental
incremental CTU; CU incrementa, R reset e PV carrega
contador.
CD, LD, PV CTD, contador Parâmetros de controle para o contador decremental
decremental CTD; CD decrementa, LD carrega; e PV carrega
contagem mínima.
CU, CD, R, CTUD, contador Parâmetros de controle para o contador universal
LD, PV universal CTUD.
IN, PT TP, temporizador Paramentos de controle para o timer de pulso. IN
de pulso inicia temporização; PT seta o tempo de pulso.
IN, PT TON, temporizador Paramentos de controle para o timer de atraso de
de atraso de subida. subida. IN inicia temporização; PT seta o tempo de
pulso.
IN, PT TOF, temporizador Paramentos de controle para o timer de atraso de
de atraso de descida descida. IN inicia temporização; PT seta o tempo de
pulso.

8
Sistemas Digitais 9
Módulo 17 – Prof. Celso

O circuito para a porta AND é mostrado na figura abaixo, bem como seu diagrama
ladder e a conexão no CLP:

Na listra de instruções, teríamos:

LD I00.0  A = I00.0
AND I00.1  A = A & I00.1
ST Q50.0  Q50.0 = A

O circuito para a porta OU é mostrado na figura seguinte. Note a diferença entre as


duas portas (AND e OU). Note que não há diferença nas conexões dos componentes no
CLP. A diferença esta na programação (diagrama ladder, ou lista de intruções).

9
Sistemas Digitais 10
Módulo 17 – Prof. Celso

Na lista de
instruções:

LD I00.0
OR I00.1
ST Q50.0

Na lista de
intruções:

LDN I00.0
ST Q50.0

10
Sistemas Digitais 11
Módulo 17 – Prof. Celso

No diagrama de relés, muitas vezes há a necessidade de se utilizar relé auxiliar para


desenvolver uma aplicação. Este relé auxiliar pode ser utilizado ou não na linguagem
ladder, dependendo da complexidade da aplicação. Na figura abaixo é mostrada a
construção de uma porta OU-Exclusivo. Notar a diferença entre o diagrama de relé e a
mesma aplicação na linguagem ladder:

A lista de instrução seria:

LD I00.0 * carrega a entrada I00.0


ANDN I00.1 * faz um and lógico entre I00.0 e I00.1 invertido
OR(
LDN I00.0 * carrega a entrada I00.0 invertida
AND I00.1 * faz um and lógico entre I00.0 invertido e I00.1
) * faz o OU lógico entre as duas expressões
ST Q50.0 * carrega a saída Q50.0

Notar no diagrama ladder a última linha possui um bloco de finalização (END). Isto
é necessário para indicar para a CPU do término lógico do programa.

11
Sistemas Digitais 12
Módulo 17 – Prof. Celso

Exercício 1) A figura abaixo mostra um sistema para lubrificar a superfície de placas


metálicas para melhorar o desempenho do sistema de estampagem e de corte. Os sistemas
de estampagem e de corte são muito utilizados nas indústrias de metal-mecânica.

O sistema possui um sensor de proximidade para detectar se há chapa sobre a esteira


ou não. Caso haja chapa na esteira, o sistema deve acionar o ar comprimido e a névoa
lubrificante. Assim que a chapa sair da proximidade do sensor, o sistema deve desligar o ar
comprimido e a névoa lubrificante.
O sistema possui, também um “start-up” (ligar o sistema). Esse sistema é controlado
por dois botões no painel de controle. O botão de “Start” deve ligar o motor e habilitar o
funcionamento do ar comprimido e da névoa lubrificante. O botão de “Stop” deve ser usado
para desligar todo o sistema. Considere que estes dois botões sejam pulsantes, ou seja, não
retentivo. Projete este sistema em linguagem ladder e lista de instruções.

12
Sistemas Digitais 13
Módulo 17 – Prof. Celso

Exercício 2) Um sistema para encher garrafas de refrigerantes é mostrado na figura abaixo:

O sistema possui um “start-up” idêntico ao exemplo anterior. Uma vez ligado o


sistema, as garrafas são conduzidas por uma esteira rolante. Quando a garrafa atinge o
sensor S1, o motor da esteira rolante deve ser desligado e a válvula solenóide deve ser
energizada até que o líquido atinja o sensor S2. Quando o líquido atinge este sensor, além
da válvula solenóide ser desligada, o motor da esteira deve ser ligado novamente.
Considere que os sensores S1 e S2 estão em nível lógico alto enquanto o feixe
óptico não for interrompido. Projete o sistema em linguagem ladder e em lista de
instruções.

13
Sistemas Digitais 14
Módulo 17 – Prof. Celso

CIRCUITOS DE INTERTRAVAMENTO

O circuito abaixo mostra como implementar um circuito para ligar e desligar uma
máquina. Um contato da bobina Q50.0 é utilizado para realizar o intertravamento da
máquina, mantendo-a ligada. É importante notar que podem ser utilizados tantos contatos
quantos forem necessários de uma mesma bobina.

Lista de Instruções

LD I00.0
OR Q50.0
AND I00.1
ST Q50.0

Outra maneira de implementar o circuito de intertravamento é a utilização das


instruções de memorização (flip-flops).

14
Sistemas Digitais 15
Módulo 17 – Prof. Celso

Lista de instruções

LD I00.0
S Q50.0 ; energiza a bobina Q50.0 caso a botoeira I00.0 seja pressionada
LD I00.1
R Q50.0 ; desliga a bobina Q50.0 se a botoeira I00.1 for pressionada.

CIRCUITO PARA DETECÇÃO DE BORDA

São circuitos que respondem na subida ou descida de um pulso. Existem os


seguintes componentes:

Exercício 3: Programe em Ladder um sistema utilizando uma bobina sensível a borda de


subida que, assim que o operador pressiona uma botoeira um motor é ligado e quando o
operador pressionar a botoeira de novo o motor é desligado.

15
Sistemas Digitais 16
Módulo 17 – Prof. Celso

CONTADORES

Os contadores são componentes que a partir do sinal de pulso na sua entrada,


efetuam contagens crescentes ou decrescentes.

CONTADORES CRESCENTES:

Lista de Instruções

LD I00.0
R C00
LD I00.1
CU C00
LD C00.D
SET
ST Q50.0

Onde;
R – entrada de reset do contador
S – entrada de preset do contador
PV – Valor predefinido.
CU – entrada da contagem crescente (counter – up)
E – saída acionada quando ocorre o overflow (de 9999 para 0000)
D – saída acionada quando o valor do contador for igual ao valor da contagem
predefinida.

CONTADOR DECRESCENTES:

Lista de Instruções

LD I00.0
R C00
LD I00.1
CD C00
LD C00.D
ST Q50.0

Onde: CD – entrada da contagem decrescente.

16
Sistemas Digitais 17
Módulo 17 – Prof. Celso

TEMPORIZADORES

São componentes utilizados quando há a necessidade de um tempo fixo. Podem ser


usados para acionar uma saída após um certo tempo, ou manter uma saída ativa por um
determinado tempo.

Temporizador de Pulso (TP) com pulso definido:

Neste temporizador a saída será energizada por um período de tempo constante.

O diagrama abaixo mostra este temporizador. Assim que o contato I00.0 for
fechado, a saída Q50.0 ficará acionada por 100 s. Funciona como um monoestável.

Lista de instruções:

LD I00.0
IN TM00
LD TM00.Q
ST Q50.0

Temporizador com retardo na ligação (TON):

Neste temporizador após a entrada ser ativada, a saída espera um certo período de
tempo para ser energizada. A saída permanecerá ativa até a entrada ser desativada.

17
Sistemas Digitais 18
Módulo 17 – Prof. Celso

O diagrama abaixo mostra este temporizador. Assim que o contato I00.0 for
fechado, a saída Q50.0 espera por 100 s para ser ativada.

Lista de instruções:

LD I00.0
IN TM00
LD TM00.Q
ST Q50.0

Temporizador com retardo no desligamento:

Neste temporizador a saída fica ativada assim que a entrada for energizada. Após a
entrada ser desativada, a saída ainda permanecerá energizada por um período de tempo T
definido.

O diagrama abaixo mostra este temporizador. Assim que o contato I00.0 for
fechado, a saída Q50.0 é energizada e irá esperar por 100 s após a entrada ser desernegizada
para ser desativada.

18
Sistemas Digitais 19
Módulo 17 – Prof. Celso

Lista de instruções:

LD I00.0
IN TM00
LD TM00.Q
ST Q50.0

Exercício 4) Projete um controlador automático para uma máquina de lavar roupas que
funcione da seguinte maneira:
- quando for pressionado o botão LIGAR, se a porta da lavadora estiver fechada, é iniciado
o ciclo de lavagem com a seguinte seqüência (ou estados):
1º. Encher o tambor de água (acionar a válvula V1)
Colocar detergente (válvula V2) por 10 segundos
2º. Rodar no sentido inverso (M3) enquanto:
Aquece a água (resistência R) até o sensor de temperatura (T) ser acionado
Continuar a encher o tambor de água até o sensor de pressão (P) ser acionado
3º. Descansar por 5 segundos
4º. Rodar em velocidade normal (M1) por 30 segundos
5º. Evacuar a água por 10 segundos
6º. Rodar no sentido inverso (M3) e evacuar o restante da água até P=0
7º. Parar por 5 segundos
8º. Centrifugar por 20 segundos (acionar motor M2-velocidade rápida).
9º. Voltar ao passo por durante 3 vezes.
10º. Desligar.

- Caso seja pressionado o botão PARAR, a máquina deverá ser desligada.

ATURADORES SENSORES
Motor do Normal M1 Botões do Ligar L
tambor Rápido M2 painel de Parar ST
Sentido Inverso M3 controle Abrir a porta AP
Eletro- Entrada Água V1 Sensor Temperatura T
válvulas Mist.Detergente V2 Sensor de Pressão P
Evacuação V3 Sensor de porta fechada PF
Bomba de Evacuação B
Resistência de Aquecimento R
Fechadura Elétrica FE Temporizador/Contador TC
19
Sistemas Digitais 20
Módulo 17 – Prof. Celso

20
Sistemas Digitais 21
Módulo 17 – Prof. Celso

5) Projetar um sistema que carregue cubos de madeiras para um forno. Devem ser
carregados 4 cubos de cada vez.
Os cubos chegam através de uma esteira rolante. Um sensor de proximidade (P)
acusa a presença de um cubo que deve ser empurrado pelo cilindro A para o cilindro B.
Quando houver 4 peças alinhadas, o cilindro C deve abrir a porta do forno e o conjunto de 4
peças é empurrado pelo cilindro B para dentro do forno. Para permitir o recuo do cilindro B
a porta do forno deve ser mantida aberta durante 5 segundos.
No painel de controle existem os botões para iniciar e para parar o processo.

21
Sistemas Digitais 22
Módulo 17 – Prof. Celso

5) Projete um sistema para fazer a orientação de caixas de papelão que são transportadas
por uma esteira rolante. Um sensor colocado na esteira indica se a caixa deve ser
rotacionada a 180º, a 90º ou se a orientação está correta.
O sistema possui um sistema pneumático composto por dois cilindros A e B que realizam a
rotação das caixas como indicado na figura abaixo:

Esse sistema pneumático possui 4 chaves fim-de-curso (a0, a1, b0 e b1) que indicam a
posição do cilindro.
Além disso, o sistema ainda possui 3 outros cilindros pneumáticos de efeito único:
Cilindro D para desviar a caixa para a rotação de 180º
Cilindro E para desviar a caixa para a rotação de 90º
Cilindro C para devolver a caixa para a esteira.

22
Sistemas Digitais 23
Módulo 17 – Prof. Celso

23

Você também pode gostar