Sei sulla pagina 1di 95

SENAI GERALDO ALCKMIN

Pindamonhangaba

Av. Abel Correa Guimares, 971 - Jd. Rezende


Pindamonhangaba - SP
CEP 12420-680
Fone/Fax: 3642-6207
Endereo Eletrnico: www.sp.senai.br/pindamonhangaba

Controlador
Lgico
Programvel
CLP Step 7
1
Sumrio

1. Introduo ----------------------------------------------------------------------- 03
2. Funcionamento Bsico -------------------------------------------------------- 06
3. Vantagens ----------------------------------------------------------------------- 09
4. Controladores Siemens ------------------------------------------------------- 10
5. Simatic S7 300 Siemens ------------------------------------------------------ 11
6. Elementos da CPU ------------------------------------------------------------ 12
7. S7 300 - Espectro do Mdulo ----------------------------------------------- 13
8. Sistemas de Numerao ------------------------------------------------------ 14
9. Operaes Aritmticas no Sistema Binrio -------------------------------- 22
10. Bits, Bytes e Palavras -------------------------------------------------------- 24
11. Formato e Representao dos Nmeros ----------------------------------- 24
12. Operaes Lgicas ------------------------------------------------------------ 27
13. Estrutura de Programao ---------------------------------------------------- 30
14. Princpio de Funcionamento ------------------------------------------------- 31
15. Tipos de Estruturas ------------------------------------------------------------ 33
16. Blocos de Programa ----------------------------------------------------------- 34
17. Chamada de Blocos ------------------------------------------------------------ 37
18. Tipos de Dados ----------------------------------------------------------------- 38
19. Endereamento Absoluto e Simblico -------------------------------------- 41
20. Linguagem de Programao -------------------------------------------------- 43
21. Operaes com bits ------------------------------------------------------------ 43
22. Contatos Abertos, Fechados e Bobinas ------------------------------------- 44
23. Operaes Lgicas ------------------------------------------------------------ 45
24. Set e Reset --------------------------------------------------------------------- 47
25. Flancos Positivos e Negativos ----------------------------------------------- 48
26. Temporizadores ---------------------------------------------------------------- 50
27. Ativar Temporizadores ------------------------------------------------------- 51
28. Ativar e Parametrizar Temporizadores ------------------------------------- 56

2
29. Contadores --------------------------------------------------------------------- 61
30. Setar e Iniciar Contadores ---------------------------------------------------- 62
31. Parametrizar e Iniciar Contadores ------------------------------------------- 65
32. Comparadores ------------------------------------------------------------------ 68
33. Saltos e Chamadas de Blocos ------------------------------------------------ 69
34. Operaes Lgicas Digitais -------------------------------------------------- 72
35. Operaes Aritmticas Bsicas ---------------------------------------------- 74
36. Manipulao de Blocos Parametrizveis ----------------------------------- 75
37. Exerccios ----------------------------------------------------------------------- 79
38. Projeto --------------------------------------------------------------------------- 89
39. Anexos -------------------------------------------------------------------------- 90
40. Referncias Bibliogrficas --------------------------------------------------- 91
41. Introduo ao Step 7 Lite ---------------------------------------------------- 92

3
Introduo

O CLP

O critrio de projeto para o primeiro controlador programvel foi especificado em 1968 por uma
diviso da GENERAL MOTORS CORPORATION. O objetivo inicial era eliminar o alto custo
associado com os sistemas controlados a rels. As especificaes iniciais requeriam um sistema
de estado slido com a flexibilidade do computador, capaz de suportar o ambiente industrial, ser
facilmente programado e reprogramado, manuteno fcil e por ltimo facilmente expansvel e
utilizvel.
Devido ao intuito inicial de substiturem os painis de rels no controle discreto, foram chama-
dos de Controladores Lgicos Programveis - CLP (Programmable Logic Controllers - PLC).
Porm, atualmente, os controladores so bem mais complexos e no executam somente lgica
do tipo E e OU, motivo pelo qual passaram a ser chamados apenas de Controladores Program-
veis - CP. Os primeiros controladores tinham pouca capacidade de processamento e suas aplica-
es limitavam-se mquinas e pequenos processos que necessitavam de operaes repetitivas.
A partir de 1970, com o advento da tecnologia de microprocessadores, os controladores passa-
ram ter uma grande capacidade de processamento e alta flexibilidade de programao e expan-
so. Entre outras caractersticas citamos: a capacidade de operar com nmeros, realizar opera-
es aritmticas com ponto decimal flutuante, manusear dados e se comunicar com computado-
res. Desta forma, os CPs atuais podem atuar tanto em controle discreto, tais como, automao
da manufatura, onde as mquinas apresentam aes automticas e discretizada no tempo, como
em controle contnuo, tais como, processos qumicos e siderrgicos, com caractersticas primor-
dialmente analgicas.
O sistema utilizado para programar o controlador era um dispositivo dedicado e acondicionado
em um maleta porttil, chamada de maleta de programao, de forma que podia ser levada para
"campo" afim de alterar dados e realizar pequenas modificaes no programa. O sistema de
memria do controlador no permitia facilidades de programao por utilizar memrias do tipo
EPROM.
Inovaes no hardware e software entre 1975 e 1979 proporcionaram ao controlador maior

4
flexibilidade e capacidade de processamento, isto significou aumento na capacidade de memria
e de entradas/sadas, permitiu entradas/sadas remotas, controle analgico, controle de posicio-
namento, comunicaes, etc. A expanso de memria permitiu um programa de aplicao maior
e uma maior quantidade de dados de forma que os programas de controle no ficassem restritos
lgica e seqenciamento, mas tambm realizassem aquisio e manipulao de dados. Com o
desenvolvimento do controle analgico, o controlador programvel preencheu o "gap" entre
controle discreto e controle contnuo.
Os custos com fiao foram reduzidos significativamente com a capacidade do controlador de
comunicar-se com subsistemas de entrada/sada localizados em pontos remotos, distante da uni-
dade central de processamento e perto do equipamento a ser controlado. Ao invs de trazer cen-
tenas de fios para o armrio do CP, os sinais dos subsistemas podem ser multiplexados e trans-
mitidos por um nico par de fios tranados. Esta tcnica permitiu a decomposio de grandes
sistemas em pequenos subsistemas melhorando a confiabilidade, manuteno e partida gradual
dos subsistemas principais.
Em 1979 foi desenvolvida a rede de comunicao de alta velocidade (Data Highways - no jargo
dos fabricantes da poca) permitindo um controle sincronizado entre vrios controladores,
comunicao com microcomputadores e outros sistemas situados em um nvel funcional superi-
or. Com isto foi possvel combinar o desempenho do controlador programvel com a capacidade
de controle distribudo de alta velocidade e interface com computadores resultando em uma
grande potencialidade de controle e superviso.
Atualmente, existem vrios tipos de controladores, desde pequena capacidade at os mais
sofisticados realizando operaes que antes eram consideradas especficas para computadores. A
evoluo do hardware, conduziu a melhoras significativas nas caractersticas do controlador,
entre outras citamos:
Reduo no tempo de varredura;
Interfaces de E/S microprocessadas. Ex.: mdulo PID, mdulo ASCII, mdulo de posiciona-
mento;
Uma Interface Homem Mquina (IHM) mais poderosa e amigvel.
No software tambm surgiram novas caractersticas, tais como:
Linguagem em blocos funcionais e estruturao de programa;
Linguagens de programao de alto nvel, baseadas em BASIC;
Diagnsticos e deteco de falhas;
Operaes matemticas em ponto flutuante atravs de coprocessadores matemticos, etc.

5
Os Controladores Lgicos Programveis (CLPs), tambm chamado de controladores program-
veis, fazem parte da famlia dos computadores. Usam-se em aplicaes comerciais e industriais.
Um controlador, monitora as entradas, toma decises baseadas em seu programa, e controla as
sadas para automatizar um processo ou mquina. Este curso trata de mostrar informao bsica
sobre as funes e as configuraes dos controladores programveis.

MOTORES

LUZES
BOMBAS

BOTES
SENSORES

6
Funcionamento Bsico

Um controlador programvel consiste em mdulos de entradas, uma CPU, e mdulos de sadas.


Uma entrada aceita uma grande variedade de sinais analgicos ou digitais de vrios dispositivos
de campo (sensores) e os converte em uma lgica que a CPU pode usar. A CPU tomas as deci-
ses e executa as instrues de controle baseadas nas instrues do programa da memria. Os
mdulos de sada convertem as instrues de controle da CPU em um sinal digital ou analgico
que pode-se usar para controlar dispositivos de campo (atuadores). Usa-se um dispositivo de
programao para introduzir as instrues desejadas. Estas instrues especificam o que deve
fazer o controlador segundo uma entrada especfica. Um dispositivo operador permite processar
a informao para ser visualizada e introduzir novos parmetros de controle.

Unidade de
Sadas
Processo
Central

Programao

7
Os botes (sensores), do exemplo abaixo, conectados as entradas do controlador, podem ser u-
sados para acionar e parar um motor conectado a um controlador atravs de uma contatora.

ATUADORES

MOTOR
SADAS

CONTROLADOR BOTES

ENTRADA

Controle

Anteriormente aos controladores, muitas destas tarefas de controle solucionavam-se mediante


rels ou contatoras. Isto denominava-se controle mediante lgica de cabeamento. Tinham que
projetar os diagramas do circuito, especificar e instalar os componentes eltricos, e criar listas de
cabeamento. Ento os eletricistas deviam cabear os componentes necessrios para realizar uma
tarefa especifica. Quando cometia-se um erro, os cabos tinham que ser novamente conectados
corretamente. Uma alterao em sua funo ou uma ampliao do sistema, requeria grandes
alteraes nos componentes e seu cabeamento.

8
Controlador

Mesmo as tarefas mais complexas, pode-se fazer com um controlador. O cabeamento entre dis-
positivos e os contatos entre rels fazem-se no programa do controlador. Entretanto h a neces-
sidade de cabeamento para conectar os dispositivos de campo, este menos intensivo. A modifi-
cao da aplicao e a correo de erros so mais fceis de realizar. mais fcil criar e alterar
um programa em um controlador do que cabear e recabear um circuito.

9
Controladores
Vantagens
Siemens

Por que CLP?


- Com o uso do CLP ( controlador lgico programvel), alm de redues de custos, oferecem
outras vantagens:

- Confiabilidade - depois de escrito e depurado, um programa pode ser transferido e arma-


zenado facilmente em outros CLPs.

- Flexibilidade - modificaes de programas podem ser feitos com pouca digitao, pode
se fazer atualizaes do sistema sem a presena de um tcnico do fabricante, bastando ape-
nas enviar um novo programa.

- Funes avanadas - os CLPs podem realizar uma grande variao de tarefas de con-
trole, desde aes simples e repetitivas at aes de manipulao de dados complexos.

- Comunicaes - a comunicao com interfaces de operao, outros CLPs ou computado-


res, facilita a coleta de dados e o intercmbio de informaes.

- Velocidade - certas mquinas automatizadas processam milhares de informaes por mi-


nuto, objetos esto expostos a sensores e fraes de segundos, logo, necessita-se de resposta
rpida e segura, por isso o uso de CLPs.

- Diagnstico - a capacidade de resolues de problemas com o CLP muito mais rpida,


permitindo a solues de problemas de software e hardware.

- Reduo de custos - com o uso de CLP, a uma reduo significativa em termos de cus-
tos na montagem de mquinas.

10
Funcionamento Bsico

A Siemens fabrica vrias linhas de controladores da famlia SIMATIC S7.


S7-200, 300 e 400.

S7-200
O S7-200 denomina-se microsistema por causa de seu pequeno tamanho. O S7-200 tem um
design compacto em que a fonte de alimentao e as Entradas/Sadas so incorporadas.O S7-200
pode ser usado em pequenas aplicaes independentes como elevadores, lavador de veculos,
mquinas misturadoras, entre outros. Tambm pode utilizar-se em aplicaes industriais mais
complexas como mquinas de embutimentos e empacotamentos.

S7-300 e S7-400
Estes controladores usam-se em aplicaes mais complexas, que necessitam de um maior nme-
ro de Entradas/Sadas. Ambos so modulares e ampliveis. A fonte de alimentao e as Entra-
das/Sadas consistem em mdulos independentes conectados a CPU. A escolha entre o S7-300 e
o S7-400 depende da complexidade da tarefa e de uma possvel ampliao futura.

11
Simatic S7 300 Siemens

O S7-300 possui as seguintes caractersticas :

Diversas CPUs com diferentes capacidades.


Extensivo espectro de mdulos. Pode ser expandido em at 32 mdulos.
Mdulos integrados em barramento backplane.
Pode ser ligado em rede com interface multi-point ( MPI ), PROFIBUS e Industrial Ethernet.
Conexo central com PC acessa todos os mdulos ( FM e CP ).
No h regras para alocao das placas. Configurao e parametrizao via Software S7.

Especificaes Tcnicas S7-300

CPU 312 CPU314


