You are on page 1of 54

Controladores Lógicos Programáveis

Unidade 1 – Evolução Histórica e Características de Hardware

 Evolução Histórica:

Os avanços tecnológicos ocorridos após a segunda metade do século XX se


mostraram com velocidade crescente. Pesquisadores e estudiosos do assunto
garantem que o tempo entre uma descoberta e outra vem diminuindo cada vez
mais, demonstrando uma maior aceleração do número de descobertas e das
criações de novas tecnologias a cada ano que passa, reforçando a idéia de que
o crescimento do conhecimento científico vem se apresentando em progressão
exponencial. Os controladores programáveis, junto com outros dispositivos
inteligentes , estão inseridos neste quadro de evolução, ocupando uma
importante função na área de automação industrial.

Alguns fatores ligados às necessidades da indústria foram responsáveis pela


idealização dos controladores programáveis, tais como “O aumento da
produtividade e a flexibilidade de processo de produção”.

Uma produção em escala adequada, assegurando a qualidade e o custo


competitivo e esses fatores associados a uma linha de produção flexível, de fácil
ajuste, permitindo uma mudança rápida nas características do produto,
constituíram razões mais do que suficientes para a criação dos controladores
programáveis. Fatores como economia de energia, espaço físico e tempo de
manutenção reforçam o grau de importância desses equipamentos.

1
Controladores Lógicos Programáveis
Evolução dos Controladores Programáveis:

Primeira Geração:

 Programação intimamente ligada ao hardware do equipamento.


 Programação em assembler.
 Para programar era essencial o conhecimento da eletrônica do projeto do
controlador.
 Necessidade de mão de obra altamente especializada para programação
e manutenção.
 Programa gravado em EPROM, normalmente no laboratório junto com a
construção do controlador.

Segunda Geração:

 Inclusão do sistema operacional no controlador.


 Surgimento das primeiras linguagens de programação, menos
dependentes do hardware do equipamento.
 O sistema operacional verifica os estados das entradas, executa o
programa e atualiza as saídas.
 Necessidade de mão-de-obra menos especializada para programação e
manutenção.
 Surgimento das maletas de programação com gravadores de EPROM.

Terceira Geração:

 Os controladores passam a ter uma entrada de programação através de


um teclado ou programador portátil.
 Possibilidade de inclusão, exclusão e alteração de programa, utilizando
esta entrada de programação.
 Inclusão de rotinas de testes nos controladores e nos programas.
 Aparecem os sistemas modulares com racks e bastidores.

Quarta Geração:

 Os controladores passam a ter uma interface serial dado a popularização


dos PCs.
 Primeiros softwares de programação utilizando os PCs.
 Aparecimento de várias representações para linguagem de programação.
 Surgimento de poderosas ferramentas de testes.
 Programação orientada a endereço.

2
Controladores Lógicos Programáveis
Quinta Geração:

 Padronização de alguns protocolos de comunicação permitindo a


integração entre controladores de diferentes fabricantes.
 Comunicação dos CLPs com outros produtos como computadores de
processo, softwares de supervisão e redes internas.
 Controladores voltados para a integração de grandes instalações.

Os Controladores Programáveis estão intimamente relacionados com as


variáveis encontradas no nível operacional, “chão de fábrica” e que através da
sua lógica de controle, sensores e atuadores, interagem com o processo.

As variáveis processadas são recebidas pelo nível de supervisão e controle


para alimentar e dar base real aos gráficos de monitoramento e às telas de
overview, alimentando as telas de alarmes e os cálculos de engenharia.
O nível de supervisão permite ao operador navegar na realidade virtual das
múltiplas etapas do processo, além de alimentar o nível estratégico com
informações capazes de orientar a alta gerência no processo decisório.

Conceito:
Os controladores programáveis são dispositivos eletrônicos de estado sólido,
microprocessados, com memória programável pelo usuário. Dispostos em forma
modular, são compostos por uma unidade central de processamento, módulos
de entradas e saídas digitais, entradas e saídas analógicas entre outros cartões
acessórios com aplicações mais específicas , tendo como objetivo processar os
dados recebidos do ambiente através de uma lógica de programa e assim tomar
a decisão de interferir no processo por meio de elementos de acionamento
(válvulas solenóides, contatoras, dispositivos hidráulicos e pneumáticos, entre
outros atuadores).

3
Controladores Lógicos Programáveis
Diagrama de Blocos:

Unidade Central de Processamento:

4
Controladores Lógicos Programáveis
Mapeamento de memória:
Memória com mapeamento planejado no projeto. Os espaços de memória são
previamente organizados, durante a elaboração do FIRMWARE. É feito desta
forma, porque os controladores lógicos são equipamentos dedicados a
aplicações específicas, admitindo apenas serem programados com softwares
desenvolvidos pelo fabricante.

Segue exemplo de áreas previamente definidas.

As áreas destinadas aos pontos físicos de


entradas e saídas, têm um ligação direta com
o mundo exterior, que são os cartões de
entradas e saídas digitais ou analógicas. Se
chegar informação de tensão em uma entrada
digital, no mesmo instante a memória recebe
esta informação, passando o conteúdo de zero
para um em tempo praticamente real, salvo o
tempo gasto na varredura do programa.
Existem áreas internas de memória que não
apresentam uma comunicação direta com o
ambiente físico, são as áreas destinadas aos
pontos de flags, registros de números inteiros
e de números reais. A área de pontos de flags
serve para registrar resultados lógicos
intermediários de uma dada expressão lógica
que está sendo processada, de forma que
somente o resultado final da saída da
expressão seja exteriorizado.
No caso das áreas destinadas aos
temporizadores e contadores, são necessárias
três palavras para cada elemento programado.
Uma palavra destinada ao valor corrente
acumulado (valor corrente de contagem de
tempo ou evento); outra palavra para receber
os valores de pré-seleção do tempo ou do
evento; a terceira palavra destina-se aos bits
de controle associados à própria instrução.
A área destinada a registrar números inteiros
guarda valores que não precisam da parte
fracionária, o que não ocorre com a área
destinada a registrar reais, cujo processo exige
uma maior exatidão de valores manipulados,
por exemplo, uma temperatura que apresenta
52,35 graus, necessita expressar décimos e
centésimos.

5
Controladores Lógicos Programáveis
As figuras seguintes detalham as áreas destinadas aos endereços físicos
de entradas e saídas.

No caso das áreas destinadas à temporizadores e contadores são necessárias


três palavras, para cada elemento programado. Uma palavra destinada ao valor
corrente acumulado (valor corrente de contagem de tempo ou evento), outra
palavra para receber os valores de pré-seleção do tempo ou do evento. A
terceira palavra destina-se aos bits de controle associados à própria instrução.

6
Controladores Lógicos Programáveis
 Tempo de varredura:

O tempo gasto na varredura do programa do usuário é de fundamental


importância. A atualização da imagem deverá ser suficientemente rápida para
ser uma réplica das variáveis do processo. Tal fato merece tanto destaque, que
um dispositivo interno do controlador denominado "cão-de-guarda" verifica se os
limites do tempo de varredura não foram extrapolados.
Em grande parte dos projetos a varredura do programa e a atualização da
imagem ocorrem em tempos alternados. Entretanto, alguns controladores já
admitem o processamento paralelo objetivando varrer o programa e atualizar a
imagem de forma independente.

 Como funciona:
Para exemplificar suas funções, podemos fazer uma analogia com o ser
humano, pois enquanto nós seres humanos estamos sujeitos a estímulos
senhoriais, informações que nos chegam pelo olfato, tato, visão,...., sendo
enviadas ao nosso cérebro e lá analisadas e processadas, que após a analise e
processamento enviam uma resposta, ação que pode ser: falar, sorrir, andar,...
logo comparando temos;

SISTEMA INFORMAÇÃO PROCESSAME TOMADA DE


NTO DEVISÃO
Ações:
Ser Humano Estímulos Cérebro  Falar
Sensoriais Humano  Andar
 Gesticular
Sensores: Acionamentos:
Controladores  Ópticos Processamento  Motores
Programáveis  Indutivos Digital  Válvulas
 Capacitivos  Alarmes

7
Controladores Lógicos Programáveis
Características:

 Capacidade de comunicação com um sistema de coleta de dados.

 Facilidade de expansão e preço competitivo com os sistemas de


relés.

 Resistentes a alta temperatura (60 graus C)

 Transitório de rede 1500 V.

 Variação de tensão de 85 a 140 VAC

 Tolerância a vibração e a choque.

Obs: Resistência ao Ambiente


