Você está na página 1de 213

Controlador Lógico

Programável
CONTROLADOR LÓGICO PROGRAMÁVEL
© 2010 - SENAI São Paulo - Departamento Regional

Qualquer parte desta obra poderá ser reproduzida, desde que citada a fonte.

Equipe responsável

Diretor da Escola Nivaldo Silva Braz


Coordenação Pedagógica Paulo Egevan Rossetto
Coordenação Técnica Antonio Varlese
Organização do conteúdo Senai “Humberto Reis Costa”

Ficha catalográfica

SENAI. SP
CONTROLADOR LÓGICO PROGRAMÁVEL / SENAI. SP - São Paulo:
Escola SENAI “Humberto Reis Costa”, 2010.

Escola SENAI Humberto Reis Costa


Rua Aracati Mirim, 115 – Vila Alpina
São Paulo - SP - CEP 03227-160
Fone/fax: (11) 2154-1300
www.sp.senai.br/vilaalpina
Sumário

Introdução .................................................................................................................................. 5
Estrutura Básica ......................................................................................................................... 9
Dispositivo de Entrada e Saída ................................................................................................ 19
Terminal de Programação ........................................................................................................ 31
Linguagem de programação ..................................................................................................... 39
Programação de Controladores Programáveis ......................................................................... 43
Programação em Ladder .......................................................................................................... 49
Sistemas de numeração ........................................................................................................... 76
Família SIMATIC ...................................................................................................................... 89
Instalando o STEP 7 ................................................................................................................ 96
Introdução ao Hardware S7 .................................................................................................... 106
O Software STEP 7 ................................................................................................................ 120
Configurando e parametrizando o S7 ..................................................................................... 134
Princípios básicos .................................................................................................................. 156
O editor de programas............................................................................................................ 168
Portas lógicas básicas ............................................................................................................ 186
Operações lógicas básicas ..................................................................................................... 198
Temporizadores ..................................................................................................................... 208
Referências Bibliográficas ...................................................................................................... 214
Controlador Lógico Programável

Introdução

O Controlador Lógico Programável, ou simplesmente CLP, tem revolucionado os comandos


e controles industriais desde seu surgimento na década de 70.
Antes do surgimento dos CLPs as tarefas de comando e controle de máquinas e processos
industrias eram feitas por relés eletromagnéticos, especialmente projetados para este fim.

DESCRIÇÃO

O primeiro CLP surgiu na indústria automobilística, até então um usuário em potencial dos
relés eletromagnéticos utilizados para controlar operações sequenciadas e repetitivas numa
linha de montagem. A primeira geração de CLPs utilizou componentes discretos como
transistores e CIs com baixa escala de integração.
Este equipamento foi batizado nos Estados Unidos como PLC ( Programable Logic Control ),
em português CLP ( Controlador Lógico Programável ) e este termo é registrado pela Allen
Bradley ( fabricante de CLPs).

Definição segundo a ABNT (Associação Brasileira de Normas Técnicas)


É um equipamento eletrônico digital com hardware e software compatíveis com aplicações
industriais.

Definição segundo a Nema (National Electrical Manufacturers Association)


Aparelho eletrônico digital que utiliza uma memória programável para o armazenamento interno
de instruções para implementações específicas, tais como lógica, seqüenciamento,

5
Controlador Lógico Programável

temporização, contagem e aritmética, para controlar, através de módulos de entradas e


saídas, vários tipos de máquinas ou processos.

CARACTERÍSTICAS

Basicamente, um controlador programável apresenta as seguintes características:

Hardware e/ou dispositivo de controle de fácil e rápida programação ou reprogramação, com a


mínima interrupção da produção.
Capacidade de operação em ambiente industrial .
Sinalizadores de estado e módulos tipo plug-in de fácil manutenção e substituição.
Hardware ocupando espaço reduzido e apresentando baixo consumo de energia.
Possibilidade de monitoração do estado e operação do processo ou sistema, através da
comunicação com computadores.
Compatibilidade com diferentes tipos de sinais de entrada e saída.
Capacidade de alimentar, de forma contínua ou chaveada, cargas que consomem correntes de
até 2 A.
Hardware de controle que permite a expansão dos diversos tipos de módulos, de acordo com a
necessidade.
Custo de compra e instalação competitivo em relação aos sistemas de controle convencionais.
Possibilidade de expansão da capacidade de memória.
Conexão com outros CLPs através de rede de comunicação.

HISTÓRICO

O controlador programável nasceu praticamente dentro da indústria automobilística


americana, especificamente na Hydromic Division da General Motors, em 1968, devido a
grande dificuldade de se mudar a lógica de controle de painéis de comando a cada mudança
na linha de montagem. Estas mudanças implicavam em altos gastos de tempo e dinheiro.
Sob a liderança do engenheiro Richard Morley, foi preparada uma especificação que
refletia os sentimentos de muitos usuários de relés, não só da indústria automobilística
como de toda a indústria manufatureira.
Nascia assim a indústria de controladores programáveis, hoje com um mercado mundial
estimado em 4 bilhões de dólares anuais. Que no Brasil é estimado em 50 milhões de dólares
anuais.

6
Controlador Lógico Programável

EVOLUÇÃO

Desde o seu aparecimento até hoje, muita coisa evolui nos controladores lógicos. Esta
evolução está ligada diretamente ao desenvolvimento tecnológico da informática em suas
características de software e de hardware.
O que no seu surgimento era executado com componentes discretos, hoje se utiliza de
microprocessadores e microcontroladores de última geração, usando técnicas de
processamento paralelo, inteligência artificial, redes de comunicação, fieldbus, etc.
Até recentemente não havia nenhuma padronização entre fabricantes, apesar da maioria
utilizar as mesmas normas construtivas. Porém, pelo menos ao nível de software aplicativo, os
controladores programáveis podem se tornar compatíveis com a adoção da norma IEC 1131-3,
que prevê a padronização da linguagem de programação e sua portabilidade.
Outra novidade que está sendo incorporada pelos controladores programáveis é o fieldbus
(barramento de campo), que surge como uma proposta de padronização de sinais a nível
de chão-de-fábrica. Este barramento se propõe a diminuir sensivelmente o número de
condutores usados para interligar os sistemas de controle aos sensores e atuadores, além
de propiciar a distribuição da inteligência por todo o processo.
Hoje os CLPs oferecem um considerável número de benefícios para aplicações industriais, que
podem ressaltar em economia que excede o custo do CLP e devem ser considerados quando
da seleção de um dispositivo de controle industrial. As vantagens de sua utilização,
comparados a outros dispositivos de controle industrial incluem:

Menor Ocupação de espaço;


Potência elétrica requerida menor;
Reutilização;
Programável, se ocorrerem mudanças de requisitos de controle;
Confiabilidade maior;
Manutenção mais fácil;
Maior flexibilidade, satisfazendo um maior número de aplicações;
Permite a interface através de rede de comunicação com outros CLPs e
microcomputadores;
projeto do sistema mais rápido.

7
Controlador Lógico Programável

Todas estas considerações mostram a evolução de tecnologia, tanto de hardware quanto de


software, o que permite o seu acesso a um maior número de pessoas tanto nos projetos de
aplicação de controladores programáveis quanto na sua programação.

APLICAÇÕES

O controlador programável existe para automatizar processos industriais, sejam de


sequênciamento, intertravamento, controle de processos, batelada, etc.
Este equipamento tem seu uso tanto na área de automação da manufatura, de processos
contínuos, elétrica, predial, entre outras.
Praticamente não existem ramos de aplicações industriais onde não se possa aplicar os CLPs,
entre elas tem-se:

Máquinas industriais (operatrizes, injetoras de plástico, têxteis, calçados);


Equipamentos industriais para processos ( siderurgia, papel e celulose, petroquímica, química,
alimentação, mineração, etc );
Equipamentos para controle de energia (demanda, fator de carga);
Controle de processos com realização de sinalização, intertravamento e controle PID;
Aquisição de dados de supervisão em: fábricas, prédios inteligentes, etc;
Bancadas de teste automático de componentes industriais;
Etc.

Com a tendência dos CLPs terem baixo custo, muita inteligência, facilidade de uso e
massificação das aplicações, a utilização deste equipamento não será apenas nos processos
mas também nos produtos. Poderemos encontrá-lo em produtos eletrodomésticos, eletrônicos,
residências e veículos.

8
Controlador Lógico Programável

Estrutura Básica

O controlador programável tem sua estrutura baseada no hardware de um computador, tendo


portanto uma unidade central de processamento (UCP), interfaces de entrada e saída e
memórias.
As principais diferenças em relação a um computador comum estão relacionadas a qualidade
da fonte de alimentação, que possui características ótimas de filtragem e estabilização,
interfaces de E/S imune a ruídos e um invólucro específico para aplicações industriais.
Temos também um terminal usado para programação do CLP.
O diagrama de blocos a seguir, ilustra a estrutura básica de um controlador programável:

TERMINAL DE PROGRAMAÇÃO

PROCESSADOR
FONTE Unidade Central
DE de Processamento MEMÓRIA
ALIMENTAÇÃO (UCP)

INTERFACE
DE
E/S

CARTÕES CARTÕES
DE DE
ENTRADA SAÍDA

9
Controlador Lógico Programável

Dentre as partes integrantes desta estrutura temos:

UCP
Memória
E/S (Entradas e Saídas)
Terminal de Programação

10
Controlador Lógico Programável

UNIDADE CENTRAL DE PROCESSAMENTO (UCP)

A Unidade Central de Processamento (UCP) é responsável pelo processamento do


programa, isto é, coleta os dados dos cartões de entrada, efetua o processamento segundo o
programa do usuário, armazenado na memória, e envia o sinal para os cartões de saída
como resposta ao processamento.
Geralmente, cada CLP tem uma UCP, que pode controlar vários pontos de E/S (entradas e
saídas) fisicamente compactadas a esta unidade - é a filosofia compacta de fabricação de
CLPs, ou constituir uma unidade separada, conectada a módulos onde se situam cartões de
entrada e saída, - esta é a filosofia modular de fabricação de CLPs.
Este processamento poderá ter estruturas diferentes para a execução de um programa, tais
como:

Processamento cíclico;
Processamento por interrupção;
Processamento comandado por tempo;
Processamento por evento.

Processamento Cíclico

É a forma mais comum de execução que predomina em todas as UCPs conhecidas, e de onde
vem o conceito de varredura, ou seja, as instruções de programa contidas na memória, são
lidas uma após a outra seqüencialmente do início ao fim, daí retornando ao início ciclicamente.

Um dado importante de uma UCP é o seu tempo de ciclo, ou seja, o tempo gasto para a
execução de uma varredura. Este tempo está relacionado com o tamanho do programa do
usuário (em média 10 ms a cada 1.000 instruções).

Processamento por interrupção

11
Controlador Lógico Programável

Certas ocorrências no processo controlado não podem, algumas vezes, aguardar o ciclo
completo de execução do programa. Neste caso, ao reconhecer uma ocorrência deste tipo, a
UCP interrompe o ciclo normal de programa e executa um outro programa chamado de rotina
de interrupção.
Esta interrupção pode ocorrer a qualquer instante da execução do ciclo de programa. Ao
finalizar esta situação o programa voltará a ser executado do ponto onde ocorreu a interrupção.
Uma interrupção pode ser necessária , por exemplo, numa situação de emergência onde
procedimentos referentes a esta situação devem ser adotados.

Processamento comandado por tempo

Da mesma forma que determinadas execuções não podem ser dependentes do ciclo normal de
programa, algumas devem ser executados a certos intervalos de tempo, as vezes muito curto,
na ordem de 10 ms.
Este tipo de processamento também pode ser incarado como um tipo de interrupção, porém
ocorre a intervalos regulares de tempo dentro do ciclo normal de programa.

Processamento por evento

Este é processado em eventos específicos, tais como no retorno de energia, falha na bateria e
estouro do tempo de supervisão do ciclo da UCP.
Neste último, temos o chamado Watch Dog Time (WD), que normalmente ocorre como
procedimento ao se detectar uma condição de estouro de tempo de ciclo da UCP, parando o
processamento numa condição de falha e indicando ao operador através de sinal visual e as
vezes sonoro.

MEMÓRIA

12
Controlador Lógico Programável

O sistema de memória é uma parte de vital importância no processador de um controlador


programável, pois armazena todas as instruções assim como o os dados necessários para
executá-las.
Existem diferentes tipos de sistemas de memória. A escolha de um determinado tipo depende:

do tipo de informação armazenada;


da forma como a informação será processada pela UCP.

As informações armazenadas num sistema de memória são chamadas palavras de memória,


que são formadas sempre com o mesmo número de bits.
A capacidade de memória de um CP é definida em função do número de palavras de memória
previstas para o sistema.

Mapa de memória

A capacidade de memória de um CP pode ser representada por um mapa chamado mapa de


memória.

8, 16, ou 32 bits ENDEREÇO DAS PALAVRAS DE MEMÓRIA

Decimal Octal Hexadecimal

255 377 FF

511 777 1FF

1023 1777 3FF

2047 3777 7FF

4095 7777 FFF


13

8191 17777 1FFF


Controlador Lógico Programável

Arquitetura de memória de um CP

Arquitetura de memória de um controlador programável pode ser constituída por diferentes


tipos de memória.
A memória do computador é onde se armazenam os dados que devem ser manipulados pelo
computador (chamada memória de dados) e também onde esta armazenado o programa do
computador ( memória de programa).
Aparentemente não existe uma diferença física entre as memórias de programa, apenas
utilizam-se memórias fixas para armazenar dados fixos ou programas e memórias que podem
ser alteradas pelo sistema para armazenar dados que podem variar de acordo com o
programa. Existem diversos tipos de memórias que podem ser utilizadas pelo computador: fita
magnética, disco magnético e até memória de semicondutor em forma de circuito integrado.
As memórias a semicondutores podem ser divididas em dois grupos diferentes:
- Memória ROM ( read only memory ) memória apenas de leitura.
- Memória RAM ( random acess memory ) memória de acesso aleatório.

MEMÓRIAS

ROM RAM

ROM MÁSCARA PROM EPROM EEPROM EAROM ESTÁTICA DINÂMICA

As memórias ROM são designadas como memória de programa por serem


memórias que não podem ser alteradas em estado normal de funcionamento, porém têm a
vantagem de não perderem as suas informações mesmo quando é desligada sua alimentação.

Tipo de Memória Descrição Observação

14
Controlador Lógico Programável

RAM DINÂMICA Memória de acesso Volátil


aleatório Gravada pelo usuário
Lenta
Ocupa pouco espaço
Menor custo
RAM Memória de acesso - Volátil
aleatório - Gravada pelo usuário
- Rápida
- Ocupa mais espaço
- Maior custo
ROM MÁSCARA Memória somente de - Não Volátil
leitura - Não permite apagamento
- Gravada pelo fabricante
PROM Memória programável - Não volátil
somente de leitura - Não permite apagamento
- Gravada pelo usuário
EPROM Memória programável/ - Não Volátil
apagável somente de - Apagamento por ultravioleta
leitura - Gravada pelo usuário
EPROM Memória programável/ - Não Volátil
EEPROM apagável somente de - Apagável eletricamente
FLASH EPROM leitura - Gravada pelo usuário

Estrutura

Independente dos tipos de memórias utilizadas, o mapa de memória de um controlador


programável pode ser dividido em cinco áreas principais:

Memória executiva
Memória do sistema
Memória de status dos cartões de E/S ou Imagem
Memória de dados
Memória do usuário

15
Controlador Lógico Programável

MEMÓRIA EXECUTIVA

MEMÓRIA DO SISTEMA

MEMÓRIA DE STATUS

MEMÓRIA DE DADOS

MEMÓRIA DO USUÁRIO

Memória Executiva

É formada por memórias do tipo ROM ou PROM e em seu conteúdo está armazenado o
sistema operacional responsável por todas as operações que são realizadas no CLP.
O usuário não tem acesso a esta área de memória.

Memória do Sistema

Esta área é formada por memórias tipo RAM, pois terá o seu conteúdo constantemente
alterado pelo sistema operacional.
Armazena resultados e/ou operações intermediárias, geradas pelo sistema, quando
necessário. Pode ser considerada como um tipo de rascunho.
Não pode ser acessada nem alterada pelo usuário.

Memória de Status de E/S ou Memória Imagem

A memória de status dos módulos de E/S são do tipo RAM. A UCP, após ter efetuado a leitura
dos estados de todas as entradas, armazena essas informações na área denominada status
das entradas ou imagem das entradas. Após o processamento dessas informações, os
resultados serão armazenados na área denominada status das saídas ou imagem das saídas.

Memória de Dados

16
Controlador Lógico Programável

As memórias de dados são do tipo RAM, e armazenam valores do processamento das


instruções utilizadas pelo programa do usuário.
Funções de temporização, contagem, artiméticas e especiais, necessitam de uma área de
memória para armazenamento de dados, como:

valores pré-selecioandos ou acumulados de contagem e temporização;


resultados ou variáveis de operações aritméticas;
resultados ou dados diversificados a serem utilizados por funções de manipulação de
dados.

Memória do Usuário

A UCP efetuará a leitura das instruções contidas nesta área a fim de executar o programa do
usuário, de acordo com os procedimentos predeterminados pelo sistema operacional.
As memórias destinadas ao usuário podem ser do tipo:
RAM
RAM/EPROM
RAM/EEPROM

Tipo de Memória Descrição


A maioria do CLPs utiliza memórias RAM para
RAM armazenar o programa d usuário assim como os
dados internos do sistema. Geralmente associada a
baterias internas que evitarão a perda das
informações em caso de queda da alimentação.
O usuário desenvolve o programa e efetua testes em
RAM/EPROM RAM. Uma vez checado o programa, este é
transferido para EPROM.
Esta configuração de memória do usuário permite
que, uma vez definido o programa, este seja copiado
RAM/EEPROM em EEPROM. Uma vez efetuada a cópia, o CLP
poderá operar tanto em RAM como em EEPROM.
Para qualquer modificação bastará um comando via
software, e este tipo de memória será apagada e
gravada eletricamente.

17
Controlador Lógico Programável

18
Controlador Lógico Programável

Dispositivo de Entrada e
Saída

Os dispositivos de entrada e saída são os circuitos responsáveis pela interação entre o homem
e a máquina; são os dispositivos por onde o homem pode introduzir informações na máquina
ou por onde a máquina pode enviar informações ao homem. Como dispositivos de entrada
podemos citar os seguintes exemplos: leitor de fitas magnéticas, leitor de disco magnético,
leitor de cartão perfurado, leitor de fita perfurada, teclado, painel de chaves, conversor A/D,
mouse, scaner, etc. Estes dispositivos tem por função a transformação de dados em sinais
elétricos codificados para a unidade central de processamento.

Como dispositivos de saída podemos citar os seguintes exemplos: gravador de fitas


magnéticas, gravador de discos magnéticos, perfurador de cartão, perfurador de fita,
impressora, vídeo, display, conversor D/A, canal de som, etc. Todos eles tem por função a
transformação de sinais elétricos codificados pela máquina em dados que possam ser
manipulados posteriormente ou dados que são imediatamente entendidos pelo homem.

Estes dispositivos são conectados à unidade central de processamento por intermédio de


"portas" que são interfaces de comunicação dos dispositivos de entrada e saída.

A estrutura de E/S (entradas e saídas) é encarregada de filtrar os vários sinais recebidos ou


enviados para os componentes externos do sistema de controle. Estes componentes ou
dispositivos no campo podem ser botões, chaves de fim de curso, contatos de relés, sensores
analógicos, termopares, chaves de seleção, sensores indutivos, lâmpadas sinalizadoras,
display de LEDs, bobinas de válvulas direcionais elétricas, bobinas de relés, bobinas de
contatoras de motores, etc.

19
Controlador Lógico Programável

Em ambientes industriais, estes sinais de E/S podem conter ruído elétrico, que pode causar
operação falha da UCP se o ruído alcançar seus circuitos. Desta forma, a estrutura de E/S
protege a UCP deste tipo de ruído, assegurando informações confiáveis. A fonte de
alimentação das E/S pode também constituir-se de uma única unidade ou de uma série de
fontes, que podem estar localizadas no próprio compartimento de E/S ou constituir uma
unidade à parte.

Os dispositivos do campo são normalmente selecionados, fornecidos e instalados pelo usuário


final do sistema do CLP. Assim, o tipo de E/S é determinado, geralmente, pelo nível de tensão
(e corrente, nas saídas) destes dispositivos. Os circuitos de E/S são tipicamente fornecidas
pelos fabricantes de CLPs em módulos, cada um com 4, 8, 16 ou mais circuitos.

Além disso, a alimentação para estes dispositivos no campo deve ser fornecida externamente
ao CLP, uma vez que a fonte de alimentação do CLPs é projetada para operar somente com a
parte interna da estrutura de E/S e não dispositivos externos.

CARACTERÍSTICAS DAS ENTRADAS E SAÍDAS - E/S

A saída digital basicamente pode ser de quatro tipos: transistor, triac, contato seco e TTL
podendo ser escolhido um ou mais tipos. A entrada digital pode se apresentar de várias
formas, dependendo da especificação do cliente, contato seco, 24 VCC, 110 VCA, 220 VCA,
etc.
A saída e a entrada analógicas podem se apresentar em forma de corrente (4 a 20 mA, 0 a 10
mA, 0 a 50 mA), ou tensão (1 a 5 Vcc, 0 a 10 VCC, -10 a 10 VCC etc). Em alguns casos é
possível alterar o ranger da através de software.

MÓDULOS DE ENTRADA

Os módulos de entrada são interfaces entre os sensores localizados no campo e a lógica de


controle de um controlador programável.

Estes módulos são constituídos de cartões eletrônicos, cada qual com capacidade para
receber em certo número de variáveis.

20
Controlador Lógico Programável

Pode ser encontrado uma variedade muito grande de tipos de cartões, para atender as mais
variadas aplicações nos ambientes industriais. Mas apesar desta grande variedade, os
elementos que informam a condição de grandeza aos cartões, são do tipo:

ELEMENTO DISCRETO : Trabalha com dois níveis definidos;

ELEMENTO ANALÓGICO : Trabalha dentro de uma faixa de valores.

ELEMENTOS DISCRETOS

BOTÃO
CHAVE
PRESSOSTATO
FLUXOSTATO CARTÕES
TERMOSTATO
DISCRETOS UCP
FIM DE CURSO
TECLADO
CHAVE BCD
FOTOCÉLULA
OUTROS

A entrada digital com fonte externa é o tipo mais utilizado, também neste caso a característica
da fonte de alimentação externa dependerá da especificação do módulo de entrada. Observe
que as chaves que acionam as entradas situam-se no campo.

21
Controlador Lógico Programável