CPU 313 CPU 314 CPU 315
IFM IFM
Memria de Trabalho 6 KByte 12 KByte 24 KByte 24 KByte 48 KByte
Memria de Carga ( RAM Integrada ) 20 KByte 20 KByte 40 KByte 40 KByte 80 KByte
Memria de Carga ( Flash EPROM ) - 512 KByte 512 KByte - 512 KByte
DI / DQ 128 128 512 992 1024
AI / AQ 32 32 64 248 128
I/O Integradas DI / DQ 10 / 6 - - 20 / 16 -
I/O Integradas AI / AQ - - - 4/1 -
Tempo de Execuo para 1K de Instruo 0,6 ms 0,6 ms 0,3 ms 0,3 ms 0,3 ms
Memory Markers ( Flags ) 1024 2048 2048 2048 2048
Contadores / Temporizadores 32 / 64 64 / 128 64 / 128 64 / 128 64 / 128
Funes Integradas sim no no sim no
Mximo Conexes Ativas por Interface MPI 4 4 4 4 4

Dados Tcnicos :
A Famlia S7-300 suporta um set de instrues e endereamento comuns.
A tabela acima mostra as especificaes tcnicas mais importantes para
CPUs 312 a 315.
Numero de Blocos :
Diferenas nas quantidades de nmeros de blocos ( FB, FC, DB ).
CPU 312 CPU 313 / 314 / 315
32 FB 128 FB FB Blocos de Funes
32 FC 128 FC FC Funes
63 DB 127 DB DB Blocos de dados

Trilhos :
Para as CPUs 312 e 313, possvel somente um trilho ( sem expanso ) As
CPUs 314 e 315 suportam at quatro trilhos ( 3 trilhos de expanso ).
Conexo DP :
O S7-315-DP possui uma interface adicional para PROFIBUS DP ( Periferia Dis-
tribuda )

12
Elementos da CPU

1. Localizao do Mdulo de Memria ( Micro Memory Card MMC ) . O MMC inserido


neste local. O mdulo arquiva o programa para quando existir uma falha na alimentao,
mesmo no caso de ausncia da bateria.
2. Status da CPU - Leds :
SF - Erro interno na CPU ou erro de diagnstico nos mdulos.
BATF - Sem bateria ou carga baixa.
DC5V - Fonte +5V; indicador de tenso DC Ok.
FRCE - Indica que pelo menos uma entrada ou sada est forada.
RUN - Piscando durante a inicializao da CPU, acesa quando a CPU est em
modo RUN ( processando o programa ).
STOP - Pisca se um reset de memria necessrio, acesa indica que a CPU est
no modo STOP ( programa no est sendo executado ).
3. Expulsor do MMC.
4. Chave para seleo manual do modo de operao da CPU :
MRES - Reset de memria ( overall reset )
STOP - O programa no executado, mesmo se a CPU estiver em On-Line.
RUN - O programa processado porm o terminal de programao tem s acesso
ao programa sem poder altera-lo
RUN-P - A CPU est processando o programa, e o terminal de programao pode
acessar e alterar o programa e o modo de operao. ( no existe trava ).
5. Segunda Interface X2 - DP
6. Primeira Interface X1 - MPI, conexo 9 pinos. Porta de programao da CPU do S7-300.
7. Conexo da Fonte de Alimentao. Existe um local para bateria de lithium em baixo da tam-
pa. A bateria salva o contedo da memria RAM no caso de uma falha na alimentao da
CPU.
8. Conexo das Entradas e Sadas.

13
S7-300 Espectro do Mdulo

A Figura acima mostra a configurao mxima do S7-300.


1. Trilho 1 ( Bastidor 0 ) - Rack Central.
2. Trilho 2 ( Bastidor 1 ) - Rack de Ampliao.
3. Trilho 3 ( Bastidor 2 ) - Rack de Ampliao.
4. Trilho 4 ( Bastidor 3 ) - Rack de Ampliao.
5. Linha de Conexo 368.
6. A limitao para CPU 31xC no pode inserir no Rack 4 o mdulo de Sinais 8.
PS - Fonte de Alimentao.
IM - Mdulos de Interface. Os mdulos de interface torna possvel a configurao de vrios
trilhos ( expanso ). Esta configurao faz a conexo entre os trilhos. Mdulo de Transmisso,
IM360 conectado no Rack Central. Mdulo de Recepo IM361 conectado no Rack de expan-
so. No mdulo de expanso so permitidos somente mdulos de I/O ( SM )
SM - Mdulo de Sinal. Os mdulos de Sinais recebem do campo os sinais eltricos e os adapta
aos vrios tipos de sinais do mdulo S7-300. Entradas e Sadas Digitais, Entradas e Sadas Ana-
lgicas. Acessrios : Conectores de bus e conectores frontais.
FM - Mdulo de Funes. O mdulo de funo oferece funes especiais como Contagem, Po-
sicionamento, Regulao em Malha Fechada.
CP - Mdulos de Comunicao. Possibilidades de Rede : Ponto a Ponto, PROFIBUS e Industri-
al Ethernet.

14
Sistema de Numerao
0 lgico, 1 lgico
Os controladores programveis s podem entender um sinal que seja On ou Off (presente ou no
presente, ligado ou desligado). O sistema binrio um sistema na qual s h dois nmeros, 1 e
0. O binrio 1 indica que um sinal est presente, ou o interruptor est ligado ( On ). O binrio 0
indica que o sinal no est presente, ou o interruptor est desligado ( Off ).

As vezes os dgitos binrios usam-se individualmente e outras so utilizados para representar


valores numricos.

Sistema Decimal
Nos controladores usam-se vrios sistemas numricos. Todos os sistemas de nmeros, tem as
mesmas caractersticas: dgitos, base, potncia. O sistema decimal, que de utilizao comum
na vida diria, tem as seguintes caractersticas :
Dez dgitos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Base 10
Potncias 1, 10, 100, 1000, ...

15
Sistema Binrio

O sistema binrio usado nos controladores programveis. Tem as seguintes caractersticas:


Dois dgitos 0, 1
Base 2
Potncias de base 2 (1, 2, 4, 8, 16, ...)
No sistema binrio, os 1s e 0s se ordenam em colunas. Cada coluna tem um peso. A primeira
coluna tem um peso binrio de 20. Isto equivale ao decimal 1. Este denominado bit menos sig-
nificativo. O peso binrio dobra-se a cada coluna sucessivamente. A coluna seguinte, por exem-
plo, tem um peso de 21, que equivale ao decimal 2. O valor decimal dobra-se em cada coluna
sucessivamente. O nmero mais a esquerda denomina-se bit mais significativo. No exemplo
abaixo, o bit mais significativo tem um peso binrio de 27. equivalente ao decimal 128.

BIT Mais Significativo BIT Menos Significativo

16
Converter em binrio

Os seguintes passos podem ser usados para interpretar um nmero decimal a partir de um valor
binrio:
1. Buscar de direita a esquerda (de menos significativo ao mais significativo) os 1s.
2. Escrever a representao decimal de cada coluna que contenha um 1.
3. Somar os valores dessas colunas.

No exemplo seguinte, as colunas quarta e quinta a partir da direita, contm um 1. O valor


decimal da quarta coluna a partir da direita 8, e o valor decimal da quinta coluna a partir da
direita 16. O decimal equivalente a este nmero binrio 24. A soma de todas as colunas com
peso que contm um 1 o nmero decimal que o controlador armazenou.

No exemplo seguinte, as colunas quarta e quinta a partir da direita contm um 1. O valor deci-
mal da quarta coluna a partir da direita 8, e o valor decimal da sexta coluna a partir da direita
32. O decimal equivalente a este nmero binrio 40.

Outro Mtodo :

17
Divide-se o nmero sucessivamente pela base desejada at que o dividendo seja nulo. O n-
mero na nova base obtido tomando-se na ordem inversa os restos da diviso, isto , o digito
mais significativo o ltimo resto e o menos significativo o primeiro resto.

Ex.: Converso do nmero 11 para a base 2 (binria)

nmero na
base original

11 2 base desejada
LSB 1 5 2
1 2 2
0 1 2
1 0 fim da
converso

MSB

18
Hexadecimal
O hexadecimal outro sistema usado nos controladores programveis. O sistema hexadecimal
tem as seguintes caractersticas :
16 dgitos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Base 16
Potncias de base 16 ( 1, 16, 256, 4096 ...)
Utilizam-se os dez dgitos do sistema decimal para os primeiros dez dgitos do sistema hexade-
cimal. Usam-se as primeiras seis letras do alfabeto para os seis dgitos restantes.

A = 10 D = 13
B = 11 E = 14
C = 12 F = 15

Utiliza-se o sistema hexadecimal nos controladores programveis porque permite representar o


estado de um grande nmero de bits binrios em um pequeno espao como no monitor de um
computador ou um visualizador de uma unidade de programao. Cada dgito hexadecimal re-
presenta o estado exato de 4 bits binrios. Para converter um nmero decimal em um nmero
hexadecimal o nmero decimal se dividir por base 16. Por exemplo, para converter o decimal
428 em hexadecimal:

Ex.: Converso do nmero 428 para a base 16 (hexadecimal)

428 16 12=C
12 26 10=A
16
10 1 16
1 0 = 1AC16

O decimal 428 dividido por 16 26 com um resto de 12. Doze equivalente a C em hexadeci-
mal. Resta 26 que dividido por 16 1 com um resto de 10 que equivalente a letra A. O hexa-
decimal equivalente do decimal 428 ser ento 1AC.

19
O valor decimal de um nmero hexadecimal, obtm-se multiplicando individualmente os dgitos
hexadecimais pelo peso de base 16 e depois somando os resultados. No exemplo seguinte o n-
mero hexadecimal 2B converte-se em seu decimal equivalente que 43.

160 = 1
161 = 16
B =11

Converso de bases: Hexa binria

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

Como pode ser observado na tabela acima cada dgito hexadecimal corresponde a um conjunto
de 4 dgitos binrios e vice-versa.

a) 1011 = B b)0001 1010 1100 = 1AC

20
Cdigo BCD

O cdigo BCD (Binary-Coded Decimal, Decimal Codificado em Binrio) so nmeros decimais


em que cada dgito est representado por um nmero binrio de 4 bits.

BCD Decimal
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9

Este cdigo utilizado para facilitar a interpretao por parte do usurio em um sistema compu-
tacional.

Ex.: observe que h diferena em representar um numero em cdigo BCD e em convert-lo sim-
plesmente para a base 2.

11 = 0001 0001 (Obs.: 11 na base 2 igual a 1011)


35 = 0011 0101 (Obs.: 35 na base 2 igual a 100011)

21
Funcionamento Bsico
Converso de Nmeros

A tabela seguinte mostra alguns poucos valores numricos em representao decimal, binrio,
BCD e hexadecimal.

22
Operaes Aritmticas no sistema binrio

Nas reas de eletrnica digital e dos microprocessadores, o estudo das operaes aritmticas no
sistema binrio muito importante pois estas sero utilizadas em circuitos aritmticos.

Adio no Sistema Binrio.


Para efetuarmos a adio no sistema binrio, devemos agir como uma adio convencional no
sistema decimal, lembrando que, no sistema binrio temos apenas dois algarismos. Temos ento:

0 0 1 1
+0 +1 +0 +1
0 1 1 10

Convm observar que no sistema decimal 1 + 1 = 2 e no sistema binrio representamos o nme-


ro 2 por 10. Pela operao realizada, notamos a regra de transporte para a prxima coluna :
1+1=0 e "vai um" .

Subtrao no Sistema Binrio.


O mtodo de resoluo anlogo a uma subtrao no sistema decimal. Temos ento:

0 0 1 1
-0 - 1 -0 -1
0 1 1 0

Observamos que para o caso 0 - 1, o resultado ser igual a 1, porm haver um transporte para a
coluna seguinte que deve ser acumulado no subtraendo e, obviamente, subtrado do minuendo.

Multiplicao nos Sistema Binrio.


Procede-se como em uma multiplicao decimal. Assim sendo temos:

0x0=0
0x1=0
1x0=0
1x1=1

23
Notao dos Nmeros Binrios Positivos e Negativos.
A representao de nmeros binrios positivos e negativos pode ser feita utilizando-se os sinais
" + " ou " - " respectivamente. Na prtica, porm em hardware dos sistemas digitais que proces-
sam operaes aritmticas, microprocessadores por exemplo, estes sinais no podem ser utiliza-
dos, pois tudo deve ser codificador em 0 ou 1. Uma forma para representar0 nmeros binrios
negativos bastante utilizada nos sistemas j citados a notao do complemento de 2, mas para
entend-la, devemos primeiramente converter o nmero na notao do complemento de 1, con-
forme se segue.

Complemento De 1
A obteno do complemento de 1 de um nmero binrio se d pela troca de cada bit do nmero
pelo seu inverso ou complemento. Para demonstrar esse procedimento, vamos obter o comple-
mento de 1 do nmero 10011011. Assim sendo, temos:

Nmero binrio 1 0 0 1 1 0 1 1
Complemento de 1 0 1 1 0 0 1 0 0

Complemento De 2
A notao do complemento de 2, como j dissemos, utilizada para representar nmeros bin-
rios negativos. Sua obteno se d somando-se 1 ao complemento de 1 do nmero binrio inici-
al. Para exemplificar, vamos representar o nmero 11001101 na notao do complemento de 2:

Nmero binrio 1 1 0 0 1 1 0 1
Complemento de 1 0 0 1 1 0 0 1 0 +1
Complemento de 2 0 0 1 1 0 0 1 1

24
10 - Bits, Bytes e Palavras ( Words )

Cada unidade binria de dados um bit. Cada 8 bits fazem 1 Byte. 2 bytes ou 16 bits, fazem 1
Palavra ( Word ). 2 Palavras ou 4 Bytes ou 32 bits fazem uma Palavra Dupla ( Double Word ).

Byte
bit

31 24 23 16 15 87 0
0 0 1 0 0 0 1 0 1 1 0 1 1 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 1

Word ( Palavra )

Double Word ( Palavra Dupla )

25
Formatos de representao dos nmeros

Binrio
Limite : 32 bits

Representao : 2#
Faixa :
Palavra ( Word ) : 2#0 at 2#1111111111111111 ( 16 uns )
Palavra Dupla ( Double Word ) : 2#0 at 2#11111111111111111111111111111111 ( 32 uns )

Hexadecimal
Limite : 32 bits
Representao :

Byte B#16#

Word ( Palavra ) W#16#

Double Word ( Palavra Dupla ) DW#16#


Faixa :
Byte : B#16#0 at B#16#FF
Word : W#16#0 at W#16#FFFF
Double Word : DW#16#0 at DW#16#FFFFFFFF

BCD
BCD Decimal Codificado em Binrio. Cada 4 bits representa um dgito.
H 2 formatos de BCD, de 3 dgitos e de 7 dgitos.
Palavra ( 16 bits ) : BCD de 3 dgitos com sinal.
Exemplo : +310

Sinal : 0000 positivo


1111 negativo
Faixa : -999 at 999

26
Dupla Palavra ( 32 bits ) : BCD de 7 dgitos com sinal.
Faixa : -9999999 at 9999999

Formatos de Nmeros
Nmeros Inteiros :
Um nmero Inteiro representado pela letra I. um nmero binrio de 16 bits que tem como
sinal o bit mais significativo.
Limite : Positivo 215 - 1 = 32767 ( o 0 considera-se positivo )
Negativo 215 = -32368

Nmeros Negativos : Faz-se o complemento de 2, mudando zeros por uns e somando 1.


Exemplo : -3 O nmero -3 portanto seria :
3 = 0000 0000 0011
C1 = 1111 1111 1100
+1 = 1111 1111 1101

Nmeros Duplos Inteiros :


Um nmero Duplo Inteiro representado pela letra D. um nmero binrio de 32 bits que
tem como sinal o bit mais significativo.
Limite : Positivo 231 - 1 = 2147483647 ( o 0 considera-se positivo )
Negativo 231 = -2147483648

27
Nmeros Reais :
Um nmero Real, tambm chamado de nmero de Ponto Flutuante, representado pela letra
R. um nmero binrio de 32 bits que constam de 2 pares :
Expoente : 8 bits
Mantissa : 24 bits

O bit mais significativo define o sinal do nmero.

Limite : Positivo = 3.402823 1038


Negativo = -3.402823 1038

28
Operaes Lgicas

Chamamos de varivel Booleana a uma varivel que pode assumir s duas condies. Um
exemplo de varivel Booleana uma chave (C ) que s pode estar aberta ou fechada, no existe
outra condio. Em eletrnica digital costumamos associar a uma varivel Booleana os smbo-
los 0 e 1 .
Podemos ter uma varivel Booleana dependente de uma ou mais variveis Booleanas. Por e-
xemplo em resposta condio de uma chave (varivel A ) a qual pode estar aberta ou fechada
podemos ter a condio de uma lmpada (varivel L ) acesa ou apagada em resposta. De acor-
do com uma determinada conveno , como na figura abaixo se convencionamos que chave a-
berta A = 0 , a chave fechada A = 1 teremos como resposta a lmpada apagada L = 0 ou acesa
L = 1.
Para caracterizar o comportamento lgico estabelecemos o que chamamos de tabela verdade do
circuito.

Expresso Booleana : L = A

Tabela Verdade
ou
A L A L
Aberta ( 0 ) Apagada ( 0 ) 0 0
Fechada ( 1 ) Acesa ( 1 ) 1 1

29
Lgica E ( And )

Antigamente os circuitos lgicos eram feitos ( implementados ) com rels, hoje usamos
portas lgicas em CI para realizar uma determinada lgica. A seguir mostraremos as principais
portas lgicas e as sua caractersticas .Podemos Ter uma varivel Booleana dependente de mais
de uma varivel Booleana , assim que podemos Ter duas chaves A e B ligadas em srie para
ligar a lmpada L. A lgica existente : a lmpada acender se A e B estiverem fechadas .
Dizemos que esta uma lgica E ( AND em ingls ). A porta lgica correspondente chamada
porta E ( AND ) e cujo smbolo est representado na Figura abaixo. Expresso Booleana: L =
B ( l-se A e B , mas por analogia com a operao multiplicao dizemos tambm A vezes
B)

A B L A B L
0 (aberta) 0 (aberta) 0 (apagada ) 0 0 0
0 ( aberta ) 1 ( fechada ) 0 ( apagada ) 0 1 0
1( fechada ) 0 ( aberta ) 0 ( apagada ) 1 0 0
1( fechada ) 1 ( fechada ) 1 ( acessa ) 1 1 1

Lgica OU ( OR )

A funo OU ( OR ) tem a seguinte lgica se pensarmos em termos de chaves ( no esquea


chave aberta 0 , fechada 1 ): A lmpada acender se a chave A OU a chave
B estiverem ligadas na Figura abaixo . Expresso Booleana: L = A+B ( Lemos A ou B, mas
por analogia com a operao soma dizemos A mais B ).

A B L A B L
0 (aberta) 0 (aberta) 0 ( apagada ) 0 0 0
0 ( aberta ) 1 ( fechada ) 1 ( acesa ) 0 1 1
1( fechada ) 0 ( aberta ) 1 ( acesa ) 1 0 1
1( fechada ) 1 ( fechada ) 1 ( acesa )
1 1 1

30
Lgica Inversora

A funo No ( NOT ) ou funo Inversora d uma sada que o complemento ( inverso ) da


entrada. Expresso Booleana : L = A

A L A L
Aberta ( 0 ) Acesa ( 1 ) 0 1
Fechada ( 1 ) Apagada ( 0 ) 1 0

31
Estrutura
Funcionamento
de programao
Bsico

Passos para a Automao de um Equipamento com CLPs

32
Princpo de funcionamento

CPUs antes de 10/1998 CPUs aps 10/1998

Sistema Operacional
inicia vigilncia do
Tempo de Ciclo.

PIQ
PII PIQ

PII

Inicializao

No momento em que ligado o CLP executa uma srie de operaes pr - programadas, grava-
das em seu Programa Monitor :
Verifica o funcionamento eletrnico da C.P.U. , memrias e circuitos auxiliares;
Verifica a configurao interna e compara com os circuitos instalados;
Verifica o estado das chaves principais ( RUN / STOP , PROG, etc. );
Desativa todas as sadas;
Verifica a existncia de um programa de usurio;
Emite um aviso de erro caso algum dos itens acima falhe.

Verificar Estado das Entradas

O CLP l o estados de cada uma das entradas, verificando se alguma foi acionada. O processo
de leitura recebe o nome de Ciclo de Varredura ( Scan ) e normalmente de alguns micro - se-
gundos ( scan time ).

33
Transferir para a Memria - Imagem do Processo PIQ e PII

Aps o Ciclo de Varredura, o CLP armazena os resultados obtidos em uma regio de memria
chamada de Memria Imagem ( Imagem do Processo ) das Entradas e Sadas. Ela recebe este
nome por ser um espelho do estado das entradas e sadas. Esta memria ser consultada pelo
CLP no decorrer do processamento do programa do usurio.

Comparar com o Programa do Usurio

O CLP ao executar o programa do usurio , aps consultar a Memria Imagem das Entradas ,
atualiza o estado da Memria Imagem das Sadas, de acordo com as instrues definidas pelo
usurio em seu programa.

Atualizar o Estado das Sadas

O CLP escreve o valor contido na Memria das Sadas , atualizando as interfaces ou mdulos de
sada. Inicia - se ento, um novo ciclo de varredura.

Vantagens da Imagem do Processo


Em comparao com o acesso direto aos mdulos de entrada e sada, o acesso a imagem de pro-
cesso oferece a vantagem de que a CPU dispes de uma imagem coerente dos sinais do processo
durante a execuo cclica do programa. Se durante a execuo do programa varia um estado de
sinal em um mdulo de entrada, este estado de sinal se conserva na imagem de processo at que
esta seja atualizada no prximo ciclo. Alm disso, o acesso a imagem de processo requer muito
menos tempo que o acesso direto aos mdulos de sinais, j que a imagem de processo encontra-
se na memria interna da CPU.

Tempo de Ciclo ( SCAN TIME )

O tempo de Ciclo o tempo que o sistema operacional necessita para executar o programa ccli-
co, assim como todas as partes do programa que interrompem este ciclo, por exemplo a execu-
o de outros blocos de organizao e as atividades do sistema como a atualizao das imagens
do processo. Este tempo vigiado pelo sistema. Transcorrido este tempo a CPU passa para o
estado STOP e chama a OB de erro de tempo.

34
Blocos
Tipos de
deprograma
estrutura

O STEP 7 fornece 3 possibilidades para o desenvolvimento de seus programas. Baseado nesta


diretriz, voc pode decidir qual a estrutura de programa mais apropriada para a sua aplicao.

Programa Linear
O programa inteiro reside em um nico bloco de instruo contnuo ( OB1 ). Esta estrutura
semelhante a um circuito de rels substitudo por um controlador lgico programvel. Como o
nome diz, um programa descreve um grupo de instrues que so repetidamente realizadas se-
quencialmente. Simplifica-se as funes de administrao do software considerando que h so-
mente um bloco. Por outro lado, pelas instrues estarem dentro do mesmo bloco elas so exe-
cutadas a cada ciclo at mesmo as partes que no so usadas pelo programa. Este mtodo no
utiliza a CPU de forma eficiente. Outra dificuldade est na manuteno do software j que ser
necessrio analisar todo o programa para fazer uma pequena alterao.

Programa particionado
O programa dividido em blocos, cada bloco contm uma lgica especfica para dispositivos ou
tarefas. As informaes residentes no bloco de organizao ( OB1) determinam a ordem de exe-
cuo dos blocos a serem processados. Um programa particionado pode, por exemplo, conter
blocos de instrues com os quais os modos de operaes individuais de um processo industrial
so controlados. Neste caso, a vantagem que os blocos somente so chamados durante o ciclo
quando necessrios, otimizando assim a utilizao da CPU. Alm disso, em sua manuteno,
podemos fazer alteraes em seus blocos especficos ( individuais ) no havendo a necessidade
de analise de todo o programa.
FC 10
Motor 1

OB 1 FC 15
Motor 2

FC 20
Motor 3

Programa Estruturado

Um Programa estruturado contm blocos de instrues com parmetros definidos pelo usurio
(blocos parametrizados). Estes blocos so projetados de forma que possam ser usados univer-
salmente ( Genricos ). Os parmetros atuais ( os endereos de entradas e sadas ) so especifi-
cados durante a chamada do bloco.
FC 10
Motor 1

OB 1 FC 10
Motor 2

FC 10
Motor 3

35
O Simatic S7 dispe de uma srie de blocos que dividem a memria de programa e a de dados em sees,
permitindo uma programao estruturada e um acesso ordenado aos dados. O nmero de blocos vai de-
pender do tipo de CPU empregada, dispondo em geral dos seguintes:

Tipos de Mdulos
Blocos de Organizao (OB)
Constituem a forma de comunicao entre o sistema operacional da CPU e o programa do usurio. Exis-
tem 3 tipos de OB, aos quais esto acessveis segundo o tipo de CPU:
OB 1 (ciclo livre): o mdulo principal. Voc pode salvar o seu programa inteiro no OB1 e deixar pro-
cessando a cada ciclo. Voc pode tambm salvar o seu programa em vrios blocos e usar o OB1 para
chamar estes blocos quando necessrio.
OB de erro e alarme: so os que contm a seqncia de aes a realizar no caso de que se produza um
alarme ou erro programado. Ex. : OB40 - OB80
OB de arranque: neste mdulo podemos introduzir valores para que permitam o arranque definido da
instalao, bem como um arranque inicial caso haja uma falha de alimentao. Ex. : OB100 - OB101

Blocos de Funes (FB)


Um bloco de funo uma funo ou uma sequencia de comandos armazenados em um bloco lgico,
onde os parmetros podem ser arquivados em uma memria. O FB utiliza esta memria adicional na
forma de um Bloco de Dados Instance DB . Parmetros passados para o FB, e alguns dos dados locais
so arquivados neste blocos de dados associado ( Instance DB ). Outros dados temporrios so arquiva-
dos na pilha local ( L stack ). Dados arquivados em Instance DB so retidos ( armazenados ) quando o
Bloco de Funo fechado. Dados arquivados na pilha L stack no so retidos.