O ambiente industrial apresenta uma série de agentes físicos e químicos que
agridem e comprometem a vida útil dos equipamentos utilizados no processo.
Como exemplos mais comuns podemos citar os ruídos eletrostáticos, excesso
de temperatura, vibrações mecânicas e as características nocivas da atmosfera.
A robustez do equipamento é uma característica indispensável para que ele
possa resistir ao ambiente por um largo intervalo de tempo, mantendo suas
características individuais e a qualidade do seu desempenho.

 Tamanho Físico:
Esta é uma das vantagens apresentadas pelos controladores programáveis,
pois no mercado encontramos controladores que cabem na palma da mão e são
capazes de interagir com vários pontos de entrada e saída, apresentando um
número satisfatório de instruções, entre elas temporizadores e contadores.

8
Controladores Lógicos Programáveis
 Disposição Modular:

É a capacidade do corpo físico do equipamento poder se dividir em módulos,


apresentando flexibilidade de escolha na configuração adequada, relativa a cada
caso de automatização. Como exemplo, podemos citar os módulos de entradas
e saídas digitais, entradas e saídas analógicas, módulos para leitura de
termopares, CPU, fonte de alimentação, entre outros.

 Facilidade de Programação:
A tendência do mercado é tornar cada vez mais intuitiva a programação e a
operação dos equipamentos programáveis; os controladores programáveis estão
incluídos neste contexto e admitem desde o início da sua concepção este
princípio.

9
Controladores Lógicos Programáveis
Como mostrado na figura acima, temos todas as facilidades de programação
através de um formato de comunicação humano-máquina bem amigável, onde
pode ser utilizado um PC contendo um software de programação com todos os
recursos necessários, tanto para programar, quanto para operar, monitorando
todos os passos de evolução do processo em andamento.

O programa é desenvolvido no PC e inclusive pode ser testado antes de ser


descarregado definitivamente no CLP, existem recursos do fabricante
contemplando a utilização de softwares, capazes de simular tanto as
informações dos sensores quanto o processamento dessas informações,
proporcionando o acionamento dos elementos finais, sejam eles: Válvulas,
motores, atuadores hidráulicos, pneumáticos, entre outros.

O programa do fabricante permite que toda a configuração necessária seja


realizada, incluindo a porta de comunicação e a velocidade desejada. Observe
que, em alguns casos, a porta de comunicação escolhida não condiz com a
porta que já esta configurada no PC, sendo necessário trocar de COM,
normalmente temos a opção COM1 ou COM2.

Principais Recursos Funcionais

 Intertravamento
 Sequenciamento
 Temporização
 Contagem de Eventos
 Instruções Aritméticas
 Movimentação de Arquivos
 Medição e Totalização de Vazão
 Controle PID
 Comunicação com Outros Sistemas
 Sistema de Visão

Intertravamento:
A função de intertravamento está intimamente ligada à idéia de segurança.
Fazendo analogia com um sistema bancário, por exemplo, temos uma série de
protocolos sendo utilizados para tornar segura uma operação de saque. Esse
sistema solicita a passagem do cartão, logo em seguida uma senha ou
impressão digital, solicita sua data de nascimento, em resumo, todas as ações
necessárias são realizadas para proteger tanto o banco quanto o usuário. O
mesmo ocorre em sistemas industriais. Em uma refinaria, para transferimos um
produto de um tanque de armazenamento para um navio, uma série de
protocolos precisam ser cumpridos, o navio tem que estar pronto para receber, a
refinaria tem que estar pronta para enviar, todas as válvulas precisam estar
devidamente alinhadas, a bomba tem que estar com a pressão de sucção e

10
Controladores Lógicos Programáveis
descarga em valores adequados. Veja quantas variáveis são envolvidas para
que seja realizada uma simples transferência de produto, quantos
intertravamentos deverão ser realizados.

Sequenciamento:
Em casos de seqüenciamento as aplicações são diversas, especialmente em
processos de manufatura, como nas fábricas de automóveis. Sequências de
acionamentos também são aplicadas nas indústrias farmacêutica, de cosméticos
e de transformação em geral. As instruções de temporização e contagem de
eventos (contadores), assim como as instruções aritméticas e as de
movimentação de arquivos estarão envolvidas em programas com a finalidade
de geração de sequências.
Medição e Totalização de Vazão:
Em processos industriais é comum desenvolver a medição e a totalização de
vazão utilizando-se de Controladores Programáveis. De acordo com o tipo de
medidor utilizado, quem recebe o sinal do transmissor é um cartão analógico, à
partir do recebimento da variável, cabendo ao controlador o tratamento
matemático envolvido na medida, utilizando-se para isso instruções aritméticas.
No caso da totalização, o volume recebido a cada tempo decorrido é registrado,
havendo então um registro acumulativo, através da utilização de instruções de
contagem de tempo e também de eventos, para cada bloco de volume recebido.
Controle PID:
O controle de variáveis é uma prática comum na indústria e a sua
implementação pode ser desenvolvida pelo SDCD, como também por
controladores programáveis, utilizando-se para isso cartões dedicados ou não.
Caso não sejam muitas as malhas de controle, este procedimento poderá ser
realizado por instruções especializadas da própria biblioteca interna de blocos de
funções da máquina, bastando para isto que, além de uma entrada e uma saída
analógica, sejam disponibilizados registros internos para recebimento de
parâmetros de controle como, por exemplo, o ganho, ação integral e ação
derivativa.

11
Controladores Lógicos Programáveis
Comunicação Com Outros Sistemas:
Com a evolução dos sistemas de comunicação em redes e com a necessidade
de integração entre os diversos equipamentos e softwares, nos dias de hoje é
imperativo que se faça uma total integração entre os diversos segmentos dos
processos industriais, seja através de cabos ou rádio, independentemente dos
protocolos utilizados tendo-se condições tecnológicas de interpretar e traduzir,
tornando-se possível o entendimento entre as máquinas. Dentro deste contexto
os controladores programáveis se comunicam entre si e também com outros
sistemas e equipamentos, bastando para isto utilizarmos o meio físico adequado
e cartões de comunicação apropriados.

12
Controladores Lógicos Programáveis
Sistema de Visão:
Os módulos relacionados a sistemas de visão têm como objetivo o
reconhecimento de imagens à partir de padrões pré-determinados. Desta forma,
usando comparações de imagens digitalizadas e tratamento matemático
adequado, será possível o reconhecimento da imagem, que poderá resultar ou
não em uma tomada de decisão.

Estruturas Físicas dos Controladores Programáveis


 Rack ou Chassi
 Fonte de Alimentação
 CPU
 Memória
 Entradas e Saídas Digitais
 Entradas e Saídas Analógicas
 Interfaces de Comunicação

Rack ou Chassi:

É o bastidor onde são encaixados os


cartões do CLP (Fontes, Cartões de
Entradas e Saídas, CPU, Interfaces de
Comunicação e etc).
Tem como finalidades fornecer uma
blindagem eletromagnética e dar proteção
mecânica, suportando o barramento de
interligações (Back Plane) ao qual são
ligados os cartões.

13
Controladores Lógicos Programáveis
Os racks do CLP são fornecidos com diversos números de ranhuras (Slots)
4,8, 12 e 16.

Com cartões instalados Sem cartões instalados

Cartões de entradas e saídas:

 Entradas discretas: 24vcc, 48vcc, 125vcc


120 e 220 VCA
 Saídas discretas: 24vcc, contato seco
 Entradas analógicas: 1 a 5v, 4 a 20mA
 Saídas analógicas: 1 a 5v, 4 a 20mA
 Termopar
 Termoresistência
 Cartões de comunicação em rede

Entradas discretas 24vcc Entrada discreta AC

Saídas digitais utilizando triac Saídas digitais utilizando relé

14
Controladores Lógicos Programáveis
Entradas e Saídas Analógicas, circuitos internos:

O conversor analógico digital presente nas


entradas do cartão irá receber um sinal
padronizado de tensão ou corrente, convertendo
este sinal em um valor digital, que terá tanto mais
resolução quanto maior for a quantidade de BITs
apresentados pelo conversor A-D.

O esquema apresentado ao lado mostra de que


forma o valor analógico é convertido no valor
digital correspondente.
A função do comparador é receber o valor
analógico de entrada e comparar com o valor da
saída D-A, que converte o valor de contagem
criado internamente. A função do contador é criar
o valor digital, que será incrementado à partir de
um pulso local, cuja contagem somente será
interrompida quando o seu valor se igualar ao
valor da entrada. Neste instante a contagem será
congelada.
O relógio interno, irá habilitar a contagem
crescente ou decrescente, buscando o valor
exato a ser transferido, parando a contagem no
instante em que os valores se igualarem e em
seguida transferindo este valor ao latch (tipo de
memória que registra o valor e o mantém
armazenado). A habilitação do latch ocorre no
instante de cruzamento dos valores.