CAMPO
ENTRADA 1

ENTRADA 2

PSH

fonte
COMUM

As entradas dos CLPs têm alta impedância e por isso não podem ser acionadas diretamente
por um triac, como é o caso do acionamento por sensores a dois fios para CA, em razão disso
é necessário, quando da utilização deste tipo de dispositivo de campo, o acréscimo de uma
derivação para a corrente de manutenção do tiristor. Essa derivação consta de um circuito
resistivo-capacitivo em paralelo com a entrada acionada pelo triac, cujos valores podem ser
encontrados nos manuais do CLP, como visto abaixo.

CAMPO
ENTRADA 1

sensor
Se for ser utilizado indutivo
um sensor 2 fios
capacitivo, indutivo, óptico ou indutivo magnético, saída à
transistor com alimentação de 8 a 30 VCC, basta especificar um cartão de entrada 24 VCC

FONTE C.A.
22
COMUM
Controlador Lógico Programável

comum negativo ou positivo dependendo do tipo de sensor, e a saída do sensor será ligada
diretamente na entrada digital do CLP.

A entrada digital do tipo contato seco fica limitada aos dispositivos que apresentam como saída
a abertura ou fechamento de um contato. É bom lembrar que em alguns casos uma saída do
sensor do tipo transistor também pode ser usada, esta informação consta no manual de ligação
dos módulos de entrada.

ELEMENTOS ANALÓGICOS

TRANSMISSORES C.A.

TACO GERADOR C.A.

UCP
TERMOPAR C.A.

TERMO RESISTÊNCIA
C.A.

SENSOR DE POSIÇÃO
C.A.

OUTROS C.A.

C.A. - Cartão Analógico

23
Controlador Lógico Programável

A entrada analógica em corrente é implementada diretamente no transmissor

CAMPO
ENTRADA
1
ENTRADA 2
P T
T T
P
T
fonte
COMUM

como mostra o diagrama.

A entrada analógica em tensão necessita de um shunt para a conversão do valor de corrente


em tensão, como mostra o diagrama O valor do resistor shunt dependerá da faixa de saída do
transmissor e da faixa de entrada do ponto analógico. Para tal cálculo utiliza-se a lei de ohm (
R = V / I).

CAMPO
ENTRADA 1

ENTRADA 2
PT

T
TP
fonte T

COMUM

24
Controlador Lógico Programável

TRATAMENTO DE SINAL DE ENTRADA

O tratamento que deve sofrer um sinal de entrada, varia em função de sua natureza, isto é, um
cartão do tipo digital que recebe sinal alternado, se difere do tratamento de um cartão digital
que recebe sinal contínuo e assim nos demais tipos de sinais.

A seguir é mostrado um diagrama onde estão colocados os principais componentes de um


cartão de entrada digital de tensão alternada :

Elementos Discretos

B.C. C.C. I.E. I.El. I.M. UCP

B.C. - Bornes de conexão: Permite a interligação entre o sensor e o cartão, geralmente se


utiliza sistema “plug-in”.

C.C. - Conversor e Condicionador : Converte em DC o sinal AC, e rebaixa o nível de


tensão até atingir valores compatíveis com o restante do circuito.

I.E. - Indicador de Estado : Proporcionar indicação visual do estado funcional das entradas.

I.El. - Isolação Elétrica : Proporcionar isolação elétrica entre os sinais vindos e que serão
entregues ao processador.

I.M. - Interface/Multiplexação : Informar ao processador o estado de cada variável de entrada.

MÓDULOS DE SAÍDA

Os módulos de saída são elementos que fazem a interface entre o processador e os elementos
atuadores.

25
Controlador Lógico Programável

Estes módulos são constituídos de cartões eletrônicos, com capacidade de enviar sinal para os
atuadores, resultante do processamento da lógica de controle.

Os cartões de saída irão atuar basicamente dois tipos:

ATUADORES DISCRETOS : Pode assumir dois estados definidos.


ATUADORES ANALÓGICOS : Trabalha dentro de uma faixa de valores.
ATUADORES DISCRETOS

VÁLVULA SOLENÓIDE
CONTATOR
SINALIZADOR
CARTÕES RELÉ
UCP SIRENE
DISCRETOS DISPLAY
OUTROS

De acordo com o tipo de elemento de comando da corrente das saídas, estas


apresentam características que as diferem como as seguintes:
- saída a TRANSÍSTOR promove comutações mais velozes mas só comporta cargas de tensão
contínua;
- saída a TRIAC tem maior vida útil que o tipo a contato seco mas só pode acionar cargas de
tensão alternada;
- saída a CONTATO SECO pode acionar cargas alimentadas por tensão tanto contínua quanto
alternada.
A ligação dos circuitos de entrada e ou saída é relativamente simples, dependendo apenas do
tipo em questão.
A seguir vêm-se os diagramas de ligação dos vários tipos.

26
Controlador Lógico Programável

Uma boa prática de todo o profissional é ler o manual de instalação


dos equipamentos. No que diz respeito às saídas digitais dos CLPs
devem ser rigorosamente respeitados os limites de tensão, corrente e
polaridade quando for o caso.

As saídas digitais independentes possuem a vantagem de poder acionar no mesmo módulo


cargas de diferentes fontes sem o risco de interligá-las. Apresentam a desvantagem de
consumir mais cabos.
CAMPO

carga

saída 1 fonte
SAÍDAS DIGITAIS
INDEPENDENTES

carga

saída 2 fonte

27
Controlador Lógico Programável

As saídas digitais com ponto comum possuem a vantagem de economia de cabo.


Se neste tipo de saída for necessário acionar cargas com fontes incompatíveis entre si,
será necessária a utilização de relés cujas bobinas se energizem com as saídas do CLP e
cujos contatos comandem tais cargas.

CAMPO
saída 1 carga

SAÍDAS DIGITAIS
COM PONTO
COMUM
saída 2 carga

fonte

comum

ATUADORES ANALÓGICOS

CARTÕES POSICIONADOR
UCP CONVERSOR
ANALÓGICOS INDICADOR
VÁLVULA PROPORCIONAL
ATUADOR ELÉTRICO
OUTROS

28
Controlador Lógico Programável

A saída analógica em corrente ou tensão é implementada diretamente no dispositivo em


questão. É bom lembrar a questão da compatibilidade dos sinais, saída em tensão só pode ser
ligada no dispositivo que recebe tensão e saída em corrente pode ser ligada em dispositivo que
recebe corrente ou tensão, dependendo da utilização ou não do shunt de saída.

SAÍDA 1

SAÍDA 2 ATUADOR
POSICIONADO
R

COMUM

TRATAMENTO DE SINAL DE SAÍDA

Existem vários tipos de cartões de saída que se adaptam à grande variedade de atuadores
existentes. Por este motivo, o sinal de saída gerado de acordo com a lógica de controle, deve
ser condicionado para atender o tipo da grandeza que acionará o atuador.

A seguir é mostrado um diagrama onde estão colocados os principais componentes de um


cartão de saída digital de corrente contínua :

UCP I.M. M.S. I.El. E.S. B.L.

29
Controlador Lógico Programável

I.M. - Interface/Multiplexação : Interpreta os sinais vindos da UCP através do barramento de


dados, para os pontos de saída, correspondente a cada cartão.

M.S. - Memorizador de Sinal : Armazena os sinais que já foram multiplexados pelo bloco
anterior.

I.E. - Isolação Elétrica : Proporciona isolação elétrica entre os sinais vindos do processador e
os dispositivos de campo.

E.S. - Estágio de Saída : Transforma os sinais lógicos de baixa potência, em sinais capazes
de operar os diversos tipos de dispositivos de campo.

B.L. - Bornes de Ligação : Permite a ligação entre o cartão e o elemento atuador, e utiliza
também o sistema “plug-in”.

30
Controlador Lógico Programável

Terminal de Programação

O terminal de programação é um dispositivo (periférico) que conectado temporariamente ao


CLP, permite introduzir o programa do usuário e configuração do sistema. Pode ser um
equipamento dedicado, ou seja, um terminal que só tem utilidade como programador de um
determinado fabricante de CLP, ou um software que transforma um computador pessoal em um
programador.

Neste periférico, através de uma linguagem, na maioria das vezes, de fácil entendimento e
utilização, será feita a codificação das informações vindas do usuário numa linguagem que
possa ser entendida pelo processador de um CLP. Dependendo do tipo de Terminal de
Programação (TP), poderão ser realizadas funções como:
Elaboração do programa do usuário;
Análise do conteúdo dos endereços de memória;
Introdução de novas instruções;
Modificação de instruções já existentes;
Monitoração do programa do usuário;
Cópia do programa do usuário em disco ou impressora.

Os terminais de programação podem ser classificados em três tipos:


Terminal Dedicado Portátil;
Terminal Dedicado TRC;
Terminal não Dedicado;

TERMINAL PORTÁTIL DEDICADO

31
Controlador Lógico Programável

Os terminais de programação portáteis, geralmente são compostos por teclas que são
utilizadas para introduzir o programa do usuário. Os dados e instruções são apresentados num
display que fornece sua indicação, assim como a posição da memória endereçada.

A maioria dos programadores portáteis são conectados diretamente ao CP através de uma


interface de comunicação (serial). Pode-se utilizar da fonte interna do CP ou possuir
alimentação própria através de bateria.

Com o advento dos computadores pessoais portáteis (Lap-Top), estes terminais estão
perdendo sua função, já que pode-se executar todas as funções de programação em ambiente
mais amigável, com todas as vantagens de equipamento portátil.

TERMINAL DEDICADO TRC

No caso do Terminal de programação dedicado tem-se como grandes desvantagens seu custo
elevado e sua baixa taxa de utilização, já que sua maior utilização se dá na fase de projeto e
implantação da lógica de controle.

Estes terminais são compostos por um teclado, para introdução de dados/instruções e um


monitor (TRC - tubos de raios catódicos) que tem a função de apresentar as informações e
condições do processo a ser controlado.

Como no caso dos terminais portáteis, com o advento da utilização de computadores pessoais,
este tipo de terminal está caindo em desuso.

TERMINAL NÃO DEDICADO - PC

A utilização de um computador pessoal (PC) como terminal de programação é possível através


da utilização de um software aplicativo dedicado a esta função.

Neste tipo de terminal, tem-se a vantagem da utilização de um micro de uso geral realizando o
papel do programador do CLP. O custo deste hardware (PC) e software são bem menores do
que um terminal dedicado além da grande vantagem de ter, após o período de implantação e
eventuais manutenções, o PC disponível para outras aplicações comuns a um computador
pessoal.

32
Controlador Lógico Programável

Outra grande vantagem é a utilização de softwares cada vez mais interativos com o usuário,
utilizando todo o potencial e recursos de software e hardware disponíveis neste tipo de
computador.

Princípio de Funcionamento de um CLP

Um controlador lógico programável, tem seu funcionamento baseado num sistema de


microcomputador onde se tem uma estrutura de software que realiza continuamente ciclos de
varredura.

ESTADOS DE OPERAÇÃO

Basicamente a UCP de um controlador programável possui dois estados de operação :

- Programação

- Execução

A UCP pode assumir também o estado de erro, que aponta falhas de operação e execução do
programa.

Programação

Neste estado o CP não executa programa, isto é, não assume nenhuma lógica de controle,
ficando preparado para ser configurado ou receber novos programas ou até modificações de
programas já instalados. Este tipo de programação é chamada off-line (fora de linha).

33
Controlador Lógico Programável

Execução

Estado em que o CP assume a função de execução do programa do usuário. Neste estado,


alguns controladores, podem sofrer modificações modificações de programa. Este tipo de
programação é chamada on-line (em linha).

FUNCIONAMENTO

Ao ser energizado, estando o CP no estado de execução, o mesmo cumpre uma rotina de


inicialização gravada em seu sistema operacional. Esta rotina realiza as seguintes tarefas :

- Limpeza da memória imagem, para operandos não retentivos;

- Teste de memória RAM;

- Teste de executabilidade do programa.

Após a execução desta rotina, a UCP passa a fazer uma varredura (ciclo) constante, isto é,
uma leitura seqüencial das instruções em loop (laço).

Entrando no loop, o primeiro passo a ser executado é a leitura dos pontos de entrada. Com a
leitura do último ponto, irá ocorrer, a transferência de todos os valores para a chamada
memória ou tabela imagem das entradas.

Após a gravação dos valores na tabela imagem, o processador inicia a execução do programa
do usuário de acordo com as instruções armazenadas na memória.

Terminando o processamento do programa, os valores obtidos neste processamento, serão


transferidos para a chamada memória ou tabela imagem das saídas, como também a
transferência de valores de outros operandos, como resultados aritméticos, contagens, etc.
Ao término da atualização da tabela imagem, será feita a transferência dos
valores da tabela imagem das saídas, para os cartões de saída, fechando o loop. Neste
momento é iniciado um novo loop.

34
Controlador Lógico Programável

Para a verificação do funcionamento da UCP, é estipulado um tempo de processamento,


cabendo a um circuito chamado de Watch Dog Time supervisioná-lo. Ocorrendo a
ultrapassagem deste tempo máximo, o funcionamento da UCP será interrompido, sendo
assumido um estado de erro.

O termo varredura ou scan, são usados para um dar nome a um ciclo completo de operação
(loop).

O tempo gasto para a execução do ciclo completo é chamado Tempo de Varredura, e depende
do tamanho do programa do usuário, e a quantidade de pontos de entrada e saída.

35
Controlador Lógico Programável

START
PARTIDA

- Limpeza de memória
- Teste de RAM
- Teste de Execução

Não
OK

Sim
Leitura dos
Cartões de
Entrada

Atualização da
Tabela Imagem das
Entradas

Execução do Programa
do
Usuário

Atualização da
Tabela Imagem das
Saídas

Transferência
da Tabela para
a Saída

Tempo Não
de Varredura
OK
STOP
Sim PARADA

Fluxograma de funcionamento de um CLP

36
Controlador Lógico Programável

Ciclo de Operação de um CLP

Cartão de Entrada

o - 00
o - 01
o - 02
o - 03
o - 04
o - 05
o - 06
o - 07

IN
1 0
E
N
T
R
A
D
OUT 04 A
S
Memória
Imagem
IN 00 IN 03

S
A
Í
D
A
S
Cartão de Saída
1
o - 00
o - 01
o - 02
o - 03
o - 04
o - 05
o - 06
o - 07

OUT

37
Controlador Lógico Programável

38
Controlador Lógico Programável

Linguagem de programação

Na execução de tarefas ou resolução de problemas com dispositivos microprocessados, é


necessária a utilização de uma linguagem de programação, através da qual o usuário se
comunica com a máquina.

A linguagem de programação é uma ferramenta necessária para gerar o programa, que vai
coordenar e sequenciar as operações que o microprocessador deve executar.

CLASSIFICAÇÃO

Linguagem de baixo nível


Linguagem de alto nível

LINGUAGEM DE BAIXO NÍVEL

Linguagem de Máquina

É a linguagem corrente de um microprocessador ou microcontrolador, onde as instruções são


escritas em código binário (bits 0 e 1). Para minimizar as dificuldades de programação usando
este código, pode-se utilizar também o código hexadecimal.

Código Binário

39
Controlador Lógico Programável

Endereço Conteúdo
0000000000000000 00111110
0000000000000001 10000000
0000000000000010 11010011
0000000000000011 00011111
0000000000000100 00100001
0000000000000101 00000000
0000000000000111 01111110
0000000000001000 00100011
0000000000001001 10000110
0000000000001010 00111111
0000000000001011 00000001
0000000000001111 11011010
0000000000010000 00000000
0000000000010001 11011010

Código Hexadecimal

Endereço Conteúdo
0000 3E
0001 80
0002 D3
0003 1F
0004 21
0005 00
0006 10
0007 7E
0008 23
0009 86
000A 27
000B D3
000C 17
000D 3F

40
Controlador Lógico Programável

Cada item do programa, chama-se linha ou passo, representa uma instrução ou dado a ser
operacionalizado.

Linguagem Assembler

Na linguagem assembler o programa é escrito com instruções abreviadas chamadas


mnemônicos.

Endereço Conteúdo
0000 MVI A,80H
0002 OUT 1FH
0004 LXI ,1000H
0007 MOV A,M
0008 INX H
0009 ADD M
000A DAA
000B OUT 17H
000D MVI A,1H
000F JC 0031H
0012 XRA A
0013 OUT 0FH
0015 HLT

Cada microprocessador ou microcontrolador possuem estruturas internas diferentes, portanto


seus conjuntos de registros e instruções também são diferentes.

LINGUAGEM DE ALTO NÍVEL

É uma linguagem próxima da linguagem corrente utilizada na comunicação de pessoas.

Compiladores e Interpretadores

Quando um microcomputador utiliza uma linguagem de alto nível, é necessário a utilização de


compiladores e interpretadores para traduzirem este programa para a linguagem de máquina.

41
Controlador Lógico Programável

1111 0000
COMPILADORES 0101 0100
PROGRAMA OU 1100 0101
INTERPRETADORES 0101 0111

Vantagem
Elaboração de programa em tempo menor, não necessitando conhecimento da arquitetura do
microprocessador.

Desvantagem
Tempo de processamento maior do que em sistemas desenvolvidos em linguagens de baixo
nível.

Exemplos de linguagens de alto nível

- Pascal
-C
- Fortran
- Cobol
- etc

42
Controlador Lógico Programável

Programação de
Controladores Programáveis

Normalmente podemos programar um controlador através de um software que possibilita a sua


apresentação ao usuário em quatro formas diferentes:

- Diagrama de contatos;
- Diagrama de blocos lógicos ( lógica booleana );
- Lista de instruções;
- Linguagem corrente.

Alguns CLPs, possibilitam a apresentação do programa do usuário em uma ou mais formas.

DIAGRAMA DE CONTATOS

Também conhecida como:

- Diagrama de relés;
- Diagrama escada;
- Diagrama “ladder”.

Esta forma gráfica de apresentação está muito próxima a normalmente usada em diagrama
elétricos.
Exemplo:

43
Controlador Lógico Programável

E1 E2 S1
------| |------| |--------------------------( )------

E3
------| |--------------

DIAGRAMA DE BLOCOS LÓGICOS

Mesma linguagem utilizada em lógica digital, onde sua representação gráfica é feita através
das chamadas portas lógicas.
Exemplo:

I 0.0 >=1
&
Q 0.0
Q 0.0
I 0.2
I 0.4 >=1
Q 0.2
&
Q 0.2
I 0.6

LISTA DE INSTRUÇÃO

Linguagem semelhante à utilizada na elaboração de programas para computadores.

Exemplo :

:A I 1.5
:A I 1.6
:O
:A I 1.4
:A I 1.3
:= Q 3.0

( I 1.5 . I 1.6 ) + ( I 1.4 . I 1.3 ) = Q 3.0

44
Controlador Lógico Programável

LINGUAGEM CORRENTE

É semelhante ao basic, que é uma linguagem popular de programação, e uma linguagem de


programação de alto nível. Comandos típicos podem ser "fechar válvula A" ou "desligar bomba
B", "ligar motor", "desligar solenóide",

ANÁLISE DAS LINGUAGUES DE PROGRAMAÇÃO

Com o objetivo de ajudar na escolha de um sistema que melhor se adapte as necessidades de


cada usuário, pode-se analisar as características das linguagens programação disponíveis de
CLPs.

Esta análise se deterá nos seguintes pontos:

- Quanto a forma de programação;


- Quanto a forma de representação;
- Documentação;
- Conjunto de Instruções.

Quanto a Forma de Programação

.Programação Linear - programa escrito escrita em único bloco

.Programação Estruturada - Estrutura de programação que permite:

- Organização;
- Desenvolvimento de bibliotecas de rotinas utilitárias para utilização em vários programas;
- Facilidade de manutenção;
- Simplicidade de documentação e entendimento por outras pessoas além do autor do
software.

Permite dividir o programa segundo critérios funcionais, operacionais ou geográficos.

Quanto a Forma de Representação

45
Controlador Lógico Programável

. Diagrama de Contatos;
. Diagrama de Blocos;
. Lista de Instruções.
Estes já citados anteriormente.

Documentação

A documentação é mais um recurso do editor de programa que de linguagem de programação.


De qualquer forma, uma abordagem neste sentido torna-se cada vez mais importante, tendo
em vista que um grande número de profissionais estão envolvidos no projeto de um sistema de
automação que se utiliza de CLPs, desde sua concepção até a manutenção.
Quanto mais rica em comentários, melhor a documentação que normalmente se divide em
vários níveis.

Conjunto de Instruções

É o conjunto de funções que definem o funcionamento e aplicações de um CLP.


Podem servir para mera substituição de comandos a relés:
- Funções Lógicas;
- Memorização;
- Temporização;
- Contagem.

Como também manipulação de variáveis analógicas:


- Movimentação de dados;
- Funções aritméticas.

Se funções complexas de algoritmos, comunicação de dados, interfaces homem-máquina,


podem ser necessárias:
- Saltos controlados;
- Indexação de instruções;
- Conversão de dados;
- PID;
- sequenciadores;

46
Controlador Lógico Programável

- aritmética com ponto flutuante;


- etc.

NORMALIZAÇÃO

Existe a tendência de utilização de um padrão de linguagem de programação onde será


possível a intercambiabilidade de programas entre modelos de CLPs e até de fabricantes
diferentes.
Esta padronização está de acordo com a norma IEC 1131-3, na verdade este tipo de
padronização é possível utilizando-se o conceito de linguagem de alto nível, onde através de
um chamado compilador, pode-se adaptar um programa para a linguagem de máquina de
qualquer tipo de microprocessador, isto é, um programa padrão, pode servir tanto para o CLP
de um fabricante A como de um fabricante B.
A norma IEC 1131-3 prevê três linguagens de programação e duas formas de apresentação.
As linguagens são:

- Ladder Diagram - programação como esquemas de relés.


- Boolean Blocks - blocos lógicos representando portas “E”, “OU”, “Negação”, “Ou exclusivo”,
etc.
- Structured Control Language (SCL) - linguagem que vem substituir todas as linguagens
declarativas tais como linguagem de instruções, BASIC estruturado e inglês estruturado. Esta
linguagem é novidade no mercado internacional e é baseada no Pascal.

As formas de representação são :

- Programação convencional;
- Sequencial Function Chart (SFC) - evolução do graphcet francês.
A grande vantagem de se ter o software normalizado é que em se conhecendo um conhece-se
todos, economizando em treinamento e garantindo que, por mais que um fornecedor deixe o
mercado, nunca se ficará sem condições de crescer ou repor equipamentos.

47
Controlador Lógico Programável

48
Controlador Lógico Programável

Programação em Ladder