Campo de Aplicao :
Um FB contm um programa que executa-se sempre quando o FB chamado por outro bloco
lgico. Os blocos de funo simplificam a programao de funes complexas de uso frequente.
A cada chamada de um bloco de funes que transfere parmetros est associado um bloco de
dados Instance. Mediante a chamada de vrias instancias de um FB possvel controlar vrios
equipamentos com um FB. Um FB para um tipo de motor pode controlar, por exemplo, diferen-
tes motores utilizando dados de instancia diferentes para os diferentes motores. Os dados para
cada motor ( tais como nmero de RPM, rampas, tempos de funcionamento acumulado, etc. )
podem ser memorizados em um dos vrios DBs de instancia.

36
Funes (FC)
A Funo um bloco de operao lgica similar ao bloco de funo para o qual no designado rea de
memria. Um FC no necessita de um Bloco de Dados Instance. As Variveis locais so arquivadas na
pilha local ( L stack ) at que a funo esteja concluda, sendo perdidas quando o FC termina a execuo.
Para fins de memorizao de dados, as funes podem utilizar blocos de dados globais.
Como uma FC no tem associada nenhuma memria, devem-se sempre indicar parmetros atuais.

Campo de Aplicao :
A FC contm um programa que executa-se cada vez que a FC chamada por outro bloco lgico.
As funes podem ser utilizadas para devolver um valor de funo ao bloco invocante, por e-
xemplo, funes matemticas. Executar uma funo tecnolgica, por exemplo, controle individu-
al com combinao binria.
Associao de parmetros atuais e parmetros formais :
O parmetro formal um nome ( apelido ) para o parmetro real, ou seja, o parmetro atual.
Os parmetros atuais substituem os parmetros formais ao efetuar-se a chamada a um FC. A um
parmetro formal de um FC devem sempre associar parmetros atuais, por exemplo, parmetro
formal START um parmetro atual I 3.6. Podem ser utilizados em parmetros de entrada e
sada.

Blocos de dados(DB)
Um bloco de dados uma rea de dados permanente na qual dados ou informaes que outras funes
coletaram so armazenados. Bloco de dados so reas de leitura/escrita que podem ser carregados na
CPU como parte de seu programa.
Os blocos de dados podem ser de dois tipos:
Blocos de dados globais: podem ser utilizados por qualquer mdulo do programa.
Blocos de dados de instancia: atribui-se a um determinado bloco de funo e s podem ser manejados a
partir deste bloco. Podem atribuir-se vrios blocos de dados de instancia a um bloco de funo.

Blocos de funes de Sistema (SFB)

37
Um bloco de funo de sistema parte integral da CPU. Voc pode utilizar um SFB em seu programa,
sem carregar como parte de seu programa porque os SFBs so parte do sistema operacional. SFBs de-
vem ser associados a um DB, o qual dever ser transferido para a CPU como parte de seu programa.
Exemplo : na CPU 312 -> SFB 29 HS_COUNT Contador de Alta Velocidade.

Funes de Sistema (SFC)

Funo de sistema uma pr programada e testada funo que integrada a CPU. Algumas das tarefas
suportadas por estas funes so setar parmetros para mdulos, comunicao de dados, funes de c-
pia, manipulao do relgio, contador de horas de funcionamento. etc. Uma SFC pode ser chamada pelo
seu programa, porm sem precisar fazer parte dele ( no ocupa memria de trabalho ).

Blocos de Dados de Sistema (SDB)

Um bloco de dados de sistema uma rea de memria que a ferramenta STEP 7 gera para arquivar dados
necessrios para o controle de operaes. Informaes, tais como dados de configurao, conexes de
comunicao e parmetros so salvos em SDBs.

OBS. :
Cada CPU possu seus SFBs e SFCs especficos. Para obter maiores detalhes, consulte o manual
Funes Standart e Funes de Sistema das CPUs Step 7-300.

38
Chamada de Blocos
A figura seguinte ilustra a seqncia da chamada de um bloco dentro do programa do usurio. O
programa chama o segundo bloco, cujas operaes executam-se at o final. Finalizado o trata-
mento do bloco chamado, continua-se o processamento do bloco invocante com a operao sub-
sequente a da chamada do bloco.

Seqncia e profundidade de agrupamento


A seqncia e o agrupamento das chamadas de blocos denomina-se hierarquia de chamadas. A
profundidade de agrupamento admissvel depende do tipo de CPU. A figura seguinte mostra, em
um exemplo, a seqncia e a profundidade de agrupamento das chamadas de blocos dentro de
um ciclo de execuo.

Ordem de criao de blocos:


Os blocos criam-se de cima para baixo, ou seja, que comea-se com a fila superior de blocos.
Cada bloco que se chame j dever existir. Portanto, em uma fila de blocos, a ordem de criao
dever ser da direita para esquerda.
O OB 1 o ltimo bloco que se cria.
Conforme estas regras, a ordem de criao dos blocos da figura de exemplo seria o seguinte:
FC 1 > FB 1 + DB 1 de instancia > DB 1 > SFC 1 > FB 2 + DB 2 de instancia > OB 1

39
Tipos de dados
Os operandos das instrues compem-se de um dado que pode ser de distintos tipos. Os tipos de dados
possveis so:

M Memory Markers ( Marcas de Memria - Flag )


I Entradas
Q Sadas
T Temporizadores
C Contadores
DB Data Block ( Mdulo de Dados )

Cada um destes tipos podem enderear-se em 4 possveis modos (salvo T e C):

bit
B: Byte (8 bits).
W: Word ( Palavra 16 bits).
D: Double Word ( Palavra Dupla 32 bits).

Marcas de Memria

Quando realizamos nosso programa e operamos a nvel de bit em operaes lgicas (and, or, etc.) pode
ser que nos aparea a necessidade de armazenar o resultado lgico que tenhamos em um determinado
momento. Para isso dispomos de 256 marcas de memria de 1 byte, ou seja , um total de 2048 marcas de
1 bit, que podemos enderear como:

Bit de Marcas M 0.0 a M 255.7


Byte de marcas MB 0 a MB 255
Palavra de marcas MW 0 a MW 254
Palavra dupla de marcas MD 0 a MD 252

40
Entradas e sadas

O que so Entradas e Sadas ?

Entrada
Byte
Bit

I x.x - Designa uma entrada.


um elemento usado para monitorar uma ao ou um evento, como um interruptor, pressostato,
termostato, etc.
Na CPU 312C ns temos 10 Entradas Digitais Integradas. So elas:
I 124.0, I 124.1, I 124.2, I 124.3, I 124.4, I 124.5, I 124.6, I 124.7, I 125.0, I 125.1

Sada
Byte
Bit

Q x.x - Designa uma Sada.


usada para controlar um equipamento como um motor, uma vlvula ou um LED.
Na CPU 312C ns temos 6 Sadas Digitais Integradas. So elas:
Q 124.0, Q 124.1, Q 124.2, Q 124.3, Q 124.4, Q 124.5

Tal como comentamos anteriormente, manejaremos uma imagem das entradas e das sadas.
O nmero de e/s disponveis depender do tipo de CPU que empregarmos, alm dos mdulos
externos que tenhamos conectados. Como mximo o controlador pode manejar at 65536 bytes
para cada tipo de e/s. Em cada caso podemos enderear como:

IMAGEM DO PROCESSO DAS ENTRADAS : PII

Bit de Entrada I 0.0 a I 65535.7


Byte de entrada IB 0 a IB 65535
Palavra de entrada IW 0 a IW 65534
Palavra dupla de entrada ID 0 a ID 65532

41
IMAGEM DO PROCESSO DAS SADAS : PIQ

Bit de Sada Q 0.0 a Q 65535.7


Byte de sada QB 0 a QB 65535
Palavra de sada QW 0 a QW 65534
Palavra dupla de sada QD 0 a QD 65532

ENTRADAS EXTERNAS: Periferia

Byte de entrada da periferia PIB 0 a PIB 65535


Palavra de entrada da periferia PIW 0 a PIW 65534
Palavra dupla de entrada da periferia PID 0 a PID 65532

SADAS EXTERNAS: Periferia

Byte de sada da periferia PQB 0 a PQB 65535


Palavra de sada da periferia PQW 0 a PQW 65534
Palavra dupla de sada da periferia PQD 0 a PQD 65532

Todas estas entradas e sadas podem ser de trs tipos:

E/S digitais:
so as e/s mais freqentes e que em maior quantidade vamos ter.

E/S digitais de alarme/erro:


no so e/s adicionais, configuram-se dentro do Step7 e ocupam uma das e/s digitais normais.

E/S analgicas:
estas sim so e/s adicionais, porem tem que ser configuradas tambm no Step7 para especificar a
faixa de endereos que vo ocupar.

42
ENDEREAMENTOS
Os endereamentos so sempre realizados em grupos de 8 bits ou seja em Byte. Quando so
realizados em Palavra ( Word ) devem ser endereados conforme abaixo :

215 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20

IW n Palavra de Entrada n ( Input Word n ) =


IB n Byte de Entrada n ( Input Byte n ) +
IB n+1 Byte de Entrada n+1 ( Byte de Entrada n + 1 )
Exemplos :
IW10 = IB 10 + IB 11
QW101 = QB 101 + QB102
MW26 = MB26 + MB27
Quando so realizados em Palavra Dupla ( Double Word ) devem ser endereados conforme
abaixo :

231 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 20
ID n Palavra Dupla de Entrada n ( Input Double Word n ) =
IB n Byte de Entrada n + IB n+1 Byte de Entrada n+1 +

IB n+2 Byte de Entrada n+2 + IB n+3 Byte de Entrada n+3


Exemplos :
ID10 = IB 10 + IB 11 + IB 12 + IB13
QD101 = QB 101 + QB102 + QB102 + QB103
MD26 = MB26 + MB27 + MB28 + MB29

43
Endereamento absoluto e simblico

Endereos Absolutos :

Um endereo absoluto um endereo especfico na CPU ( operandos Formais ), por exemplo,


entrada I 1.0. Neste caso, no necessrio editar uma lista de simblicos, o programa porm
mais diccil de entender.

Endereos Simblicos :

O Endereamento simblico torna possvel trabalhar com smbolos tais como Motor_liga, ao
invs do endereamento absoluto. Os smbolos para entradas, sadas, temporizadores, contado-
res, memory makers e blocos so arquivados na lista de simblicos. Neste caso, os si]mbolos
so tambm chamados de smbolos globais porque o acesso possvel por todos os blocos

A lista de simblicos para os Smbolos Globais criado com a ferramenta Symbol Editor. As
outras ferramentas do STEP 7, tambm tem condio de acessar a lista de simblicos para exibir
os endereos simblicos.

44
Linguagem de programao

Para facilitar a programao dos CLPs , foram sendo desenvolvidas durante o tempo, diversas
Linguagens de Programao. Essas linguagens de programao constituem-se em um conjunto
de smbolos, comandos, blocos , figuras, etc, com regras de sintaxe e semntica.

Essas linguagens se mostram bastante eficientes, principalmente porque permite ao usurio re-
presentar o programa de automao, tanto em Diagrama de Contatos ( LAD ou LADDER ), em
Diagrama Lgico ( CFS ) e como uma Lista de Instrues ( STL ). Isso facilita o manejo da lin-
guagem a um amplo crculo de usurios, na confeco e modificao de programas. Uma biblio-
teca dos denominados Blocos Funcionais Estandarizados , posta disposio dos usurios, um
passo a mais na confeco racional de programas e reduo dos custos de software.

A linguagem que utilizaremos neste mdulo ser a linguagem LADDER.


Ladder segue os princpios de linguagem de Esquemas de Contatos fixados pela norma IEC
1131-3.

45
Instrues com bits

As instrues de BIT trabalham com dois valores, 1 e 0. Com instruo na forma de um contato
ou de uma sada, 1 indica ativado ou energizado; 0 indica desativado ou desenergizado. Instru-
es de BIT interpretam o estado do sinal 0 ou 1 e os combina de acordo com a Lgica Boolea-
na. O resultado destas combinaes 0 ou 1, denominado como Resultado Lgico da Opera-
o ( R L O ).

22 - Contato Normalmente Aberto

O Contato Normalmente Aberto fecha-se se o valor do bit consultado, que armazena-se no <O-
perando> indicado, 1. Se o contato est fechado, a corrente flui atravs do contato e o RLO (
Resultado Lgico ) 1. Do contrrio, se o estado do sinal no <Operando> indicado 0, o
contato est aberto. Se o contato est aberto no h fluxo de corrente e o Resultado Lgico da
Operao ( RLO ) 0.

22 - Contato Normalmente Fechado

O Contato Normalmente Fechado abre-se se o valor do bit consultado, que armazena-se no <O-
perando> indicado, 0. Se o contato est fechado, a corrente flui atravs do contato e o RLO (
Resultado Lgico ) 1. Do contrrio, se o estado do sinal no <Operando> indicado 1, o
contato est aberto. Se o contato est aberto no h fluxo de corrente e o Resultado Lgico da
Operao ( RLO ) 0.