Considerando a figura ao lado, suponha


que um dado valor numérico é
representado por quatro bits, sendo D3
D2 D1 D0 por exemplo :1001, então
passando para a base dez, teremos:
8+0+0+1 O NÚMERO 09, sendo D3 o
mais significativo, o que apresenta o
maior peso, então a sua contribuição na
saída do circuito será maior e
proporcional a posição que ocupa,
portanto de acordo com a posição do bit ,
teremos um valor de ganho em particular.
Todas as contribuições somadas, Irão
compor o valor da tensão de saída (Vo).

15
Controladores Lógicos Programáveis
Unidade 2 - Sistemas de Numeração e Funções Lógicas
O nosso sistema de numeração apóia-se predominantemente na base “dez”,
onde são realizados a maioria dos cálculos rotineiros no nosso dia a dia. O
hábito não nos deixa perceber que tais operações aritméticas podem também
ser realizadas em outras bases. Os controladores lógicos, por exemplo, realizam
suas operações lógicas e aritméticas utilizando a base dois, pelo fato desta se
adequar melhor ao processamento digital. Apresentando apenas dois algarismos
(zero e um) que correspondem respectivamente a ausência e a presença de
energia elétrica, a base dois torna-se indispensável ao trabalho de qualquer
equipamento eletrônico microprocessado. Além da base dois, a utilização da
base oito e da base dezesseis se fazem necessárias para se efetuar a operação
e a programação dos controladores programáveis. O conhecimento e a
familiarização com estas bases é de importância significativa e a aplicação deste
conteúdo será constante ao longo de nossos estudos.

Base: É o número ao qual se eleva a um expoente para se obter o valor da


contribuição.

Posição: Da direita para a esquerda de zero a N, sendo N a maior posição


ocupada.

Como exemplo, temos o número 373 abaixo, na base 10. O três mais à direita
está na posição zero e é a mais baixa (3x100 = 3); o sete está na posição
intermediária e tem peso igual a um (7x101 = 70); o outro três, que está na
posição mais à esquerda, tem peso igual a dois e é a mais alta (3x102 = 300).

Obs.: O termo peso ou contribuição se deve ao fato de que a maioria dos


códigos descritos ao longo deste curso são ditos ponderados e, dependendo da
posição ocupada, ele apresenta um valor que cresce em relação direta com a
posição ocupada.

16
Controladores Lógicos Programáveis
Ordem: É o valor da posição ao longo do número e se aplica ao expoente da
base.

Algarismo: É o símbolo numérico.

Ex.: a base dez apresenta dez algarismos ou símbolos diferentes de zero a


nove.

Obs: O algarismo de maior valor que uma base apresenta é sempre o valor da
base menos uma unidade e, no caso da base 10, o símbolo de maior valor é o
“9” (10 - 1= 9 ).

A seguir apresentamos um exemplo com base, ordem e algarismo, que resulta


em um valor numérico.

6, 7 e 5 são os algarismos ou
símbolos que compõem o número 67510

6x102 + 7x101 + 5x100 = 600+70+5

Conversão de bases numéricas: Um mesmo valor numérico pode ser escrito


em diversas bases diferente mantendo sua magnitude.

Conversão da base “10” para base “2”

Nos exemplos seguintes temos a passagem de números da base dez para a


base dois utilizando o método das divisões sucessivas.

17
Controladores Lógicos Programáveis
110101 = 1x25 + 1x24 + 0x23 + 1x22 + 0x21 + 1x20 = 32 + 16 + 0 + 4 + 0 + 1 = 53

O exemplo acima mostra de que forma um número na base ”2” pode ser
convertido para a base “10” . Nota-se que, dependendo da posição em que o
algarismo se encontra, a contribuição ou peso se manifesta de forma diferente,
sempre crescendo da direita para a esquerda.

A figura abaixo mostra o comportamento dessas contribuições ao longo de um


número, lembrando que os pesos ou contribuições sempre serão potências
exatas da base “2” .

A figura mostra potências


de dois até 1024. Estes
valores estarão sempre
presentes nos nossos
cálculos de conversão da
base dois para a base dez.

18
Controladores Lógicos Programáveis
Continuando, como exemplo o número onze , seguimos com a identificação da
ordem ou posição seguida do número na base dois e as respectivas
contribuições ou pesos para cada posição.

1011 = 1x23 + 0x22 + 1x21 + 1x20 = 8 + 0 + 2 + 1 = 11

8, 4, 2 e 1 representam respectivamente as contribuições relativas às posições


dos algarismos, que na base dois são o zero e o um. Na verdade, quando o
algarismo for igual a zero, a contribuição será nula, mas quando este assumir “1”
como valor, esta contribuição será uma potência exata de “2”. Na figura acima
temos 8,4,2,1 como exemplos, porém dependendo da magnitude do número,
haja a necessidade de se utilizar “16”, “32” ... “1024” etc.

Veja a seguir alguns exercícios resolvidos:

a) 7210

Resultado: 10010002

Retornando à base dez: 1x26 + 0x25 + 0x24 + 1x23 + 0x22 + 0x21 + 0x20 + = 7210

19
Controladores Lógicos Programáveis

b) 8610

Resultado:10101102

Retornando à base dez: 1x26 + 0x25 + 1x24 + 0x23 + 1x22 + 1x21 + 0x20 = 86

Abaixo será apresentada uma outra forma de conversão de números da base


dez para base dois.

Seja, por exemplo, o número 2810

Pergunta-se: Qual é a potência exata de dois mais próxima e menor que 28?

Resposta:16

28-16=12

Pergunta-se: Qual é a potência exata de dois, menor ou igual e mais próxima de


12 ?

Resposta: 8

12-8=4

Pergunta-se: Qual é a potência exata de dois menor ou igual e mais próxima de


4 ? Resposta:4

Compondo o número na base dois a partir das contribuições.

Temos então 16, 8, e 4 para compor o número 28(16+8+4=28). Como a maior


contribuição apresenta expoente igual a quatro (24 = 16), podemos concluir que

20
Controladores Lógicos Programáveis
o número escrito em binário apresenta cinco posições (começamos a contar as
posições a partir de zero).

111002

Conversão da base “10” para base “8”

A base oito apresenta oito símbolos de zero a sete e freqüentemente é


empregada nos endereçamentos dos pontos de entrada e saída dos
controladores lógicos programáveis.

O método utilizado para efetuar a mudança de base é o mesmo empregado


anteriormente. Dado um número na base “10”, este será dividido
sucessivamente por “8” até que o resto encontrado seja inferior a oito.

Seja a passagem do número 12410 para a base “8”, lembrando que 12410
significa “cento e vinte e quatro, escrito na base dez” .

124 8
15 8
4
7
1

Resultado da operação originando as contribuições.

1748
Retornando para a base 10: 1x82 + 7x81 + 4x80 = 12410

Seja a passagem do número 21010 para a base “8”

210 8
26 8
2
2
3

3228
Retornando para a base 10: 3x82 + 2x81 + 2x80 + = 21010

21
Controladores Lógicos Programáveis
Conversão da base”8” para base “2”.

Considerando o exemplo anterior 3228 , lembramos que na passagem da base


oito para base dois, há de se converter separadamente, cada um dos algarismos
que compõe o número em questão, como pode ser visto a seguir.
Valor obtido na base dois

3228
011010010 2

011 010 010 zero a esquerda


não apresenta
valor
11010010 2

Passagem do número obtido para a base dez.

1x26 1x24 0x22 0x20

11010010 2

1x27 0x25 0x23 1x21

1x27 + 1x26 + 0x25 + 1x24 + 0x23 + 0x22 + 1x21 + 0x20 + = 21010

Seja o número 12810 passando para base oito, da base oito para base dois e em
seguida retornando da base dois para base dez

128 8
8
0 16
0
2

22
Controladores Lógicos Programáveis
Resultado obtido na base “8”= 200

2008

010 000
000

Base dezesseis

Comparando a base “16” com as outras bases estudadas, há de se destacar


algarismos ainda não tão populares quanto os que são utilizados na base dez.
Lembramos que quanto maior a base maior será também a quantidade de
símbolos envolvidos e esta quantidade é exatamente igual ao valor da base.

Tomando como exemplo uma comparação entre os símbolos da base “10” e da


base “16”, concluímos a necessidade de acrescentarmos mais seis símbolos
novos para compor os dezesseis símbolos existentes nesta base.

Obs. : Símbolo e algarismo denotam o mesmo sentido.

Símbolos ou algarismos presentes na base dezesseis: 0, 1, 2, 3, 4, 5, 6, 7, 8,