O diagrama ladder utiliza lógica de relé, com contatos (ou chaves) e bobinas, e por isso é a
linguagem de programação de CLP mais simples de ser assimilada por quem já tenha
conhecimento de circuitos de comando elétrico.

Compõe-se de vários circuitos dispostos horizontalmente, com a bobina na extremidade direita,


alimentados por duas barras verticais laterais. Por esse formato é que recebe o nome de ladder
que significa escada, em inglês.

Cada uma das linhas horizontais é uma sentença lógica onde os contatos são as entradas das
sentenças, as bobinas são as saídas e a associação dos contatos é a lógica.

49
Controlador Lógico Programável

São os seguintes os símbolos:

CONTATO NORMALMENTE ABERTO

CONTATO NORMALMENTE
FECHADO

BOBINA

No ladder cada operando (nome genérico dos contatos e bobinas no ladder) é identificado com
um endereço da memória à qual se associa no CLP. Esse endereço aparece no ladder com um
nome simbólico, para facilitar a programação, arbitrariamente escolhido pelo fabricante como
os exemplos vistos a seguir.

Tabela de alguns CLPs X endereçamento

FABRICAN MODEL E.D. S.D. E.A. S.A. BIT PALAVR PALAVR CONTADOR
TE O AUX. A A DO /
SISTEM TEMPORIZA
A DOR
GEFANUC 90-70 %I1 %Q1 %AI %AQ %M1 %R1 %S %Rx
90-30 a a a 1 a a x
90-20 %I... %Q... %AI.. a %M... %R... x+1
90- . %AQ %T1 x+2

50
Controlador Lógico Programável

MICRO ... a PARA CADA


%T...
ALLEN SLC-500 I:SL O:SL I:SLO O:SL B3:0/0 N7:0 S: T4:0
BRADLEY OT.P OT.P T.PO OT.P a a R6:0 A
ONT ONT NTO ONT B3:... N7:... a T4:...
O O I:3.0 O R6:... C5:0
I:1/0 O:1/0 a O:3.0 A
a a I:3.... a C5:...
I:... O:... O:3...
.
ALTUS AL500 R0 R60 - - A0 M0 - M0
a a a a PARA CADA
R... R... A... M...
ALTUS PICOLL %E0. %S2. %M %M %A0.0 %M0 %M0
O 0 0 a a PARA CADA
a a %A... %M...
%E... %S...
FESTO FPC101 I0.0 O0.0 II0 OU0 F0.0 R0 FW0 T0
FPC103 a a a e a a a a
I... O... II3 OU1 F15.15 R64 FW15 T31
OU C0
IU0 a
a C15
IU3

Outros tipos de endereçamento; 125/04 ( 1 = entrada, 2 = gaveta, 5 = número do cartão ou


módulo, 04 = número do ponto ), 013/01 ( 0 = saída, 1 = número da gaveta, 3 = número do
módulo, 01 = número do ponto ).
Nesta apostila os endereços serão identificados como:
E - para entrada digital;
EA - para entrada analógica;
S - para saída digital;
SA - para saída analógica.
A - para bobina auxiliar

51
Controlador Lógico Programável

O estado de cada operando é representado em um bit correspondente na memória imagem:


este bit assume nível 1 se o operando estiver acionado e 0 quando desacionado.

* As bobinas acionam o seu endereço

Enquanto uma bobina com endereço de saída estiver acionada, um par de terminais no módulo
de saída será mantido em condição de condução elétrica.

* Os contatos se acionam pelo endereço que os identifica.


.
Os contatos endereçados como entrada se acionam enquanto seu respectivo par de terminais
no módulo de entrada é acionado: fecham-se se forem NA e abrem-se se forem NF.

Com relação ao que foi exposto acima sobre os contatos endereçados como entrada, os que
tiverem por finalidade acionar ou energizar uma bobina deverão ser do mesmo tipo do contato
externo que aciona seu respectivo ponto no módulo de entrada.
Já os que forem usados para desacionar ou desenergizar uma bobina devem ser de tipo
contrário do contato externo que os aciona. Abaixo vê-se um quadro elucidativo a esse
respeito.

Se a chave externa for o contato no ladder deve ser


Para ligar NA NA
NF NF
Para desligar NA NF
NF NA

Percebe-se pois que pode ser usada chave externa de qualquer tipo, desde que no ladder se
utilize o contato de tipo conveniente. Mesmo assim, por questão de segurança, não se deve
utilizar chave externa NF para ligar nem NA para desligar.

52
Controlador Lógico Programável

DESENVOLVIMENTO DO PROGRAMA LADDER

Após a definição da operação de um processo onde são geradas as necessidades de


seqüenciamento e/ou intertravamento, esses dados e informações são passados sob forma de
diagrama lógico, diagrama funcional ou matriz de causas e efeitos e a partir daí o programa é
estruturado.
Abaixo vêem-se os passos para a automação de um processo ou equipamento.

INICIO

DEFINIÇÃO
PONTOS DE E/S OPERANDOS

ELABORAÇÃO DO PROGRAMA
USUÁRIO

TESTE DO PROGRAMA USUÁRIO


ALTERAÇÕE
DO
PROGRAMA
FUNCIONA? NÃO
SIM

INSTALAÇÃO DOS EQUIPAMENTOS E


LIBERAÇÃO PARA USO

FIM

53
Controlador Lógico Programável

A lógica de diagrama de contatos do CLP assemelha-se à de relés. Para que um relê


seja energizado, necessita de uma continuidade elétrica, estabelecida por uma corrente
elétrica.
ALIMENTAÇÀO
+ -

CH1

K1

Ao ser fechada a CH1, a bobina K1 será energizada, pois será estabelecida uma continuidade
entre a fonte e os terminais da bobina.
O programa equivalente do circuito anterior, na linguagem ladder, será o seguinte.

E1 S1

Analisando os módulos de entrada e saída do CLP, quando o dispositivo ligado à entrada


digital E1 fechar, este acionará o contato E1, que estabelecerá uma continuidade de forma a
acionar a bobina S1, consequentemente o dispositivo ligado à saída digital S1 será acionado.

Uma prática indispensável é a elaboração das tabelas de alocação dos dispositivos de


entrada/saída. Esta tabela é constituída do nome do elemento de entrada/saída, sua
localização e seu endereço de entrada/saída no CLP. Exemplo:

DISPOSITIVO LOCALIZAÇÃO ENDEREÇO


PSL - 100 Topo do tanque pressurizado 2 E1
TT - 400 Saída do misturador EA1
FS Saída de óleo do aquecedor E2
SV Ao lado da válvula FV400 S1

54
Controlador Lógico Programável

O NF é um contado de negação ou inversor, como pode ser visto no exemplo abaixo que é
similar ao programa anterior substituindo o contato NA por um NF.

E1 S1

Analisando os módulos de entrada e saída, quando o dispositivo ligado a entrada digital E1


abrir, este desacionará o contato E1, este por ser NF estabelecerá uma continuidade de forma
a acionar a bobina S1, consequentemente o dispositivo ligado à saída digital S1 será acionado.
A seguir temos o gráfico lógico referente aos dois programas apresentados anteriormente.

ESTADO LÓGICO ESTADO LÓGICO

1 1
E1 E1
0 0
T T

1 1
S1 S1
0 0
T T

CIRCUITO UTILIZANDO E1 NORMALMENTE ABERTO CIRCUITO UTILIZANDO E1 NORMALMENTE FECHADO

ASSOCIAÇÃO DE CONTATOS NO LADDER.

No ladder se associam contatos para criar as lógicas E e OU com a saída.


Os contatos em série executam a lógica E, pois a bobina só será acionada quando todos os
contatos estiverem fechados

E1 E2 E3 S1

55
Controlador Lógico Programável

A saída S1 será acionada quando:


E1 estiver acionada E
E2 estiver não acionada E
E3 estiver acionada
Em álgebra booleana S=E1* E2* E3

A lógica OU é conseguida com a associação paralela, acionando a saída desde que pelo
menos um dos ramos paralelos estejam fechados

E1 S1

E2

E3

A saída S1 será acionada se


E1 for acionada OU
E2 não for acionada OU
E3 for acionada. O que equivale a lógica booleana.

56
Controlador Lógico Programável

S1=E1+E2+E3

Com associações mistas criam-se condições mais complexas como a do exemplo a seguir

E1 E3 S1

E2

Neste caso a saída é acionada quando

E3 for acionada & E1 for acionada

OU

E3 for acionada & E2 não for acionada

Em lógica booleana S1=E3 * (E1 + E2)

57
Controlador Lógico Programável

VII.1.2. INSTRUÇÕES

Na UCP o programa residente possui diversos tipos de blocos de funções. Na listagem a seguir
apresentamos alguns dos mais comuns:
- contador;
- temporização de energização;
- temporização de desenergização;
- adição de registros;
- multiplicação de registros;
- divisão de registros;
- extração de raiz quadrada;
- bloco OU lógico de duas tabelas;
- bloco E lógico de duas tabelas;
- ou exclusivo lógico de duas tabelas;
- deslocar bits através de uma tabela-direita;
- deslocar bits através de uma tabela-esquerda;
- mover tabela para nova localização;
- mover dados para memória EEPROM;
- mover inverso da tabela para nova localização;
- mover complemento para uma nova localização;
- mover valor absoluto para uma nova localização;
- comparar valor de dois registros;
- ir para outra seqüência na memória;
- executar sub-rotina na memória;
- converter A/D e localizar em um endereço;
- converter D/A um dado localizado em um endereço;
- executar algoritmo PID;
- etc.

INSTRUÇÕES BÁSICAS

As instruções básicas são representadas por blocos funcionais introduzidos na linha de


programação em lógica ladder. Estes blocos funcionais podem se apresentar de formas
diferentes de um CLP para outro, mas a filosofia de funcionamento é invariável. Estes blocos
auxiliam ou complementam o controle do equipamento, introduzindo na lógica ladder instruções

58
Controlador Lógico Programável

como de temporização, contagem, soma, divisão, subtração, multiplicação, PID, conversão


BCD/Decimal, conversão Decimal/BCD, raiz quadrada, etc.

FUNCIONAMENTO DOS PRINCIPAIS BLOCOS

S1
E2

BLOCO
FUNCIONAL

O bloco funcional possui pontos de entrada ( localizados à esquerda ) e pontos de saída (


localizados à direita do bloco ), também possui campos de entrada de informações como;
número do registro, memória, ponto de entrada analógico, bit de saída, bit de entrada, ponto de
saída analógico, constantes, etc.
As instruções seguintes será explicadas supondo o byte de oito bits. A análise para o byte de
dezesseis bits é exatamente a mesma.

INSTRUÇÃO DE TEMPORIZAÇÃO

O temporizador conta o intervalo de tempo transcorrido a partir da sua habilitação até este se
igualar ao tempo preestabelecido. Quando a temporização estiver completa esta instrução
eleva a nível 1 um bit próprio na memória de dados e aciona o operando a ela associado.

S1
E2

TEMPORIZADOR
T1 = 30 SEG

59
Controlador Lógico Programável

Segundo exemplo, quando E1 for acionada, o temporizador será habilitado e imediatamente


após 30 segundos a saída S1 será acionada. Quando E1 for desacionada, o temporizador será
desabilitado, ou desenergizado, desacionando a saída S1. Em alguns casos, esta instrução
apresenta duas entradas uma de habilitação da contagem e outra para zeramento ou reset da
saída.
Para cada temporizador destina-se um endereço de memória de dados onde o valor prefixado
será armazenado.
Na memória de dados do CLP, o temporizador ocupa três bytes para o controle. O primeiro
byte reservado para o dado prefixado, o segundo byte reservado para a temporização e o
terceiro byte reservado para os bits de controle da instrução temporizador.

1o byte = valor prefixado de 30 seg.


2o byte = tempo transcorrido
3o byte = bits de controle D.E. ( bit de entrada) e D.S. ( bit de saída ).
Os temporizadores podem ser TON ( temporiza no acionamento ) e TOFF ( temporiza no
desacionamento).

INSTRUÇÃO DE CONTAGEM

O contador conta o número de eventos que ocorre e deposita essa contagem em um byte
reservado. Quando a contagem estiver completa, ou seja , igual ao valor prefixado, esta
instrução energiza um bit de contagem completa. A instrução contador é utilizada para
energizar ou desenergizar um dispositivo quando a contagem estiver completa.
E1 S1

CONTADOR
E2 C1
PULSOS=50

Para cada contador destina-se um endereço de memória de dados onde o valor prefixado será
armazenado.
Na memória de dados do CLP, o contador ocupa três bytes para o controle. O primeiro byte
reservado para o dado prefixado, o segundo byte reservado para a contagem e o terceiro byte
reservado para os bits de controle da instrução contador.

60
Controlador Lógico Programável

1o byte = valor prefixado de 50


2o byte = contagem
3o byte = bits de controle D.E. ( bit de entrada), D.S. ( bit de saída ) e D.R. ( bit de reset).

EVENTO
0
T

1
BIT DE
ENERGIZAÇÃO
D.E.
0
T
BIT DE
CONTAGEM 1
COMPLETA
D.S.
0

T
BIT DE 1
ZERAMENTO
D.R.
0
T

INSTRUÇÃO MOVER

A instrução mover transfere dados de um endereço de memória para outro endereço de


memória, manipula dados de endereço para endereço, permitindo que o programa execute
diferentes funções com o mesmo dado.
E1 S1

MOVER
D1 ===>D2

Abaixo temos cinco endereços da memória de dados do CLP. Observe que o dado de D1 é
distinto de D2.

61
Controlador Lógico Programável

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 0 1 1 1 1
D2 0 0 1 1 0 0 0 0
D3 0 0 0 0 1 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução mover tenha sido acionada e que a movimentação será de D1 para
D2.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 0 1 1 1 1
D2 0 0 0 0 1 1 1 1
D3 0 0 0 0 1 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Observe que o conteúdo de D2 foi alterado. No momento em que a instrução mover for
desacionada, o dado de D2 permanecerá o mesmo.

Enquanto E1 estiver acionada o dado será movido uma vez a cada ciclo de varredura, portanto
E1 deve ser acionado e desacionado rapidamente.

Temos o gráfico que ilustra antes e depois do acionamento de E1 para a instrução mover.

62
Controlador Lógico Programável

ENTRADA

0
T

MEMÓRIA
D1 = 00001111 D1 = 00001111
DE
DADOS
0

MEMÓRIA T
DE D2 = 00110000 D2 = 00001111
DADOS

0
T

INSTRUÇÃO COMPARAR

A instrução comparar verifica se o dado de um endereço é igual, maior, menor, maior/igual ou


menor/igual que o dado de um outro endereço, permitindo que o programa execute diferentes
funções baseadas em um dado de referência.

E1 S1

COMPARAR
D1>D2

E1 S2

COMPARAR
D1<D2

No exemplo, quando a entrada E1 for acionada as duas instruções de comparação serão


acionadas, se D1 for maior que D2 o bit de saída S1 será acionado, se D1 for menor que D2 o
bit de saída S2 será acionado. A comparação só existirá se a entrada E1 estiver acionada,
caso contrário as duas saídas S1 e S2 serão desacionadas.

63
Controlador Lógico Programável

64
Controlador Lógico Programável

T0 T1 T2 T3 T4
D1=35 D1=35 D1=35
D2=10 D2=35 D2=45
1

ENTRADA E1
0
T

SAÍDA S1

0
T

1
SAÍDA S2
0

Observe o gráfico acima, entre T0 e T1 a entrada E1 está desativada, logo não há comparação
e as saídas S1 e S2 são nulas. Entre T1 e T2 o dado D1 se encontra com valor maior que D2,
logo a instrução de comparação ativa a saída S1. Entre T2 a T3 o dado D1 é igual a D2, como
não há instrução de igualdade as saídas estarão desativadas. Entre T3 a T4 o dado D1 é
menor que D2, logo a saída S2 será ativada, a partir de T4 a entrada E1 foi desacionada,
portanto as comparações são desativadas e as saídas irão para estado lógico “0”.
A mesma análise é válida para a instrução igual a, maior igual a e menor igual a.

INSTRUÇÕES MATEMÁTICAS

INSTRUÇÃO SOMA

Permite somar valores na memória quando habilitado. Nesta instrução podem-se usar os
conteúdos de um contador, temporizador, byte da memória imagem, byte da memória de
dados.

65
Controlador Lógico Programável

E1 S1

SOMA
D1+D2=D3

Nesta instrução de programa, quando E1 for acionada, a soma do dado 1 com o dado 2 será
depositado no dado 3, portanto o conteúdo do dado 3 não deverá ter importância. Caso o
conteúdo do dado 3 seja importante, o mesmo deve ser movido para um outro endereço ou o
resultado da soma depositado em outro endereço.
Enquanto E1 estiver acionado o dado D1 será somado com D2 e depositado no dado D3 a
cada ciclo de varredura, portanto E1 deve ser acionado e desacionado rapidamente.
Abaixo temos cinco endereços da memória de dados do CLP.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 1 1 0 1 0
D2 0 0 0 0 1 1 1 1
D3 0 0 0 0 1 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução somar tenha sido acionada e que a soma será de D1 e D2 em D3.
D1 equivale em decimal a 26 e D2 a 15, a soma resultará 41 no D3.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 1 1 0 1 0
D2 0 0 0 0 1 1 1 1
D3 0 0 1 0 1 0 0 1
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

66
Controlador Lógico Programável

Observe que o conteúdo de D3 foi alterado, no momento em que a instrução soma for
desacionada, os dados de D1 e D2 permanecerão os mesmos.

ENTRADA

0
T
D1 = 00011010 D1 = 00011010
MEMÓRIA
D2 = 00001111 D2 = 00001111
DE
D3 = 00001000 D3 = 00101001
DADOS

A saída S1 será acionada quando a soma for concluída.


Caso o resultado da soma não ultrapasse o limite máximo ( overflow ), a saída S1 será
acionada. Em alguns casos o um bit, do byte de controle da instrução soma, assume valor
lógico “1”, determinando o estouro da capacidade. Através deste bit e possível de se
determinar quando a soma ultrapassou ou não o valor máximo.

67
Controlador Lógico Programável

INSTRUÇÃO SUBTRAÇÃO

Permite subtrair valores na memória quando habilitado. Nesta instrução podem-se usar os
conteúdo de um contador, temporizador, byte da memória imagem, byte da memória de dados.

E1 S1

SUBTRAÇÃO
D1-D2=D3

Nesta instrução de programa, quando E1 for acionada, a subtração do dado 1 com o dado 2
será depositado no dado 3, portanto o conteúdo do dado 3 não deverá ter importância. Caso o
conteúdo do dado 3 seja importante, o mesmo deve ser movido para um outro endereço ou o
resultado da soma depositado em outro endereço.

Enquanto E1 estiver acionado o dado D1 será subtraído do dado D2 e depositado no dado D3


a cada ciclo de varredura, portanto E1 deve ser acionado e desacionado rapidamente.

Abaixo vêm-se cinco endereços da memória de dados do CLP.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 1 1 0 1 0
D2 0 0 0 0 1 1 1 1
D3 0 0 0 0 0 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução subtração tenha sido acionada e que a subtração será de D1 menos
D2 em D3.
D1 equivale em decimal a 26 e D2 a 15, a subtração resultará 9 no D3.

68
Controlador Lógico Programável

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 1 1 0 1 0
D2 0 0 0 0 1 1 1 1
D3 0 0 0 0 1 0 0 1
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Observe que o conteúdo de D3 foi alterado, no momento em que a instrução soma for
desacionada, os dados de D1 e D2 permanecerão os mesmos.
1

ENTRADA

0
T
D1 = 00011010 D1 = 00011010
MEMÓRIA
D2 = 00001111 D2 = 00001111
DE
D3 = 00000000 D3 = 00001001
DADOS

Caso o resultado da subtração possua sinal negativo ( underflow ), a saída S1 será acionada.
Em alguns casos o um bit, do byte de controle da instrução subtração, assume valor lógico “1”.
Através deste bit e possível de se determinar quando a subtração resultou positivo ou negativo.

INSTRUÇÃO MULTIPLICAÇÃO

Permite multiplicar valores na memória se a condição for verdadeira.

E1 S1

MULTIPLICAÇÃO
D1 . D2 = D3

Observe os cinco endereços do mapa de memória apresentado.

69
Controlador Lógico Programável

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 1 1 0 1 0
D2 0 0 0 0 0 1 1 1
D3 0 0 0 0 0 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução multiplicação tenha sido acionada por E1 e que a multiplicação será
de D1 por D2 em D3.
D1 equivale em decimal a 26 e D2 a 7, a multiplicação resultará 182 no D3.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 0 1 1 0 1 0
D2 0 0 0 0 0 1 1 1
D3 1 0 1 1 0 1 1 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Quando a entrada E1 for acionada, a multiplicação do dado D1 pelo dado D2 será depositada
no conteúdo do dado D3.

INSTRUÇÃO DIVISÃO

Permite dividir valores na memória quando habilitado.

E1 S1

DIVISÃO
D1 / D2 = D3 , D4

Observe os cinco endereços do mapa de memória apresentado.

70
Controlador Lógico Programável

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 0 1 1 0 0 1 0
D2 0 0 0 0 0 1 0 0
D3 0 0 0 0 0 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução divisão tenha sido acionada por E1 e que a divisão será de D1 por D2
em D3, D4.
D1 equivale em decimal a 50 e D2 a 4, a divisão resultará 12,5 no D3, D4.

B7 B6 B5 B4 B3 B3 B2 B1
D1 0 0 1 1 0 0 1 0
D2 0 0 0 0 0 1 0 0
D3 0 0 0 0 1 1 0 0
D4 0 0 0 0 0 1 0 1
D5 1 0 0 0 0 1 1 1

Quando a entrada E1 for acionada, a divisão do dado D1 pelo dado D2 será depositada no
conteúdo do dado D3, D4.

INSTRUÇÕES LÓGICAS

Estas instruções destinam-se à comparação lógica entre bytes. São recursos disponíveis para
os programadores, podendo serem empregadas na análise de byte e diagnose de dados.

INSTRUÇÃO AND

Permite executar função AND com valores da memória quando habilitada .

71
Controlador Lógico Programável

E1 S1

AND
D1 . D2 = D3

Observe os cinco endereços do mapa de memória apresentado.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 1 0 1 1 0 1 0
D2 0 1 0 0 0 1 1 1
D3 0 0 0 0 0 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução AND tenha sido acionada por E1 e que a instrução será de D1 and
D2 em D3.

Observe a tabela verdade abaixo e verifique o resultado da analise AND entre os dois bytes D1
e D2.

E1 E2 SAÍDA
0 0 0
0 1 0
1 0 0
1 1 1
E1 e E2 são as entradas e SAÍDA é o resultado.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 1 0 1 1 0 1 0
D2 0 1 0 0 0 1 1 1
D3 0 1 0 0 0 0 1 0