46
22 - Bobina, Sada

Sada opera como uma bobina em um esquema de circuitos. Se a corrente flui at a bobina (RLO
= 1), o bit no <Operando> torna-se 1. Se no flui corrente at a bobina (RLO = 0), o bit no
<Operando> torna-se 0. Uma bobina de sada s pode colocar-se dentro de um esquema de
contatos no extremo direito de um circuito ( Final da Linha ). Pode haver no mximo 16 sadas
mltiplas.

47
Operaes Lgicas

As Operaes Lgicas com bits interpretam os estados dos sinais 1 e 0, e os combinam de


acordo com a Lgica de Boole.

AND
Representado pela associao srie :

Na situao acima, quando tivermos 1 nas entradas I 32.0 E I 32.1 a sada Q 32.0 ligada,
A sada no continuar ligada se uma das entradas vir a 0. Adiante estudaremos uma situao
onde a sada continuaria ligada mesmo que uma das entradas viesse a 0.
NAND
Representado pela associao srie negada :

Na situao acima, quando no tivermos 1 nas entradas I 32.0 E I 32.1 a sada Q 32.0 li-
gada, e se qualquer das entradas tornar-se 1 a sada Q 32.0 desligada.
OR

Na situao acima, quando tivermos 1 nas entradas I 32.0 OU I 32.1 a sada Q 32.0 ligada.
NOR

48
Na situao acima, enquanto as duas entradas estiverem desligadas ( 0 ), a sada Q 32.0 estar
ligada. Para que a sada Q 32.0 desligue deveremos ter as duas entradas ligadas ( 1 ).
A seguir mais algumas instrues de Bits.
NOT - Inverter Resultado Lgico (RLO)

Inverte o bit do RLO ( Resultado Lgico da Operao )


Exemplo :

A Sada Q 4.0 ser 0 se :


O estado da entrada I 0.0 for 1 OU o estado da entrada I 0.1 E I 0.2 for 1.

Conector

Conector um elemento intercalado que cumpre uma funo de armazenar; o conector armaze-
na o RLO atual ( o estado do sinal de fluxo de corrente ) no < Operando > que foi especificado.
Este elemento de armazenamento memoriza a combinao lgica de bits da ultima linha aberta e
que est antes dele. inserido em srie com outros elementos como um contato. O elemento
conector nunca deve ser conectado a uma barra de alimentao nem deve empregar-se no final
de uma linha. Pode-se criar a negao do elemento conector colocando antes o elemento NOT.
Exemplo :

M 0.0 tem o RLO de I 1.0 e I 1.1


M 1.1 tem o RLO de I 1.0, I 1.1, I2.2, I1.3 e NOT
M 2.2 tem o RLO de toda a combinao de bits.

49
SET e RESET

Ativar Sada

Ativar Sada ( Setar ) s executado se o RLO das operaes anteriores for 1 ( fluxo de cor-
rente na bobina ). Se o RLO for 1 o <Operando> indicado do elemento se torna 1 e mesmo
que logo em seguida o RLO tornar-se 0, o <Operando> continuar 1 . Um RLO = 0 no
tem efeito algum, de forma que o estado do sinal atual do operando no se altera.
Desativar Sada

Desativar sada ( Resetar ) s executado se o RLO das operaes anteriores for 1 ( fluxo de
corrente na bobina ). Se o RLO for 1 o <Operando> indicado do elemento se torna 0. Um
RLO = 0 no tem efeito algum, de forma que o estado do sinal atual do operando indicado do
elemento no se altera. O <Operando> tambm pode ser um Temporizador ( N de T ) cujo valor
de temporizao torna-se 0 ou um Contador ( N de C ) cujo valor de contagem torna-se 0.
Bloco Set/Reset - Reset Dominante

Se o estado do sinal de entrada S=1, e a entrada R=0 o operando ( bloco acima ) setado.
Se o estado do sinal R torna-se 1, o operando setado anteriormente resetado para 0, inde-
pendente do estado da entrada S ( Reset Dominante )

50
Bloco Reset/Set - Set Dominante

Se o estado do sinal de entrada R = 1, e a entrada S = 0 o operando ( bloco acima ) resetado.


Se o estado do sinal S torna-se 1, o operando resetado anteriormente setado para 1, inde-
pendente do estado da entrada R ( Set Dominante )

51
Flanco de impulso

Flanco Positivo Flanco Negativo

RLO
1

A avaliao do flanco de impulso frequentemente necessria em um programa, na realidade,


sempre quando no programa uma entrada muda para ON ou para OFF, ou quando o endereo
setado ou resetado isto ocorre.

Detectar Flanco Decrescente 1 -> 0

Detecta uma mudana de estado de sinal do <Operando> de 1 para 0 e indica esta mudana
com RLO = 1 com um pulso de um ciclo ( scan ).

Exemplo :

Na figura acima, a Marca de Flancos M 0. 0 armazena o estado de sinal do RLO da combinao


de bits em seu conjunto, Se o estado do sinal do RLO muda de 1 para 0 a sada Q 3.0 torna-
se 1 por um ciclo ( Scan ).

52
Detectar Flanco Crescente 0 -> 1

Detecta uma mudana de estado de sinal do <Operando> de 0 para 1 e indica esta mudana
com RLO = 1 por um ciclo ( Scan ).

Na figura acima, a Marca de Flancos M 0. 0 armazena o estado de sinal do RLO da combinao


de bits em seu conjunto, Se o estado do sinal do RLO muda de 0 para 1 a sada Q 3.0 torna-
se 1 por um ciclo ( Scan )..

53
AtivarTemporizadores
temporizadores

A CPU reserva uma rea de memria para os temporizadores. Nesta rea de memria, uma pa-
lavra de 16 bits reservada para cada endereo de temporizador at 256. Consulte os Dados
Tcnicos da CPU para saber quantos temporizadores esto disponveis. O Valor de tempo pode
ser parametrizado na faixa de 10 ms at 9990 s ( 2 horas, 46 minutos, 30 segundos ) em incre-
mentos de 10 milisegundos.
Identificao
Identifica-se com a letra T.
De T0 a T255
Valores de Temporizao
O Valor de temporizao carregado nos seguintes formatos e sintaxe :

S5TIME#aH_bM_cS_dMS
S5T#aH_bM_cS_dMS
Sendo :
S5TIME# Formato de Tempo
S5T# Formato de Tempo Simplificado
H - Horas
M - Minutos
S - Segundos
MS - Milisegundos
a,b,c,d - Valores definidos pelo usurio.

Exemplos :

S5TIME#4S 4 segundos
S5#2h_15m 2 horas e 15 minutos
S5T#1H12M18S 1 hora 12 minutos e 18 segundos
O Step 7 oferece 5 tipos de temporizadores a seguir :

54
<N do T>
---( SP )
<Valor de temporizao>

Descrio da operao

---( SP ) (Inicia o temporizador com pulso) Inicia o temporizador indicado com o <valor de
temporizao> se no RLO se produz um flanco crescente. O temporizador continua funcionan-
do com o intervalo de tempo indicado enquanto o RLO seja positivo ("1").
O estado do contador "1" enquanto est habilitado o temporizador. Se o RLO muda de "1" a
"0" antes de transcorrer o valor de temporizao, o temporizador para. Neste caso o estado do
temporizador "0".

Se o estado do sinal na entrada I 0.0 muda de "0" a "1" (flanco crescente no RLO), o temporiza-
dor T5 inicia. O temporizador continua em funcionando com o valor de temporizao indicado
de 2 s enquanto I 0.0 seja "1". Se o estado de sinal em I 0.0 muda de "1" para "0" antes de trans-
correr o tempo, o temporizador para. A sada Q 4.0 "1" enquanto o temporizador est funcio-
nando. Se o estado do sinal na entrada I 0.1 muda de "0" para "1", o temporizador T5 vai a 0, ou
seja, para e o valor de temporizao restante vai para "0".

O Tempo mximo durante o qual o sinal de sada permanece em 1 idntico ao tempo pro-
gramado. O sinal de sada permanece em 1 por um perodo menor se o sinal de entrada muda
para 0.

<N de T>
---( SE )
<Valor de temporizao>

55
Descrio da operao

---( SE ) (Inicia o temporizador com pulso prolongado ) Inicia o temporizador indicado com o
<valor de temporizao> se o RLO produz um flanco crescente. O temporizador continua fun-
cionando com o intervalo de tempo indicado mesmo que o RLO for para "0" antes de transcorrer
o tempo. O estado do temporizador "1" enquanto est em funcionamento. O temporizador vol-
ta a habilitar-se com o valor de temporizao indicado se o RLO muda de "0" para "1" enquanto
o temporizador est em funcionamento.

Se o estado do sinal na entrada I 0.0 muda de "0" para "1" (flanco crescente no RLO),o tempori-
zador T5 inicia. O temporizador continua em funcionamento com o valor de temporizao indi-
cado, sem ser afetado por um flanco negativo no RLO. Se o estado do sinal na I 0.0 muda de "0"
para "1" antes de transcorrer o tempo, o temporizador reinicia. A sada Q 4.0 "1" enquanto o
temporizador est em funcionamento. Se o estado do sinal na entrada I 0.1 muda de "0" para
"1", o temporizador T5 vai para 0, ou seja, para e o valor de temporizao restante vai para
"0".

O sinal de sada permanece em 1 durante o tempo programado, independentemente do tempo


em que o sinal de entrada esteja em 1.

56
<N de T>
---( SD )
<Valor de temporizao>

Descrio da operao

---( SD ) (Inicia o temporizador com retardo na conexo) Inicia o temporizador indicado com o
<valor de temporizao> se no RLO se produz um flanco crescente. O estado do sinal do tem-
porizador ser "1" se o <valor de temporizao> transcorreu sem erros e o RLO continua sen-
do "1". Se o RLO muda de "1" para "0" enquanto o temporizador est em funcionamento, este
resetado. Neste caso, uma consulta de "1", da como resultado o valor "0".

Se o estado do sinal na entrada I 0.0 muda de "0" para "1" (flanco crescente no RLO), o tempo-
rizador T5 inicia. Se transcorre o tempo e o estado do sinal na I 0.0 continua sendo "1", a sada
Q 4.0 "1". Se o estado do sinal na entrada I 0.0 muda de "1" para "0", o temporizador reseta-
do e Q 4.0 "0". Se o estado do sinal na entrada I 0.1 muda de "0" para "1", o temporizador T5
vai para 0, ou seja, para e o valor de temporizao restante vai para a "0".

O sinal de sada muda de 0para 1 somente se o tempo programado transcorreu e o sinal de


entrada ainda continua em 1.

57
<N de T>
---( SS )
<Valor de temporizao>

Descrio da operao

---( SS ) (Inicia o temporizador com retardo na conexo com memria) Inicia o temporizador
indicado se no RLO se produz um flanco crescente. O estado do sinal do temporizador "1" se o
tempo foi transcorrido. Um reincio do temporizador s possvel se este foi colocado expres-
samente em 0. O estado do temporizador s pode ser resetado se for colocado em zero. O tem-
porizador volta a iniciar-se com o valor de temporizao indicado se o RLO muda de "0" para
"1" enquanto transcorre o tempo.

Se o estado do sinal na entrada I 0.0 muda de "0" para "1" (flanco crescente no RLO), o tempo-
rizador T5 inicia. Se o estado do sinal na entrada I 0.0 muda de "0" para "1" antes de transcorrer
o tempo, o temporizador volta a iniciar. A sada Q 4.0 "1" se foi transcorrido o tempo. Se o
estado do sinal na entrada I 0.1 "1", o temporizador T5 vai para 0, ou seja, para e o valor de
temporizao restante vai para "0".

O sinal de sada muda de 0para 1 somente se o tempo programado transcorreu, independen-


temente do tempo em que o sinal de entrada esteja em 1.

58
<N de T>
---( SF )
<Valor de temporizao>

Descrio da operao

---( SF ) (Inicia o temporizador com retardo na desconexo) Inicia o temporizador indicado se


no RLO se produz um flanco decrescente. O estado do sinal do temporizador "1" se o RLO
"1" ou enquanto funcione o temporizador com o <valor de temporizao>. O temporizador vai
para zero se o RLO muda de "0" para "1" enquanto est em funcionamento o temporizador. O
temporizador sempre volta a iniciar se o RLO muda de "1" para "0".

Se o estado do sinal na entrada I 0.0 muda de "1" para "0", o temporizador inicia. Q 4.0 "1" se
I 0.0 for "1" ou se o temporizador est em funcionamento. Se o estado do sinal na entrada I 0.1
muda de "0" para "1", o temporizador T5 vai para 0, ou seja, para, e o valor de temporizao
restante vai para "0".

O sinal de sada muda de 0para 1 quando o sinal de entrada muda de 1para 0. O sinal
da sada permanece em 1 durante o tempo programado. O temporizador inicia quando o sinal
de entrada muda de 0para 1.

59
Ativar e parametrizar blocos temporizadores

S_PULSE
S -> SET - Ativar Temporizador
N do Temporizador
TV -> Time Variable - Valor da Temporizao
R -> RESET - Desativar Temporizador
Q -> Output - Sada
BI -> Temporizao Atual em Binrio
BCD - > Temporizao Atual em BCD