9, A, B, C, D, E, F.

Na tabela abaixo são apresentados os novos símbolos da base “16” e seus


respectivos valores correspondentes na base “dez”

23
Controladores Lógicos Programáveis
Conversão da base “10” para a base “16”.

Seja o exemplo a seguir:

18110 16
Resultado B 516
5 11

O número onze corresponde ao símbolo B

Pergunta: Porque não 5 11 ? Resposta: Não existe o símbolo 11 na base dezesseis

Pergunta: Então por que não poderia ser 5 B ? Resposta: Todo e qualquer resultado obtido
pelo método das divisões sucessivas, é
invertido no final da operação.

Seja o número 19610 que se deseja passar para base “16”

19610 16
36
4 12

Resultado C 4 16

Retornando para a base dez: Cx161 + 4x160 = 12x16 + 4x1 = 19610

Conversão da base “16” para a base “2”.

O método consiste na conversão individual de cada símbolo. Como o maior


símbolo encontrado na base dezesseis é o F, que corresponde ao quinze da
base dez, iremos reservar quatro bits para cada um dos algarismos da base em
questão.

24
Controladores Lógicos Programáveis
Exemplo:

Seja o número 5 C16

Resultado 10111002
0101 1100
Zero a esquerda não
apresenta valor.

Convertendo o número encontrado na base “2” para a base “10” temos:

10111002 = 1x26 + 0x25 + 1x24 + 1x23 + 1x22 + 0x21 + 0x20 = 9210

Concluímos que ao se converter o número 5 C16 para a base dez encontrar-se-á


o mesmo resultado “9210”, então temos que 5 C16 = 5x161 + Cx160 = 80 + 12 =
9210

Conclusão: Os resultados são idênticos.

O código BCD.
Em determinados controladores lógicos existe a necessidade da aplicação do
código BCD, que significa decimal codificado em binário. Este código se aplica
sempre que for necessário exteriorizar um número binário para que este seja
visualizado em display de sete segmentos ou então na programação de
temporizadores e contadores. Em alguns tipos de controladores, portanto, existe
uma diferença entre o código binário puro e simples e o código BCD.

Exemplo:

Seja o número 14210 . A estratégia utilizada para converter o número, consiste


em efetuar a passagem de forma individual para cada algarismo em separado.

14210 Resultado 000101000010


0
0001 0010
0100

25
Controladores Lógicos Programáveis
Outro exemplo:

Seja o número 97510

Obs.: Se o número “975” for convertido para binário o resultado obtido não será
o mesmo, pelo fato de se tratar de dois códigos de naturezas distintas, com
objetivos de aplicação diferentes, embora ambos apresentem os mesmos
símbolos para representá-los.

A tabela abaixo mostra equivalência de valores em quatro bases diferentes e


também no código BCD:

O Formato “Ladder” De Comunicação Homem /Máquina

26
Controladores Lógicos Programáveis
A tendência do mercado é tornar cada vez mais intuitiva a programação e a
operação dos equipamentos inteligentes programáveis. Os controladores
programáveis estão incluídos neste contexto e admitem este princípio desde o
início da sua concepção. A opção pelo “Ladder” demonstra a intenção de
adequar a linguagem de programação ao tipo de usuário. Na industria, a prática
rotineira com os relés eletromecânicos inspirou os projetistas a desenvolver um
tipo de formato que simulasse o mesmo ambiente que os eletricistas estavam
acostumados a trabalhar, podendo então emular a realidade dos circuitos
elétricos compostos pelos contatos e bobinas dos relés eletromecânicos. À partir
desta idéia, o “Ladder” passou a ser o formato de comunicação mais bem aceito
e popular do mercado, sendo adotado quase que pela totalidade dos fabricantes
de controladores lógicos programáveis.

O nome “Ladder” se originou baseado no fato de que os diagramas se


pareciam com uma escada, que se traduz na língua inglesa pela palavra
“Ladder”.
OBS: Embora exista uma tendência de padronização, o “Ladder” não é
considerado ainda um padrão; cada fabricante apresenta o seu “Ladder”
particular, que são similares, mas não exatamente iguais.
A seguir temos alguns exemplos de lógicas com seus circuitos equivalentes em
“Ladder”:

27
Controladores Lógicos Programáveis

FUNÇÃO “OU”

A B S
0 0 0
A saída S
entrada
> 0 1 1
s B
=1
1 0 1
(Simbologia para a porta lógica “OU”) 1 1 1

OBS: Considerando a tabela verdade (Tabela Verdade da função “OU”)


ao lado, concluímos que a saída só
será verdadeira, se ao menos, uma
+
das entradas for verdadeira.
A B
Para o diagrama “Ladder” abaixo, a forma de
interpretar é basicamente a mesma, a diferença
consiste em uma rotação de noventa graus no
diagrama elétrico da figura ao lado. É bom lembrar
que os pontos das entradas “A” e “B” são
equivalentes a dois bits internos da memória do L1
controlador programável e que os contatos “A” e “B”
apenas permitirão a passagem de corrente para a
bobina “S”, caso haja conteúdo verdadeiro (1)
presente nos endereços “A” ou “B”, ou ainda, se
_
houver conteúdo simultaneamente verdadeiros em
ambos. (Diagrama elétrico representando uma função “OU”)
A
Veja no exemplo da figura acima que
S as duas chaves “A“ e “B“ tem como
+ ( )
_ objetivo comum acionar a lâmpada “L1”
e esta será ligada caso uma ou outra
chave seja habilitada. Nos circuitos
elétricos a função ou é caracterizada
B pelo paralelismo dos ramos.

(Diagrama “Ladder” de uma função “OU”)

OBS: Os contatos apresentados no diagrama “Ladder” são ditos do tipo normal abertos,
pelo fato de estarem bloqueados no instante de normalidade, ou seja, quando nenhum
sinal do processo estiver energizando o endereço em questão.

Alguns autores costumam denominar este tipo de contato de examine-on pelo fato de
estarem verificando, permanentemente, a existência de energia que chega ao referido
endereço.

28
Controladores Lógicos Programáveis

FUNÇÃO “E”

A B S
A Em função da tabela
verdade ao lado , 0 0 0
& saída
S
concluímos que a saída
B somente será verdadeira 0 1 0
caso as duas entradas
(Simbologia para a porta lógica “E”) simultaneamente forem 1 0 0
verdadeiras. 1 1 1
+
(Tabela Verdade da função “E”)
A

No circuito ao lado, a lâmpada h2 irá


acender apenas quando as duas
B chaves(A e B) forem acionadas
simultaneamente, caracterizando
desta forma, a função “E”.

h2

_
(Diagrama elétrico representando a função “ E”)
A B
( )
S _
No diagrama Ladder ao lado
+
quando os conteúdos do endereço
“A” e “B” forem simultaneamente
iguais a “1” a linha estará (Diagrama ladder representando a função “ E”)
permissiva para a passagem de
corrente (imaginando que as
extremidade do circuito estejam
polarizadas), então para este caso,
a bobina “S” será energizada.
Obs:Lembramos que esse efeito
apresentado pelo programa é uma
simulação do diagrama elétrico
correspondente.

29
Controladores Lógicos Programáveis

FUNÇÃO “ NÃO OU”

É a negação da função “OU”. Podemos


observar na saída da porta lógica da figura
10, um minúsculo círculo que representa o
inversor. A presença deste símbolo indica
que tudo que for verdade para função
“OU”, não será verdade para função “NÃO
OU”. A tabela verdade da figura ao lado
mostra a inversão do resultado.

A B
K1

O circuito elétrico da figura ao lado


K1 h1 representa a função “NÃO OU”. As duas
chaves em paralelo formam uma função do
tipo “OU” que energiza a bobina do relé e,
_ ao ser utilizado o contato fechado do relé,
invertemos a função “OU”, dando origem a
(Diagrama elétrico representando uma função “NÃO OU”) uma “NÃO OU”. Abaixo, à esquerda, o
respectivo diagrama Ladder da função
“NÃO OU”.

A (S’) _
+ S’
(S )
(Diagrama Ladder representando a função “ NÃO OU”)

30
Controladores Lógicos Programáveis
FUNÇÃO “ NÃO E”

A saída
S
A entradas &
K1 B

(Simbologia para a porta lógica “NÃO E”)


B
A B S
0 0 1
K1 h2 0 1 1
_ 1 0 1
fig.II.14

(Diagrama elétrico representando a função “NÃO E”) 1 1 0

(Tabela Verdade da função “NÃO E”)

Os endereços “A” e “B” da figura acima são as entradas da nossa função e