72
Controlador Lógico Programável

D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Quando a entrada E1 for acionada, a instrução do dado D1 and dado D2 será depositada no
conteúdo do dado D3.

INSTRUÇÃO OR

Permite executar função OU com valores da memória quando habilitada analisar valores na
memória quando habilitada.

E1 S1

OR
D1 + D2 = D3

Observe os cinco endereços do mapa de memória apresentado.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 1 0 1 1 0 1 0
D2 0 1 0 0 0 1 1 1
D3 0 0 0 0 0 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução OR tenha sido acionada por E1 e que a instrução será de D1 or D2
em D3.
Observe a tabela verdade abaixo e verifique o resultado da analise OR entre os dois bytes D1
e D2.

E1 E2 SAÍDA

73
Controlador Lógico Programável

0 0 0
0 1 1
1 0 1
1 1 1

E1 e E2 são as entradas e SAÍDA é o resultado.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 1 0 1 1 0 1 0
D2 0 1 0 0 0 1 1 1
D3 0 1 0 1 1 1 1 1
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Quando a entrada E1 for acionada, a instrução do dado D1 or dado D2 será depositada no


conteúdo do dado D3.

INSTRUÇÃO XOR

Permite executar função ou exclusivo com valores da memória quando habilitada.

E1 S1

XOR
D1 + D2 = D3

Observe os cinco endereços do mapa de memória apresentado.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 1 0 1 1 0 1 0

74
Controlador Lógico Programável

D2 0 1 0 0 0 1 1 1
D3 0 0 0 0 0 0 0 0
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Supondo que a instrução XOR ( ou exclusivo ) tenha sido acionada por E1 e que a instrução
será de D1 xor D2 em D3.
Observe a tabela verdade abaixo e verifique o resultado da análise xor entre os dois bytes D1 e
D2.

E1 E2 SAÍDA
0 0 0
0 1 1
1 0 1
1 1 0

E1 e E2 são as entradas e SAÍDA é o resultado.

B7 B6 B5 B4 B3 B2 B1 B0
D1 0 1 0 1 1 0 1 0
D2 0 1 0 0 0 1 1 1
D3 0 0 0 1 1 1 0 1
D4 1 1 1 0 0 1 0 0
D5 1 0 0 0 0 1 1 1

Quando a entrada E1 for acionada, a instrução do dado D1 xor dado D2 será depositada no
conteúdo do dado D3.
Obviamente estas são apenas algumas instruções que a programação ladder dispões. Uma
série de outros recursos são disponíveis em função da capacidade do CLP em questão.
As instruções apresentadas servirão como base para o entendimento das instruções de
programação ladder de qualquer CLP, para tal conte e não dispense o auxílio do manual ou
help on-line quando disponível no software de programação.
A utilização do software de programação é uma questão de estudo e pesquisa, uma vez que o
layout de tela e comandos não são padronizados.

75
Controlador Lógico Programável

Sistemas de numeração

Nesta unidade, apresentaremos os sistemas de numeração que auxiliam o estudo das técnicas
digitais e sistemas de computação.

A partir do sistema decimal, estudaremos os sistemas binário e hexadecimal e o método de


conversão entre esses sistemas.

Para assimilar os conteúdos desta lição, é necessário que você conheça perfeitamente o
sistema decimal.

Sistemas de numeração

Dos sistemas de numeração existentes, os mais utilizados são o decimal, o binário e o


hexadecimal.

Sistema de numeração decimal


O sistema de numeração decimal utiliza dez algarismos para a sua codificação: 0, 1, 2, 3, 4, 5,
6, 7, 8, 9. Assim, a base desse sistema é dez.

Com esses dez algarismos, é possível representar qualquer grandeza numérica graças à
características do valor de posição. Desse modo, temos:
Números que representam as unidades: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
Números que representam as dezenas: 10, 11, 12, 13, 14, 15 ...; nos quais o número da
posição 1 indica uma dezena e o outro dígito, a unidade.
Números que representam as centenas: 110, 111, 112, 113, 114, 115, 116 ..., nos quais o
valor de posição 1 indica a centena, seguida pela dezena e pela unidade. Assim, por
exemplo, o número 385 indica:

76
Controlador Lógico Programável

Centenas dezenas unidades; ou seja:

3 8 5
3 . 100 8 . 10 5.1

300 + 80 + 5 = 385

O número 385 também pode ser expresso por meio de uma potência de base dez:

3 8 5

3 . 100 8 . 10 5.1

3 . 10 2 + 8 . 101 + 5 . 10 0

Observação
A potência da base 10 indica o valor da posição do número.

Sistema de numeração binário


O sistema de numeração binário é empregado em circuitos lógicos digitais. Esse sistema
possui apenas dois algarismos: 0 e 1. Por isso, sua base é dois (dois dígitos).

Cada dígito ou algarismo binário é chamado de bit (do inglês “binary digit”, ou seja dígito
binário). Um bit é, pois, a menor unidade de informação nos circuitos digitais.

A tabela a seguir mostra a correspondência entre números decimais e binários.

Decimal Binário Decimal Binário


0 0 10 1010
1 1 11 1011
2 10 12 1100
3 11 13 1101
4 100 14 1110

77
Controlador Lógico Programável

5 101 15 1111
6 110 16 10000
7 111 - -
8 1000 - -
9 1001 - -
Empregando a propriedade do valor de posição do dígito, podemos representar qualquer valor
numérico com os dígitos 0 e 1.

Como a base da numeração binária é 2, o valor de posição é dado pelas potências de base 2,
como mostra o quadro a seguir.

Potências de base 2 24 23 22 21 20
Valor de posição 16 8 4 2 1
Binário 1 0 0 1 1
O valor da posição é indicado pelo expoente da base do sistema numérico. Essa valor
aumenta da direita para a esquerda. O valor da posição do bit mais significativo (de maior
valor) será a base elevada a n-1 (n = número de dígitos).

Por exemplo, 101011 é um número binário de 6 bits. Ao aplicar a fórmula, temos 6 - 1 = 5.


Assim, o bit mais significativo terá como valor de posição 2 5 .

Binário 1 0 1 0 1 1
Valor de posição 25 24 23 22 21 20
MSB* LSB**

*MSB - do inglês “most significant bit”, ou seja, bit mais significativo.


**LSB - do inglês “least significant bit”, ou seja, bit menos significativo.

A base é o elemento diferenciador entre um número do sistema binário e um do sistema


decimal. Portanto, 101 por ser um número base 2, é lido um, zero, um. Já 101, por ser um
número de base 10, é ligado como cento e um.

Conversão de números do sistema binário para o decimal


Para converter um número binário em decimal, deve-se multiplicar cada bit pelo seu valor de
posição (que é indicado pala potência de base) e somar os resultados.

78
Controlador Lógico Programável

Exemplo
Na conversão de 10102 para o sistema decimal, procede-se da seguinte forma:

Potência de 2 23 22 21 20
Binário 1 0 1 0
Valor de posição 1.8 0.4 1.2 0.1
No. Decimal 8 + 0 + 2 + 0 = 1010
Portanto, 10102 = 1010

Observe a seguir uma tabela das potências de base 2.

Potência Decimal Potência Decimal


20 1 29 512
21 2 210 1024
2 11
2 4 2 2048
3 12
2 8 2 4096
24 16 213 8192
25 32 214 16384
6 15
2 64 2 32768
7 16
2 128 2 65768
28 256 217 1311072

Conversão de números do sistema decimal para o sistema binário - Método prático

A conversão de números do sistema decimal para o sistema binário é realizada efetuando-se


divisões sucessivas do número decimal por 2 (base do sistema binário).

Exemplo
29 2
09 14 2
0 7 2
1 3 2
1 1

79
Controlador Lógico Programável

O número binário é formado pelo quociente da ultima divisão e os restos das divisões
sucessivas da direita para a esquerda: 2910 = 111012.

Observação
Todo número decimal par, ao ser convertido para binário, termina em zero. Por outro lado, todo
o número decimal ímpar ao ser convertido para binário, termina em um.

Sistema de numeração hexadecimal

O sistema de numeração hexadecimal tem a base 16. Os dezesseis símbolos que constituem a
numeração hexadecimal são os seguintes algarismos e letras: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B,
C, D, E, F.
Este sistema é empregado em computação e em mapeamento de memórias de máquinas
digitais que utilizam palavras de 4, 8 ou 16 bits.

A tabela a seguir mostra a relação entre numeração decimal e a hexadecimal.

Decimal Hexa Decimal Hexa Decimal Hexa


0 0 11 B 22 16
1 1 12 C 23 17
2 2 13 D 24 18
3 3 14 E 25 19
4 4 15 F 26 1A
5 5 16 10 27 1B
6 6 17 11 28 1C
7 7 18 12 29 1D
8 8 19 13 30 1E
9 9 20 14 31 1F
10 10 21 15 32 20

Pela tabela, é possível observar que a contagem recomeça a cada 16 dígitos.

80
Controlador Lógico Programável

Os valores de posição da numeração hexadecimal serão as potências de base 16. Observe o


quadro a seguir.

Potências de base 16 163 162 161 160


Valores de posição 4096 256 16 1

Conversão de números do sistema hexadecimal para o sistema decimal


A conversão de um número hexadecimal é realizada de mesmo modo como nos sistemas já
estudados. Ou seja, multiplicando-se cada dígito hexadecimal por seu valor de posição e
somando-se os resultados.

Exemplo
Converter 1A816 em decimal.

Potências de 16 162 161 160


No. hexadecimal 1 A 8
Valor de posição 1 . 256 10 . 16 8.1
No. Decimal 256 + 160 + 8 = 42410

Portanto, 1A816 = 42410


Conversão de números de sistema decimal para o sistema hexadecimal
Para converter um número decimal em hexadecimal, executam-se divisões sucessivas do
número decimal por 16, que é a base do sistema hexadecimal. O número hexadecimal será
dado pelo último quociente e pelos restos das divisões.

Exemplo
12412 16
12 775 16
7 48 16
0 3

81
Controlador Lógico Programável

O último quociente e os restos das divisões resultarão no número hexadecimal. Contudo, em


número hexadecimal não existe o número 12. Na tabela já mostrada, vemos que a letra C em
hexadecimal eqüivale ao número 12 decimal. Portanto, pela conversão, obtivemos o número
307C. Portanto, 12412 = 307C.

Conversão de números do sistema hexadecimal para o sistema binário


A tabela a seguir mostra a correspondência entre o sistema hexadecimal e o binário.

Hexadecimal Binário Hexadecimal Binário


0 0000 8 1000
1 0001 9 1001
2 0010 A 1010
3 0011 B 1011
4 0100 C 1100
5 0101 D 1101
6 0110 E 1110
7 0111 F 1111

Pela tabela é possível observar que a cada código hexadecimal correspondem quatro dígitos
binários. Desse modo, para converter cada algarismo ou letra do número hexadecimal no
número binário correspondente. Esse número binário terá quatro dígitos.

Exemplo
Converter o número FACA16 para binário.
Dígitos hexadecimais F A C A
Dígitos binários 1111 1010 1100 1010

Portanto, FACA16 = 11111010110010102


Conversão de números do sistema binário para o hexadecimal

Para converter um número binário em hexadecimal, basta separar o número binário, da direita
para a esquerda, em grupos de quatro bits. Em seguida, converte-se cada grupo no algarismo
hexadecimal correspondente.

Observação

82
Controlador Lógico Programável

Se não for possível formar um grupo de 4 bits, completa-se o grupo com zeros, ou seja: 10011,
por exemplo, daria 00010011.

Exemplo
Converter 1010011012 para o sistema hexadecimal

Dígitos binários 0001 0100 1101


Hexadecimal 1 4 D

Na numeração hexadecimal não existe o número 13; em seu lugar usa-se a letra D. Portanto, o
resultado da conversão será: 1010011012 = 14D16.

Operações aritméticas do sistema binário

Para facilitar a compreensão de circuitos lógicos e aritméticos, tais como somadores e


subtratores é necessário estudar as operações aritméticas de adição, subtração e
multiplicação de números binários.

Adição
A operação de adição de números binários é idêntica à do sistema decimal. O sistema binário,
como já sabemos, possui apenas dois algarismos: 0 e 1. Para a realização da soma, existem
as seguintes condições
0+0=0
1+0=1
0+1=1
1 + 1 = 0 e vai 1 = 10 (um, zero)

Observação
Na condição 1 + 1 = 10 (um, zero) está exemplificada a regra de transporte na qual 1 é
transportado para a coluna seguinte, ou seja, “vai um”.

83
Controlador Lógico Programável

Por exemplo, a soma de 1102 + 1012, de acordo com essas regras é realizada do seguinte
modo:

1*
1 1 0
1 0 1
1 0 1 1

* Transporte ou vai-um.

Assim, 1102 + 1012 = 10112

Subtração
O processo de subtração binária é igual ao de subtração decimal. As regras da subtração
binária são:

0-0=0
1-1=0
1-0=1
0 - 1 = 1 e “empresta um”

Observação
Na condição 0 - 1 = 1 está exemplificada a regra de transporte na qual 1 é emprestado da
coluna seguinte.

Veja, por exemplo, a subtração de 1102 - 102:

1 1 02
1 02
1 0 02

Assim, 1102 - 102 = 1002

Veja, agora, um exemplo com “empresta um”:

84
Controlador Lógico Programável

transporte ou empréstimo de 1.

Assim, 1001012 - 10102 = 110112

Subtração pelo “complemento”- A subtração de números binários pode ser efetuada pela
soma do complemento. Esse método possui três variações:
Soma simples do complemento;
Soma do complemento de 1;
Soma do complemento de 2.

Subtração por soma simples do complemento - Para realizar a subtração por soma simples
do complemento, procede-se da seguinte forma:
- determina-se o complemento do minuendo (transformando o 1 em 0 e o 0 em 1);
- soma-se o subtraendo;
- determina-se o complemento do resultado.

Exemplo
Subtrair 01112 de 00102

1 0 0 0 (complemento de 0111)
0 0 1 0
1 0 1 0 0101 (complemento de 1010)

Portanto, o resultado é 01012.

Pode-se provar a exatidão desse resultado 0 1 1 12 710


comparando-se com o da subtração decimal: 0 0 1 02 22
0 1 0 12 52

Subtração por soma do complemento de 1 - Esse método de subtração segue a seguinte


seqüência:

85
Controlador Lógico Programável

- determina-se o complemento de 1 do subtraendo, transformado-se o 0 em 1 e o 1 em


0;
- efetua-se a soma do minuendo com o complemento de 1 do subtraendo;
- soma-se o vai-um ao bit menos significativo.

Exemplo
Subtrair 01012 de 11012.
1 1 0 12
1 0 0 12 Complemento de 1 de 0110
1 0 1 1 0

vai-um
Soma do vai-um ao resultado:

0 1 1 0
1
0 1 1 1

Portanto, 0111 é o resultado final.

Pode-se comprovar esse resultado, comparando-o com o obtido na subtração decimal.

1 1
1 1 0 12 1310
0 1 1 02 610
0 1 1 12 710

Observação
Se o subtraendo tiver menos dígitos do que o minuendo, deve-se completar com zeros as
posições que faltarem antes de completar o subtraendo. Por exemplo:

1 0 0 1 12 1 0 0 1 12 1 1 1
0 1 12 0 0 0 1 12 1 0 0 1 12
1 1 1 0 02
1 0 1 1 1 1

86
Controlador Lógico Programável

O resultado pode ser provado se comparado com o resultado da operação executada com
números decimais:

1 0 0 1 12 1910
0 1 12 310
1 0 0 0 02 1610

Subtração por soma do complemento de 2 - O método de subtração pela soma do


complemento de 2 segue a seguinte seqüência:
- determina-se o complemento de 1 do subtraendo;
- soma-se 1 ao subtraendo (complemento de 1) a fim de obter o complemento de 2;
- soma-se o minuendo com o complemento de 2 do subtraendo;
- ignora-se o vai-um do resultado da soma.

Exemplo
Efetuar a seguinte subtração: 11012 - 01102

1 0 0 1 complemento 1 do subtraendo
1
1 0 1 0 complemento de 2 do subtraendo

1 1 0 1 minuendo
1 0 1 0 complemento de 2 do subtraendo
1 0 1 1 1

Como o vai-um é ignorado, o resultado de 11012 - 01102 = 01112.

Multiplicação

A multiplicação de números binários é feita do mesmo modo como no sistema decimal, ou seja:
0.0=0
0.1=0

87
Controlador Lógico Programável

1.0=0
1.1=1

Exemplo
Multiplicar 110102 . 102

1 1 0 1 02 26
. 1 02 .2
0 0 0 0 0 5210
1 1 0 1 0
1 1 0 1 0 02

88
Controlador Lógico Programável

Família SIMATIC

SIMATIC
A família SIMATIC representa não somente uma linha de CLP‟s, e sim toda uma linha de
produtos de AUTOMAÇÃO TOTALMENTE INTEGRADA.

SIMATIC S7
Os Controladores Lógicos Programáveis da família SIMATIC S7 podem ser divididos em: Micro
PLC (S7-200), pequeno/médio porte (S7-300) e médio/grande porte
(S7-400).

SIMATIC M7

89
Controlador Lógico Programável

O CLP M7 é um computador PC-AT compatível, com o mesmo desempenho, a mesma


funcionalidade e o ambiente de programação de um microcomputador.
SIMATIC C7
Este é um sistema completo, é a combinação do CLP ( S7-300) e um painel de operação (HMI
Operator Interface) em uma única unidade.

Software
O SIMATIC Software é um projeto modular. Ele consiste do Software Básico STEP 7 e
Pacotes Opcionais, instalados a parte. Os Pacotes Opcionais podem ser linguagens de
programação adicionais tais como S7-GRAPH, SCL, CFC, SFC e pacotes para diagnósticos,
simulações, documentação e Teleservice.

Terminais de Programação
São PC‟s AT compatíveis com todas as interfaces necessárias e softwares básicos de
programação pré-instalados. Disponíveis desde laptop até desktop.

Redes de Comunicação
As redesAS-I, Profibus e Industrial Ethernet estão disponíveis para troca de dados entre
sistemas de PLC‟s.

I/O Distribuídos
Para economizar em cabos, existe a possibilidade da utilização de I/O‟s remotos em um projeto
distribuído. Uma configuração distribuída, no que se refere à sua parametrização/programação,
não difere de um configuração central.

Interface Homem-Máquina
Para comunicação Homem-Máquina, existe a Interface de Operação SIMATIC
HMI. Estas interfaces são totalmente integráveis à toda família SIMATIC.

90
Controlador Lógico Programável

S7-300

S7- 300

O S7-300 é o pequeno e totalmente modular CLP da família SIMATIC S7.

Características
- Diversas CPU‟s com diferentes capacidades.
- Extensivo espectro de módulos.
- Pode ser expandido em até 32 módulos.
- Módulos integrados em barramento backplane
- Pode ser ligado em rede com interface multi-point (MPI), PROFIBUS e Industrial Ethernet.
- Conexão central com PC acessa todos os módulos (FM e CP).
- Sem regras para alocação das placas.
- Configuração e parametrização via software STEP 7.

MPI
A Multi-Point Interface, MPI tem como objetivo conectar o CLP ao terminal de programação ou
à interface de operação, ou ainda a outros controladores lógicos programáveis (PLC‟s). Na
unidade central de processamento (CPU), existe somente uma interface MPI, porém é possível
acessar através dela todos os outros módulos programáveis, tais com FM‟s.

91
Controlador Lógico Programável

Possibilidades de Conexão
Vários dispositivos podem estabelecer simultaneamente conexão de dados com a CPU. Isto
significa que o terminal de programação e o painel de operação podem ser operados
simultaneamente, e ainda outros PLC‟s adicionais podem ser conectados. As quantidades de
conexões que podem ser operadas simultaneamente dependem da CPU. Exemplo: são
possíveis quatro conexões de comunicação ativa por nó para a CPU 314.

Características da MPI
A interface MPI suporta displays, painéis de operação e terminais de programação Siemens. A
MPI oferece as seguintes possibilidades:
- Programação de CPU‟s e módulos inteligente
- Funções de monitoração do sistema e funções de informações
- Troca de dados entre controladores lógicos programáveis
- Troca de programas entre CPU e terminal de programação

Dados Técnicos da MPI


As mais importantes características da interface MPI são:
- Padrão RS 485 e taxa de transmissão de 187.5 Kbaud

92
Controlador Lógico Programável

- Distâncias até 50 m ou até 9100 m com repetidores


- Componentes padrões do PROFIBUS DP (cabo , conector, e repetidor)
Redes

Redes

A figura acima exibe as várias possibilidades de rede para a comunicação entre produtos já
existentes e a família S7. Os termos usados no slide são explicados a seguir:

S5/TI
Controladores lógicos programáveis SIMATIC S5 e SIMATIC TI

SIMATIC HMI
Equipamentos de Interface Homem Máquina

TISTAR
SCADA = (Supervisory Control and Data Acquisition ) controle de interface de operação do
sistema

PG/PC
Terminais de programação (Siemens PG) ou Computadores Pessoais

93
Controlador Lógico Programável

Ind. Ethernet
Rede Industrial da Siemens

TD/OP
Text Display e Operator Panel

PPI
Interface Point-to-Point

MPI
Interface Multipoint

Field Devices
Hardware para ent./output (por exemplo, chaves, bombas, e motores)

PROFIBUS DP
Rede de controle distribuído fieldbus da Siemens

94
Controlador Lógico Programável

95
Controlador Lógico Programável

Instalando o STEP 7

STEP7 Micro:
Este é o software para elaboração de programas exclusivamente para o S7-200. Possui duas
versões: MICRO/DOS e MICRO/Win, que rodam nos sistemas DOS e Windows 3.x
respectivamente.

STEP 7
O STEP 7 é a ferramenta de automação da família SIMATIC S7 (exceção do S7-200). Através
dela se configura e parametriza-se todo o hardware, edita-se o programa, testa-o, faz-se o
comissionamento e a procura de defeitos, além de toda a documentação necessária. Com o
auxílio de pacotes opcionais pode-se ainda configurar redes locais, utilizar linguagens de alto-
nível ou orientada à tecnologia, utilizar Teleservice, etc.

96
Controlador Lógico Programável

STEP7 Mini
O STEP 7 é um sub-set do pacote STEP 7, ideal para se iniciar na automação com aplicações
stand-alone do S7-300. Em relação ao pacote normal não permite a configuração do S7-400,
de global-data (troca de dados) e nem o uso de pacotes opcionais.