Descrio da operao

S_PULSE (Parametrizar e iniciar o temporizador com pulso) Inicia o temporizador indicado


quando h um flanco crescente na entrada de ativao S. Para iniciar um temporizador tem que
produzir-se necessariamente uma mudana de sinal. O temporizador funciona enquanto o estado
do sinal na entrada S seja "1", porm, como mximo, durante o tempo indicado pelo valor de
temporizao na entrada TV. O estado do sinal na sada Q "1" enquanto funcionar o tempori-
zador. Se o estado do sinal na entrada S muda de "1" para "0" antes de transcorrer o intervalo de
tempo, o temporizador para. Neste caso o estado do sinal na sada Q "0". O temporizador vai a
0 se a entrada de desativao R do temporizador vai a "1" enquanto funcione o temporizador.
O valor de temporizao atual e a base de tempo tambm vai a 0. Um sinal "1" na entrada R
do temporizador no tem efeito algum se o temporizador no est em funcionamento.
O valor de temporizao atual fica depositado nas sadas BI e BCD. O valor de temporizao na
sada BI est em cdigo binrio, o valor na sada BCD est em formato decimal codificado em
binrio. O valor de temporizao atual eqivale ao valor inicial de TV menos o valor de tempo-
rizao que foi transcorrido desde o incio do temporizador.

Se o estado do sinal da entrada I 0.0 muda de "0" para "1" (flanco crescente no RLO), se ativa o
temporizador T5. O temporizador continua em funcionamento com o valor de temporizao
indicado de 2 segundos (2 s) enquanto a entrada I 0.0 seja 1. Se o estado de sinal da entrada I
0.0 muda de "1" para "0" antes de transcorrer o tempo, o temporizador para. A sada Q 4.0 "1"
enquanto o temporizador estiver em funcionamento, e "0" se o tempo transcorrido ou se o tem-
porizador foi posto em 0.

60
S-PEXT
N do Temporizador S -> SET - Ativar Temporizador
TV -> Time Variable - Valor da Temporizao
R -> RESET - Desativar Temporizador
Q -> Output - Sada
BI -> Temporizao Atual em Binrio
BCD - > Temporizao Atual em BCD

Descrio da operao

S_PEXT (Parametrizar e iniciar o temporizador com pulso prolongado) Inicia o temporizador


indicado quando h um flanco crescente na entrada de ativao S. Para iniciar um temporizador
tem que produzir-se necessariamente uma mudana de sinal. O temporizador continua em fun-
cionamento durante o tempo pr-determinado, indicado na entrada TV, mesmo que o estado do
sinal na entrada S for a "0" antes de haver transcorrido o intervalo de tempo. O estado do sinal
na sada Q "1" enquanto o temporizador estiver em funcionamento. O temporizador reiniciar
com o valor de temporizao pr-determinado se o estado do sinal na entrada S muda de "0"
para "1" enquanto o temporizador estiver em funcionamento. O temporizador vai a 0 se a en-
trada de desativao R do temporizador for "1" enquanto o temporizador estiver funcionando. O
valor de temporizao atual e a base de tempo vai a 0. O valor de temporizao atual fica de-
positado nas sadas BI e BCD. O valor de temporizao na sada BI est em cdigo binrio, o
valor na sada BCD est em formato decimal codificado em binrio. O valor de temporizao
atual eqivale ao valor inicial de TV menos o valor de temporizao que foi transcorrido desde o
incio do temporizador.

Se o estado do sinal da entrada I 0.0 muda de "0" para "1" (flanco crescente no RLO), ativa-se o
temporizador T5. O temporizador continua em funcionamento com o valor de temporizao
indicado de 2 segundos sem ser afetado por um flanco decrescente na entrada S. Se o estado do
sinal da entrada I 0.0 muda de "0" para "1" antes de transcorrer o tempo, o temporizador reinici-
a. Se o estado do sinal da entrada I 0.1 muda de "0" para "1" enquanto o temporizador estiver
funcionando, este vai para 0. A sada Q 4.0 "1" enquanto o temporizador estiver funcionan-
do.

61
S_ODT

N do Temporizador
S -> SET - Ativar Temporizador
TV -> Time Variable - Valor da Temporizao
R -> RESET - Desativar Temporizador
Q -> Output - Sada
BI -> Temporizao Atual em Binrio
BCD - > Temporizao Atual em BCD

Descrio da operao
S_ODT (Parametrizar e iniciar o temporizador com retardo na conexo) Inicia o temporizador
indicado quando h um flanco crescente na entrada de incio S. Para iniciar um temporizador,
tem que produzir-se necessariamente uma mudana de sinal. O temporizador continua em fun-
cionamento com o valor de temporizao indicado na entrada TV enquanto o estado do sinal na
entrada S seja positivo. O estado do sinal na sada Q ser "1" se o tempo transcorreu sem que se
produzam erros e se o estado do sinal na entrada S for "1". Se o estado do sinal na entrada S
muda de "1" para "0" enquanto o temporizador estiver funcionando, este para. Neste caso, o
estado do sinal na sada Q ser "0". O temporizador vai a 0 se a entrada de desativao R do
temporizador for para "1" enquanto o temporizador estiver funcionando. O valor de temporiza-
o e a base de tempo vai a 0. Ento o estado do sinal na sada Q "0". O temporizador tam-
bm vai a 0 se na entrada de desativao R o valor for "1", enquanto o temporizador no est
em funcionamento e o RLO na entrada S for "1". O valor de temporizao atual fica depositado
nas sadas BI e BCD. O valor de temporizao na sada BI est em cdigo binrio, o valor na
sada BCD est em formato decimal codificado em binrio. O valor de temporizao atual eqi-
vale ao valor inicial de TV menos o valor de temporizao que foi transcorrido desde o incio do
temporizador.

Se o estado do sinal da entrada I 0.0 muda de "0" para "1" (flanco crescente no RLO) Ativa-se o
temporizador T5. Se transcorre o tempo de 2 segundos e o estado do sinal na entrada I 0.0 conti-
nua sendo "1", a sada Q 4.0 ser "1". Se o estado do sinal da entrada I0.0 muda de "1" para "0",
o temporizador para e a sada Q 4.0 ser "0". (Se o estado do sinal da entrada I 0.1 muda de "0"
para "1", o temporizador vai a 0, se estiver funcionando o temporizador ou no).

62
S_ODTS

N do Temporizador S -> SET - Ativar Temporizador


TV -> Time Variable - Valor da Temporizao
R -> RESET - Desativar Temporizador
Q -> Output - Sada
BI -> Temporizao Atual em Binrio
BCD - > Temporizao Atual em BCD

Descrio da operao
S_ODTS (Parametrizar e iniciar o temporizador com retardo na conexo com memria) inicia o
temporizador indicado quando h um flanco crescente na entrada de incio S. Para iniciar um
temporizador, tem que produzir-se necessariamente uma mudana de sinal. O temporizador con-
tinua em funcionamento com o valor de temporizao indicado na entrada TV mesmo que o
estado do sinal na entrada S for a "0" antes de que transcorra o tempo. O estado do sinal na sada
Q ser "1" se transcorrido o tempo, independentemente do estado do sinal que tenha a entrada S.
O temporizador reinicia com o valor de temporizao indicado se o estado do sinal na entrada S
mude de "0" para "1" enquanto o temporizador est em funcionamento. O temporizador vai para
0 se a entrada de desativao R do temporizador for a "1", independentemente do RLO na
entrada S. Ento o estado do sinal na sada Q "0". O valor de temporizao atual fica deposita-
do nas sadas BI e BCD. O valor de temporizao na sada BI est em cdigo binrio, o valor na
sada BCD est em formato decimal codificado em binrio. O valor de temporizao atual eqi-
vale ao valor inicial de TV menos o valor de temporizao que foi transcorrido desde o incio do
temporizador.

Se o estado do sinal da entrada I 0.0 muda de "0" para "1" (flanco crescente no RLO), Ativa-se o
temporizador T5. O temporizador continua em funcionamento sem que uma mudana de sinal
de "1" para "0" na entrada I 0.0 repercuta nele. Se o estado do sinal da entrada I 0.0 muda de "1"
para "0" antes de que haja transcorrido o tempo, o temporizador reinicia. A sada QA 4.0 ser
"1" se foi transcorrido o tempo (se o estado do sinal da entrada I 0.1 muda de "0" para "1", o
temporizador vai a "0", independentemente de qual seja o RLO em S).

63
S_OFFDT

N do Temporizador S -> SET - Ativar Temporizador


TV -> Time Variable - Valor da Temporizao
R -> RESET - Desativar Temporizador
Q -> Output - Sada
BI -> Temporizao Atual em Binrio
BCD - > Temporizao Atual em BCD

Descrio da operao
S_OFFDT (Parametrizar e iniciar o temporizador com retardo na desconexo) inicia o tempori-
zador indicado quando h um flanco decrescente na entrada de ativao S. Para iniciar um tem-
porizador, tem que produzir-se necessariamente uma mudana de sinal. O estado do sinal na
sada Q ser "1" se o estado do sinal na entrada S for "1", e tambm enquanto o temporizador
esteja funcionando. O temporizador para se o estado do sinal na entrada S muda de "0" para "1"
enquanto o temporizador est em funcionamento. O temporizador s reinicia se o estado do sinal
na entrada S volte a mudar de "1" para "0". O temporizador vai para 0 se a entrada de desati-
vao R for para "1" enquanto o temporizador estiver em funcionamento. O valor de temporiza-
o atual fica depositado nas sadas BI e BCD. O valor de temporizao na sada BI est em
cdigo binrio, o valor na sada BCD est em formato decimal codificado em binrio. O valor de
temporizao atual eqivale ao valor inicial de TV menos o valor de temporizao que foi trans-
corrido desde o incio do temporizador.

O temporizador inicia se o estado do sinal na entrada I 0.0 muda de "1" para "0". Q 4.0 "1" se I
0.0 es "1" ou o temporizador est em marcha (Se o estado do sinal em I0.1 muda de "0" para
"1", enquanto o temporizador est em funcionamento, este vai a 0).

64
Contadores

A CPU reserva uma rea de memria para os contadores. Nesta rea de memria, uma palavra
de 16 bits reservada para cada endereo de contador at 256. Consulte os Dados Tcnicos da
CPU para saber quantos contadores esto disponveis. O Valor mximo presetado 999 (BCD).

Identificao
Identifica-se com a letra C.
De C0 a C255

Valores de Temporizao
O Valor de Contagem carregado no seguinte formato e sintaxe :

C#127
c#32
C#5
Sendo :
C# Identifica o Formato Decimal Codificado em Binrio BCD
127
32 Nmeros de Contagem entre 0 e 999
5

O Step 7 oferece 3 tipos de contadores a seguir :

Contador Crescente
Contador Decrescente
Contador Crescente / Decrescente

65
Setar e inciar contadores

Colocar Contador no Valor Inicial - Set Counter

Descrio da Operao

Inicializar o Contador executa-se somente se houver um flanco ascendente ( positivo ) na RLO.


Neste caso transmite-se o <Valor Predeterminado> ao contador indicado em < N de C >.

Exemplo :

O valor 100 ficar pre-selecionado para o contador C5 se na entrada I 0.0 produz-se um flan-
co ascendente( mudana de 0 para 1 ). O Valor do contador C5 no se altera no caso de que
no se produza nenhum flanco ascendente.

66
Incrementar Contador - Counter Up

Contar para frente incrementa em 1 o valor do contador indicado se houver um flanco ascen-
dente no RLO e o valor do contador for menor que 999. O valor do contador no se altera se
no houver nenhum flanco ascendente e tambm se o contador j tenha alcanado o valor 999.

Exemplo :

Se o estado do sinal de I 0.0 muda de 0 para 1 ( flanco ascendente no RLO ), carrega-se 0


valor predeterminado de 100no contador C5.
Se o estado do sinal de I 0.1 muda de 0 para 1 ( flanco ascendente no RLO ), incrementa-se
em 1 o valor de contagem do contador C5, menos se o valor de contagem seja igual a 999.
O valor de contagem no se altera se no houver nenhum flanco ascendente no RLO.
Se o estado do sinal de I 0.2 for 1 o contador torna-se 0 ( Reset em C5 ).

Decrementar Contador - Counter Down


67
Contar para trs decrementa em 1 o valor do contador indicado se houver um flanco ascenden-
te no RLO e o valor do contador for maior que 0. O valor do contador no se altera se no
houver nenhum flanco ascendente e tambm se o contador j tenha alcanado o valor 0.
Exemplo :

Deteco de Valor 0

Se o estado do sinal de I 0.0 muda de 0 para 1 ( flanco ascendente no RLO ), carrega-se 0


valor predeterminado de 100no contador C5.
Se o estado do sinal de I 0.1 muda de 0 para 1 ( flanco ascendente no RLO ), decrementa-se
em 1 o valor de contagem do contador C5, menos se o valor de contagem seja igual a 0. O
valor de contagem no se altera se no houver nenhum flanco ascendente no RLO.
A Sada Q 4.0 torna-se 1 se o valor de contagem equivale a zero.
Se o estado do sinal de I 0.2 for 1 o contador torna-se 0 ( Reset em C5 ).