correspondem respectivamente a dois bits internos na memória do controlador
programável. As informações que vêm do processo chegam aos pontos de
entrada física contidos nos módulos de entrada do controlador. Os dados
recebidos são encaminhados para a memória, onde irão escrever zero ou um no
endereço.
O diagrama “Ladder” à esquerda
A função “NÃO E” é a negação da função demonstra o conceito de link lógico que
“E”. Tudo que for verdadeiro para função “E” nos mostra uma ligação representada
não será verdadeiro para a função “NÃO E” por S’. O fato de existir um contato
. normal fechado (examine off) com o
mesmo endereço S’ determina a
A B S’ negação da função “AND” além de
estabelecer a ligação lógica entre os
( ) _ dois pontos do circuito. O bit utilizado
+ S’ S para este tipo de ligação normalmente
( ) não é um ponto real, não tem expressão
no mundo físico, é portanto um bit
interno que, dependendo do fabricante,
(Diagrama Ladder representando a função “NÃO E”)
poderá ser chamado de “flag”, bit
auxiliar,etc.

31
Controladores Lógicos Programáveis
FUNÇÃO “OU EXCLUSIVA”
A tabela verdade abaixo mostra que a saída “S” somente será verdadeira caso as
entradas “A” e “B” apresentem diferença no estado lógico ( falso verdadeiro ou
verdadeiro falso)

B A A B S

S 0 0 0
( ) 0 1 1

1 0 1
B A
(Diagrama LADDER representando a função “OU EXCLUSIVA”) 1 1 0

A B
O fato dos dois ramos estarem em
paralelo, é suficiente para caracterizar o
“OU lógico” entre os dois ramos do
circuito, sendo que cada ramo
& representa uma função “E” com uma
> das entradas negada.
S
=1

&
(Representação da função “OU EXCLUSIVA” com portas lógicas)

A B K1 K2
1-2 1-2
Os contatos K1 1-2 e K1 3-4
pertencem a bobina K1 e os
contatos K2 1-2 e K2 3-4
K2 K1 pertencem a bobina K2. A
3-4 3-4
lâmpada h1 representa a saída
K1 K2 da função.
h1 (Saída “S”)

_
(Circuito elétrico representando a função “OU EXCLUSIVA”)

32
Controladores Lógicos Programáveis
Exemplo de expressão lógica: S = [ (A+B).C + D.E ] . F

A
C

S
F
B
( )

D E

A
>
=1
B &
>
C S
=1
&
D &
E

33
Controladores Lógicos Programáveis

Unidade 3 - Programas comentados

Circuito de comutação

O circuito tem como objetivo comutar


o acionamento das saídas O:2/0 e
O:2/1 de forma que o acionamento de
uma irá implicar no desligamento da
outra e vice-versa. Isto ocorre em
função do contato normal fechado das
entradas I:1/0 e I:1/1 presentes nos
ramos principais.

Ao acionarmos I:1/0, a saída O:2/0


será ligada e esta será desligada
quando acionarmos a entrada I:1/1 que
também liga a saída O:2/1 .

34
Controladores Lógicos Programáveis

Estruturas Retentivas

Em muitas situações de projeto


torna-se necessária a retenção da
informação de acionamento. Tocar um
botão para acionar um dispositivo e
manter este dispositivo acionado até
que ocorra a necessidade de desligar.
Existe uma instrução utilizada nos
softwares de programação que é capaz
de reter a informação (bobina liga) até
que seja interessante desligar ( bobina
desliga). Como exemplo, podemos
citar os programas à esquerda, em que
as duas estruturas são equivalentes.
A instrução Latch escreve um no
endereço, e a instrução Unlatch
escreve zero.

Botão Único p/ Ligar e Desligar


O programa tem como finalidade
efetuar o acionamento e o desligamento
de um ponto de saída utilizando para
isso uma mesmo botão de entrada do
tipo push-boton.
No ato de pressionar o botão, a primeira
linha do programa se faz permissiva,
ligando a saída O:2/0, no ato de soltar o
botão, já com O:2/0 ligada, a segunda
linha de programa se faz permissiva,
registrando a informação de que um
pulso completo com borda de subida e
descida já foi finalizado e que a saída
O:2/0 já se encontra acionada.

No segundo instante, quando o botão é novamente pressionado, já existe em O:6/0


uma informação (conteúdo igual a 1), portanto, o contato aberto de endereço O:6/0 da
linha três encontra-se permissivo e no instante em que I:1/0 receber conteúdo igual a
um, a saída O:2/0 será desligada, no ato de soltar o botão , término do segundo pulso,
o ponto O:6/0 será desligado e o programa retornará a condição inicial.

35
Controladores Lógicos Programáveis

Comando bimanual de Prensa

O objetivo do programa é fazer com que


o operador acione uma prensa
hidráulica mediante um comando
bimanual. O operador tem que
necessariamente utilizar as duas mãos
para efetuar o acionamento, através de
dois botões de comando, cujos
endereços serão respectivamente I:1/0
e I:1/1. O ponto de saída O:2/0 será
energizado, acionando o cilindro
hidráulico da prensa. Os dois ramos em
paralelo na entrada do temporizador
T4:0 formam uma função lógica EX-OR,
entretanto a saída O:2/0 somente será
energizada caso os dois botões sejam
pressionados com uma diferença de
tempo mínima definido em 0,2 ms. Caso
este tempo não seja respeitado, a saída
de acionamento O:2/0 será bloqueada,
impedindo a partida da prensa. Nesta
situação será necessário efetuar o
desbloqueio a parir do botão I:1/7.

O endereço O:2/2 está relacionado ao comando de retorno da prensa e este somente será
acionado mediante o encontro do fim de curso de endereço I:1/5. O movimento de retorno
somente será interrompido mediante o encontro do segundo fim de curso I:1/4, localizado
na posição inicial da prensa. À partir deste instante a máquina voltará à sua posição inicial.
Repare que a penúltima linha de programa é a que efetivamente aciona o avanço da
prensa, através de O:2/0 e que para que seja acionado este ponto, a prensa deverá estar
na posição correta (O:6/2 ligado), não deverá ter ocorrido nenhum problema com relação a
diferença de tempo de acionamento entre um botão e outro (O:6/1 desligado), para garantir
a segurança. Também não deverá ter chegado o fim de curso (I:1/5 ligado).

36
Controladores Lógicos Programáveis

Acionamento em Sequência

O objetivo do programa é desenvolver uma


seqüência, de forma que apenas uma saída
seja acionada sempre que a sua entrada
correspondente receber uma transição. É
importante ressaltar que o acionamento da
saída seguinte irá implicar no desligamento da
anterior; isso se explica pelo fato de existir, em
série com o ramo principal de cada circuito,
um contato normal fechado referente à saída
seguinte. Cada entrada estará associada a
uma saída correspondente e o acionamento
de uma dada saída, implicará no desligamento
da saída anterior, desenvolvendo uma
seqüência cíclica. A seqüência poderá não
ser respeitada caso o operador não siga uma
mesma ordem de acionamento nos endereços
I:1/0, I:1/1 e I:1/2. Por exemplo: caso o
operador, após acionar I:1/0 venha a acionar
I:1/2, o ciclo será interrompido.

Furadeira Elétrica

O programa tem como objetivo


comandar uma sequência
automática de comando para
uma furadeira. Os quatro
estados da máquina são
descritos na tabela ao lado onde
o acionamento dos dispositivos
de saída, os sensores e os
respectivos estados são
apresentados. A tabela serve
como uma ferramenta de
organização, disposta a orientar
o desenvolvimento do programa.
As colunas da tabela
representam os estados.

37
Controladores Lógicos Programáveis

Para cada estado representado na tabela temos um comportamento diferente de


saídas e para cada combinação de saídas temos um bit de flag auxiliar (O:6/1, O:6/2,
O:6/3, O:6/4). Estes bits, resultado de uma combinação de contatos, irão representar
cada estado da máquina. O programa, na parte superior deste texto, à esquerda,
mostra os acionamentos das saídas à partir de uma condição de entrada. Será
necessário além da informação de entrada, estar no estado adequado para que haja
a permissão de evolução.

Obs.: Todos os sensores envolvidos no projeto são sensíveis à transição, bastando


apenas a passagem pelo sensor, para que uma mudança de estado seja percebida
pela entrada do CLP.

O elemento de saída responsável pelo avanço do mandril é um cilindro pneumático


de dupla ação que apresenta duas opções de velocidades (avanço rápido e avanço
lento). A escolha do tipo de avanço será em função da posição do mandril. A
quantidade de ar comprimido envolvida no deslocamento da haste do cilindro
pneumático irá determinar a velocidade. Temos uma saída para cada alternativa de
comando de velocidade totalizando dois pontos para esta finalidade.
O sensor que determina o momento da troca do avanço rápido para lento,é o FCII.