Options:
São pacotes opcionais para S7 e M7 para geração de programas em outras linguagens,
configuração de rede, etc. Estes pacotes permitem por exemplo a escolha da linguagem de
programação mais fácil ou apropriada a cada aplicação:
SCL - Linguagem de alto-nível, baseada em Pascal. Ideal para organização e manutenção
de grande quantidade de dados, cálculos e algoritmos complexos.
GRAPH - Linguagem para processos seqüenciais, baseados em estado e transição. Em vez de
se programar um sistema, faz-se a descrição de seus passos.
HiGraph - Linguagem para descrição de estados (não necessariamente seqüenciais). A partir
de um diagrama de estados faz-se a descrição do processo.
CFC - Programação orientada tecnologicamente, onde se desenvolve graficamente todo o
processo.

Pré-requisitos para Instalação do STEP 7

PC-Compatíveis que atendam os pré-requisitos acima, podem ser utilizados sem restrições.
Para a comunicação com o CLP é necessário uma interface MPI (cartão MPI-ISA ou PCMCIA)
ou um cabo de conversão PC/MPI (para ser ligado à interface serial).

97
Controlador Lógico Programável

F-EPROM
Para a gravação de F-EPROM é necessário um gravador de EPROM externo (os PG‟s
Siemens já o possuem). A partir da nova versão do STEP 7 e das novas versões de CPU, as F-
EPROM poderão ser gravadas diretamente na CPU.

Observação
Um upgrade de um versão antiga dos PG Siemens não é uma solução economicamente viável.
PG‟s e PC‟s usando um processador 80386 são extremamente lentos.

Instalação do STEP 7

Como todo o aplicativo W95, o software deverá ser instalado via a função “Adicionar/Remover
Programas” do W95, que executará o programa SETUP do
STEP 7.

98
Controlador Lógico Programável

Instalando Drivers
Durante a instalação do STEP 7, deve-se integrar drivers para a comunicação com o CLP
(cabo ou cartão) e para F-EPROM‟s. Pode-se também mudar as definições padrões de
interrupção e endereços se necessários .

As seguintes opções podem ser setadas durante a instalação do STEP 7:


- Escopo da instalação (normal, mínima, definida pelo usuário)
- Língua
- Definições de interface PG/PC
- Opções de EPROM

Proteção de Software
O software STEP 7 é provido com uma proteção contra cópia e pode ser operada em somente
um terminal de programação por vez. O software não pode ser usado até ser autorizado pelo
disquete de autorização. Este disquete transfere uma autorização para o hard disk depois que
a instalação do software foi concluída.

99
Controlador Lógico Programável

Autorização

Antes de utilizar o software em outro terminal de programação é necessário executar a


transferência de autorização.

Por favor o leia o conteúdo do arquivo README.TXT no disco de autorização. Sem seguir
estas informações existe risco que a autorização seja irrecuperavelmente perdida.

Leia também o folheto Product Information que acompanha o software.

A Ferramenta STEP 7

Memory Card Parameter Assignment

100
Controlador Lógico Programável

Define os parâmetros para a programação de cartões de memória.

Setting the PG-PC Interface


Define os parâmetros da interface de comunicação PG-PC (ex.: o tipo de interface, cabo ou
placa, a interrupção de comunicação ou endereço MPI).

Readme (Product Information)


Fornece informações detalhadas sobre o STEP 7: versão, procedimento de instalação, etc.

Converting S5 Files
Com o auxílio do conversor S5/S7, pode-se converter programas STEP 5 em programas
STEP 7.

Program. S7 Blocks
O Editor de Programas habilita você a escrever o seu programa com uma das linguagens de
programação STEP 7: Ladder Diagram (LAD), Statement List (STL) ou Function Blocks (FBD)

SIMATIC Manager
Esta é a principal aplicação, que também aparece como um ícone no DESKTOP do WINDOWS
95. Através dela é que se inicia a execução do projeto: configuração, edição, testes, etc.
É chamada de Manager, pois terá a função de gerenciar todo o projeto.

101
Controlador Lógico Programável

Selecionando
1. Ative o comando de menu Options --> Customize
2. Selecione a pasta de Linguagem
3. Selecione a linguagem desejada:
- SIMATIC = alemão;
- IEC = Internacional (inglês)

Importante
Existem duas seleções independentes:
- Língua do Editor -> seleciona o idioma da ferramenta STEP 7
(inglês/alemão/espanhol/italiano/francês)
- Língua dos Mnemônicos -> seleciona o idioma em que o programa do usuário será escrito
(inglês/alemão)

Exercício 2.1: Checando a Interface com a CPU

102
Controlador Lógico Programável

Meta
Checar a parametrização correta da interface da PG.

Procedimento
- Clique na barra de tarefas Iniciar
- Selecionar SIMATIC ==> STEP 7 ==> Setting the PG/PC Interface
- Depois de você ter selecionado “Cartão PC/MPI” clique no botão “Properties”
- Checar se o endereço local da PG está setado para 0.

Exercício 2.2: Definindo os Mnemônicos

103
Controlador Lógico Programável

Mnemônicos
Antes de editar um programa, é necessário escolher entre 2 opções de mnemônicos para
exibição das instruções no editor de programa.

Pode-se escolher entre IEC (Internacional/Inglês) ou SIMATIC (Alemão).

Meta
Selecionar os mnemônicos desejados.

Procedimento
1. Inicie o SIMATIC Manager.
2. Selecione no menu de comandos Options Customize.
3. Escolha a Language.
4. Escolha a linguagem mnemônicos desejada e confirme com “OK”
Resultado
Quando programando, um dos seguintes modos será exibido:
- Exemplo de instruções STL em linguagem Internacional:
A I 1.0 //AND Entrada (Input) 1.0

104
Controlador Lógico Programável

- Exemplo de instruções STL em linguagem SIMATIC:


U E 1.0 //UND Entrada (Eingang) 1.0

105
Controlador Lógico Programável

Introdução ao Hardware S7

S7-200 – Dados Técnicos

Dimensões
CPU212 CPU214 CPU215 CPU216
160x80x62 mm 197x80x62 mm 218x80x62mm 218x80x62mm

Memória:
de Trabalho (RAM) 1 KByte 4 KByte 8KByte 8KByte
de Instruções 185 instruções 2K 4k 4k

Registradores de Dados

106
Controlador Lógico Programável

0.5k words 2k words 2.5k words 5k words

I/O on-board
8 DI / 6 DO 14 DI / 10 DO 14 DI / 10 DO 24 DI / 16 DO

Capacidade de Expansão
2 módulos de -------------------- 7 Módulos de --------------------
expansão expansão

Interrupções
1 ent. inter., 1 contad. 4 ent. inter., 3 contad. 4 ent. inter., 3 contad.--------------
--
Interrup. (2 kHz) interrup. (2x 7 kHz; 1x 2 interrup. (2x 20 kHz; 1x 2 kHz)---
kHz) --

Contadores/Temporizadores
64/64 128/128 128/256 256/256

Tempo de Execução(por 1K/instruções)


1.2 ms 0.8 ms 0.8 ms 0.8ms

Comunicação
1x PPI / Freeport 1x PPI/ Freeport / 1x PPI 1x PPI /Freeport
MPI
1x Profibus 1x PPI

Manutenção
------------------------- Livre de Manutenção, não necessita de -------------------------
bateria

Set de operações:
Básicas, standard, operações especiais, PID integrado , receive +PID, funções de receive,
funções aritiméticas (operações em ponto fixo e ponto flutuante), funções de jump, funções de
loop, funções de conversão de código.

107
Controlador Lógico Programável

Modelos
Cada CPU por sua vez possue diferentes modelos para as diferentes tensão dos I/O‟s.

S7-300 – Endereçamento de Módulos/Slot

No S7-300 o endereçamento dos módulos de I/O, CP e FM são slot-orientados, isto é, o seu


endereço depende da posição do módulo no trilho. Alguns slots são reservados: PS, CPU e IM.

Slot 1:
PS - Fonte de alimentação. Obrigatoriamente no primeiro slot. Não é associado nenhum
endereço para a fonte de alimentação.

Slot 2:
CPU; deverá estar localizada próxima a fonte de alimentação. Não é associado nenhum
endereço para a CPU (veremos mais tarde endereço MPI).

Slot 3:

108
Controlador Lógico Programável

Módulo de interface (IM). Para conectar racks de expansão. Não é associado nenhum
endereço para a IM. Até mesmo se a IM não estiver presente, ela deverá ser considerada no
esquema de endereçamento do slot. O slot 3 é logicamente reservado pela CPU para a IM.

Slots 4 - 11:
Módulos de sinais. Slot 4 é considerado o primeiro slot para módulos de entrada e saída (ou
CP ou FM). Um exemplo de endereçamento é exibido abaixo para um cartão de digital (entrada
= I, saída = Q):

Importante
A CPU 315-2DP permite que os endereços sejam livremente definidos.

Endereçamento Digital

109
Controlador Lógico Programável

O endereçamento das entradas (I) e saídas (Q) digitais começa com o endereço 0 para o
módulo de sinal localizado no slot 4 (1° slot para SM). A relação entre o slot físico e o endereço
do módulo é exibida acima. Cada módulo digital ocupa 4 bytes de endereços independente do
número de pontos.

Tabela Imagem da Periferia


Aos sinais digitais do CLP corresponde uma área na CPU que contém o estado atual das
entradas e saídas. Esta área, denominada Tabela Imagem da Periferia de Entrada (PII) e de
Saída (PIQ) são atualizadas automaticamente pela CPU a cada início e fim de ciclo
respectivamente. Pode-se acessar estas áreas (I e Q) em bits, bytes, words ou double words,
como mostrado nos exemplos a seguir:
- Q4.0 é um dado que é arquivado no primeiro bit (bit 0) do byte 4 na tabela imagem da
periferia de saída (usando a numeração padrão das I/O do diagrama acima, isto
corresponde ao primeiro ponto no módulo 2)
- QB100 refere-se ao dado no byte 100 da tabela imagem da periferia de saída.
- IW100 refere-se ao dado que é arquivado nos bytes 100 e 101 da tabela imagem da
periferia de entrada.
- QD24 refere-se ao dado que é arquivado nos bytes 24, 25, 26, 27 da tabela imagem da
periferia de saída.

110
Controlador Lógico Programável

Endereçamento Digital do S7-400


O S7-400 permite a definição pelo usuário do endereçamento dos módulos. Caso não seja
definido pelo usuário, o CLP assume um endereçamento default para os módulos, cada módulo
ocupando 4 bytes (32 bits). O endereçamento digital segue o seguinte padrão:
- Inicio Endereçamento Digital = ( número do slot físico - 1) x 4
- Exemplo : Endereço inicial do módulo digital no slot 4 é 12.0

Endereçamento Analógico

O endereçamento das entradas e saídas analógicas começa no endereço 256 para o módulo
de sinal localizado no slot 4 (1o slot para SM). A figura acima mostra o esquema de
endereçamento dos módulos analógicos. Cada módulo analógico ocupa 16 bytes de
endereços, independente do tipo de módulo, sendo que cada canal analógico ocupa dois bytes
de dados.

Acesso aos Sinais Analógicos

111
Controlador Lógico Programável

As I/O analógicas acessam uma área de memória denominada Periferia (PI e PQ) da CPU. Os
sinais analógicos, ao contrário dos sinais digitais, não possuem uma tabela imagem (PII ou
PIQ), atualizados a cada ciclo. Ao invés disto, você define quando os dados serão atualizados
(lidos/escritos) usando simplesmente o endereço analógico no seu programa. O endereço
identificador para uma entrada analógica é PIW e para saída analógica é PQW.

No S7-300 o endereçamento para sinais analógicos começa com 256, sendo portanto que o
primeiro canal no primeiro módulo no primeiro rack irá então ser PIW256. O último endereço
analógico é 766 (para o S7-300).

Exemplo:
Para acessar os dados do segundo canal no primeiro módulo no rack 2, o endereço da entrada
analógica e PIW514.

Endereçamento Analógico no S7-400


O S7-400 também suporta opcionalmente endereçamento padrão para módulos analógicos. O
endereçamento analógico default segue o seguinte padrão:
- Endereço Inicial Analógico = (número do slot físico - 1) x 64 + 512
- Exemplo: Endereço inicial de um módulo analógico no slot 4 é 704.

112
Controlador Lógico Programável

Dados Técnicos
A família S7-300 suporta um set de instruções e endereçamento comuns. A figura mostra as
especificações técnicas mais importantes para as CPU‟s 312 a 315.
Números de Blocos

Diferenças nas quantidade de números de blocos (FB, FC, DB).


- CPU 312 CPU 315
- 32 FB 192 FB
- 32FC 192 FC
- 63 DB 255 DB

FB Blocos de Funções
FC Funções
DB Blocos de Dados

CPU 3xx IFM


As CPU‟s IFM são caracterizadas não somente por possuírem entradas/saídas integradas na
CPU (on-board) como também funções especiais incorporadas.

113
Controlador Lógico Programável

Trilhos (1)
Para as CPU‟s 312/313, é possível a montagem em somente um trilho (sem expansão)

Trilhos (2)
As CPU‟s 314 a 318 suportam até quatro trilhos ( 3 trilhos de expansão).

Conexão DP
Os S7‟s 315-2 DP / 318-2 DP possuem uma interface adicional para PROFIBUS DP (Periferia
Distribuída) e permitem a livre escolha do endereçamento dos módulos de I/O.

S7-300 – Elementos da CPU

Modo de Operação
Chave para seleção manual do modo de operação da CPU
- MRES = Reset da memória (overall reset)
- STOP= o programa não é executado.
- RUN = O programa é processado porém o programa não pode ser alterado pelo Terminal
de Programação (só lido).
- RUN-P = A CPU está processando o programa, e o Terminal de programação pode
acessar/alterar o programa e o modo de operação (não existe trava).

114
Controlador Lógico Programável

Status da CPU (LEDS)


SF = erro interno na CPU ou erro de diagnóstico nos módulos.
BATF = sem bateria ou carga baixa .
DC5V = fonte +5V
- acesa : indica tensão DC Ok
- piscando: sobrecarga.
FRCE = indica que pelo menos uma entrada ou saída está forçada (consulte
versão de CPU)
RUN = piscando durante a inicialização da CPU, acesa quando a CPU está em modo RUN
(processando o programa).
STOP = pisca se um reset da memória é necessário, acesa indica que a CPU está no modo
STOP (programa não está sendo executado).

Encaixe do Módulo de Memória


O módulo de memória (memory card) é inserido neste local. O módulo é utilizado para arquivar
o programa como segurança para o caso de falta de alimentação e ausência da bateria

Encaixe da Bateria
Existe um local para bateria de lithium abaixo da tampa. A bateria salva o conteúdo da
memória RAM no caso de uma falha na alimentação da CPU.

Interface MPI
O conector de 9-pinos sob a tampa é a conexão da multipoint interface (MPI). Esta é a porta
de programação da CPU do S7-300, e pode ser utilizada para a conexão de OP‟s, PC‟s e
outros CLP‟s.

115
Controlador Lógico Programável

I Entrada
Q Saída
B Byte (8 bits)
W Word (16 bits)
D Double word (32 bits)
M Memória (flag)
P Periferia (acesso direto- PIW/PQW)
T Temporizadores
C Contadores
DB Data block
DI Data Block (usado em Bloco de Dados Instance)

Importante
Verifique os dados técnicos da CPU utilizada para verificar sua capacidade de endereçamento.

116
Controlador Lógico Programável

Demonstração: Monitorando e Verificando Variáveis

Esta é uma demonstração para auxiliar você a entender como endereçar I/Q no S7-300.

Através da ferramenta SIMATIC Manager, o instrutor irá mostrar a relação entre


endereçamento lógico e endereçamento físico.

A tabela de entradas e saídas no rack é criada com auxílio de “Modify and Monitor Status
Variables”. A tabela é então ativada.

117
Controlador Lógico Programável

Exercício 3.1: Resetando a Memória da CPU

Meta
Apagar todos os blocos da CPU através de um reset geral.

Procedimentos
Siga os passos da figura acima.

Acontecimentos Durante um Reset da Memória da CPU


Quando é executado um reset na CPU, ocorre o seguinte:
- Deleção dos dados na memória de trabalho e memória de carga.
- Deleção do back-up da memória (áreas retentivas).
- Teste de Hardware.
- Inicialização do hardware e transferência dos parâmetros básicos para CPU.
- Cópia do programa do cartão de memória para a memória interna da CPU, se o cartão de
memória estiver plugado.

Endereço MPI

118
Controlador Lógico Programável

Se não estiver plugado o cartão de memória, os endereços MPI setados serão retidos durante
o reset da CPU. Se o cartão de memória estiver plugado, os endereços arquivados no cartão
serão transferidos.

Buffer de Memória
O conteúdo do buffer de diagnóstico fica retido quando é feito um reset na CPU.

Reset da Memória via PG/PC


É possível também resetar a CPU via o Terminal de Programação. Gire a chave para a
posição RUN/P, e proceda da seguinte forma:
- Inicie o SIMATIC Manager.
- Selecione a função Acessible Nodes.
- Selecione a CPU.
- Comando de menu PLC Operating Mode. Use o símbolo STOP para passar para
STOP
- Selecione no menu de comando PLC Memory Reset.

119
Controlador Lógico Programável

O Software STEP 7

Iniciando o STEP 7

No ícone SIMATIC Manager que aparece no Windows 95 ou no menu Start (Iniciar), acima do
grupo “Programs”. Como em todas aplicações WINDOWS 95, o programa é ativado com um
double-click no símbolo SIMATIC Manager ou via menu
Start SIMATIC STEP 7 SIMATIC Manager

120
Controlador Lógico Programável

Menu e Barra de Ferramentas do Editor de Programas

Janela do STEP 7
Barra de título:
- contém o título da aplicação e da ferramenta ativada na janela
Barra de menu:
- contém todos os menus disponíveis para a janela corrente.
Barra de ferramentas:
- contém funções e ícones de uso freqüente do menu de comandos.
Área de trabalho:
- área na qual você digita ou seleciona programa/informações.
Barra de Status:
- Exibe o status e informações adicionais sobre os dados selecionados.

Barra de ferramentas e de menu


File:
- abre, cria, salva, e imprime arquivos ou blocos
Edit:
- corta, copia, apaga, cola, seleciona itens.

121
Controlador Lógico Programável

View:
- muda a visualização da tela.
Options:
- seta várias telas ou opções da aplicação.
Window:
- seleciona o organiza as janelas; sobrepondo, lado a lado, tamanho da janela ou fechar
janela.
Help:
- acesso ao help on-line e Tutorial.

Usando o Help do STEP 7

Sistema
Cada parte do STEP 7 possui um sistema de help (ajuda) completo. O sistema consiste de:
- Help - Menu

O menu é uma tabela de conteúdos e dicionário de palavras que conduz a vários


tópicos de ajuda. O glossário fornece definições para os termos usados.

122
Controlador Lógico Programável

- Help - Botões de comando

Os botões de comando são localizados em vários campos de diálogo. O conteúdo


relacionado ao help é exibido em vários campos de diálogo.

Palavras de Comandos
Certas palavras são especialmente marcadas no texto do help. Quando você clicar nestas
palavras, um help adicional com uma definição detalhada do termo é exibido.

F1
O sistema de help pode ser chamado a qualquer momento com a tecla F1 (help sensível ao
contexto).

Pesquisa
É possível procurar uma informação específica sobre um termo usando a função Pesquisa
(Search).

Imprimir
Pode-se imprimir (Print) uma cópia do tópico selecionado.

Notas
O usuário pode inserir seus próprios comentários no help. Estes comentários são identificados
no texto de help pelo “paper tips”(dicas) (Edit Comment).

Marcas
Uma vez encontrado o texto específico do help, você pode marcar a localização setando como
uma marca. Para definir uma marca para futura referência, selecione Bookmark Define.

Navegação
Botões de controle << e >> facilitam o avanço ou o retorno para outros tópicos do help.

123
Controlador Lógico Programável

Estrutura de Projeto no SIMATIC Manager

Projeto
A estrutura do projeto de automação se inicia pelo ícone de projeto, localizado no primeiro
nível. O ícone é identificado pelo nome do projeto.

Estação de HW
Para definir e parametrizar o hardware deve-se criar a estação de hardware(S7-300/ S7-400). A
estação criada (S7-x00 Station) pode ter seu nome alterado pelo usuário, e seus módulos são
definidos através da ferramenta Station Configuration. Ao se definir os módulos, o sistema
automaticamente cria os sub-diretórios respctivos (CPU, Programa, Blocks, etc.)

