Escolar Documentos
Profissional Documentos
Cultura Documentos
1 Tipos de Dados
4.1.1 O Bit
Figura 4.1
Dentro da estrutura de software do CLP, o bit associado a uma entrada pode ser
lido e seu status utilizado para as operações lógicas do programa. Quando o bit está
41
associado a uma saída ele também pode ser lido, ativado (ligado) ou desativado
(desligado) de acordo com os resultados da lógica descrita no programa do usuário.
4.1.2 O Byte
Figura 4.2
42
combinações das duas chaves podemos selecionar em qual condição a lâmpada deverá
permanecer. Acompanhe os diagramas abaixo:
Figura 4.3
43
Nº de Combinações possíveis = 2 Nº de Bits
Equação 1
1 Bit = 21 = 2 combinações
2 Bits = 22 = 4 combinações
3 Bits = 23 = 8 combinações
4 Bits = 24 = 16 combinações
5 Bits = 25 = 32 combinações
6 Bits = 26 = 64 combinações
7 Bits = 27 = 128 combinações
8 Bits = 28 = 256 combinações – 1 byte
Figura 4.4
4.1.3 A Word
Como o byte é um conjunto de oito bits que juntos podem identificar até 256
combinações diferentes, a Word também se caracteriza por uma combinação de bits que
juntos podem identificar cerca de 65 milhões de combinações diferentes. Para ser mais
preciso, uma Word corresponde ao conjunto de 16 Bits agrupados, que, segundo a
equação 1 vista anteriormente, uma Word corresponde a:
44
Nº de combinações possíveis = 216
Nº de combinações = 65536
Figura 4.5
4.2 Endereçamento
No sistema de processamento de um CLP, cada variável seja do tipo bit, byte ou
word, possui um local físico na memória do sistema. Essa posição física da memória é
chamada de “endereço”, assim quando o programa de usuário que utiliza os valores
descritos em uma variável procura o valor pelo endereço correspondente, o endereço
também pode ser chamado de “registro” por alguns fabricantes.
45
Figura 4.6
46
porém se analisarmos mais profundamente, cerca de 90% dos usuários utilizam a
linguagem LADDER.
Pois bem, com fazer a ligação da lógica booleana com os diagramas elétricos
convencionais? Muito simples, a lógica booleana consiste em expressões lógicas e
simples que, se seguidas fielmente, nos dão três situações distintas, condição de
entrada, objetivo e condição de saída, exemplo:
Figura 4.7
47
Nessa frase podemos identificar todas as situações implícitas em um sistema
lógico, temos objetivo “Lucas ir ao cinema”, temos três condições de entrada “se João
for com ele” ou “se Maria for com ele” e ainda “se seu pai emprestar o carro”,
condição de saída “ir ao cinema”.
Imagine esse exemplo transladado para circuito elétrico, será possível? Observe
a figura 4.7.
Veja que se o projetista pensar de forma lógica, tudo pode ser elaborado, e o
entendimento dos operadores lógicos booleanos pode nos dar o auxílio necessário para
elaboração de qualquer circuito lógico, seja elétrico, eletrônico ou puramente lógico,
como vimos no exemplo acima.
O operador booleano AND define uma situação em que temos no mínimo duas
situações de entrada para uma situação de saída. Para que a situação de saída seja
verdadeira, é necessário que as duas situações de entrada sejam verdadeiras,
acompanhe o exemplo. Para que a lâmpada acenda (situação de saída) é necessário que
as duas chaves de entrada S1 e S2 (situações de entrada) estejam ligadas.
Figura 4.8
48
No exemplo acima, podemos visualizar como se define a expressão booleana
AND, juntamente com seu símbolo gráfico e sua representação em linguagem elétrica
de contatos. A configuração AND ou E pode suportar inúmeros dispositivos de entrada,
ou seja, pode suportar quantos contatos em série forem necessários para o
desenvolvimento da aplicação.
Figura 4.9
49
Figura 4.10
50
Figura 4.11
51
interrompida, fazendo que a bobina do dispositivo deixe de funcionar,
nesta ocasião os contatos elétricos voltam à posição original.
h) Para iniciar o sistema novamente, basta pressionar o botão S2 e o sistema
volta a ser acionado.
Figura 4.12
52
O programa principal do CLP, quando em operação, realiza o SCAN para
verificação das linhas de controle, o ciclo de SCAN verifica os dados da tabela de
imagem das entradas e compara com as instruções de controle da linha, se forem
verdadeiras o dispositivo controlado é acionado, no exemplo uma saída, o ciclo de
SCAN atualiza o dado na tabela de imagem das saídas, o ciclo de SCAN verifica linha a
linha em frações de segundo e de controle e de acordo com os resultados lógicos obtidos
atualiza os dados da tabela de imagem de saídas constantemente.
Vale lembrar que o ciclo de SCAN realiza essa varredura de forma contínua e
cadenciada, seguindo os barramentos de controle de cima para baixo e da direita para a
esquerda, por exemplo, se o ciclo de SCAN verifica que um estado de um dispositivo de
controle é falso, o programa de varredura não continua a verificação na linha e passa a
analisar a linha logo abaixo, se o dispositivo de controle estiver com o estado
verdadeiro, continua a varredura da linha até verificar o estado do dispositivo
controlado, e assim sucessivamente.
Figura 4.13
53
Figura 4.14
Figura 4.15
54
Figura 4.16
Figura 4.17
A instrução de energizar bit é aplicada para ligar ou desligar saídas digitais, relés
auxiliares virtuais, energizar contadores e temporizadores etc. Essa instrução é
referenciada como atribuição aos dispositivos controlados ditos anteriormente, e
equivale a bobinas de contactores e relés auxiliares nos diagramas elétricos
convencionais.
Quando as condições lógicas dos dispositivos que comandam essa instrução são
verdadeiras, o bit correspondente é energizado, se essa instrução estiver associada a uma
saída externa, ela é acionada, por outro lado se estiver associada a um registrador de bit
(relé auxiliar virtual) ele é setado internamente nas memórias do CLP.
Figura 4.18
55
4.4.4 Instrução Energizar Bit com Retenção
Esse tipo de instrução pode ser utilizado para circuitos que exijam contatos de
selo, como os vistos nas figuras 4.14 e 4.15, substituindo a utilização de contatos
auxiliares na lógica de controle. Vejamos os exemplos da figura 4.14 e 4.155 utilizando
a função de energizar bit com retenção.
Figura 4.19
Nesse caso, para se ligar a saída O/1 devemos tornar verdadeira a condição de
controle por meio de I/1, assim o bit correspondente à saída O/1 é energizado (setado),
após essa ocorrência o bit de controle I/1 pode se tornar falso que as condições
referentes ao bit de saída O/1 continuam inalteradas. Para se desligar o bit
correspondente à saída O/1 devemos tornar verdadeira a condição referente ao bit I/2,
com esta condição verdadeira por pelo menos um ciclo de scan o bit O/1 e
desenergizado (resetado).
Figura 4.20
56
Na figura 4.20, visualizamos os operadores em programas comerciais, note que
não existem diferenças significativas na simbologia utilizada.
Figura 4.21
Figura 4.22
57
bomba d’água em dois locais diferentes, com o auxílio dessa lógica o operador pode
realizar a tarefa de forma simples e prática acionando os botões 1 e 2 instalados em
locais distintos.
Vale lembrar que a sigla CLP é marca registrada do fabricante Allen Bradley,
que foi uma das empresas pioneiras na fabricação desses dispositivos.
58
Existem dois tipos de lógica de funcionamento para estes dispositivos, a
primeira e mais comum é chamada de “Lógica com Retardo na Energização”, que
significa que os contatos do relé auxiliar do dispositivo serão acionados quando o
dispositivo é energizado e transcorrido o tempo pré-selecionado. Para voltar à condição
original com o relé desligado, basta interromper o fornecimento de energia para o
dispositivo. A segunda opção é chamada de “Lógica com Retardo na Desenergização”,
que tem seu funcionamento inverso ao primeiro. Quando o dispositivo é energizado, o
relé auxiliar é imediatamente acionado, e a contagem do tempo pré-selecionado é
iniciada a partir da interrupção no fornecimento de energia para o dispositivo, e só após
o término do tempo pré-programado o relé auxiliar do dispositivo é desligado.
Figura 4.23
59
• Apresentam uma variável de oito ou dezesseis bits para escrita e/ou
leitura do valor de temporização.
• Apresentam uma variável de oito ou dezesseis bits para escrita e/ou
leitura de valor de pré-set de temporização.
Sistema Unitronics™
Figura 4.24
Nesse exemplo o botão 1 está associado a um marcador de bit “MB 0”, que
quando em estado verdadeiro aciona o Bit de controle do temporizador “TD 0”, que, por
sua vez, está com um tempo de pré-set ajustado para 5 segundos. Assim, quando o
temporizador chegar ao final da contagem (5 seg) irá acionar o bit correspondente a seu
estado, estando setado o bit de saída do temporizador “TD 0” a condição da linha se
torna verdadeira e o marcador de bit MB 1 que está associado à saída da lâmpada se
torna verdadeiro, acendendo a lâmpada.
60
Sistema Allen Bradley / Rockwell
Figura 4.25
61
convencional. Como visto anteriormente, os símbolos que representam esse bloco de
função pode variar de fabricante para fabricante, mas, de modo geral, todos possuem as
seguintes interfaces de controle:
Sistema Unitronics™
Figura 4.26
62
valor da totalização registrado no contador “C 0”, e seu valor pode ser lido a partir de
uma IHM.
Figura 4.27
Note que o valor de pré-set está zerado, isso significa que não utilizamos a
função de contagem pré-programada. Se for necessário que a um certo valor do
acumulador um bit para alarme ou sinalização seja ligado, basta adicionarmos no pré-
set o valor de contagem desejado. Assim, quando o valor for atingido, o bit de estado
(DN) irá se tornar verdadeiro, assim poderíamos utilizar em outra posições do programa
para acionamento de sinalização ou alarme.
Figura 4.28
63
4.5.3 Instruções de Comparação
• Comparador de Igualdade A = B
• Comparador de Não Igual A < > B
• Comparador de Menor A<B
• Comparador de Maior A>B
• Comparador de Menor Igual A < = B
• Comparador de Maior Igual A > = B
• Comparador de Range B<A>C
Os blocos comparadores possuem entradas para no mínimo duas variáveis que
serão analisadas. Se o valor numérico das variáveis satisfizer as condições do bloco, a
condutividade lógica da linha é garantida. Se a condição não for satisfeita, a
condutividade lógica é interrompida, acompanhe:
Figura 4.29
Quando a condição estabelecida pelo bit I/1 for verdadeira, o bloco comparador
de igualdade passa a avaliar as condições numéricas dos registros A e B. Se os números
contidos em A e B forem iguais, o bloco é verdadeiro e a condutividade lógica é
estabelecida, fazendo que o bit associado à saída O/1 seja energizado. Se os números
contitos nos registros A e B não forem iguais, a condutividade lógica é interrompida e
assim o bit associado à saída O/1 é desenergizado.
64
possuir), dentre esses valores podemos destacar os registros do acumulador, valores de
pré-set, valores correntes do contador e temporizador etc.
Sistema Unitronics™
Figura 4.30
65
Sistema Allen Bradley / Rockwell
Figura 4.31
66
Sistema Unitronics™
Figura 4.32
67
Para que o sistema funcione, o bit de controle “MB 1” deve ser verdadeiro.
Nessa condição o operador ligou a chave seletora, assim a linha possui condutividade
lógica até o ponto onde está posicionado o bloco comparador “menor igual”, esse bloco
compara os valores de temperatura real instantânea do sistema e o valor de Set Point
inserido pelo usuário. Se o valor de “MI 0” (Temp Real) for menor que o valor de “MI
1” (Set Point) isso indica que a temperatura do forno está menor que o valor
estabelecido pelo usuário, assim o bloco permite a condutividade lógica, se essa
condição prevalecer, o bit associado“MB 1” torna-se verdadeiro, acionando assim o
conjunto de resistências, provocando o aquecimento do forno. As resistências estando
ligadas, a temperatura se eleva, então o valor de “MI 0” torna-se igual ou maior que o
valor de “MI 1” indicando que a temperatura atingiu o valor desejado, se essa condição
ocorrer, o bloco interrompe a condutividade lógica e o bit “MB 1” é desligado,
desenergizando assim o conjunto de resistências. Assim esse ciclo se repete
infinitamente enquanto o bit de controle “MB 1” estiver ligado.
Note que lâmpada de indicação de sistema ligado está inserida em uma linha
única, controlada pelo bit “MB 0”. Quando esse bit de controle for verdadeiro, a linha
toda se torna verdadeira acionando assim o bit “MB 3”, acendendo a lâmpada e
indicando que o sistema está ligado. Agora a indicação de resistência energizada está
inserida juntamente com a linha de controle das resistências, essa ligação está
representada por meio de uma ligação em paralelo (Lógica OR) com o bit “MB 1” que
controla as resistências, portanto, quando as resistências estiverem ligadas, a lâmpada
associada ao bit “MB 2” também estará ligada. A IHM (interface) está representando
em forma gráfica os valores descritos nas memórias de inteiros (“MI 0” e “MI 1”),
assim o operador pode visualizar os valores reais e valores de controle associados ao
sistema.
Figura 4.33
68
Verifique que na linguajem do fabricante Rockwell existem diferenças mínimas
entre os gráficos, as diferenças se referem ao endereçamento dos bits de entradas e
saídas. Embora possuam codificações diferentes, na prática executam as mesmas
funções.
Quando nos referimos a essas limitações, estamos, por exemplo, dizendo que se
uma CPU trabalha com registradores de oito bits (256 combinações), o usuário não
poderá ter como resultado de uma adição valores maiores que 256. Se isso acontecer
temos um estouro na contagem (overflow), em alguns CLPs esse estouro pode causar
falha e parar o ciclo de scan do dispositivo, mas fique tranqüilo, a maioria dos CLPs do
mercado trabalham na faixa de dezesseis bits ou mais de resolução, assim os limites
passam a valores acima de sessenta e cinco milhões de combinações, que é o suficiente
para 99% dos casos.
69
Sistema Unitronics™
Figura 4.34
Note que os operadores dos blocos básicos são do tipo “MI”, ou seja, são
memórias de números inteiros, então os resultados obtidos são sempre inteiros. Se em
alguma operação o valor de resposta apresentar ponto flutuante, ele é suprimido no
resultado, porém os operadores trigonométricos apresentam operadores do tipo “MF”,
ou seja, memória de Floats (números com ponto flutuante), assim o resultado dos
cálculos obtidos é representado de forma exata com todas os valores obtidos na
operação. Se houver necessidade de obter os valores exatos nas operações básicas, o
usuário tem à disposição outros blocos de função específicos para manipular os
resultados completos das operações.
70
* Atenção: essas particularidades se referem ao sistema Unitronics. Caso o usuário
esteja utilizando um dispositivo de um fabricante diferente, deve verificar nas
instruções do bloco de função.
Figura 4.35
71
Sendo que: Set Point = 150 ºC
Histerese = Set Point x 3 % = 150 x 0.03 = 4,5 ºC histerese
Set Point – histerese: 150 – 4,5 = 145,5 ºC
Sistema Unitronics™
Figura 4.36
Figura 4.37
72
do Set Point, mas sim ao valor agora determinado pelo cálculo da histerese, no caso
145,5 ºC. Então, para que o bloco se torne verdadeiro e permita a condutividade lógica,
o valor real da temperatura deve ser menor que o valor 145,5 (resultado do cálculo de
histerese), essa condição ocorre quando: (a) o sistema é ligado pela primeira vez, e o
interior do forno está frio; ou (b) depois de o sistema ser desligado pelo controle de
temperatura.
Note também que não é utilizada mais a função de bit simples para o
acionamento da saída MB 1, agora está sendo utilizada a instrução de energizar bit com
retenção, pois, quando a temperatura ultrapassar o valor do registro B (145,5 ºC) o
bloco de instrução do comparador deixa de ser verdadeiro e bloqueia a condutividade
lógica da linha, no entanto como o bit MB 1 já foi iniciado, ele permanece ligado até
que receba o comando de Reset, que veremos nas linhas de programa a seguir.
Figura 4.38
AxB=C
MI 1 x F# = MF 2
150 x 0,03 = 4,5
Com o resultado obtido de 4,5 armazenado no endereço “MF 2”, basta subtrair
do valor do Set Point, que está armazenado no registro “MI 1” (150 ºC). Para esta
73
operação, basta utilizar o bloco matemático de subtração (SUB F), representado pela
expressão:
A–B=C
MI 1 – MF 2 = MF 3
150 – 4,5 = 145,5
Assim obtemos o valor real da histerese do sistema no registro “MF 3”, valor
obtido 145,5 ºC.
Essa operação é necessária, pois se o operador optar por alterar o valor do Set
Point, o valor da histerese é calculado automaticamente, mantendo a faixa sempre em
3% do valor programado de Set Point.
Figura 4.39
74
Por fim, acrescentaremos mais uma linha no programa, responsável pela
indicação de resistência energizada, no exemplo 5 visto anteriormente, atribuímos ao bit
“MB 2” a saída digital correspondente a essa lâmpada, acompanhe:
Exemplo 4.40
75
Abaixo podemos visualizar alguns exemplos em uma tabela com os símbolos em
linguagem LADDER e seu mnemônico correspondente em linguagem de instruções:
Figura 4.41
Figura 4.42
76
Circuito com selo, partida direta de um motor em linguagem de instruções
LDI I/1
AND I/2
OR O/1
OUT O/1
77