O recuo será acionado no término da operação, após a peça ser totalmente


perfurada, quando o sensor FCIII for tocado.

Ao término do recuo o sensor FCI será tocado, determinando o momento de desligar


o motor da broca. A máquina neste momento fica aguardando um novo comando de
start.

O comando de reset tem como finalidade parar o avanço do mandril, ligando o recuo,
mantendo assim a máquina no estado 4 e, em seguida, após ser atingido FCI,
desligar o motor de rotação da broca.

38
Controladores Lógicos Programáveis
Alarme de Primeira Falha

O objetivo do programa é registrar a


primeira falha ocorrida em um dado
processo. Suponha que existem três
variáveis interdependentes que estejam
sendo monitoradas. O fato de serem
interdependentes sugere que a
ocorrência de falha em uma das
variáveis poderá ocasionar falha na
segunda e terceira variável, provocando
alarmes em cadeia.
A idéia do programa é registrar somente
a primeira variável a ser alarmada sem
que as demais sejam registradas. No
ramo principal de cada saída de alarme
iremos encontrar contatos fechados das
outras duas variáveis de forma que a
primeira falha que entrar possa bloquear
o alarme das outras duas.

Anunciador de Alarmes
O objetivo do programa é sinalizar através
do endereço O:6/2 (sinal sonoro), a
existência de uma falha. Quaisquer das
três falhas poderá disparar o alarme
sonoro, que será reconhecido pelo
operador no instante que o endereço de
entrada I:1/4 for energizado pelo botão de
reconhecimento.
A variável O:6/0 (bit interno) concentra um
“ou” lógico entre as três falhas em questão
e comunica esta condição a outros pontos
do programa.
O:6/1 é a variável que indica a presença
do reconhecimento dado pelo operador no
instante do alarme. Esta variável apresenta
um contato normal fechado em série com o
ramo principal de O:6/2 (sinal sonoro) com
a finalidade de desligar o sinal sonoro. A
variável O:6/1 permanecerá verdadeira até
que todas as falhas sejam reparadas,
então, o sistema irá retornar ao ponto de
partida.
As saídas O:2/1 , O:2/2 e O:2/3 são
indicações luminosas das falhas ocorridas.

39
Controladores Lógicos Programáveis
Observação 1: O termo variável verdadeira, significa variável com conteúdo igual a “1”,
caracterizando a energização do ponto em questão.

Observação 2: Na ausência de falhas, os endereços dos contatos I:1/0 , I:1/1 , I:1/2


estão normalmente energizados e somente em caso de falha recebem conteúdo igual a
“0” do processo.
Esta estratégia facilita a identificação de um possível mal contato ou rompimento de
cabo.

Temporizadores
O programador que for utilizar a
instrução temporizador, deverá
escolher um endereço na área
destinada a temporizadores e, à
partir daí a instrução ficará
aguardando as outras informações:
a)Endereço;
b)Valor de pré selecionado;
c)Base de tempo.

Neste caso em particular a nossa base de tempo é fixa em 0,1s, mas dependendo do
fabricante será necessário escolher uma base de tempo. No caso do TON e do TOF
a linha habilitadora deverá estar permissiva para ser iniciado o incremento do valor
acumulado, que irá evoluir em direção ao pré selecionado. Quando o valor de pré
seleção for atingido, será energizado o bit DN, cujo endereço será T4:0/DN, conforme
o exemplo. Este bit poderá ser utilizado para efetuar um dado acionamento.

Gerador de Pulsos
O temporizador T4:0 no
exemplo é o primeiro a partir,
sendo incrementado o seu
valor acumulado e atingindo o
pré-selecionado, o bit DN é
ligado dando um comando
LIGA no endereço O:2/0.
Após ligado, o seu contato
irá habilitar o segundo
temporizador, que irá contar o
tempo de desligamento e, ao
ser atingido o valor de pré-
seleção, o contato T4:1/DN
desligará o mesmo endereço
O:2/0.

O ciclo Liga/Desliga de O:2/0 se repete e o contato fechado em série com habilitadora


de T4:0 irá proporcionar a sincronização entre os dois semi períodos.
Acesso ao valor acumulado dos Temporizadores

40
Controladores Lógicos Programáveis

O exemplo ao lado mostra de


que forma podemos ter acesso
ao valor corrente da contagem
de tempo, dentro da palavra do
valor acumulado, bastando
apenas utilizar a forma correta
de escrever o endereço de
cada bit da palavra em
questão (T4:0.ACC/X) onde X
é o endereço do bit escolhido.
Observe que as quatro linhas
de acionamento abaixo do
temporizador estão codificadas
de forma a se tornarem
permissivas para valores
determinados dentro da faixa
de contagem de tempo.

Acionamento por probabilidade

O objetivo do programa é acionar duas


bombas B1 e B2 de forma a dosar a
probabilidade de acionamento para cada
uma delas, criando um encontro entre o
ato de acionamento e a janelas de tempo
determinada pelos semi períodos
gerados.. Essa aplicação se faz
necessária quando para efeito de
manutenção, houver a intenção de se
poupar uma das bombas, acionando-se a
bomba reserva apenas esporadicamente,
evitando-se assim, problemas mecânicos
por falta de uso.

Os dois temporizadores tipo TON, T4:0 e


T4:1 estão combinados de forma a
originar a geração de um pulso de onda
quadrada cujos semi períodos serão
flexíveis de acordo com o tempo
programado em cada temporizador. O
endereço O:2/0 irá representar este pulso
sendo ligado e desligado
sistematicamente por cada um dos
temporizadores.

41
Controladores Lógicos Programáveis
O bit O:2/0 irá seguir os tempos definidos pelos pré-selecionados de cada um dos
temporizadores e será apresentado em série com o endereço I:1/0 (botão de Liga).
Como podemos ver no programa, teremos para a primeira bomba (O:2/2 ) um contato
aberto de O:2/0 e para a segunda bomba (O:2/4 ) um contato fechado de O:2/0,
permitindo que somente uma delas seja ligada. A probabilidade de acionamento será
dada pela razão entre os semi-períodos da onda quadrada gerada e essa proporção
será determinada pelos valores pré-selecionados dos temporizadores. Em série com o
ramo principal de cada estrutura teremos também o contato de reset e o próprio
contato da saída de acionamento da bomba vizinha, este último, no sentido de
proporcionar um intertravamento entre as bombas, evitando a ligação das duas ao
mesmo tempo.
Contadores
Os contadores em particular
se diferenciam dos
temporizadores pelo fato do
seu valor acumulado ser
incrementado por eventos e
não por tempo. Para que o
valor acumulado de um
contador seja incrementado,
é necessário que ocorra uma
transição na linha de
habilitação, como, por
exemplo, a abertura e o
fechamento da chave I:1/0

Contadores UP/Down
Ao atingir o valor de referência da
mesma forma que os
temporizadores, o seu bit DN
(C5:0/DN) será energizado,
podendo efetuar um acionamento.
O tipo de contagem poderá ser
crescente ou decrescente conforme
escolhido, entretanto, se o endereço
é o mesmo o incremento ou o
decremento irá ocorrer na mesma
palavra, conforme o exemplo à
esquerda. Observe que o contato
I:1/0 servirá para escolher o tipo de
contagem, ora habilitando
crescente, ora decrescente. Os
contadores precisam de uma
instrução de reset para limpar o
valor acumulado e, essa instrução
deverá ser ligada ao contador
através do seu endereço.
Comparadores

42
Controladores Lógicos Programáveis

As instruções de comparação
apresentam uma grande variedade de
aplicações dentro das lógicas de
controle e acionamentos. Os
comparadores podem ser utilizados de
forma a criar janelas de tempo ou na
criação de alarmes para as variáveis
utilizadas nos nossos processos. Os
exemplos à esquerda mostram seis
diferentes tipos de instruções de
comparação. Vamos encontrar sempre
um campo para variável fonte e esta
será comparada com uma referência,
que pode ser uma variável ou uma
constante, dependendo do tipo de
solução pretendida. Temos o caso do
bloco “testa limites”, que apresenta
duas referências de comparação, o
limite baixo e o limite alto, sendo a
variável de teste comparada com estas
duas referências e, caso esteja entre
os limites, o endereço de saída será
acionado.

Uma aplicação interessante para os