68
Parametrizar e iniciar contadores

Parametrizar e Incrementar Bloco Contador - Counter UP

S_CU - Parametrizar e Incrementar Contador toma o valor predeterminado da entrada PV se na


entrada S houver um flanco crescente.
Se o estado do sinal da entrada R for 1 o contador torna-se 0 e ento o valor de contagem
zero. O contador incrementa em 1 se o estado do sinal da entrada CU muda de 0 para 1,
sempre que o valor de contagem seja menor que 999.
Se inicializa-se o contador e o valor da entrada CU = 1 , o contador contar mesmo que no haja
nenhum flanco ascendente.
O estado do sinal da sada Q ser 1 sempre que o valor de contagem seja maior que zero e
ser 0 se o valor de contagem for zero.

Exemplo :

Ao mudar a entrada I 0.2 de 0 para 1 , o contador toma o valor predeterminado em PV. Se o


estado do sinal em I 0.0 muda de 0 para 1, o valor do contador C5 incrementa-se em 1,
menos se o valor de C5 for 999. A Sada Q 4.0 ser 1 sempre que o valor de C5 no seja
zero. Em CV armazenado o valor de contagem atual em Hexadecimal e em CV_BCD arma-
zenado o valor de contagem atual em BCD.

69
Parametrizar e Decrementar Bloco Contador - Counter Down

S_CD
CD

S_CD - Parametrizar e Decrementar Contador toma o valor predeterminado da entrada PV se na


entrada S houver um flanco crescente.
Se o estado do sinal da entrada R for 1 o contador torna-se 0 e ento o valor de contagem
zero. O contador decrementa em 1 se o estado do sinal da entrada CD muda de 0 para 1,
sempre que o valor de contagem seja maior que 0.
Se inicializa-se o contador e o valor da entrada CU = 1 , o contador contar mesmo que no haja
nenhum flanco ascendente.
O estado do sinal da sada Q ser 1 sempre que o valor de contagem seja maior que zero e
ser 0 se o valor de contagem for zero.

Exemplo :

S_CD
CD

Ao mudar a entrada I 0.2 de 0 para 1 , o contador toma o valor predeterminado em PV. Se o


estado do sinal em I 0.0 muda de 0 para 1, o valor do contador C5 decrementa-se em 1,
menos se o valor de C5 for 0. A Sada Q 4.0 ser 1 sempre que o valor de C5 no seja zero.
Em CV armazenado o valor de contagem atual em Hexadecimal e em CV_BCD armazenado
o valor de contagem atual em BCD.

70
Parametrizar e Incrementar/Decrementar Bloco - Counter Up/Down

S_CUD - Parametrizar e Incrementar / Decrementar Contador inicializado com o valor de PV


quando produz-se um flanco ascendente na entrada S. Se h 1 na entrada R, o contador torna-
se zero e o valor de contagem 0.
O Contador incrementa em 1 se o estado do sinal da entrada CU muda de 0 para 1 e o
valor do contador for menor que 999.
O Contador decrementa em 1 se na entrada CD produz-se um flanco ascendente e o valor do
contador for maior que 0.
Ao produzir-se um flanco ascendente em ambas as entradas de contagem ( CU e CD ) , execu-
tam-se ambas as operaes e o valor de contagem no varia.
Se inicializa-se o contador e o RLO das entradas CU / CD = 1 , o contador contar mesmo que
no haja nenhum mudana de flanco.
O estado do sinal da Sada Q ser 1 se o valor de contagem for maior que zero e ser 0 se o
valor de contagem for igual a zero.

Exemplo :

Ao mudar a entrada I 0.2 de 0 para 1, o contador toma o valor de pr-seleo em PV. Se o


estado do sinal em I 0.0 muda de 0 para 1, o valor do contador C5 incrementa em 1, a
menos que o valor de C5 for 999. Se I 0.1 muda de 0 para 1, C5 decrementa em 1, a
no ser que o valor ce C5 seja 0. A Sada Q 4.0 ser 1 se o valor cd C10 no for zero.
Em CV armazenado o valor de contagem atual em Hexadecimal e em CV_BCD armazenado
o valor de contagem atual em BCD.

71
Comparadores
Com instrues de comparao, voc pode comparar os seguintes pares de valores numricos :
CMP ? I - Dois Inteiros ( cada um com 16 bits )
CMP ? D - Dois Inteiros Duplos ( cada um com 32 bits )
CMP ? R - Dois Nmeros Reais ( nmero de ponto flutuante, cada um com 32 bits )

? - Tipo de Comparador

Tipo de Comparador

Todas as instrues de comparao compara os valores das entradas IN1 e IN2 baseados nas
seguintes relaes :

CMP = = I IN1 igual ( = = ) a IN2


CMP < > I IN1 no igual ( < > ) a IN2
CMP > I IN1 maior que ( > ) IN2
CMP < I IN1 menor que ( < ) IN2
CMP > = I IN1 maior ou igual a ( > = ) IN2
CMP < = I IN1 menor ou igual a ( < = ) IN2
Se a comparao satisfeita, o resultado da operao lgica 1.
Exemplo :

A sada Q 4.0 ser ativada se I 0.0 e I 0.1 forem 1 e se MW0 for >= MW2.

72
Saltos JUMP

Podem-se utilizar estas operaes em todos os blocos lgicos: blocos de organizao (OBs),
blocos de funo (FBs) e funes (FCs). As operaes de Salto so as seguintes :

Salto Incondicional

JMP - Funciona como um salto direto quando no h outro elemento LAD entre o condutor
esquerdo e a operao (ver acima). Cada salto tem que ter um destino (LABEL). No se execu-
taro as operaes que encontram-se entre a operao de salto e o destino.

Operaes Intermedirias

O salto executa-se em todos os casos, omitindo-se (passando por cima) as operaes que en-
contram-se entre a operao de salto e o destino.

73
Salto Condicional - JMP

Funciona como um salto condicional quando o RLO da combinao lgica anterior for 1.
Exemplo :

Operaes Intermedirias

Se a entrada I 5.0 E I 5.1 forem 1 executa-se o salto para o destino CAS1. As operaes
intermedirias no sero executadas se houver o salto.

74
Salto Condicional - JMPN

Funciona como um salto condicional quando o RLO da combinao lgica anterior for 0.

Exemplo :

Operaes Intermedirias

Se a entrada I 5.0 OU I 5.1 for 0 executa-se o salto para o destino CAS1. As operaes
intermedirias no sero executadas se houver o salto.

Label Destino
LABEL marca o destino de uma operao de salto. Este destino pode ter at um mximo de 4
caracteres. Primeiro caracter : letra ; os demais caracteres : letras ou alfanumricos, por exemplo
CAS1.

Chamada de Blocos

CALL - Chamar uma Funo especificada em < Bloco >. Executa se o RLO = 1.

75
Operaes Lgicas Digitais

As Operaes Lgicas Digitais com palavras, comparam bit a bit pares de palavras ( Word - 16
bits ) e palavras duplas ( Double Word - 32 bits ) segundo a lgica de Boole. Para executar as
operaes lgicas com palavras, dispe-se das seguintes operaes :

WAND_W

Resoluo do Exerccio 08

A instruo Word AND combina dois valores especificados na entrada IN1 e IN2 bit a bit,
baseado na tabela verdade AND. O resultado da operao salvo ( armazenado ) no endereo
especificado em OUT. A instruo executada se o sinal de entrada de EN = 1. ENO tem o
mesmo estado do sinal de EN.

Tabela Verdade AND :


A B S
0 0 0
0 1 0
1 0 0
1 1 1

Exemplo : Fazendo uma mscara de quatro dcadas. A lgica ser executada se a entrada I 5.0
for 1.

IN1 IW10 0100 0100 1100 0100


IN2 W#16#00FF 0000 0000 1111 1111

MW30 0000 0000 1100 0100

76
WOR_W

A instruo Word OR combina dois valores especificados na entrada IN1 e IN2 bit a bit, ba-
seado na tabela verdade OR. O resultado da operao salvo ( armazenado ) no endereo espe-
cificado em OUT. A instruo executada se o sinal de entrada de EN = 1. ENO tem o mesmo
estado do sinal de EN.

Tabela Verdade OR :
A B S
0 0 0
0 1 1
1 0 1
1 1 1

Exemplo : Setando o bit 0 na MW20. A lgica ser executada se a entrada I 5.1 for 1.

IN1 MW20 0100 0010 0110 1010


IN2 W#16#0001 0000 0000 0000 0001

MW32 0100 0010 1100 0100

77
Operaes matemticas bsicas

O set de instrues contm vrias funes aritmticas, como exibidas abaixo :


Identificao da Operao

A operao s realizada se o operando < Condio > for 1.

IN1 = Valor de Entrada 1 - Esta palavra lida como o Primeiro Operando.


IN2 = Valor de Entrada 2 - Esta palavra lida como o Segundo Operando.
O = Valor de Sada - Esta palavra o resultado da operao aritmtica.

Operaes Matemticas :
Adio :
ADD_I Soma Inteiros
ADD_DI Soma Inteiros Duplos
ADD_R Soma Nmeros Reais
Subtrao :
SUB_I Subtrai Inteiros
SUB_DI Subtrai Inteiros Duplos
SUB_R Subtrai Nmeros Reais
Multiplicao :
MUL_I Multiplica Inteiros
MUL_DI Multiplica Inteiros Duplos
MUL_R Multiplica Nmeros Reais
Diviso :
DIV_I Divide Inteiros
DIV_DI Divide Inteiros Duplos
DIV_R Divide Nmeros Reais

78
Manipulao de blocos parametrizveis
Programar uma Funo FC :

A Funo, como o Bloco de Funo, est subordinada ao bloco de organizao. Para que possa
ser processada pela CPU, esta tem que ser chamada tambm pelo bloco de ordem superior. Nas
funes, os parmetros so listados na tabela de declarao de variveis.

Criaremos a partir de agora um programa exemplo com uma funo passo a passo.

MISTURADOR PROGRAMVEL

O programa consiste em um misturador de confeitaria . H uma vlvula para introduzir leite V2


e outra para introduzir farinha V1; o misturador agita-se mediante uma paleta acionada por um
motor M1. Dependendo dos tempos de introduo dos ingredientes e de funcionamento da pale-
ta, poderemos fazer trs diferentes produtos segundo a tabela seguinte:
Entrada : Sadas :
B1 - Boto para Pes V1 - Vlvula de Farinha
B2 - Boto para Biscoitos V2 - Vlvula de Leite
B3 - Boto para Sequilhos M1 - Motor do Batedor
B4 - Boto de Ativao do Processo
B5 - Boto de Parada
Obs. : Haver um Boto para acionar e um Boto para interromper o processo.

79
Utilizaremos os endereos absolutos como a seguir :
B1 - Boto para Pes I 124.1
B2 - Boto para Biscoitos I 124.2
B3 - Boto para Sequilhos I 124.3
B4 - Boto para Ativao do Processo I 124.4
B5 - Boto de Parada I 124.5
V1 - Vlvula de Farinha Q 124.0
V2 - Vlvula de leite Q 124.1
M1 - Motor do Batedor Q 124.2

Criao da Funo FC
No administrador Simatic, navegue at a pasta de blocos e abra. Click com a tecla direita do
mouse na metade direita da janela. Insira uma Funo ( FC ) com a ajuda do menu contextual.
No quadro de dilogo propriedades selecione o nome e a linguagem desejada. Em seguida OK.
A funo FC1 estar criada na pasta de blocos.
Note que no programa os ingredientes para fabricao dos produtos so sempre os mesmos, o
que altera so os tempos de despejo dos ingredientes e o tempo do batedor. Como o que
muda so os tempos, ou sejam eles variam, criaremos variveis para estes tempos. Chamaremos
esta funo de RECEITA.
Abra FC1 .
Criaremos a seguir variveis de tempos.

Na tabela de declaraes de variveis na parte superior da janela do editor ( figura acima ), na


primeira linha , declarao IN, no campo NAME, insira o nome Farinha em seguida click
enter. No prximo campo TYPE definiremos o tipo de varivel, neste caso varivel de tempo,
digitaremos S5TIME. Click enter mais duas vezes e ser criada uma nova linha de declarao
IN. Novamente no campo NAME digite o nome Leite em seguida click enter. No prximo
campo Type digite novamente S5TIME. . Click enter mais duas vezes e ser criada uma nova

80
linha outra vez. Na nova linha criada no campo NAME digite agora Motor em seguida enter
e no campo Type digite S5TIME e enter mais duas vezes.
Note que no campo ADDRESS na primeira linha aparece 0.0 e na segunda linha 2.0 e na
terceira linha 4.0. Estes valores definem os endereos de memria iniciais onde so armaze-
nados as variveis de tempo. Note tambm que entre 0.0 e 2.0 e entre 2.0 e 4.0 temos exatamen-
te 16 bits ou seja de 0.0 a 0.7 - 1.0 a 1.7 e de 2.0 a 2.1 - 3.1 a 3.7. Lembre-se que as variveis de
tempo necessitam de uma palavra ( 16 bits ) para armazenamento de valores de tempo.