Programas S7/M7
O programa de usuário referente à um CLP propriamente dito, é localizado sob o diretório S7-
Programs. Este diretório pode estar ou não associado à uma estação específica criada.
Associada à um HW, o diretório se encontra subordinado `a CPU. Caso contrário fica
subordinado diretamente ao Projeto.

124
Controlador Lógico Programável

Nos sub-diretórios Source e Blocks estão localizados os programas do usuário, em arquivos


fontes ou em blocos S7 respectivamente.

Programa S7
(S7-Programms)

Blocos de Programa
(blocks)
Blocos S7 OBs, FBs, FCs, etc.

Arquivos fonte
(source files) Arquivos fonte:
STL, SCL, GRAPH, HiGraph,
Diagramas
(CFC) Diagrama CFC
Diagrama SFC
Tabela de símbolos
(Symbol)

Objetos do STEP 7

Objetos

125
Controlador Lógico Programável

Como uma linguagem moderna, o STEP 7 não poderia deixar de abusar de objetos para tornar
o uso do software intuitivo e user-friendly. Assim uma série de objetos representam as
diferentes ferramentas, arquivos e funções disponíveis.

Estrutura
A estrutura do projeto já explicada anteriormente, mostra que o projeto é hierarquizado, tendo-
se acesso aos diferentes objetos conforme se avança na estrutura (subordinado a ....).

Programas S7 online e offline


As pastas de programa de usuário (S7-Programs) diferem entre si nos modos online e offline.
No modo online está se acessando diretamente o programa na CPU, portanto só se encontram
lá os blocos realmente relevantes para o funcionamento do CLP. Assim, objetos como Tabela
de Simbólicos e Arquivos fontes só são encontrados no modo off-line.

Outros Objetos
Além dos objetos listados acima existem outros que representam outras funções. Alguns
destes objetos são encontrados somente se instalados outros pacotes opcionais:

Arquivos Fontes - Subordinado a Source Files

Parametrização da Rede (MPI, Profibus, etc.) - Subordinado ao Projeto

Estações externas para configuração de comunicação - Subordinado ao Projeto

Tela de OP - Subordinado ao Projeto - Opcional PROTOOL

Pasta de Diagramas CFC - Subordinado a Programa S7 - Opcional CFC

126
Controlador Lógico Programável

Blocos do STEP 7

Blocos
Blocos são partes funcionais do programa do usuário. Eles diferem em função, uso e
estruturas. Blocos representam o código executável do programa.

O ambiente STEP 7 suporta os seguintes tipos de blocos:


Blocos lógicos:

127
Controlador Lógico Programável

- OBs - Blocos de organização


- FCs - funções
- FBs - blocos de funções
- SFCs - Funções de sistema
- SFBs - blocos de função de sistema

Blocos de dados:
- DBs - Blocos de dados
- SDBs - Blocos de dados de sistema

Tipos de dados definidos pelo usuário:


UDTs

VAT
VAT (Tabela para monitoração/modificação de variáveis) não são blocos, mas são arquivadas
no programa do usuário.

Navegando no STEP 7

128
Controlador Lógico Programável

A navegação dentro do STEP 7 é muito parecida com a navegação do


Windows Explorer . É possível inclusive abrir vários projetos, ou visualizar offline e online ao
mesmo tempo, como mostrado na figura acima. Para obter isto utilize Window Arrange.

Na Janela Direita
A janela exibe um projeto no modo offline, com toda a estrutura já vista anteriormente.

Na Janela Esquerda
Esta janela exibe o conteúdo da CPU, acessada pela função Acessible Nodes. Na janela estão
listados todos os blocos contidos na CPU (FC, OB, SFC, etc)

Wizard
Wizard é um assistente que auxilia a criação do projeto. Para iniciá-lo utilize a opção File
New Project Wizard.

129
Controlador Lógico Programável

Passos
O Wizard vai auxiliando nos passos necessários para a criação do projeto. Tipo de CPU, blocos
OB a serem criados e nome do projeto. O usuário tem ainda a opção de criar os blocos OB‟s no
modo texto. Como se nota, o Wizard cria sempre um projeto com estação de hardware e
programa.

Programa do Usuário
Ao usuário cabe apenas a criação do seu programa. O Hardware criado contém somente a
CPU, devendo-se complementar o hardware e parametrizá-lo se necessário.

Exercício 4.1: Criando um Projeto

O projeto contém todos os programas e dados para as tarefas do controlador lógico


programável. Este projeto pode conter um ou vários programas que são usados em uma ou

130
Controlador Lógico Programável

várias CPU‟s. Um projeto é uma estrutura localizado no diretório raiz do seu dispositivo de
programação.

Metas
Apagando e criando um projeto.

Procedimentos
1. inicie o SIMATIC Manager.
2. Selecione no menu de comando File Delete Project.
3. Selecione “PRO1” 1) na lista de projetos e confirme com “OK”.
4. Depois do projeto apagado, selecione no menu de comando
File New Project.
3. Digite o nome do projeto "PRO1"no campo indicado.
4. Confirme com “OK”.

Resultado
Quando você selecionar o projeto no SIMATIC Manager , o nome do seu projeto será exibido
próximo ao símbolo de projeto. Projetos no SIMATIC Manager tem o seguinte símbolo:

1) Deletar o programa “PRO1” somente se existente.

Exercício 4.2: Criando um Programa S7

131
Controlador Lógico Programável

Um programa S7 é uma combinação de blocos de programas, bloco de dados, comentários e


símbolos que são ligados a uma aplicação. Criando este programa, está-se criando uma
estrutura na qual todos estes componentes de programa são combinados.

Metas
Criar um novo programa S7.

Procedimentos
1. Inicie o SIMATIC Manager.
2. Clique no projeto PRO1.
3. Selecione no menu de comando Insert => Program => S7 Program (ou use o botão da
direita do mouse como descrito acima).
4. Um novo programa S7 com o nome "S7 Program 1" é criado.
5. Selecionar o programa com o botão da esquerda do mouse e então com o botão da
esquerda clique em "S7 Program 1" novamente.
6. Especifique o nome como PROGA .
7. Nesta pasta você pode encontrar o programa atual com o nome dos blocos (programa do
usuário), Source (programas fonte) e a pasta de simbólicos com a lista de símbolos.
8. Confirme com “OK”.

132
Controlador Lógico Programável

Resultado
Um novo programa S7 é criado com o projeto PRO1. O programa S7, programa do usuário, é
automaticamente criado nesta pasta.

Usando o SIMATIC Manager você pode ver o subdiretório PROG1. Um bloco OB1 vazio é
automaticamente criado no programa do usuário.

133
Controlador Lógico Programável

Configurando e
parametrizando o S7

Introdução

Configuração de H/W
Com esta ferramenta, é possível:
- definir os módulos utilizados (CPU, I/O, FM) e a sua parametrização. Ex.: tipo de medição
do módulo analógico de entrada.
- ler a configuração da CPU. Ex. designação dos módulos no rack
- ler diagnóstico de dados referentes a módulos (system diagnostics)

134
Controlador Lógico Programável

A janela on-line (diagnóstico de hardware) mostra a configuração da estação que está


acessível on-line. Informações de status ou estado de operação de cada módulo são
mostradas no relatório simbólico do módulo (=system diagnostics)

A tecla F5 atualiza a exibição. Para obter mais informações, dar um double-click no símbolo.

A ferramenta é iniciada, por exemplo, pela seleção de uma estação de hardware no SIMATIC
Manager ou via comando de menu Edit Open Object

Configurando
O usuário especifica a posição dos módulos no rack e os endereços são definidos
automaticamente ( nas CPU315-2 e do S7-400 o usuário pode alterar os endereços). À esta
configuração denominaremos configuração parametrizada.

Durante o start-up, a CPU checa a distribuição dos módulos existente, que é denominada
configuração real.

No caso do S7-400, é possível comparar a configuração real com a configuração


parametrizada. Existindo divergências, o start-up pode ser abortado, se desejado pelo usuário.

Setando Parâmetros
Ao invés de setar chaves nos módulos, todos os parâmetros são definidos via software. Pode-
se definir parâmetros para a CPU e para determinados módulos de I/O, tais como módulos
analógicos.

Nos parâmetros da CPU estão incluídos, entre outros, o tempo de supervisão de duração de
ciclo ou o intervalo de tempo para execução de partes do programa.

Trocando Módulos
Durante um restart completo, a CPU distribui os parâmetros para todos os módulos existentes.
Assim, quando se substitui um módulo defeituoso, a parametrização para o novo módulo ainda
estará disponível, armazenada na CPU.

135
Controlador Lógico Programável

Configurador de Hardware - Menus

Station (estação)
O menu Station serve para selecionar o CLP a ser editado, salvar a configuração, imprimir, etc.
É comparável ao menu de edição de um Processador de Texto como por exemplo: O Microsoft
Word. É possível entre outras funções:
- New - criar uma nova estação
- Open e Open Online - editar uma configuração existente no PG/PC ou na CPU.
- Save - salvar a configuração corrente. Ao se salvar uma configuração pela 1a. vez, o STEP
7 criará na estrutura automaticamente um Módulo Programável (por ex. a CPU) e a pasta
S7-Programs subordinada à este módulo, além de gerar o bloco de configuração (SDB).
- Consistency Check - verifica se a configuração de hardware está correta, porém não gera o
bloco de configuração (SDB) nem as pastas de CPU e programa.
- Compile - é o mesmo que save. Checa a consistência, gravando ao bloco de configuração
de hardware na respectiva pasta CPU/Programa já criada.

View
O menu View é utilizado para selecionar a maneira que se quer visualizar a configuração,
simplificada ou em detalhes (com MLFB, endereço, etc), além de tornar ativo ou não a barra de
ferramentas e a linha de status.

136
Controlador Lógico Programável

A linha de status serve como um pequeno help online, mostrando sempre um pequeno texto
sobre a função selecionada, além do modo de operação ativo Offline ou Online.

PLC
O menu PLC é utilizado para ler ou transferir a configuração editada do PG para o CLP
(também possível pelo ícone da barra de ferramentas). A transferência só pode ser feita se a
CPU estiver conectada ao Terminal de Programação. No modo online estão ainda disponíveis
funções de informação e de diagnóstico, além de se poder alterar o modo de operação da
CPU.

Configuração Real
A CPU gera uma configuração interna real durante a energização. Isto é, a CPU verifica a
disposição dos módulos existentes, e caso não exista o bloco de parametrização, distribui os
endereços de acordo com um algoritmo fixo.

Se não existe parametrização, os parâmetros default são usados. A CPU arquiva esta
configuração real no bloco de dados do sistema.

137
Controlador Lógico Programável

No PG/PC, você pode ler esta configuração real para servir como base (template) para
adicionar e/ou re-parametrizar os módulos usando o HW Configuration.

Procedimento
A configuração real é gerada usando o ícone Upload.

Configurando o Hardware

138
Controlador Lógico Programável

Dá-se o nome de Configuração Parametrizada à configuração de hardware criada pelo usuário,


determinando os módulos existentes e a sua localização, bem como a parametrização destes
módulos.

Configurando
A configuração é executada pela ferramenta Configurador de Hardware. A partir do catálogo,
seleciona-se os módulos utilizados, posicionando-os no slot respectivo do trilho/bastidor.
Naturalmente inicia-se a configuração com o trilho/bastidor para então se posicionar os outros
módulos. Ao se posicionar um módulo, o sistema automaticamente designa um endereço para
o módulo. A CPU315-2 e toda a família S7-400 permitem que este endereço seja alterado pelo
usuário.

A parametrização dos módulos é realizada dando-se um double-click sobre o módulo desejado.


Uma tela de configuração referente ao módulo aparecerá, permitindo a alteração dos
parâmetros.

Durante o start-up do controlador lógico programável S7-400, pode haver um check para
verificar se a configuração real (existente) e a configuração parametrizada estão de acordo.

Catálogo Eletrônico

139
Controlador Lógico Programável

O catálogo eletrônico contém toda a lista de módulos existente do S7. Quando você clicar na
tecla “+”, você terá disponível os módulos do grupo selecionado.

Atualizações deste catálogo (novas placas) estarão sempre disponíveis via Internet ou via o
Distribuidor local.

Parâmetros e Propriedades da CPU

Setando Parâmetros da CPU


Entre outros, os seguintes parâmetros podem ser setados na CPU:
- endereço da interface MPI
- características de start-up/ciclo: tempo máximo de ciclo, ciclo de carga para comunicação,
auto teste cíclico e auto teste depois da energização.
- interrupção cíclica (Watchdog): OB 35
- memória retentiva: markers de memória (flags), temporizadores, contadores e bloco de
dados.
- clock de memória: reduzir a freqüência de byte de memória
- diagnóstico de sistema: enviar mensagens de diagnóstico, detalhar registros no buffer de
diagnóstico.

140
Controlador Lógico Programável

Se o usuário não definir nenhum parâmetro, os parâmetros default serão utilizados na CPU.

Depois de setar os parâmetros, deve-se transferir os novos parâmetros com o comando de


menu PLC Download. A CPU deverá estar no modo STOP.

Endereço MPI
Se você desejar conectar vários controladores lógicos programáveis via interface MPI, você
deverá setar diferentes endereços MPI para cada CPU.

CPU – Características de Start-Up

141
Controlador Lógico Programável

Setpoint and Actual Configuration


Para o S7-300 com a CPU 315-2 e o S7-400, quando você desativa este
campo, você pode fazer com que a CPU vá para STOP se a configuração real (existente) não
for igual a configuração parametrizada.

Delete PIQ on Restart


No restart, a imagem de entradas/saídas do processo é normalmente deletada. Se você não
deseja que isto aconteça , você pode desativar este item (válido para o S7-400).

Hardware Test
Quando esta função é ativada, a RAM interna da CPU é testada durante o start-up

Automatic Startup after "Network On"


Para o S7-400, você pode escolher entre:
- Restart completo (deletando as áreas não retentivas e o programa inicia com a primeira
instrução no bloco OB1)
- Restart (todas as áreas de memória são retidas, e o programa continua no local da
interrupção).

Watchdog Time

142
Controlador Lógico Programável

Os seguintes tempos podem ser especificados:


- Tempo máximo para passar parâmetros para os módulos parametrizáveis.
- Tempo máximo para o sinal completo do módulo.
- Para o S7-400, o tempo máximo de interrupção (falta de energia ou chave do modo de
operação) após o qual um restart (warm) ainda é possível. Após este tempo será
executado um complete restart.

CPU - Retentividade

Áreas Retentivas
As áreas de memória retentivas permanecem inalteradas mesmo depois da falta de energia ou
de um restart completo.

Os seguintes itens podem ser retentivos:


- Memory markers
- Temporizadores
- Contadores
- Bloco de Dados

143
Controlador Lógico Programável

As áreas que você especifica nesta tela são retidas no caso de falha de energia mesmo não
existindo bateria de backup.
Para ser utilizado sem bateria, o programa deverá ser arquivado no módulo de memória
(memory card).

DB´s Retentivos
Este parâmetro só tem sentido no caso da não existência de bateria. Quando a bateria é
usada, todos os blocos de dados são retentivos.

Outros blocos de dados que devem permanecer retidos devem também ser salvos no módulo
de memória.

Depois da falta de energia sem a bateria, os blocos de dados parametrizados como retentivos
são retidos, e os outros blocos recebem os valores arquivados no módulo de memória.

CPU – Ciclo/Clock de Memória

Cycle
Opções:

144
Controlador Lógico Programável

- tempo de monitoração do tempo de ciclo, quando este tempo é ultrapassado, a CPU vai
para STOP, se o OB80 de erro não foi programado.
- tempo mínimo de ciclo para o S7-400 para implementar tempo de ciclo
- constante
- porcentagem do tempo de ciclo de programa que será reservado (no máx.) para tarefas de
comunicação ou para auto teste cíclico.

Clock Memory
Caso seja utilizado no programa algum tipo de pisca-pisca, pode-se deixar o sistema gerá-lo
automaticamente. Ative o campo e especifique qual o byte de memória a ser usado para este
fim
O byte de memória especificado piscará nas seguintes freqüências, cada uma associado à um
bit deste byte:

Bit 7 6 5 4 3 2 1 0
Período/ 2 1,6 1 0,8 0,5 0,4 0,2 0,1
Freqüência 0,5 0,625 1 1,25 2 2,5 5 10
(Hz)
CPU – Proteção de Acesso

145
Controlador Lógico Programável

Protection Levels
O programa na CPU pode ser protegido contra um acesso não autorizado por meio de
designação de uma senha. As correções de programa ou modificação de dados só podem ser
executados se a senha correta for digitada.

Os níveis de proteção tem os seguintes significados:


- 1: Sem proteção
- 2: Proteção contra a escrita (somente leitura ou status de blocos.)
- 3: Proteção contra leitura/escrita

CPU – Interrupções

Hardware interrupts(int. de hardware)


São geradas por módulos que tenham capacidade de diagnóstico. Na parametrização default,
todos as interrupções de hardware são processadas pelo OB40.

Time-delay interrupts (int. tempo-decorrido)


São geradas a partir do programa do usuário (SFC 32 SRT_DINT) após decorrido o tempo
programado quando a função está habilitada.

146
Controlador Lógico Programável

Communication int. (int. de comunicação)


Para as CPU´s S7-300 e S7-400 as interrupções de comunicação geralmente
não são disponíveis.

Priorities (prioridade)
A prioridade de execução de um bloco só é considerada quando dois blocos OB‟s devam ser
executados ao mesmo tempo. Assim será executado o bloco de maior prioridade, sendo que o
de menor prioridade aguarda o fim da execução do outro para ser executado.

Então, pode-se especificar a seqüência de processamento para quando duas ou mais


interrupções estejam presentes simultaneamente.
No S7-300 não é possível mudar as prioridades default.

Time-of-day int. (int. datada)


São blocos que serão executados exatamente na data e hora em que foram
parametrizados. Pode-se selecionar inclusive a freqüência com que serão executados após
esta data: uma única vez, a cada minuto, a cada hora, mês, dia, ano.

147
Controlador Lógico Programável

Cyclic interrupt (int. cíclica)


Caso se deseje que parte do programa da CPU seja executada a intervalos
regulares de tempo, pode-se utilizar o OB de interrupção cíclica. Este OB será então executado
toda a vez que o intervalo de tempo parametrizado tenha sido decorrido. Isto habilita a
implementação de tarefas de controle de malha fechada, por exemplo, que devem ser
processados em intervalos de tempo programados

O S7-300 possui para esta função somente no OB35, o qual é processado a cada 100ms como
default. A base de tempo pode ser setada na faixa de 1 a 60000ms.

O S7-400 possui vários OB‟s de interrupções cíclicas com diferentes intervalos de tempo. Para
garantir que estes OB‟s não sejam executados ao mesmo tempo, no caso dos intervalos de
tempo coincidirem, pode-se usar um offset, que as interrupções ocorrem defasadas entre si.

Importante: OB1
O principal bloco do programa S7 é o OB1. Este OB é um OB cíclico, porém diferente de um
OB de interrupção cíclica. Ao atingir a sua última instrução, o OB1 se reinicia imediatamente na
1a. instrução. Como a chamada de blocos pode variar de um ciclo para outro, não se pode
garantir que o tempo de execução da cada ciclo do OB1 seja constante.

148
Controlador Lógico Programável

CPU – Diagnóstico/Clock

System diagnostics
Uma poderosa ferramenta na depuração do programa e procura de falhas é o Diagnóstico
Buffer. Este é um buffer que registra todas as ocorrências anormais do CLP, inclusive com data
e hora. Esta função, que deve sempre ser deixada ativa, além de registrar as ocorrências que
levaram a CPU para STOP (Dysplay cause of STOP), pode ainda ser incrementada com outras
ocorrências (Extended Functional Scope).

Com a opção “Extended Functional Scope” ativa todos as chamadas de OB´s de interrupção
são registradas no buffer de diagnóstico. Isto é útil por exemplo na hora de depurar o SW ou na
procura de um defeito específico do sistema. Não deve ser porém deixada ativa, pois o buffer
de diagnóstico será preenchido como uma série de registros dificultando uma eventual análise
do motivo de parada da CPU (mensagens importantes podem ser sobrescritas).

Clock
Se está sendo utilizado vários módulos com clocks em um CLP, pode-se definir quais módulos
vão ser escravos e mestres. O mestre sincroniza outros clocks de acordo com o intervalo de
tempo setado.

149
Controlador Lógico Programável

O fator de correção corrige variações do relógio do mestre diariamente, sendo expresso em


ms.

Setando Parâmetros em Módulos de Sinais

Ajustes Default da Auto-Configuração


O sistema S7 fornece facilidades para a configuração automática do endereçamento de I/O e
parametrização de blocos. Quando o hardware e I/O‟s são instaladas, o sistema S7 se auto-
configura.

Modificando os Parâmetros com o S7 Hardware Configuration


A alteração das características funcionais default dos módulos é feita no configurador de
Hardware. O acesso à estes parâmetros é feito da mesma maneira que o acesso aos
parâmetros da CPU.

Selecionando-se o módulo e clicando-se o mouse duas vezes aparece a tela de parâmetros do


módulo (note que nem todos os módulos tem parâmetros que podem ser alterados). Toda a
parametrização feita, dos módulos e da CPU, são armazenadas em um bloco denominado

150
Controlador Lógico Programável

SDB, que é transferido para a CPU ao se dar um Download (Transferência para a CPU). Este
bloco também é arquivado no PG/PC, na respectiva pasta de programa S7, sob o nome SDB,
ao se salvar a configuração.

Este armazenamento da parametrização em um SDB, torna possível a troca de qualquer


módulo do CLP sem a necessidade de ajuste, já que a parametrização do novo módulo é
transferida automaticamente da CPU para o novo módulo.
Modificando os Parâmetros com o Programa do Usuário
É possível alterar a parametrização de um módulo dinamicamente, isto é, pelo programa de
usuário na CPU. Isto é feito com o auxílio das funções de sistema (SFC55-59). Estes SFC´s
tem acesso de leitura e escrita nos registros de dados dos módulos.

Módulo Analógico - Parametrização

Setando Parâmetros dos Módulos


Os seguintes parâmetros podem ser setados nos módulos analógicos
- tipo de medição, tais como tensão ou corrente
- faixa de medição, tais como 0 a 10V
- teste de fonte de tensão

151
Controlador Lógico Programável

- supervisão de quebra-de-fio;
- valores substitutos de saída (tomar último valor)
- habilitar interrupção de diagnóstico (OB82) originada por falha.
- interrupção fim do ciclo de leitura, depois que todos os valores de medição
- tenham sido processados (processamento de canais individuais ou um após o outro) . Isto
pode ser útil para se assegurar que o valor real de medição é o que está sendo
considerado no programa
Importante
1) Verifique quais os parâmetros disponíveis para o módulo que está sendo utilizado.
2) Para a faixa de medição, além da parametrização via SW é necessário posicionar a caixa
de medição na placa (pos. A, B, C ou D).

Exercício 5.1: Configurando uma Estação de Hardware

Objetivo
Criar uma estação de HW
Configurar o Hardware

Procedimento

152
Controlador Lógico Programável

1. Destaque a pasta de projeto PRO1


2. Selecione no menu o comando Insert Station  SIMATIC 300 Station (ou use o botão
direito do mouse e o comando Insert New Object => SIMATIC 300 Station.
3. Uma nova estação S7-300 é criada.
4 . Destaque a pasta da estação recém criada (SIMATIC 300 Station (1)) e dê um clique duplo
sobre o ícone Hardware.
5. O Configurador de Hardware é aberto.
6. Selecione no catálogo todos os módulos existentes no seu rack de treinamento (comece
obrigatoriamente com o trilho (rack)).
7. Salve a configuração no harddisk.

Resultado
Uma estrutura CPU, Programa, Blocos, etc. é criada subordinada à pasta de estação.

Exercício 5.2: Parametrizando a CPU - Retentividade

153
Controlador Lógico Programável

Objetivo
Parametrizar um módulo (CPU)
Testar a característica Retentividade

Procedimento
1. Inicie o Configurador de Hardware
2. Dê um click-duplo sobre a linha que contém á CPU (ou destaque a linha da CPU e com o
botão direito do mouse selecione a função Object Properties).
3. Selecione a Pasta Retentive Memory.
4. Parametrize os Memory markes de 0 a 4 como retentivos (MB0 a MB4).
5. Selecione a pasta Cicle / Clock Memory
6. Parametrize o clock memory com o memory marker 100 (MB100)
7. Confirme a parametrização com o botão OK.
8. Salve a configuração.
9. Dê um Download da configuração para a CPU (lembre-se a CPU tem que estar em Stop).
10. Escreve um programa no OB1 transferindo os dados do clock-memory para MB4 e MB5:
L MB100
T MB4

154
Controlador Lógico Programável

T MB5
11. Coloque a CPU de STOP -> Run e observe com a função Monitor Variables os memory
markes MB4 e MB5.
12. Delete as instruções do OB1 (ou o próprio OB1).
13. Repita o passo 11.

Resultado
O que aconteceu com o MB4 e o MB5 no 2. start da CPU ? Por que não possuem o mesmo
conteúdo ?

155
Controlador Lógico Programável

Princípios básicos

Norma IEC 1131

Introdução
A norma IEC1131 é um documento escrito por um consórcio de fabricantes de PLC´s, casas de
sistemas e instituições direcionadas a desenvolver plataformas para níveis de padronizações
na automação industrial.

Parte 1
Contém características de funções e definições de termos gerais comuns para PLC´s. Por
exemplo, processamento cíclico, imagem de processo, divisões de tarefas entre dispositivos de
programação, PLC Interface Homem máquina.

156
Controlador Lógico Programável

Parte 2
Especifica funções elétricas e mecânicas e exigências funcionais dos dispositivos e definições
de tipos de testes. As seguintes exigências são definidas: temperatura, umidade, imunidade a
interferências, faixa de tensão de sinais binários, rigidez mecânica.

Parte 3
Especificações para linguagem de programação. As linguagens de programação foram
harmonizadas e novos elementos foram incluídos. Além de STL, LAD e FBD o “texto
estruturado” foi incluído como a quarta linguagem.

Parte 4
Contém as diretrizes para os usuários de PLC. Informações para todos os estágios do projeto
estão disponíveis, tais como: iniciando análise do sistema, fase de especificação, seleção e
manutenção de dispositivos.

Parte 5
Descreve a comunicação entre os PLC´s de vários fabricantes e entre PLC´s e outros
dispositivos. Baseado na norma MAP, os utilitários de comunicação do PLC são definidos com
normas suplementares para ISO/IEC 9506-1/2. Blocos de comunicação são descritos em
conjunto com operações padronizadas de leitura e escrita.

157
Controlador Lógico Programável

Ciclo de Processamento da CPU

Start-Up
Quando você muda de STOP ==> RUN, a CPU executa um restart simples ou completo (S7-
300 só completo), também denominado com Cold-restart ou Warm-restart. Para um completo
restart, o sistema operacional deleta os memory markers não retentivos, temporizadores e
contadores, deleta a pilha de interrupções e pilha de blocos, reseta todas as interrupções de
hardware salvas e interrupções de diagnóstico, e inicializa a supervisão do tempo de ciclo.

O S7-400 tem um tipo de start-up adicional, Restart. No restart, todos os dados são retidos e o
processamento do programa continua depois do ponto de interrupção.

Ciclo de Programa
Como mostrado na figura acima, a operação cíclica da CPU consiste de 3 componentes
principais:
- A CPU atualiza o estado dos sinais de entrada na tabela imagem das entradas (PII).
- A CPU executa o programa do usuário com as respectivas operações.
- A CPU escreve os valores da tabela imagem das saídas (PIQ) no módulo de saídas.

158
Controlador Lógico Programável

Start-Up da CPU e Obs

Restart Completo
A CPU executa um completo restart quando vai do modo STOP para RUN,
processo este denominado START-UP (inicialização).

Durante o Start-up são executadas as seguintes tarefas:


- -zera as áreas retentivas da memória: markers, temporizadores e contadores; zera as
pilhas de interrupção e bloco; deleta todas as interrupções e diagnósticos de interrupção,
zera a imagem do processo de I/O´s.
- transfere os parâmetros para os módulos.
- lê as configurações de I/O e compara o estado atual das I/O´s com o estado esperado.
- OB executa o completo restart (OB100).
- habilita saídas.

Restart
As CPU‟s do S7-400 tem a capacidade de executar um Restart (warm restart) quando ocorre
um Start-up. O modo do Restart, completo ou warm, é selecionado nestas CPU‟s por uma
chave na CPU (sob certas condições). Quando um RESTART ocorre, a CPU executa o
seguinte:

159
Controlador Lógico Programável

- executa o OB de warm restart (OB101)


- executa o ciclo residual
- deleta a PIQ a área de saída (parametrizável)
- habilita saídas

Imagem do Processo

Definição
Denomina-se Imagem de Processo à uma área da CPU onde os estados das entradas e
saídas binárias são a cada ciclo armazenadas. Existem áreas distintas para as entradas e para
as saídas: PII e PIQ. Normalmente o programa de usuário quando acessa uma entrada ou
saída digital está lendo na realidade esta área.

PII
A tabela imagem das entradas do processo é o local onde o estado das entradas digitais são
arquivadas na CPU. Antes do início de cada ciclo de programa, a CPU lê a periferia (módulos
de entrada digital) e transfere os estados dos sinais digitais para esta área.

PIQ

160
Controlador Lógico Programável

A tabela imagem das saídas contém o valor das saídas resultantes do processamento do
programa. Somente no final do ciclo de programa, estes valores de saída são transferidos para
os módulos de saídas (Q).

Programa do Usuário
Quando você lê uma entrada no programa (como A I 2.0 por exemplo), o último estado da PII
é utilizado na lógica do programa. Isto garante que um mesmo estado do sinal é fornecido
durante um ciclo de scan.

Tipos de Blocos de Programas

Blocos de Sistema
Blocos de sistema são funções pré-definidas ou blocos de função integradas ao sistema
operacional da CPU. Estes blocos não ocupam nenhum espaço adicional na memória do
usuário. Os blocos de sistema são chamados pelo programas do usuário. Estes blocos tem a
mesma interface, a mesma designação, e mesmo número em todo o sistema (S7-300/400).
Então, você pode facilmente portar o programa do usuário entre várias CPU´s.

Blocos do Usuário

161
Controlador Lógico Programável

Os blocos de usuário são áreas providas para administrar o código e os dados para seu
programa. Baseado nas necessidades do seu processo, você pode estruturar seu programa
com várias opções de blocos de usuário. Alguns desses blocos podem ser executados
ciclicamente, enquanto outros blocos podem ser executados somente quando necessitado.
Blocos de usuário são também chamados de blocos de programa.
Blocos do Usuário

Blocos de Organização (OB)


Forma a interface entre a CPU e o programa do usuário. Pode-se escrever um programa inteiro
no OB1 e deixá-lo processando a cada ciclo. Pode-se porém escrever um programa em
diferentes blocos e usar o OB 1 para chamar estes blocos quando necessário. Além do OB 1, o
sistema operacional pode chamar outros OB‟s que reagem a certos eventos, tais como :
- Interrupção Data Programada
- Interrupção de tempo de ciclo
- Interrupção de Diagnostico
- Interrupção de hardware
- Interrupção de Erros
- Start-up do Hardware

Bloco de Função (FB)

162
Controlador Lógico Programável

Um bloco de função é uma função ou uma seqüência de comandos armazenadas em um bloco


lógico, onde os parâmetros podem ser arquivados em uma memória. O FB utiliza esta
memória adicional na forma de um “Bloco de Dados Instance”. Parâmetros passados para o
FB, e alguns dos dados locais são arquivados neste blocos de dados associado (Instance DB).
Outros dados temporários são arquivados na pilha local (L stack). Dados arquivados em
Instance DB são retidos quando o bloco de função é fechado. Dados arquivados na pilha L
stack não são retidos.

Funções (FC)
A função é um bloco de operação lógica similar ao bloco de função para o qual não é
designado área de memória. Um FC não necessita de um bloco de dados instance. As
variáveis locais são arquivadas na pilha local (L stack) até que a função esteja concluída,
sendo perdidos quando o FC termina a execução.

Bloco de Dados (DB)


Um bloco de dados é uma área de dados permanente na qual dados ou informações que
outras funções coletaram são armazenados. Bloco de dados são área de leitura/escrita que
podem ser carregadas na CPU como parte de seu programa.

Blocos de Sistema

163
Controlador Lógico Programável

Função de Sistema
Função de sistema é uma função pré-programada e testada que é (SFC) integrada na CPU.
Algumas das tarefas suportadas por estas funções são setar parâmetros dos módulos,
comunicação de dados, funções de cópia, etc. Uma SFC pode ser chamada pelo programa,
porém sem fazer parte dele (não ocupa memória de trabalho).
Blocos de Função de Sistema (SFB)
Um bloco de Função de sistema é parte integral da CPU. Você pode utilizar um SFB em seu
programa, sem carregar como parte de seu programa porque os SFB‟s são parte do sistema
operacional. SFB‟s devem ser associados a um DB, o qual deverá ser transferido para a CPU
como parte do seu programa.

Bloco de Dados de Sistema (SDB)


Um bloco de dados de sistema é uma área de memória que a ferramenta STEP 7 gera para
arquivar dados necessários para o controle de operações. Informações, tais como dados de
configuração, conexões de comunicação e parâmetros são salvos em SDB‟s.

164
Controlador Lógico Programável

Estrutura de Programa

Programa Linear
O programa inteiro reside em um único bloco de instrução contínuo. Esta estrutura é
semelhante a um circuito de relés substituído por um controlador lógico programável. O sistema
processa instruções individuais sucessivamente.

Programa Particionado
O programa é dividido em blocos, cada bloco contém uma lógica específica para dispositivos
ou tarefas. As informações residentes no bloco de organização (OB1) determinam a ordem de
execução dos blocos a serem processados. Um programa particionado pode, por exemplo,
conter blocos de instruções com os quais os modos de operações individuais de um processo
industrial são controlados.

Programa Estruturado
Um programa estruturado contém blocos de instruções com parâmetros definidos pelo usuário
(blocos parametrizados). Estes blocos são projetados de forma que possam ser usados
universalmente. Os parâmetros atuais (os endereços de entradas e saídas) são especificados
durante a chamada do bloco. Exemplos de blocos parametrizáveis:

165
Controlador Lógico Programável

- bloco “BOMBA" contém instruções para uma bomba, com um set de entradas e saídas
exigidas para qualquer bomba usada no processo.
- bloco lógico responsável pelo controle específico das bombas, chama (abre) o bloco
“BOMBA” e fornece informações para identificar qual bomba irá ser controlada.
- Quando o bloco completa a execução das instruções, o programa retorna ao bloco de
chamada (por exemplo OB 1), o qual conclui as instruções.

Programação Estruturada

O que é Programação Estruturada ?


A programação estruturada identifica tipos similares ou repetitivos de funções
solicitadas pelo processo e fornece soluções genéricas que podem ser usadas
por várias outras tarefas. Fornecendo informações específicas ( em forma de parâmetros) para
os blocos de instruções, o programa estruturado é capaz de usar de novo estes blocos
genéricos.

Pode considerar-se como exemplo destes blocos:

166
Controlador Lógico Programável

- Blocos que contenham lógicas comuns para todos os motores AC no sistema do


transportador
- Blocos que contenham lógicas comuns a todas as solenóides na máquina.
- Blocos que contenham lógicas comuns a todos os acionamentos da máquina.

Como é executado?
O programa dentro do OB1 (ou outro bloco) chama estes blocos genéricos para a execução.
Assim dados e códigos considerados comuns podem ser compartilhados.

Quais Vantagens e Desvantagens?


Ao invés de repetir estas instruções e então substituir os diferentes endereços para os
específicos equipamentos, você pode escrever as instruções no bloco e ter um programa para
passar os parâmetros (tais como endereços específicos de equipamentos ou dados) para o
bloco. Isto permite a você escrever blocos genéricos que mais que um dispositivo ou processo
possa usar. Quando usar uma programação estruturada você tem que gerenciar os dados que
são arquivados e utilizados pelo programa.

167
Controlador Lógico Programável

O editor de programas

Selecionando um Bloco para Editar

Para editar um bloco, siga os passos abaixo:


Selecione a pasta que contém o bloco existente ou a pasta na qual o novo bloco será
armazenado.

168
Controlador Lógico Programável

Os blocos existentes são listados na janela à direita.

Selecione o bloco a ser editado, clicando duas vezes sobre ele. Alternativamente pode-se
editá-lo selecionando-o e então com o botão direito do mouse ativando-se a função “Open
Object”.

Para se criar um bloco, seleciona-se a pasta na qual o bloco será armazenado, e com o auxílio
do botão direito do mouse seleciona-se a função „Insert New Object” e o tipo de bloco
desejado.

Clica-se duas vezes sobre o ícone do novo bloco criado que o editor de programa será aberto

169
Controlador Lógico Programável

Selecionando uma Linguagem de Edição

Seleção
Usando a opção “VIEW” na barra de menu, pode-se selecionar a linguagem de edição entre
diagrama de contados (LAD), blocos funcionais (FBD) ou lista de instruções (STL). Esta opção
está disponível desde que um bloco esteja aberto.

LAD -> STL


Blocos originalmente criados em diagrama de contatos podem ser convertidos sempre para
lista de instruções. Note que a conversão não necessariamente resulta em código de
programa eficiente em lista de instruções.

STL -> LAD ou FBD


Blocos criados originalmente em lista de instruções nem sempre são convertidos totalmente em
diagrama de contatos ou blocos funcionais. Ao se fazer esta opção de conversão, através da
opção “View”, o Editor de Programa converterá todos os segmentos de programa que podem
ser convertidos. Segmentos de programa não “conversíveis” se mantém na linguagem lista de
instruções Esta “não conversão” não significa que haverá problemas de execução do
programa, sendo somente conseqüência da sintaxe de visualização de cada linguagem. Para

170
Controlador Lógico Programável

garantir que a conversão seja sempre realizada, o usuário deverá tomar certos cuidados
durante a edição (ex.: escrever uma única lógica por segmento).

Editor de programas

O Editor de Programas possui duas áreas com funções bem definidas: tabela de declarações e
a seção de instruções.

Tabela de Declarações

171
Controlador Lógico Programável

Esta tabela serve para declarar variáveis e parâmetros para o bloco. As variáveis locais
(temporárias) são definidas para uso no bloco nesta tabela.
A parametrização torna possível passar variáveis entre blocos para que sejam usados
universalmente.
Seção de Instruções
Nesta área é especificado a seqüência e a lógica do programa (instruções).

Durante a edição dos operandos, a sintaxe é checada, destacando imediatamente qualquer


erro.

Cada pequena lógica do programa é definida dentro de um segmento (Network). Entende-se


como lógica, a combinação de blocos que resultará numa saída/flag sendo ou não acionado.

Nas linguagens LAD/FBD o próprio Editor não permite que seja realizado mais que uma lógica
por segmento. No modo STL é possível ter várias lógicas por segmento, porém se compromete
a capacidade de se visualizar em outras linguagens (LAD/FBD).

Comentários
O editor permite ainda o acréscimo de comentários: título e comentário do bloco e título e
comentário para cada segmento. Através da função View Commentar pode-se visualizar ou
não estes comentários.

Editando em Diagrama de Contatos – LAD

172
Controlador Lógico Programável

Introdução
A edição do programa em diagrama de contatos é feita basicamente com o auxílio do mouse.
Basta posicionar o ponto e selecionar o elemento que deve ser inserido no programa. Após
isto, digita-se o endereço dos operandos (por ex. I0.0, M43.5). Os elementos lógicos são
encontrados ou na barra de ferramentas na forma de ícone ou através de um catálogo de
instruções, como mostrado na figura acima.

F2 - Scan para sinal "1" (contato fechado)


F3 - Scan para sinal "0" (contato aberto)
F4 - Output coil (saída)
F8 - Ramificação para baixo (abrindo)
F9 - Ramificação para cima(fechando)
Elementos Comuns com Seus Ícones

Catálogo de Instruções
Outros elementos (instruções) são acessadas pelo catálogo de instruções, acessado pelo
ícone ao lado ou pela combinação das teclas Ctlr+K

173
Controlador Lógico Programável

Editando em Blocos Funcionais

Introdução
Semelhante ao modo LADDER, a edição em blocos funcionais é feita com o auxílio do mouse.
Selecione o ponto em que deve ser inserido o elemento e a partir do catálogo de instruções ou
da barra de ferramentas selecione o elemento desejado. Para endereçar os operandos,
selecione o campo apropriado e digite o operando (ex. Q2.6, M4.5).

Este ícone dá acesso ao catálogo com todas as instruções FBD.

Comentários
Os comentários são editados como no modo diagrama de contatos.

Correções
Posicione o cursor do mouse sobre o elemento e pressione a tecla DEL.

174
Controlador Lógico Programável

Regras
- Blocos padrões (flipflops, contadores, temporizadores, operações matemáticas etc.) podem
também ter um outro bloco com operações lógicas binárias ( &, >=1, XOR) associado. A
exceção para esta regra são os blocos de comparação.
- Em um único segmento, não é possível programar operações que são separadas por
saídas.
É possível, entretanto, com o auxílio do T-branch, que a uma lógica estejam associadas
diversas saídas.
- Deletando um bloco, todas as ramificações que são conectadas com a entrada booleana,
com exceção da ramificação principal, são deletadas.
- modo de sobre-escrever é disponível para troca simples de elementos do
- mesmo tipo.

Editando e Depurando um Bloco de Programa

175
Controlador Lógico Programável

Esta demonstração auxilia a familiarizar-se com os itens de menu para a edição e depuração
do seu bloco. Estas ferramentas são necessárias quando você for escrever o seu programa no
próximo exercício.

Será demonstrado o seguinte:


- edição de um bloco pré-existente
- seleção de uma linguagem de programação - LAD/FBD/STL
- criar segmentos (networks)
- usar os elementos da barra de ferramentas
- usar os elementos do catálogo de instruções
- salvar um bloco de programas
- transferir um bloco de programa para o PLC
- selecionar o modo on-line
- exibir o status do programa

176
Controlador Lógico Programável

Exercício 7.1: Editando o OB1

Objetivo
Editar o OB1 (criado automaticamente sem instruções).

Procedimento
1. Destaque a pasta Blocks do S7 Program, subordinado à estação de Hardware.
2. Selecione no campo de diálogo View ==> Off-line.
3. Selecione OB1 (double click).
4. Com ajuda dos símbolos na barra de ferramentas, digite o seguinte programa em ladder.

Resultado

Notas
- Para posicionar o primeiro elemento, aponte o cursor para a linha da network.
- Use os símbolos de programa da barra de ferramentas.

177
Controlador Lógico Programável

- Posicione o cursor em cima do símbolo(tecla TAB ou mouse) para digitar o endereço


- Use a tecla TAB para saltar entre os elementos.

Exercício 7.2: Selecionando o Método de Representação

Depois do bloco aberto, pode-se escolher entre os métodos de representação LAD (Diagrama
Ladder), FBD (Blocos de Função) e STL (Lista de instruções). Todas as instruções são sempre
convertidas para STL, porém a conversão para LAD/FBD nem sempre ocorre em todos os
segmentos.

Objetivo
Selecionar a linguagem de programação para edição do bloco.

Procedimento
1. Abrir um bloco para edição (por ex. o OB1 do exercício anterior)
2. Seclecionar o modo de edição/visualização:
- LAD, selecionar no menu de comando View LAD.
- STL, selecionar no menu de comando View STL.
- FBD, selecionar no menu de comando View FBD.

178
Controlador Lógico Programável

Resultado
Seu program é representado em um dos seguintes tipo de representação:

Diagrama Ladder:

Exercício 7.3: Salvando um Bloco

179
Controlador Lógico Programável

Como qualquer editor de programas/textos, é necessário salvar seu trabalho após a edição.
Isto é como um “Save” normal do Windows, o qual pode ser usado com os dois procedimentos
exibidos acima.
Quando usado o comando de menu File Save As, deve-se especificar o projeto, programa e
e nome do bloco para este arquivo.

Depois de salvo, este bloco se encontra como um ícone na pasta Blocks do projeto/programa
em que foi salvo. Pode-se utilizar o SIMATIC Manager como o “Explorer” para copiar ou mover
o bloco para outros projetos, CPU‟s, etc.

Objetivo
Salvar um bloco de programa.

Procedimento
1. Selecionar no menu de comando File Save ou clique no ícone Save.
2. Ou selecione no menu de comando File Save As e especifique o arquivo de destino.

Resultado
1. Salva o bloco de programa com o nome especificado quando o bloco está aberto
2. Com "Save As" o bloco de programa é salvo com o nome que você digitar.

Nota
O programa não é copiado para a CPU através do procedimento “Save”.

Exercício 7.4: Transferindo um Bloco para CPU

180
Controlador Lógico Programável

Depois editado o programa, o próximo passo é transferir o bloco para a CPU. Usando o Editor
LAD/STL/FBD pode-se transferir um bloco individualmente enquanto ele estiver aberto, ou
pode-se usar alternativamente o SIMATIC Manager para transferir o bloco. O procedimento
para usar o SIMATIC Manager é descrito nos próximos exercícios (transferindo o programa)

Objetivo
Transferir um bloco (OB1) para a CPU com o editor LAD/STL/FBD.

Procedimento
Quando o editor LAD/STL/FBD está aberto ....
1. Selecionar o menu de comando PLC Download
(um click no ícone Download exibido acima.)
(responda as questões no menu de exibição).

Quando você responde com “Yes” , o bloco presente na CPU é sobre escrito.

181
Controlador Lógico Programável

Quando você responde com “No” , o bloco original permanece na CPU, e seu bloco não é
transferido. Para este exercício selecione “Yes”, porque você deseja usar um novo bloco por
você editado, e não o bloco antigo.

Resultado
Seu novo programa é escrito na CPU.

Exercício 7.5: Estabelecendo Conexão On-Line

182
Controlador Lógico Programável

On-line significa que os objetos exibidos são os blocos residentes na CPU. Esta conexão não
depende da CPU estar em modo RUN ou modo STOP. Com o STEP 7 você pode estabelecer
conexão de dois métodos:

Objetivo
Usar o Editor LAD/STL/FBD para estabelecer conexão com a CPU.

Procedimento
Use o o Editor S 7 LAD/STL/FBD para abrir ou editar o bloco na CPU.
1. Selecione “Program S7 Blocks (LAD/STL/FBD)”
2. Selecione no menu de comando File- Open.
3. Selecione a opção View On-line da lista drop-down.
Depois que foi selecionado “On-line”, o dispositivo de programação seta a conexão. Os blocos
localizados na CPU são exibidos no menu. Para editar ou depurar um desses blocos, selecione
o bloco pertinente na lista. É possível ter mais que um bloco aberto simultaneamente. Quando
você executar este procedimento e selecionar a opção “Arrange” no item Window do menu,
você pode ver os dois blocos simultaneamente

Objetivo
Usar o SIMATIC Manager para estabelecer a conexão com a CPU

Procedimento
O SIMATIC Manager pode também ser usado para abrir ou editar blocos na CPU (o Editor
LAD/STL/FBD é iniciado automaticamente).
1. Inicie o SIMATIC Manager.
2. Selecione no menu de comando View On-line.

Quando você selecionar o diretório da CPU, o SIMATIC Manager exibe os nome de todos
blocos localizados na CPU. Você também pode usar este menu para abrir blocos para edição e
depuração de programas.

183
Controlador Lógico Programável

Exercício 7.6: Exibindo o Status do Programa

O bloco deve ser aberto on-line para que o processo seja monitorado. A seção de instrução
dos blocos exibe o estado de operação quando os valores mudam. Em LAD, um código de
cores exibe o fluxo de corrente, e contatos abertos ou elementos são representados por linha
pontilhada. Entre outras coisas, as cores e os tipos de linhas podem ser mudados via a função
do menu Options Customize LAD/STL/FBD.

Objetivo
Depurar o bloco enquanto ele está sendo processado pela CPU.

Procedimento
1. Use um dos procedimentos do exercício anterior para selecionar o bloco que deseja testar
(modo on-line).
2. Selecione o método de representação View LAD/STL ou FBD.
3. Selecione no menu de comando Debug Monitor.

Resultado
Os elementos do programa e os símbolos são exibidos e ativados se logicamente verdadeiros.
Os valores que não são “Logicamente Verdadeiros” não são destacados.

184
Controlador Lógico Programável

185
Controlador Lógico Programável

Portas lógicas básicas

Os circuitos eletrônicos são divididos em dois grupos: circuitos analógicos e circuitos digitais.

Nos circuitos analógicos, os componentes operam normalmente de forma contínua ou linear,


como, por exemplo os amplificadores e as fontes reguladas.

Os circuitos digitais, também chamados de chaveadores, empregam componentes que operam


nos estados de corte ou saturação. É o caso de um transistor que, conectado a um circuito, em
um momento está cortado e no outro, saturado.

A partir deste momento, vamos começar a estudar os circuitos digitais. Antes, porém, serão
apresentados conceitos básicos que você deverá aprender a fim de compreender melhor o
funcionamento desse tipo de circuito. Eles são: estados ou níveis lógicos, funções lógicas e
operações lógicas.

Estados ou níveis lógicos


Em sistemas digitais, trabalha-se com dois estados ou níveis lógicos, pois a eletrônica digital
apoia-se no princípio da lógica que considera uma proposição verdadeira ou falsa.

Assim, um ponto qualquer do circuito digital pode assumir apenas um de dois estados:
Ligado ou desligado
Alto ou baixo
Fechado ou aberto
Saturado ou cortado
Com pulso ou sem pulso
Excitado ou desexcitado

186
Controlador Lógico Programável

Suponhamos, por exemplo, um circuito em que uma lâmpada é acionada por um interruptor.
Nesse caso, a lâmpada pode assumir os dois estados: ligado ou desligado. Um relé, dentro de
um circuito, assume os estados energizado ou desenergizado. Do mesmo modo, um transistor
ligado como chave no circuito pode assumir os estados saturado ou em corte.

Os sistemas digitais processam apenas os números binários 1 (um) e 0 (zero). Isso significa
que se associarmos o valor binário 1 a um estado ou nível lógico, associaremos o valor binário
0 ao outro estado.

Função lógica
A função lógica (f) é uma variável dependente e binária. Seu valor é o resultado de uma
operação lógica em que se relacionam entre si duas ou mais variáveis binárias.

As funções lógicas operam com variáveis independentes (elementos de entrada em um


circuito) e com variáveis dependentes (elementos de saída). Veja os circuitos a seguir.

Convenção

A e B - variáveis independentes (de entrada)

Y ou S - variável dependente (de saída)

Normalmente, as variáveis lógicas independentes (de entrada) são representadas por letras
maiúsculas A, B, C...N; as variáveis dependentes (de saída), por S ou Y.

As funções lógicas têm apenas dois estados: o estado 0 e o estado 1.

187
Controlador Lógico Programável

Operações lógicas

A relação entre duas ou mais variáveis que representam estados é estabelecida através de
operações lógicas.

As operações lógicas são:


Produto ou multiplicação lógica;
Soma lógica;
Inversão.

Essas operações, nos circuitos ou sistemas lógicos, são efetuadas por blocos denominados
portas lógicas.

Portas lógicas básicas


Portas são unidades básicas de sistemas lógicos eletrônicos.

Porta lógica é qualquer arranjo físico capaz de efetuar uma operação lógica. As portas lógicas
operam com números binários, ou seja, com os dois estados lógicos 1 e 0.

Os sistemas digitais, mesmo os mais complexos como os computadores, são constituídos a


partir de portas lógicas básicas.

As portas lógicas básicas são três:


A porta E que realiza a operação produto ou multiplicação lógica;
A porta OU que realiza a operação soma lógica;
A porta Não ou inversora que realiza a operação inversão, ou negação ou
complementação.

Porta E

A função E é aquela que assume o valor 1 quando todas as variáveis de entrada forem iguais
a 1; e assume o valor 0 quando uma ou todas as variáveis de entrada forem iguais a 0.

188
Controlador Lógico Programável

A operação E (“AND” em inglês), é a multiplicação ou o produto lógico de duas ou mais


variáveis binárias. Essa operação pode ser expressa da seguinte maneira:
Y = A . B.
Essa expressão é lida da seguinte forma: a saída (Y) é igual a A e B.
Observação
O ponto (.) é uma função lógica e lê-se e.

A figura a seguir mostra o circuito elétrico equivalente à porta E.

Convenção
Chave aberta = 0
Chave fechada = 1
Lâmpada apagada = 0
Lâmpada acesa = 1

Neste circuito, a lâmpada (saída Y) acenderá (1) somente se ambas as chaves de entrada A e
B estiverem fechadas (1).

A seguir, apresentamos todas as combinações possíveis das chaves A e B, assim como a


respectiva tabela-verdade que é a forma de representação gráfica das funções lógicas.

Combinações possíveis Tabela-verdade


Chaves de entrada Saída (lâmpada) Entrada Saída
B A Y B A Y
aberta aberta apagada 0 0 0
aberta fechada apagada 0 1 0
fechada aberta apagada 1 0 0
fechada fechada Acesa 1 1 1

Os símbolos ou blocos lógicos para a porta E são mostrados a seguir. Observe as duas
variáveis de entrada A e B e a saída Y.

189
Controlador Lógico Programável

Muitas vezes, um circuito lógico tem três variáveis, ou seja, uma porta E de três entradas (A, B
e C) e uma saída (Y). Neste caso, a operação será expressa assim:
A . B . C = Y ou Y = A . B . C.

Os símbolos da porta E com três variáveis de entrada são mostrados a seguir.

Observação
É possível construir uma porta E de três entradas empregando duas portas E de duas
entradas. A ilustração a seguir mostra o diagrama de blocos lógicos da porta E de três
entradas bem como seu circuito elétrico equivalente.

As combinações possíveis da operação E com três variáveis e a tabela-verdade


correspondente são apresentadas a seguir.

190
Controlador Lógico Programável

Combinações possíveis Tabela-verdade


Saída
Chaves de entrada Entradas Saída
(lâmpada)
C B A Y C B A Y
aberta aberta aberta apagada 0 0 0 0
aberta aberta fechada apagada 0 0 1 0
aberta fechada aberta apagada 0 1 0 0
aberta fechada fechada apagada 0 1 1 0
fechada aberta aberta apagada 1 0 0 0
fechada aberta fechada apagada 1 0 1 0
fechada fechada aberta apagada 1 1 0 1
fechada fechada fechada acesa 1 1 1 1

Porta OU

A função OU é aquela que assume valor 1 quando uma ou mais variáveis de entrada forem
iguais a 1; e assume o valor 0 quando todas as variáveis de entrada forem iguais a 0.

A operação OU, executada pela porta OU (“OR” em inglês) é a soma lógica de duas ou mais
variáveis binárias. Essa operação é expressa do seguinte modo: Y = A + B.

A expressão é lida da seguinte forma: a saída Y é igual a A ou B.

Observação
O símbolo (+) nesta expressão significa OU.

A figura a seguir mostra o circuito elétrico equivalente à porta OU.

Convenção

191
Controlador Lógico Programável

Chave aberta = 0
Chave fechada = 1
Lâmpada apagada = 0
Lâmpada acesa = 1

A lâmpada (Y) acenderá quando ou a chave A ou a chave B estiver fechada. Ela também
acenderá quando A e B estiverem fechadas. Quando A e B estiverem abertas, a lâmpada não
acenderá.

A seguir veja as combinações possíveis das chaves e também a tabela-verdade da função OU.

Combinações possíveis Tabela-verdade


Chaves de entrada Saída (lâmpada) Entrada Saída
B A Y B A Y
aberta aberta apagada 0 0 0
aberta fechada acesa 0 1 1
fechada aberta acesa 1 0 1
fechada fechada acesa 1 1 1

Observe, nas tabelas, como a saída do circuito OU é ativada quando pelo menos uma ou
todas as chaves estiverem fechadas.

Os símbolos lógicos da porta OU com duas entradas (A e B) e a saída (Y) estão


esquematizados na ilustração a seguir.

192
Controlador Lógico Programável

Uma porta OU de três entradas apresenta as variáveis A, B e C para as entradas e Y para a


saída. Neste caso, a operação será expressa da seguinte forma:
A+B+C=Y

Os símbolos da porta OU com três variáveis de entrada são mostrados a seguir.

Observação
É possível construir uma porta OU de três entradas utilizando duas portas OU de duas
entradas.

A ilustração a seguir mostra o diagrama de blocos lógicos da porta OU de três entradas, bem
como seu circuito elétrico equivalente.

Observe agora a tabela das combinações possíveis da porta OU de três variáveis e sua
respectiva tabela-verdade.

Combinações possíveis Tabela-verdade


Saída
Chaves de entrada Entradas Saída
(lâmpada)
C B A Y C B A Y

193
Controlador Lógico Programável

aberta aberta aberta apagada 0 0 0 0


aberta aberta fechada acesa 0 0 1 1
aberta fechada aberta acesa 0 1 0 1
aberta fechada fechada acesa 0 1 1 1
fechada aberta aberta acesa 1 0 0 1
fechada aberta fechada acesa 1 0 1 1
fechada fechada aberta acesa 1 1 0 1
fechada fechada fechada acesa 1 1 1 1

Porta NÃO

A função NÃO, ou função complemento, ou ainda, função inversora é a que inverte o estado da
variável de entrada. Se a variável de entrada for 1, ela se tornará 0 na saída. Se a variável de
entrada for 0, ela se tornará 1 na saída.

A operação lógica inversão é realizada pela porta lógica NÃO (“NOT” em inglês). Ela consiste
em converter uma dada proposição em uma proposição a ela oposta. E expressa da seguinte
maneira: Y = A

Essa expressão é lida da seguinte forma: saída Y é igual a não A pois o traço sobre o A
significa não. Para o A pode-se dizer também A barrado ou A negado.

Veja a seguir o circuito elétrico equivalente a uma porta NÃO e seus símbolos lógicos.

A lâmpada Y acenderá (1) quando a chave A estiver aberta (0). Quando a chave A estiver
fechada (1), a lâmpada não acenderá.

194
Controlador Lógico Programável

Veja a seguir, as combinações possíveis da chave e a respectiva tabela-verdade.

Combinações possíveis Tabela-verdade


Chave de entrada Saída (lâmpada) Entrada Saída
A Y A Y
aberta acesa 0 1
fechada apagada 1 0

Quando houver negação de uma variável já negada, ( A , que se lê: A barrado barrado; ou
ainda, não não A), o resultado será a própria variável, ou seja: A = A.

Em uma expressão, quando o traço estiver sobre uma variável, somente esta variável é
negada. Por exemplo, na expressão A B = Y, somente a variável A é negada.

O diagrama de blocos dessa expressão apresenta a seguinte configuração:

Quando o traço estiver sobre toda a expressão, ou seja, Y = A B , o resultado da expressão é


que será negado.

Essa expressão é representada pelo diagrama de blocos mostrado a seguir. Observe que a
negação atua sobre a saída da porta OU, que é o resultado da expressão.

195
Controlador Lógico Programável

Pode-se demonstrar essa afirmação pela tabela-verdade da expressão A B = Y.

Entrada Y
A B A+B A B
0 0 0 1
0 1 1 0
1 0 1 0
1 1 1 0

196
Controlador Lógico Programável

197
Controlador Lógico Programável

Operações lógicas básicas

Instruções de BIT

Geral
As instruções de BIT trabalham com dois valores, 1 e 0. Com instrução na forma de um contato
ou de uma saída, 1 indica ativado ou energizado; 0 indica desativado ou desenergizado.
Instruções de BIT interpretam o estado do sinal 0 ou 1 e o combina de acordo com a lógica
booleana. O resultado destas combinações é 0 ou 1, denominado como “Resultado da
Operação Lógica” (RLO).

Instruções de bit:
- Scan para Sinal “1”

198
Controlador Lógico Programável

- Scan para Sinal “0”


- Saída
- Conector
- Setar Saída
- Resetar Saída
- Setar/Resetar Flip Flop
- Resetar/Setar Flip Flop
- RLO Negado
- Salvar RLO

Instruções: AND, OR e XOR

A descrição das instruções é baseado nos exemplos acima.

AND
Se e somente se o estado do sinal I0.0 = 1 e I0.1 = 1, o resultado da operação lógica (RLO) é
1, e a saída Q4.0 torna-se 1. Se uma ou ambas as entradas tem sinal 0, o RLO é 0 e a saída
torna-se 0.

199
Controlador Lógico Programável

OR
Se o estado do sinal I0.2 = 1 ou I0.3 = 1, o RLO é 1 e a saída Q4.1 torna-se 1. Se nenhuma
das entradas for 1, o RLO = 0, e a saída torna-se 0.

XOR
A instrução XOR torna o RLO 1 se e somente se uma das entradas for 1. Se nenhuma das
entradas for 1 ou se ambas forem 1, o RLO é 0, e a saída torna-se 0.

RLO
As instruções vistas até agora tratam principalmente de checks e designações. Isto significa: O
scan processa o estado do sinal de entrada, saída, memory markers (flag), e designa um
estado de sinal para saída ou memory markers (flag).

Dois ou mais bits que forem checados em função de uma associação qualquer geram uma
operação lógica. O resultado desses checks é o resultado da operação lógica (RLO). O
resultado da operação lógica de uma AND ou uma OR pode então ser designado a uma saída
ou a uma memória (flag).

200
Controlador Lógico Programável

First Check
O termo first check (primeira checagem) indica que está sendo executada a primeira instrução
de uma lógica. Isto significa que uma nova operação lógica se iniciou, e que o resultado (RLO)
da operação lógica anterior não será considerado.

Isto torna sem importância, qual instrução (por ex. AND ou OR) está sendo utilizada como
primeira instrução de uma lógica escrita em STL.

O “first check” é gerado automaticamente pelo CLP sempre que uma lógica foi encerrada (por
ex. uma saída foi setada) ou um novo bloco foi iniciado.

Instruções para Setar, Resetar e Salvar

Geral
A função “flip-flop” consiste de operações de SET e RESET. As operações de Set e Reset
somente são executadas quando RLO=1. Quando o RLO=0, o estado atual permanece
inalterado. Se a condição para ambos, set e reset são verdadeiros simultaneamente, então em
STL, a instrução programada por último tem prioridade. Em LAD e FBD é possível selecionar o
bloco com prioridade na entrada setar ou na entrada resetar.

201
Controlador Lógico Programável

Set
Quando o RLO=1, o endereço é setado e permanece inalterado até a condição de reset ser
executada. Se, neste exemplo, o estado do sinal de I1.0=1, mesmo por um único ciclo, a saída
Q5.0 torna-se 1 e permanece até que seja resetado por outra instrução.
Reset
Quando o RLO=1, o endereço é resetado. Se, neste exemplo, o estado do sinal de I1.1=1,
mesmo por um único ciclo, a saída Q5.0 torna-se 0.

Flip-flop Set/Reset
Se o estado do sinal de entrada S=1, e a entrada R=0, o endereço (bloco acima) é setado .

Reset dominante: se o estado do sinal R torna-se “1”, o endereço setado anteriormente é


resetado para 0, independente do estado da entrada S (reset dominante)

Flip-flop Reset/Set
Com este tipo de bloco, o set é dominante.

Instruções que Influenciam o RL0

202
Controlador Lógico Programável

NOT
NOT é uma instrução para inverter o RLO. Se o RLO precedente a instrução NOT for 0, este é
negado para 1. Reciprocamente, tornará-se zero se o RLO for 1.

CLR
O RLO torna-se 0 com a instrução CLEAR, independente da condição anterior

SET
A instrução SET faz com que o RLO se torne 1.
LAD/FBD não suportam estas duas instruções (CLR/SET).

SAVE
Com a instrução de memória SAVE, o conteúdo do RLO é arquivado no bit
BINARY RESULT (BR) da palavra de status.

A BR
O RLO arquivado pode ser checado novamente usando a instrução A BR

Flanco de Impulso

203
Controlador Lógico Programável

A avaliação do flanco de impulso é freqüentemente necessária em um programa, na realidade,


sempre quando no programa uma entrada muda para ON ou para OFF, ou quando o endereço
é setado ou resetado.

Flanco de Impulso Positivo


Quando a entrada I1.0 muda seu estado de 0 para 1, como mostrado na figura
acima, a instrução FP identifica esta mudança de estado, denominada de flanco de impulso
positivo, e resulta em um RLO=“1” por somente um ciclo, ocorrendo um pulso de largura de um
ciclo na saída Q5.0.

Para uma instrução FP, uma memória auxiliar (flag) deve ser especificada (pode também ser
bit de dados) no qual o estado do RLO é arquivado. Esta é a maneira pela qual uma mudança
de sinal pode ser identificada no próximo ciclo.

Flanco de Impulso Negativo


Para um flanco de impulso negativo, o pulso de scan ocorre quando o RLO muda
de “1” para “0”.

O símbolo para isto em STL é o “FN”, e em LAD, existe a letra “N” no símbolo de saída.

204
Controlador Lógico Programável

Exercício 8.1: Declarações de Operações Lógicas

Objetivo
Entender os elementos lógicos comuns e combinações de operações lógicas binárias, e
começar familiarizar-se com o Editor S7 LAD/STL/FBD digitando operações lógicas.
Procedimento
1. Editar um OB1 (se existente, deletar o seu conteúdo).
2. Digitar as operações lógicas mostradas. Usar uma network para cada função
3. Salvar, carregar e depurar blocos na CPU.
(Quando carregando, especificar se o OB1 irá sobrescrever o da CPU)

Resultado
No modo Debug, pode-se visualizar o resultado das operações lógicas.

Exercício 8.2: Máquina de Carimbar

205
Controlador Lógico Programável

Objetivo
Programe o modo de operação dos componentes para a máquina de carimbar de acordo com
as especificações abaixo:

O sistema é iniciado através da entrada I1.1 (botão ligar, contato NA)

O sistema é desligado através da entrada I1.2(botão com trava, contato NF)

A saída Q4.5 acende a lâmpada quando o sistema está ligado.

Quando o sistema é ligado, o modo de operação pode ser selecionado:


- Com I 1.3=0 a operação manual é selecionada e com I1.3=1 a operação automática é
selecionada.
- Com o pulso na entrada I1.4, o modo de operação é aceita.

O modo de operação deverá ser sinalizado por lâmpadas(manual=Q4.6, automático= Q4.7).

Durante a operação manual, a esteira pode ser movimentada para frente com os botões não
retentivos I1.5 (Q4.0) e para trás com I1.6 (Q4.1) respectivamente.

206
Controlador Lógico Programável

Procedimento
Desenvolva um programa para o controle do modo de operação.
1. Use os endereços I/Q e os dispositivos mostrados acima.
2. Criar um programa S7 com o nome ”MAQ_CARIMBAR" no projeto PRO1.
3. Escreva um programa para implementar as partes desta aplicação no FC15 e chame o
FC15 no OB1.
4. Salve, transfira e depure seu programa no dispositivo de treinamento.

Resultado
Teste o funcionamento no simulador, selecionando o modo de operação.

Teste a operação em Manual (ligar para frente/trás).

207
Controlador Lógico Programável

Temporizadores

Temporizadores com Retardo na Energização/Desenergização

O S7 oferece três opções de temporizadores com atraso (delay timer):

208
Controlador Lógico Programável

Retardo na Energização

Retardo na Desenergização

209
Controlador Lógico Programável

Temporizadores de Pulsos

O S7 oferece duas opções de temporizadores de pulso:

210
Controlador Lógico Programável

Pulse (Pulso)

Extended Pulse (Pulso Extendido)

211
Controlador Lógico Programável

Instruções de Temporização para Bits

Temp. On-Delay SD
Se o RLO mudar de 0 para 1, o temporizador SD é inicializado. Se o temporizador estiver
funcionando, e o RLO mudar de 1 para 0, o temporizador para.

Temp. Off-Delay SF
Se o RLO muda de 1 para 0, o temporizador SF é inicializado. Se o RLO mudar de 0 para 1, o
temporizador é resetado. O temporizador não é completamente reinicializado até que até que o
RLO mude de 1 para 0.

Temp. de Pulso SP
Se o RLO muda de 0 para 1, o temporizador SP recebe o valor do tempo. O temporizador
funciona com tempo específico, contanto que RLO = 1. Se o RLO mudar de 1 para 0 com o
temporizador funcionando, o temporizador para.
Temp. Pulso Extendido SE

212
Controlador Lógico Programável

Se o RLO muda de 0 para 1, o temporizador SE recebe o valor do tempo. O temporizador


funciona por um período específico, até mesmo se o RLO
mudar para 0 antes que o temporizador pare. Se o RLO muda de 0 para 1, o temporizador é
setado novamente. O estado do sinal do tempo de scan resulta em RLO = 1, contanto que o
temporizador esteja funcionando.

Temp. On-Delay Retentivo SS


Se o RLO muda de 0 para 1, o temporizador SS recebe o valor de tempo. O temporizador
funciona com o tempo especificado, até mesmo se o RLO mudar novamente para 0 antes que
o temporizador pare de funcionar. Se o RLO mudar de 0 para 1, o temporizador é setado
novamente. O estado do sinal do tempo de scan resulta em RLO = 1, contanto que o
temporizador esteja funcionando.

213
Controlador Lógico Programável

Referências Bibliográficas

SENAI. SP. CLP Siemens S7: programação básica. São Paulo: DITEC, 2001.

______. Comandos eletroeletrônicos. Por Regina Célia Roland Novaes. São Paulo, 1994.
(Eletricista de manutenção, 3).

______. Eletrotécnica. Por Dirceu Della Coletta. São Paulo, 1990. (Mecânica geral).

______. Controlador lógico programável. São Paulo: Faculdade SENAI de Tecnologia


Mecatrônica, 2000.

214

Você também pode gostar