comparadores são as chamadas
janelas de tempo onde, à partir de
períodos pré-estabelecidos e de
comparadores, são acionados pontos
de saídas para dadas funções de
automatismo. Um exemplo típico são
os semáforos onde cada lâmpada é
acionada em um dado intervalo de
tempo dentro de uma sequência pré-
determinada. Os alarmes de alto, muito
alto, baixo e muito baixo, para variáveis
de processo a serem controladas, irão
constituir outras opões de aplicações.
A instrução poderá ser aplicada
também em controle On/Off para
variáveis de processo onde a ação de
ligar e desligar uma dada carga será
proveniente do resultado lógico de
uma operação de comparação.

43
Controladores Lógicos Programáveis

GRAFCET

Grafcet : É um processo gráfico de controle composto por estados e transições (Graf


C E T). As iniciais entre parênteses mostram que é um processo gráfico de controle
composto de estados e transições. Muitos autores se referem ao grafcet como uma
linguagem, mas na verdade é uma metodologia que organiza de forma muito eficaz as
informações para que possamos desenvolver o programa.

Uma grande vantagem da programação que utiliza o Grafcet é a estruturação do


programa que facilita o diagnóstico da manutenção quando a máquina para de funcionar.
Esta parada ocorre porque a evolução fica paralisada em um determinado estado, o que
caracteriza a não ocorrência de uma transição verdadeira. Visto isto, basta analisar as
condições que compõem a transição para solucionar o problema. O Grafcet permite então
que um sensor ou um atuador com defeito seja facilmente localizado com rapidez.

Tabela de estados: A tabela de estados é uma ferramenta didática que auxilia no


desenvolvimento do programa, permitindo a visualização das variáveis de estado
(entradas e saídas) e da evolução da máquina ao longo dos seus diversos estados.
Consideraremos como exemplo a tabela abaixo.
Obs : A tabela de estados originalmente não faz parte do Grafcet, ela é simplesmente um
recurso didático desenvolvido para facilitar o entendimento da metodologia.

Máquina: Chamamos de máquina a um conjunto de estados separados por transições.


Na verdade, a máquina é a situação problema que deverá ser resolvida.

Estado : Corresponde ao momento da decisão, é o instante em que uma ou mais


decisões são tomadas pelo controlador, normalmente essas decisões ocorrem precedidas
por informações, provenientes de elementos sensores ou do próprio tempo; essas
informações são denominadas de transições.

Transição : A transição é a condição lógica existente entre um estado e outro e, quando


verdadeira, promove uma evolução de estado, permitindo a passagem de um estado para
outro estado.

As decisões tomadas em um dado estado particular da máquina podem servir para


particularizar este estado. Eu estou no estado em que as saídas A e B estão acionadas e
que a saídas C está desligada. Este comportamento pode particularizar o estado em que a
nossa máquina se encontra e uma lógica entre os pontos A, B e C pode ser desenvolvida
para criar um bit auxiliar que represente o estado.

44
Controladores Lógicos Programáveis
TABELA DE ESTADOS

Ao analisarmos uma situação


problema, em um primeiro
momento estaremos separando
as variáveis de entrada das
variáveis de saída. Na tabela à
esquerda, todas as variáveis de
saída estão situadas em uma
coluna reservada. A tabela separa
a máquina em estados e, para
cada estado, mostra a situação de
cada ponto de saída.

As entradas irão compor as nossas condições de transição, permitindo a passagem


de estado.
A tabela de estados é um recurso didático de introdução ao GRAFCET, facilitando o
entendimento da metodologia em questão. O recurso nos permite uma visão plana da
situação problema, onde é possível separar os diversos passos da máquina,
analisando o comportamento dos pontos de saída entre cada passo. É necessário que
a condição de transição seja verdadeira para que haja evolução de um estado para
outro e então sejam modificados os pontos de saída. Os pontos de saída representam
as decisões da máquina e as transições alimentam o programa de informação, para
que novas decisões sejam tomadas. As entradas I1:1/0, I1:1/1, I1:1/2, representam os
sensores que vão enviar informação para nossa máquina evoluir de um estado para
outro. Neste exemplo, cada transição é apenas um único ponto de entrada, porém, em
determinados casos, pode ser composta por uma expressão lógica agregando vários
pontos. Tomamos como exemplo comparativo um indivíduo que vai decidir ligar um
ventilador. Ele vai receber a informação de temperatura através da pele que representa
uma entrada do elemento sensor, mas os seus olhos tambem recebem outras
informações do ambiente, caso por exemplo, tenha papéis sobre a mesa, não seria
uma boa ideia ligar um ventilador. Então ele precisa de mais de uma informação para
decidir. Caso não tenha papéis sobre a a mesa e esteja calor, então liga ventilador.
Este exemplo mostra duas informações de entrada em lógica AND para permitir a
decisão de ligar o ventilador.

Para desenvolver um programa em ”ladder”, considerando a metodologia do


”Grafcet”, teremos que respeitar alguns princípios básicos que determinam a
consistência do método.

Em uma primeira análise, para se passar de um estado para o outro é necessário


cumprir a condição de transição e, além desta condição, será imperativo estar no
estado anterior previsto na organização da máquina.
Temos então uma condição “E”, estar no estado anterior e ao mesmo tempo cumprir
a exigência da transição necessária à passagem de estado.

45
Controladores Lógicos Programáveis
DIAGRAMA DE ESTADOS E TRANSIÇÕES

Consideraremos os seguintes
endereços de saída: O:2/0, O:2/1,
O:2/2.

Teremos que caracterizar o


estado em que se encontra a nossa
máquina, daí então, de acordo com
o estado das saídas, montaremos
uma linha lógica compatível. Com
uma saída auxiliar iremos
representar o estado em questão.

Exemplo: No estado zero todas as


saídas estão em zero. A linha lógica
contendo os endereços de saída
será verdadeira apenas para este
estado. Observe que os contatos
são do tipo normal fechado,
exatamente porque as saídas estão
em zero, portanto, o endereço O:6/0
representa o estado zero. A
estratégia de se utilizar as saídas
latch e unlatch se destina a manter
registrada a informação do estado
atual, até que a máquina assuma o
estado seguinte, quando a
informação

passada deixa de existir, sendo desligada,


dando lugar a nova informação atual de estado,
então a cada passagem de estado o bit atual
será setado e o antigo será resetado.
O bit que representa o estado estará sempre
em série com a condição de transição e, esta
condição poderá ser um evento, um conjunto
de eventos ou um período de tempo,que
poderão estar associados ou não. Citamos
como exemplo a máquina de lavar roupas que,
na mudança de um estado para outro podemos
ter uma informação de nível de de água
representada por um sensor, ou simplesmente
um intervalo de tempo para executar o
batimento da roupa ou para executar a
centrifugação.

46
Controladores Lógicos Programáveis

A máquina de estados descrita na tabela


abaixo mostra que na passagem do
estado 0 para o estado 1 as saídas O:2/0
e O:2/2 são acionadas e a condição de
transição responsável por essa passagem
é a entrada I1:1/0.

Na passagem do estado um para o


estado 2 a saída O:2/1 será acionada e a
saída O:2/2 será desligada e a entrada
responsável por essa passagem é a
I1:1/1. Baseado na tabela temos a entrada
a I1:1/1 executando uma dupla missão,
acionando O:2/1 e desligando O:2/2
,porque encontra-se no ramo principal do
diagrama ladder, na última linha de
programa. Na passagem do estado 2 para
o estado zero, serão desligadas por I1:1/2
as duas saídas presentes no estado 2,
O:2/0 e O:2/1.

Lembrar que o diagrama ladder escrito


ao lado é um resultado obtido do estudo
realizado através do diagrama de estados
e da tabela de estados. Ambos nos Os contatos auxiliares marcadores dos
permitem obter uma visão bastante estados são de importância estratégica,
analítica da situação problema e, após a não só para execução do programa em
analise, escrever o programa passa a ser ladder, mas também para outras
apenas uma consequencia do estudo informações importantes na geração de
realizado. Observe que as duas partes do diagnósticos para apoio à manutenção.
programa são de relativa importância. A
geração dos contatos auxiliares permite
definir os estados ao longo da evolução
da máquina.

47
Controladores Lógicos Programáveis

Situações Práticas de Automatismo:

Portão de garagem:

O programa tem como objetivo


criar uma lógica capaz de
comandar a abertura e o
fechamento de um portão de
garagem, levando em
consideração que em qualquer
instante poderá parar a abertura
ou o fechamento do portão.
Conforme mostra a figura à
esquerda, temos um painel onde
são encontrados os botões de
comando de abertura,
fechamento e parada do portão.
Entradas:
Open – I:1/0
Close – I:1/1
Stop – I:1/2 (Chave normalmente
enviando energia para o contato)
LS1 – I:1/3 (Sensor normalmente
enviando energia para o contato)
LS2 – I:1/4