Pronto, est criado as variveis da nossa funo.


Agora criaremos os temporizadores que utilizaro estas variveis.
No Network 1, selecione a linha e insira um contato aberto e nele atribua o endereo do boto de
acionamento B4 ( I 124.4 ). A seguir insira um bloco temporizador S_PEXT que chamaremos
de T1. Na sada do temporizador insira uma bobina e atribua o endereo da vlvula da Farinha
V1 ( Q 124.0 ). Na entrada R do temporizador insira um contato aberto e atribua o endereo do
boto de parada B5 ( I 124.5 ). Finalmente, na entrada TV ( Time Variable ) do temporizador
insira o nome da varivel Farinha exatamente como voc declarou na tabela de variveis. Note

que aps inserir e teclar enter, a varivel apareceu com o smbolo # antes da palavra Farinha.
Este smbolo determina que uma varivel local e que est declarada na tabela. Caso voc digite
diferente da tabela, alm de no aparecer com o smbolo, aparecer uma mensagem alertando
sobre o erro e aps enter o nome digitado estar em vermelho.
Insira agora um novo Network ( 2 ) e faa o mesmo para as outras variveis no se esquecendo
que o boto acionador e o boto de parada o mesmo para os trs temporizadores. O que muda
so as variveis de tempo ( TV ) e as sadas.
Terminado, salve o bloco e feche-o.
Abra agora o bloco OB1.
Selecione a linha do primeiro Network e insira um contato aberto. Nele atribua o endereo do
boto B1 ( I 124.1 ) ou seja, o boto que seleciona a receita para a fabricao de pes.

81
Em seguida, na janela Program elements, mova a barra de rolagem at chegar em FC blocks,
abra-o e selecione FC1 Receitas arrastando-o at a linha onde desejamos inseri-lo. Solte o mou-
se e estar inserido no Network 1.

Click e Arraste

A linha ficar como mostrado na figura abaixo.

Onde aparece os pontos de interrogao, insira os tempos no formato S5T# de acordo com a
tabela de receita mostrada no exerccio para a fabricao de Pes.

Farinha S5T#2S
Leite S5T#5S
Motor S5T#4S

Faa o mesmo com as receitas para Biscoitos e Sequilhos.


Carregue e simule o programa parametrizado.

82
Exerccios

EXERCCIO 01

Controle de Nvel

VLVULA DE
ENTRADA
SENSOR DE
NVEL MXIMO

PAINEL
SENSOR DE
NVEL MNIMO
LIGA

DESL.

Entradas :
Botoeira Liga
Botoeira Desliga
Sensor de Nvel Mximo
Sensor de Nvel Mnimo

Sadas :
Vlvula de Entrada

Funcionamento :
1 - A Botoeira Liga inicia o processo e a Desliga encerra ;
2 - Quando o Nvel de liquido cair abaixo do Mnimo a Vlvula se abre;
3 - Quando o Nvel de liquido passar do Nvel Mximo a Vlvula se fecha.

83
EXERCCIO 02

FURADEIRA

No estado de repouso, a furadeira estar acima, acionando o final de curso S 1.


Se acionarmos o boto B 1 a furadeira abaixar acionado pelo motor de abaixar M 2.
Quando ativa-se o final de curso de abaixado S 2, a furadeira subir de novo. Se em
algum momento, aciona-se o boto de parada B 2, a furadeira dever subir.

Entradas :
S1 - Sensor Acima
S2 - Sensor Abaixo
B1 - Desce Furadeira
B2 - Parada

Sadas :
M1 - Motor para Cima
M2 - Motor para Baixo

84
EXERCCIO 03

REVERSO DE SENTIDO DE ROTAO DE MOTOR

Desenvolver um programa com as seguintes caractersticas :

Atravs dos botes 1 e 2 deveremos selecionar o sentido de giro do motor sem este
estar em movimento.
Depois de selecionado o sentido, atravs do boto 3 acionaremos o motor. O mesmo
no ser acionado sem antes termos selecionado o sentido do giro.
No poderemos inverter o sentido dos motores sem antes acionarmos o boto 4 de
parada de motor.
O circuito dever possuir um rel trmico.

Entradas :
Boto 1 - Sentido Normal
Boto 2 - Sentido Reverso
Boto 3 - Acionamento
Boto 4 - Parada FUSVEL
Rel Trmico

Sadas :
Contator K1 - Sentido Normal
Contator K2 - Sentido Reverso

K1 K2

TRMICO

MOTOR

85
EXERCCIO 04

TANQUE DE AGITAO DE PRODUTOS

MOTOR DO
AGITADOR

VLVULA DE
ENTRADA

SENSOR DE
NVEL MXIMO

SENSOR DE
NVEL MNIMO

PAINEL
SENSOR DE
TANQUE VAZIO
LIGA

VLVULA DE DESL.
SADA

Entradas :
Botoeira Liga
Botoeira Desliga
Sensor de Nvel Mximo
Sensor de Nvel Mnimo
Sensor de Tanque Vazio
Sadas :
Motor do Agitador
Vlvula de Entrada
Vlvula de Sada
Funcionamento :
1- Inicialmente a Vlvula de Sada est Fechada
2- A botoeira liga inicia o processo e a Desliga interrompe o processo.
3- A Vlvula de entrada aberta at o Nvel Mximo ser atingido fechando em seguida.
4 - O Motor do Agitador ligado.
5 - Aps 20 segundos, a vlvula de Sada aberta.
6 - Quando o nvel Mnimo atingido, o Motor do Agitador desligado.
7 - Ao ser detectado que o Tanque est vazio, a Vlvula de Sada fechada.
8 - Termina o ciclo.

86
EXERCCIO 05

SISTEMA ESTRELA / TRINGULO PARTIDA DE MOTORES


Desenvolver um programa com as seguintes caractersticas :

Atravs do Boto 1 acionaremos o motor no sistema estrela e aps 5 segundos ele


dever passar para o sistema tringulo automaticamente.
Com o Boto 2, desligaremos o motor.
O circuito dever possuir um rel trmico.

Entradas :
Boto 1 - Liga
Boto 2 - Desliga
Rel Trmico

Sadas :
Contatora 1 - K1
Contatora 2 - K2
Contatora 3 - K3
Fusvel

K1 K2 K3

Trmico

Motor

87
EXERCCIO 06

SELEO DE GARRAFAS PARA ENVAZAMENTO


Uma esteira acionada por um motor, transporta garrafas de trs tamanhos ( pequenas, mdias
e grandes ) que sensibilizam trs sensores fotoeltricos A, B e C, conforme mostrado na figu-
ra.
O processo tem incio pressionando-se o boto ligar, e pode ser interrompido pressio-
nando-se o boto desligar. A seleo do tipo de garrafa feita a partir de 3 botes pul-
sadores independentes para ( P, M e G ). Ao selecionar um tipo de garrafa, a esteira
deve parar quando forem detectadas garrafas dos tipos no desejados, soando um
alarme. Aps a retirada manual da garrafa indesejada, o sistema deve ser reativado. O
circuito dever ser protegido com rel trmico.
Obs.: Quando qualquer boto pressionado ou qualquer sensor ativado, o CLP re-
cebe nvel lgico 1.

Entradas :
Boto Liga
Boto Desliga
Boto de Seleo P
Boto de Seleo M
Boto de Seleo G
Sensor A
Sensor B
Sensor C
Rel Trmico

Sada :
Motor
SENSORES C
B
A

G G G
M P M

MOTOR

88
EXERCCIO 07

CONTROLE DE MISTURA

LEITE GLUCOSE ESSNCIA GORDURA

V1 V2 V3 V4

MOTOR DO
AGITADOR

LIGA VLVULA
DE SADA
DESL.

Entradas :
Botoeira Liga
Botoeira Desliga
Sadas:
Vlvula de Sada do Tanque
Motor do Agitador
V1 - Vlvula de Entrada de Leite
V2 - Vlvula de Entrada de Glucose
V3 - Vlvula de Entrada de Essncia
V4 - Vlvula de Entrada de Gordura
Funcionamento :
1- A Botoeira liga inicia o processo e a Desliga encerra;
2 - A Vlvula do Tanque de Leite acionada por 10 segundos, fechando - se em seguida;
3 - A Vlvula do Tanque de Glucose acionada por 15 segundos, fechando - se em seguida;
4 - O Motor do Agitador ligado;
5 - A Vlvula do Tanque de Essncia acionada por 5 segundos, fechando - se em seguida;
6 - A Vlvula do Tanque de Gordura acionada por 10 segundos, fechando - se em seguida;
7 - O Motor do Agitador desligado depois de 15 segundos da entrada de todos os ingredien-
tes.
8 - Aps o Motor do Agitador ser desligado, a Vlvula de Sada do Tanque de Mistura acio-
nada.
9 - O ciclo termina.

89
EXERCCIO 08

SINALEIRA DE FORMULA 1
Ativando-se o Boto Pulsador B1, as cinco lmpadas de uma sinaleira devem acender-
se uma atrs da outra, uma a cada segundo. Aps um segundo da ltima lmpada a-
cesa, todas devero apagar-se.

O diagrama de tempo abaixo, mostra, nas linhas intermedirias, o desenvolvimento


das sadas do PLC que controlam as lmpadas da sinaleira, em funo da entrada
START indicada na primeira linha.

Entradas :
B1 - Boto de Start

Sadas :
L1 - Lmpada 1
L2 - Lmpada 2
L3 - Lmpada 3
L4 - Lmpada 4
L5 - Lmpada 5

90
EXERCCIO 09

SEQUENCIAL

Construir um sequenciador de 4 canais que mostre o seguinte esquema de acendimento :

PASSO

CANAL

O esquema estabelece a seqncia de acendimento das luzes conectadas a quatro


canais. Os crculos em preto indicam a ativao do canal durante seu passo espec-
fico. Assim, durante o passo 0 estar ativo o canal 0, durante o passo 1 o canal 1, e
assim sucessivamente. Se as luzes dispem-se em linha, o efeito ser o de um des-
locamento de fonte luminosa, desde a primeira at a ltima posio e logo ao con-
trario.
Aps o passo 5, acontece no passo 6, idntico ao 0 e logo outro idntico ao passo
1, ou seja, o diagrama acontece ciclicamente.
Dever haver um intervalo entre o acendimento de uma lmpada e outra de 500
milisegundos.

91
EXERCCIO 10

CONTROLE DE GARAGEM
Automatizar uma garagem de quatro vagas de tal forma que se esta encontrar-se
cheia, acenda uma luz indicando e que no suba a cancela. Caso contrrio dever es-
tar acesa outra luz indicando LIVRE.

Entradas :
S1 - Sensor de Sada ( Conta os Carros que Saem )
S2 - Sensor de Entrada ( Contam os Carros que Entram )
B1 - Boto Abre Cancela Entrada ( Acionado por Fora )
B2 - Boto Abre Cancela Sada ( Acionado por Dentro )
Sadas :
M1 - Motor Cancela de Sada
M2 - Motor Cancela de Entrada
L1 - Lmpada de Estacionamento Cheio
L2 - Lmpada de Estacionamento Livre

S1 L1
S2
L2

M1 Sada M2

92
Projeto

rea de armazenamento com Contador, Comparador e Temporizador


A figura mostra um sistema com duas esteiras transportadoras e uma rea de armazenamento
temporrio colocada entre ambas. A esteira transportadora 1 transporta peas para rea de arma-
zenamento. Uma barreira ptica situada no final da esteira 1 junto da rea de armazenamento
determina quantas peas transportam-se para esta rea. A esteira transportadora 2 transporta
peas da rea de armazenamento at uma plataforma de carga onde chegam caminhes e os re-
colhem para entrega-los aos clientes. Uma barreira ptica situada no final da esteira transporta-
dora 2 junto a rea de armazenamento determina quantas peas abandonam a rea de armazena-
mento para ser transportados a plataforma de carga. Um painel indicador com trs lmpadas
assinalam o nvel da rea de armazenamento temporrio. Um sinalizador sonoro dever soar por
2 segundos quando a rea de armazenamento encher com 20 peas. Enquanto a rea de armaze-
namento estiver cheia , ou seja 20 peas , o motor E1 da esteira 1 no poder ser acionado. De-
ver haver um boto para ligar o sistema e um para desligar o sistema. Dever contar tambm
com um boto de emergncia.

93
Anexos
Tipos de dados simples
Cada tipo de dado simples tem um tamanho definido. A tabela seguinte mostra os tipos de
dados simples.

94
Referncias Bibliogrficas

Elaborao Luiz Henrique Casagrande


Pindamonhangaba - SP, 2004

STEP 7 - SIMATIC SIEMENS

Programar com STEP 7 Lite - SIMATIC - Siemens - Edio 03/2002

Esquema de contatos LAD para S7 300 e 400 - Manual de Referncia


Edio 08/2000

Introduo a STEP 7 Lite V 2.0 - Getting Started Edio 03/2002 Siemens

Diagramao Hlio J.G.A. Hernandes

95

Potrebbero piacerti anche