Saídas:
MOTOR-UP - O:2/0
MOTOR-DOWN - O:2/1

Funcionamento do Programa: As saídas O:2/0 e O:2/1 irão respectivamente abrir


ou fechar o portão. Estas saídas apresentam em ambos os casos os seus contatos
de selo que irão mantê-las ligadas enquanto a chave limite de curso não abrir o
ramo principal do circuito. Observe que o botão de Stop é normalmente energizado
e só deixa de enviar energia para o contato quando for acionado, por isso
trabalhamos com um contato normal aberto, o mesmo ocorre para o LS1-I:1/3 e
LS2-I:1/4.
Poderíamos implementar mais uma funcionalidade no circuito no sentido de
intertravar a abertura com o fechamento do portão, bastando utilizar um contato
fechado de cada endereço de saída com o ramo principal da outra saída e vice-
versa.

48
Controladores Lógicos Programáveis
Sistema de Transporte com Silo:

Endereço Descrição
I:1/00 Botão de partida
I:1/01 Botão de parada
I:1/03 Sensor de posição
I:1/04 Sensor de nível
O:2/00 Motor
O:2/01 Solenóide
O:2/02 Lâmpada de
sinalização
O:2/03 Lâmpada de
sinalização
O:2/04 Lâmpada de
sinalização

O processo representado pela figura


acima tem como finalidade preencher o
nível do reservatório que se desloca pela
esteira de forma contínua.
Quando o reservatório encontra o sensor
I:1/03 o motor da esteira é desligado,
mantendo o reservatório na posição
correta, pronto para ser abastecido e,
nesse mesmo instante a solenóide é
acionada. O sensor de nível percebe o
instante exato em que o reservatório está
cheio e desligar a solenóide, sendo
acionado neste mesmo instante o motor
que desloca o reservatório, mesmo ele
estando sobre o sensor de posição. As
linhas 1, 2 e 3 do programa garantem o
acionamento do motor mesmo, estando o
reservatório sobre o sensor de posição.
Isso só se torna possível mediante a
memorização de estados realizada pelos
flags (O:6/0 e O:6/1). A primeira linha do
Processo em Batelada
programa é responsável por ligar e
Endereço
desligar o motor e a última linha de
programa porI:1/00
ligar e desligar a solenóide.

49
Controladores Lógicos Programáveis
Processo em Batelada:

Equipamento/Sensor Endereço Descrição


PUMP 1 O:2/01 Bomba para entrada de produto
PUMP 2 O:2/02 Bomba para entrada de produto
PUMP 3 O:2/03 Bomba para saída de produto
FLOWMETER 1 I:1/05 Medidor de Vazão de entrada 1
FLOWMETER 2 I:1/06 Medidor de Vazão de entrada 2
FLOWMETER 3 I:1/07 Medidor de Vazão de saída
MIXER O:2/00 Misturador
HEATER O:2/04 Fonte de aquecimento do produto
HI LEVEL I:1/04 Sensor de Nível Alto
LO LEVEL I:1/03 Sensor de Nível Baixo
THERMOSTAT I:1/02 Termostato
START I:1/00 Botão de partida
STOP I:1/01 Botão de parada
ENTRADA BCD I:3 Entrada de valor em BCD(binário codificado em
decimal)
SAÍDA BCD O:4 Saída de valor em BCD (binário codificado em
decimal)
ENTER I:1/08 Botão de entrada discreta
CHAVE DE I:1/09/10/11 Chave seletora três variáveis discretas
SELEÇÃO

50
Controladores Lógicos Programáveis

O objetivo do programa é
partir do estado 1, após o
acionamento da chave
I:1/0, migrando para o
estado 2, quando temos o
acionamento da bomba
O:2/1; em seguida um
temporizador é acionado
iniciando a contagem de
tempo e, após o tempo
decorrido de três
segundos, a bomba O:2/2
é ligada; ao ser atingido o
nível alto, as bombas são
desligadas e então se
inicia o processo de
aquecimento e batimento
dos produtos. Ao ser
atingida a temperatura de
referência de 32 graus, o
aquecimento e o batimento
cessarão, iniciando então a
descarga, até que seja
atingido o nível baixo;
quando isto ocorrer a
máquina irá migrar para o
estado 2, repetindo-se
Novamente a sequência de
etapas.

51
Controladores Lógicos Programáveis

Análise do Programa:

O programa à esquerda é
quem vai executar os
passos que foram definidos
na tabela de estados vista
na página anterior.
Considere que nós
estamos migrando do
estado 1 para o 2,
constatamos que o auxiliar
O:6/0 é quem representa
estado 1 e estará presente
em série com I:1/0 para
permitir entrada estado 2.
Observe também no ramo
principal da estrutura que
existem três contatos,
todos com a finalidade de
efetuar a abertura de selo,
o contato I:1/1 representa a
chave de emergência
(Stop), que se encontra
presente em todos os
ramos principais de todas
as estruturas de
acionamento. O contato de
selo realimentando a
informação da saída para a
entrada é outra estratégia
que se repete ao longo das
lógicas de acionamento. O
temporizador T4:0 é
habilitado assim que a
primeira bomba de
admissão entrar e após o
tempo de 3 segundos,
sairá a primeira, entrando

a segunda bomba. Após o enchimento do tanque o sensor I:1/4 desativa a segunda


bomba e aciona o aquecimento juntamente com o misturador, até que a temperatura
atinja os 32 graus; neste instante o sensor I:1/2 aciona a bomba de descarga O:2/3. O
produto é descarregado até que seja atingido nível baixo; à partir de então o processo
retorna ao estado 1, sendo repetida automaticamente toda a sequência de
acionamentos.
Os bits auxiliares (marcadores de estados) são gerados a partir da lógica de
combinação de contatos nas últimas cinco linhas de programa.

52
Controladores Lógicos Programáveis
Aplicação dos Comparadores
Semáforos
O problema consiste em se
desenvolver um programa para
comandar o funcionamento de um
semáforo, conforme mostra a figura à
esquerda. Consideremos que para
cada um dos sinais luminosos teremos
um endereço correspondente,
conforme figura. Partindo de um
primeiro estado em que apenas a saída
O:2/2(verde) será acionada,
permanecendo assim durante um
período de 50 segundos, após esse
tempo a saída O:2/1 (amarelo) será
acionada, com o objetivo de avisar a
proximidade da troca do verde pelo
vermelho. A saída O:2/1 (amarelo),
permanecerá durante um período de
10 segundos e em seguida O:2/0
(vermelho) será ligada. O mesmo
raciocínio será aplicado às saídas
O:2/6(verde), O:2/1 (amarelo) e O:2/4
(vermelho), considerando-se os
mesmos tempos.
A tabela à esquerda nos ajuda a
organizar o raciocínio utilizando-se as
técnicas do GRAFCET. Consideramos
que as informações que irão promover
a migração de um estado para outro,
será simplesmente o período de tempo
de permanência de cada uma das
saídas conforme descrito acima. As
siglas utilizadas com terminação (.P) e
(.S) serão para identificar semáforo
principal e secundário. O programa
abaixo irá utilizar o comparador de
limites, que se aplica ao teste de uma
faixa de tempo e o comparador
tradicional (=), que simplesmente
compara o valor do contador a uma
referência de tempo.

53
Controladores Lógicos Programáveis
O gerador de pulsos associado ao
contador será utilizado para gerar os
tempos que serão utilizados no
decorrer dos acionamentos dos seis
endereços apresentados no
programa. O temporizador com o
contato fechado em série com a linha
habilitadora, nos permite criar uma
base de tempo fixa de 10 segundos
que irá incrementar o contador. Os
dez segundos de tempo foram
pensados em função do período de
tempo em que a lâmpada amarela
permanecerá acionada, sendo este
tempo, o menor de todos os outros
tempos. Baseado nesse fato,
forçaremos os dois outros tempos a
ser um multiplo desse período, verde
(50seg.) e vermelho (60seg.). Os 50
segundos do verde, serão
correspondentes à cinco vezes o
período do amarelo e o vermelho seis
vezes.
Vamos iniciar o nosso ciclo de
comparações direcionado para o
verde principal(O:2/2), que irá
permanecer 50 segundos ativo (5
pulsos). Após o verde principal, o
próximo será o amarelo principal
(O:2/1) permanecendo ativo apenas
um único pulso (10seg.), logo em
seguida o vermelho principal (O:2/0)
permanecendo 60 segundos e
encerrando seis pulsos, do sete ao
doze, incluindo os limites. O mesmo
procedimento será utilizado para os
pontos referentes ao semáforo
secundário, de forma a efetuar o
acionamento sempre em um range de
tempo correspondente à sua
permanência de ativação.

54

You might also like