Académique Documents
Professionnel Documents
Culture Documents
Programao Bsica
CFP 9.14
Introduo
Este o material que voc vai utilizar durante o curso de CLP.
Trata-se de um conjunto de textos extrados de contedos do
prprio SENAI-SP e de materiais da Siemens/Volkswagen.
Os assuntos so apresentados em uma ordem que vai do mais
simples ao mais complexo. A ligao entre cada parte ser feita
pelo seu instrutor.
Tudo aquilo que o instrutor disser e que voc ache importante
manter pode ser anotado diretamente neste material, em outro
caderno ou em folhas isoladas.
Tenha bom proveito do curso!
S7-300
O S7-300 o pequeno e totalmente modular CLP da famlia SIMATIC
S7.
Caractersticas
1- Diversas CPUs com diferentes capacidades.
2- Extensivo espectro de mdulos.
3- Pode ser expandido em at 32 mdulos.
4- Mdulos integrados em barramento backplane
5- Pode ser ligado em rede com interface multi-point (MPI), PROFIBUS
e Industrial Ethernet.
6- Conexo central com PC acessa todos os mdulos (FM e CP).
7- Sem regras para alocao das placas.
8- Configurao e parametrizao via software STEP 7.
Comunicao
Via MPI, ponto-a-ponto, PROFIBUS e Industrial Ethernet .
MPI
A Multi-Point Interface, MPI tem como objetivo conectar o CLP ao
terminal de programao ou interface de operao, ou ainda a outros
controladores lgicos programveis (PLCs). Na unidade central de
processamento (CPU), existe somente uma interface MPI, porm possvel
acessar atravs dela todos os outros mdulos programveis, tais com FMs.
Possibilidades de Conexo
Vrios dispositivos podem estabelecer simultaneamente conexo de
dados com a CPU. Isto significa que o terminal de programao e o painel de
operao podem ser operados simultaneamente, e ainda outros PLCs
adicionais podem ser conectados. As quantidades de conexes que podem ser
operadas simultaneamente dependem da CPU. Exemplo: so possveis quatro
conexes de comunicao ativa por n para a CPU 314.
Caractersticas da MPI
A interface MPI suporta displays, painis de operao e terminais de
programao Siemens. A MPI oferece as seguintes possibilidades:
1- Programao de CPUs e mdulos inteligente
2- Funes de monitorao do sistema e funes de informaes
3- Troca de dados entre controladores lgicos programveis
4- Troca de programas entre CPU e terminal de programao
Dados Tcnicos da MPI
As mais importantes caractersticas da interface MPI so:
1- Padro RS 485 e taxa de transmisso de 187.5 Kbaud
2- Distncias at 50 m ou at 9100 m com repetidores
3- Componentes padres do PROFIBUS DP (cabo , conector, e repetidor)
Redes
A figura acima exibe as vrias possibilidades de rede para a
comunicao entre produtos j existentes e a famlia S7. Os termos usados no
slide so explicados a seguir:
S5/TI
Controladores lgicos programveis SIMATIC S5 e SIMATIC TI
SIMATIC HMI
Equipamentos de Interface Homem Mquina
TISTAR
SCADA = (Supervisory Control and Data Acquisition ) controle de
interface de operao do sistema
PG/PC
Terminais de programao (Siemens PG) ou Computadores Pessoais
Ind. Ethernet
Rede Industrial da Siemens
TD/OP
Text Display e Operator Panel
PPI
Interface Point-to-Point
MPI
Interface Multipoint
Field Devices
Hardware para ent./output (por
exemplo, chaves, bombas, e motores)
PROFIBUS DP
Rede de controle distribudo fieldbus da Siemens.
Iniciando o STEP 7
Para se inicializar o software de programao do CLP da Siemens STEP
7 Lite, basta dar um duplo click no cone Step7 Lite que aparece na rea de
trabalho do Windows ou no menu Start (iniciar), acima do grupo Programs.
Autorizao
Antes de utilizar o software em outro terminal de programao
necessrio executar a transferncia de autorizao.
Parametrizao do Software
Selecionando
1. Ative o comando de menu Options --> Setting
2. Selecione a pasta de Linguagem
3. Selecione a linguagem desejada:
1- SIMATIC = ingls;
2- IEC = Internacional (ingls)
Importante
Existem duas selees independentes:
1- Lngua do Editor -> seleciona o idioma da ferramenta STEP 7
(ingls/alemo/espanhol/italiano/francs)
2- Lngua dos Mnemnicos -> seleciona o idioma em que o programa do
usurio ser escrito (ingls/alemo)
Introduo ao Hardware S7
No S7-300 o endereamento dos mdulos de I/O, CP e FM so slotorientados, isto , o seu endereo depende da posio do mdulo no trilho.
Alguns slots so reservados: PS, CPU e IM.
Slot 1:
PS - Fonte de alimentao. Obrigatoriamente no primeiro slot. No
associado nenhum endereo para a fonte de alimentao.
Slot 2:
CPU; dever estar localizada prxima a fonte de alimentao. No
associado nenhum endereo para a CPU (veremos mais tarde endereo MPI).
Slot 3:
Mdulo de interface (IM). Para conectar racks de expanso. No
associado nenhum endereo para a IM. At mesmo se a IM no estiver
presente, ela dever ser considerada no esquema de endereamento do slot.
O slot 3 logicamente reservado pela CPU para a IM.
Slots 4 - 11:
Mdulos de sinais. Slot 4 considerado o primeiro slot para mdulos de
entrada e sada (SM). Um exemplo de endereamento exibido abaixo para
um carto de digital (entrada = I, sada = Q):
Importante
A CPU 315-2DP permite que os endereos sejam livremente definidos.
9
Endereamento Digital
Endereamento Digital
O endereamento das entradas (I) e sadas (Q) digitais comea com o
endereo 0 para o mdulo de sinal localizado no slot 4 (1 slot para SM). A
relao entre o slot fsico e o endereo do mdulo exibida acima. Cada
mdulo digital ocupa 4 bytes de endereos independente do nmero de pontos.
Tabela Imagem da Periferia
Aos sinais digitais do CLP corresponde uma rea na CPU que contm o
estado atual das entradas e sadas. Esta rea, denominada Tabela Imagem da
Periferia de Entrada (PII) e de Sada (PIQ) so atualizadas automaticamente
pela CPU a cada incio e fim de ciclo respectivamente. Pode-se acessar estas
reas (I e Q) em bits, bytes, words ou double words, como mostrado nos
exemplos a seguir:
1- Q4.0 um dado que arquivado no primeiro bit (bit 0) do byte 4 na
tabela imagem da periferia de sada (usando a numerao padro das I/O do
diagrama acima, isto corresponde ao primeiro ponto no mdulo 2)
2- QB100 refere-se ao dado no byte 100 da tabela imagem da periferia
de sada.
3- IW100 refere-se ao dado que arquivado nos bytes 100 e 101 da
tabela imagem da periferia de entrada.
4- QD24 refere-se ao dado que arquivado nos bytes 24, 25, 26, 27 da
tabela imagem da periferia de sada.
10
Endereamento Analgico
Endereamento Analgico
O endereamento das entradas e sadas analgicas comea no
endereo 256 para o mdulo de sinal localizado no slot 4 (1o slot para SM). A
figura acima mostra o esquema de endereamento dos mdulos analgicos.
Cada mdulo analgico ocupa 16 bytes de endereos, independente do tipo de
mdulo, sendo que cada canal analgico ocupa dois bytes de dados.
Acesso aos Sinais Analgicos
As I/O analgicas acessam uma rea de memria denominada Periferia
(PI e PQ) da CPU. Os sinais analgicos, ao contrrio dos sinais digitais, no
possuem uma tabela imagem (PII ou PIQ), atualizados a cada ciclo. Ao invs
disto, voc define quando os dados sero atualizados (lidos/escritos) usando
simplesmente o endereo analgico no seu programa. O endereo identificador
para uma entrada analgica PIW e para sada analgica PQW.
No S7-300 o endereamento para sinais analgicos comea com 256,
sendo portanto que o primeiro canal no primeiro mdulo no primeiro rack ir
ento ser PIW256. O ltimo endereo analgico 766 (para o S7-300).
Exemplo:
Para acessar os dados do segundo canal no primeiro mdulo no rack 2,
o endereo da entrada analgica e PIW514.
I Entrada,Q Sada, B Byte (8 bits), W Word (16 bits), D Double word (32
bits), M Memria(flag), P Periferia (acesso direto- PIW/PQW), T
Temporizadores, C Contadores, DB Data block, DI Data Block (usado em Bloco
de Dados Instance).
Importante: Verifique os dados tcnicos da CPU utilizada para verificar
sua capacidade de endereamento.
11
Modo de Operao
Chave para seleo manual do modo de operao da CPU
1- MRES = Reset da memria (overall reset)
2- STOP = o programa no executado.
3- RUN = O programa processado porm o programa no pode ser
alterado pelo Terminal de Programao (s lido).
4- RUN-P = A CPU est processando o programa, e o Terminal de
programao pode acessar/alterar o programa e o modo de operao (no
existe trava).
Status da CPU (LEDS)
SF = erro interno na CPU ou erro de diagnstico nos mdulos.
BATF = sem bateria ou carga baixa .
DC5V = fonte +5V
- acesa : indica tenso DC Ok
- piscando: sobrecarga.
FRCE = indica que pelo menos uma entrada ou sada est forada
(consulte verso de CPU)
RUN = piscando durante a inicializao da CPU, acesa quando a CPU
est em modo RUN (processando o programa).
STOP = pisca se um reset da memria necessrio, acesa indica que a
CPU est no modo STOP (programa no est sendo executado).
12
13
Exerccio:
Objetivo
Criar uma estao de HW
Configurar o Hardware
Procedimento
1. Criar um novo projeto.
2. Salvar com o projeto com o nome PRO1.
3. Dar um duplo click sobre Hardware.
4. O Configurador de Hardware aberto.
5. Selecione no catlogo todos os mdulos existentes no seu rack de
treinamento (comece obrigatoriamente com o trilho (rack 0)).
6. Salve a configurao no hard disk.
15
Start-Up
Quando voc muda de STOP ==> RUN, a CPU executa um restart
simples ou completo (S7-300 s completo), tambm denominado com Coldrestart ou Warm-restart. Para um completo restart, o sistema operacional deleta
os memory markers no retentivos, temporizadores e contadores, deleta a pilha
de interrupes e pilha de blocos, reseta todas as interrupes de hardware
salvas e interrupes de diagnstico, e inicializa a superviso do tempo de
ciclo.
Ciclo de Programa
Como mostrado na figura acima, a operao cclica da CPU consiste de
3 componentes principais:
1- A CPU atualiza o estado dos sinais de entrada na tabela imagem das
entradas (PII).
2- A CPU executa o programa do usurio com as respectivas operaes.
3- A CPU escreve os valores da tabela imagem das sadas (PIQ) no
mdulo de sadas.
16
Restart Completo
A CPU executa um completo restart quando vai do modo STOP para
RUN, processo este denominado START-UP (inicializao).
Durante o Start-up so executadas as seguintes tarefas:
1- zera as reas retentivas da memria: markers, temporizadores e
contadores; zera as pilhas de interrupo e bloco; deleta todas as interrupes
e diagnsticos de interrupo, zera a imagem do processo de I/Os.
2- transfere os parmetros para os mdulos.
3- l as configuraes de I/O e compara o estado atual das I/Os com o
estado esperado.
4- OB executa o completo restart (OB100).
5- habilita sadas.
Restart
As CPUs do S7-400 tem a capacidade de executar um Restart (warm
restart) quando ocorre um Start-up. O modo do Restart, completo ou warm,
selecionado nestas CPUs por uma chave na CPU (sob certas condies).
Quando um RESTART ocorre, a CPU executa o seguinte:
1- executa o OB de warm restart (OB101)
2- executa o ciclo residual
3- deleta a PIQ a rea de sada (parametrizvel)
4- habilita sadas
17
Imagem de Processo
Definio
Denomina-se Imagem de Processo uma rea da CPU onde os estados
das entradas e sadas binrias so a cada ciclo armazenadas. Existem reas
distintas para as entradas e para as sadas: PII e PIQ. Normalmente o
programa de usurio quando acessa uma entrada ou sada digital est lendo
na realidade esta rea.
PII
A tabela imagem das entradas do processo o local onde o estado das
entradas digitais so arquivadas na CPU. Antes do incio de cada ciclo de
programa, a CPU l a periferia (mdulos de entrada digital) e transfere os
estados dos sinais digitais para esta rea.
PIQ
A tabela imagem das sadas contm o valor das sadas resultantes do
processamento do programa. Somente no final do ciclo de programa, estes
valores de sada so transferidos para os mdulos de sadas (Q).
Programa do Usurio
Quando voc l uma entrada no programa (como A I 2.0 por exemplo),
o ltimo estado da PII utilizado na lgica do programa. Isto garante que um
mesmo estado do sinal fornecido durante um ciclo de scan.
18
Blocos de Sistema
Blocos de sistema so funes pr-definidas ou blocos de funes
integradas ao sistema operacional da CPU. Estes blocos no ocupam nenhum
espao adicional na memria do usurio. Os blocos de sistema so chamados
pelo programas do usurio. Estes blocos tm a mesma interface, a mesma
designao, e mesmo nmero em todo o sistema (S7-300/400). Ento, voc
pode facilmente portar o programa do usurio entre vrias CPUs.
Blocos do Usurio
Os blocos de usurio so reas providas para administrar o cdigo e os
dados para seu programa. Baseado nas necessidades do seu processo, voc
pode estruturar seu programa com vrias opes de blocos de usurio. Alguns
desses blocos podem ser executados ciclicamente, enquanto outros blocos
podem ser executados somente quando necessitado. Blocos de usurio so
tambm chamados de blocos de programa.
19
Blocos de Usurio
Blocos de Sistema
Funo de Sistema
Funo de sistema uma funo pr-programada e testada que (SFC)
integrada na CPU. Algumas das tarefas suportadas por estas funes so setar
parmetros dos mdulos, comunicao de dados, funes de cpia, etc. Uma
SFC pode ser chamada pelo programa, porm sem fazer parte dele (no ocupa
memria de trabalho).
Blocos de Funo de Sistema (SFB)
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 devem ser
associados a um DB, o qual dever ser transferido para a CPU como parte do
seu programa.
Bloco de Dados de Sistema (SDB)
Um bloco de dados de sistema uma rea de 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.
21
Estrutura de Programa
Programa Linear
O programa inteiro reside em um nico bloco de instruo contnuo. Esta
estrutura semelhante a um circuito de rels substitudo por um controlador
lgico programvel. O sistema processa instrues individuais sucessivamente.
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 execuo 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.
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 universalmente. Os parmetros atuais (os
endereos de entradas e sadas) so especificados durante a chamada do
bloco. Exemplos de blocos parametrizveis:
1- bloco BOMBA" contm instrues para uma bomba, com um set de
entradas e sadas exigidas para qualquer bomba usada no processo.
2- bloco lgico responsvel pelo controle especfico das bombas, chama
(abre) o bloco BOMBA e fornece informaes para identificar qual bomba ir
ser controlada.
3- Quando o bloco completa a execuo das instrues, o programa
retorna ao bloco de chamada (por exemplo OB 1), o qual conclui as instrues.
22
Programao Estruturada
23
O Editor de Programas
24
Selecionando
Programao
uma
Linguagem
de
Seleo
Usando a opo VIEW na barra de menu, pode-se selecionar a linguagem de
edio entre diagrama de contados (LAD), blocos funcionais (FBD) ou lista de
instrues (STL). Esta opo est disponvel desde que um bloco esteja
aberto.
LAD -> STL
Blocos originalmente criados em diagrama de contatos podem ser convertidos
sempre para lista de instrues. Note que a converso no necessariamente
resulta em cdigo de programa eficiente em lista de instrues.
STL -> LAD ou FBD
Blocos criados originalmente em lista de instrues nem sempre so
convertidos totalmente em diagrama de contatos ou blocos funcionais. Ao se
fazer esta opo de converso, atravs da opo View, o Editor de Programa
converter todos os segmentos de programa que podem ser convertidos.
Segmentos de programa no conversveis se mantm na linguagem lista de
instrues Esta no converso no significa que haver problemas de
execuo do programa, sendo somente conseqncia da sintaxe de
visualizao de cada linguagem. Para garantir que a converso seja sempre
realizada, o usurio dever tomar certos cuidados durante a edio (ex.:
escrever uma nica lgica por segmento).
25
Introduo
A edio do programa em diagrama de contatos feita basicamente com
o auxlio do mouse. Basta posicionar o ponto e selecionar o elemento que deve
ser inserido no programa. Aps isto, digita-se o endereo dos operandos (por
ex. I0.0, M43.5). Os elementos lgicos so encontrados ou na barra de
ferramentas na forma de cone ou atravs de um catlogo de instrues, como
mostrado na figura acima.
Elementos Comuns com Seus cones
F2 - Scan para sinal "1" (contato
fechado)
F3 - Scan para sinal "0" (contato aberto)
F7 - Output coil (sada)
F8 - Ramificao para baixo (abrindo)
F9 - Ramificao para cima(fechando)
Catlogo de Instrues
Outros elementos (instrues) so acessadas pelo catlogo de
instrues, acessado pelo cone ao lado ou pela combinao das teclas Ctlr+K
27
Introduo
Semelhante ao modo LADDER, a edio em blocos funcionais feita
com o auxlio do mouse. Selecione o ponto em que deve ser inserido o
elemento e a partir do catlogo de instrues ou da barra de ferramentas
selecione o elemento desejado. Para enderear os operandos, selecione o
campo apropriado e digite o operando (ex. Q2.6, M4.5).
Este cone d acesso ao catlogo com todas as instrues FBD.
Comentrios
Os comentrios so editados como no modo diagrama de contatos.
Correes
Posicione o cursor do mouse sobre o elemento e pressione a tecla DEL.
Regras
1- Blocos padres (flipflops, contadores, temporizadores, operaes
matemticas etc.) podem tambm ter um outro bloco com operaes lgicas
binrias ( &, >=1, XOR) associado. A exceo para esta regra so os blocos de
comparao.
2- Em um nico segmento, no possvel programar operaes que so
separadas por sadas. possvel, entretanto, com o auxlio do T-branch, que a
uma lgica estejam associadas diversas sadas.
3- Deletando um bloco, todas as ramificaes que so conectadas com
a entrada booleana, com exceo da ramificao principal, so deletadas.
4- modo de sobre-escrever disponvel para troca simples de elementos
do
5- mesmo tipo.
28
Exerccio
Editar o OB1 (criado automaticamente sem instrues).
Procedimento
1. Selecione OB1 (double click), abaixo da pasta Program.
2. Com ajuda dos smbolos na barra de ferramentas, digite o seguinte
programa em ladder.
Resultado
Notas
1- Para posicionar o primeiro elemento, aponte o cursor para a linha da
network.
2- Use os smbolos de programa da barra de ferramentas.
3- Posicione o cursor em cima do smbolo(tecla TAB ou mouse) para
digitar o endereo
4- Use a tecla TAB para saltar entre os elementos.
Selecionar a linguagem de programao para edio do bloco.
Procedimento
1. Abrir um bloco para edio (por ex. o OB1 do exerccio anterior)
29
30
Salvando um Bloco
Como qualquer editor de programas/textos, necessrio salvar seu
trabalho aps a edio. Isto como um Save normal do Windows, o qual
pode ser usado com os dois procedimentos exibidos acima.
Depois de salvo, este bloco se encontra como um cone na pasta
Blocks do projeto/programa em que foi salvo. Pode-se utilizar o SIMATIC
Manager como o Explorer para copiar ou mover o bloco para outros projetos,
CPUs, etc.
31
Absoluto
Um endereo absoluto um endereo especfico na CPU (operandos
formais), por exemplo, entrada I1.0. Neste caso, no necessrio editar uma
lista de simblicos, porm o programa mais difcil de entender.
Simblico
O endereamento simblico torna possvel trabalhar com smbolos tais
como MOTOR_LIGA, ao invs do endereamento absoluto. Os smbolos para
entradas, sadas, temporizadores, contadores, memory markers e blocos so
arquivados na lista de simblicos. Neste caso, os smbolos so tambm
chamados de smbolos globais porque o acesso possvel por todos os
blocos. Em oposio aos smbolos globais, existem tambm os simblicos de
bloco (locais), os quais so vlidos somente no prprio bloco. Os simblicos de
bloco so definidos na parte de declarao do bloco.
Symbol Editor
A lista de simblicos para os Smbolos Globais criada com a
ferramenta Symbol Table. As outras ferramentas do STEP7, tais como Editor de
Programas ou S7 Status, tambm tm condio de acessar a lista de
simblicos para exibir os endereos simblicos.
32
Caractersticas
O endereamento simblico torna possvel uma leitura clara e fcil do
programa. Todos as variveis, blocos, tipos de dados, etc., podem ser
nomeados simbolicamente. O nome simblico pode ter at 24 caracteres, e at
80 caracteres de comentrios.
A seo de simblicos e comentrios so arquivadas no terminal de
programao. A lista de simblicos localizada como o objeto Symbol table
na pasta de programa S7 pertinente.
Usando os Smbolos Globais
Voc pode definir como smbolos globais: entradas, sadas, memory
markers e blocos. Os seguintes endereos so permitidos:
33
Symbol List
A lista de simblicos uma base de dados comum na qual as relaes
entre nomes simblicos e nomes absolutos so definidas.
Todas as ferramentas S7 podem acessar a lista de simblicos (Editor
LAD/STL/FBD, Tabela de Variveis, etc.).
Simblicos Globais
A declarao de simblicos globais pode ser acessada por todos os
componentes do programa. Os simblicos tm que ser criados na lista de
simblicos antes de serem acessados por sua aplicao. possvel porm
durante a edio do programa, direto no editor de programas, criar nomes
simblicos.
Simblicos Locais
Os simblicos locais so declarados na parte de declarao do bloco.
Estes nomes simblicos so somente vlidos no prprio bloco onde foram
gerados, sendo parte da memria local. O mesmo nome simblico pode ser
usado vrias vezes em diferentes blocos, porque so vlidos somente nos
blocos pertinentes.
Simblicos locais podem ser definidos para parmetros de blocos,
variveis locais e labels de saltos (jumps). Este mtodo no necessita de uma
lista de simblicos.
Notao
Nome simblico global - nome_simblico
Nome simblico local - #nome_simblico (quando usado em varveis
locais)
34
Introduo
Na figura acima temos a ferramenta Symbol Editor com uma lista de
simblicos do transportador.
Unique/Non-Unique
Os smbolos usados no programa devem ser nicos, isto , o endereo
simblico ou absoluto pode estar presente na lista de simblicos uma nica
vez. Se vrios endereos simblicos ou absolutos iguais esto presentes na
lista de simblicos, eles so exibidos em View All destacadamente (Ver
linhas 3 e 4 na figura).
Para poder localizar tais smbolos ambguos mais facilmente em lista de
simblicos grandes, voc pode exibir estes simblicos usando o menu de
comando
View Filter Symbol Status Non-Unique
Import/Export
possvel tambm importar/exportar de/para arquivos texto a lista de
simblicos em diferentes formatos DIF, SDF, ASC e SEQ. Isto possibilita
transferir a lista de designaes ou a lista de simblicos j gerados de outros
aplicativos. Uma vez gerados, voc pode ento usar a lista de simblicos em
outro editor.
35
36
37
Geral
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. Instrues de BIT interpretam o estado do
sinal 0 ou 1 e o combina de acordo com a lgica booleana. O resultado destas
combinaes 0 ou 1, denominado como Resultado da Operao Lgica
(RLO).
Instrues de bit:
1- Scan para Sinal 1
2- Scan para Sinal 0
3- Sada
4- Conector
5- Setar Sada
6- Resetar Sada
7- Setar/Resetar Flip Flop
8- Resetar/Setar Flip Flop
9- RLO Negado
10- Salvar RLO
38
39
Geral
A funo flip-flop consiste de operaes de SET e RESET. As
operaes de Set e Reset somente so executadas quando RLO=1. Quando o
RLO=0, o estado atual permanece inalterado. Se a condio para ambos, set e
reset so verdadeiros simultaneamente, ento em STL, a instruo
programada por ltimo tem prioridade. Em LAD e FBD possvel selecionar o
bloco com prioridade na entrada setar ou na entrada resetar.
Set
Quando o RLO=1, o endereo setado e permanece inalterado at a
condio de reset ser executada. Se, neste exemplo, o estado do sinal de
I1.0=1, mesmo por um nico ciclo, a sada Q5.0 torna-se 1 e permanece at
que seja resetado por outra instruo.
Reset
Quando o RLO=1, o endereo resetado. Se, neste exemplo, o estado
do sinal de I1.1=1, mesmo por um nico ciclo, a sada Q5.0 torna-se 0.
Flip-flop Set/Reset
Se o estado do sinal de entrada S=1, e a entrada R=0, o endereo
(bloco acima) setado .
Reset dominante: se o estado do sinal R torna-se 1, o endereo setado
anteriormente resetado para 0, independente do estado da entrada S (reset
dominante)
Flip-flop Reset/Set
Com este tipo de bloco, o set dominante.
40
NOT
NOT uma instruo para inverter o RLO. Se o RLO precedente a
instruo NOT for 0, este negado para 1. Reciprocamente, tornar-se zero se
o RLO for 1.
CLR
O RLO torna-se 0 com a instruo CLEAR, independente da condio
anterior
SET
A instruo SET faz com que o RLO se torne 1.
LAD/FBD no suportam estas duas instrues (CLR/SET).
SAVE
Com a instruo de memria SAVE, o contedo do RLO arquivado no
bit BINARY RESULT (BR) da palavra de status.
A BR
O RLO arquivado pode ser checado novamente usando a instruo A BR
41
42
Temporiadores
43
44
Extended Pulse
S_PEXT
Pulso Extendido
45
Contadores
46
Temp. On-Delay SD
Se o RLO mudar de 0 para 1, o temporizador SD inicializado. Se o
temporizador estiver funcionando, e o RLO mudar de 1 para 0, o temporizador
para.
Temp. Off-Delay SF
Se o RLO muda de 1 para 0, o temporizador SF inicializado. Se o RLO
mudar de 0 para 1, o temporizador resetado. O temporizador no
completamente reinicializado at que at que o RLO mude de 1 para 0.
Temp. de Pulso SP
Se o RLO muda de 0 para 1, o temporizador SP recebe o valor do
tempo. O temporizador funciona com tempo especfico, contanto que RLO = 1.
Se o RLO mudar de 1 para 0 com o temporizador funcionando, o temporizador
para.
Temp. Pulso Extendido SE
Se o RLO muda de 0 para 1, o temporizador SE recebe o valor do
tempo. O temporizador funciona por um perodo especfico, at mesmo se o
RLO mudar para 0 antes que o temporizador pare. Se o RLO muda de 0 para
1, o temporizador setado novamente. O estado do sinal do tempo de scan
resulta em RLO = 1, contanto que o temporizador esteja funcionando.
Temp. On-Delay Retentivo SS
Se o RLO muda de 0 para 1, o temporizador SS recebe o valor de
tempo. O temporizador funciona com o tempo especificado, at mesmo se o
RLO mudar novamente para 0 antes que o temporizador pare de funcionar. Se
47
48
MOVE (LAD/FBD)
A instruo MOVE torna possvel designar valores a variveis. Se a
entrada EN ativada, o valor presente na entrada IN copiado para o
endereo especificado para sada O. ENO tem o mesmo estado do sinal que
EN.
L and T (STL)
As instrues Load e Transfer permitem programar troca de dados
entre reas de memria. Load e Transfer so executados incondicionalmente e
independentemente do RLO. A troca de dados feita via acumulador.
A instruo Load transfere o contedo do endereo para o acumulador 1.
Quando isto acontece o contedo do acumulador 1 transferido para o
acumulador 2.
A instruo Transfer copia o contedo do acumulador 1 para o endereo
destino.
49
Funes de Comparao
Comparao
Com as instrues de comparao, voc pode comparar os seguintes pares
de valores numricos.
1- dois inteiros (cada um com 16 bits)
2- dois inteiros duplos (cada um com 32 bits)
3- dois nmeros reais (IEEE nmero de ponto flutuante, cada um com 32
bits)
Relao
Todas as instrues de comparao comparam os valores IN1 e IN2
baseados nas seguintes relaes:
1- IN1 igual a (==) IN2.
2- IN1 diferente de (<>) IN2
3- IN1 maior que (>) IN2
4- IN1 menor que (<) IN2
5- IN1 maior que ou igual a (>=) IN2
6- IN1 menor que ou igual a (<=) IN2
RLO
Se a comparao satisfeita, o resultado da operao lgica 1.
50
Salto Incondicional
A instruo Jump Incondicional interrompe o fluxo normal da lgica de
controle e provoca o salto de programa para a posio marcada pelo rtulo
(label). O label representado em LAD/FBD de maneira parecida ao elemento
de sada, porm com as letras JMP e o nome do rtulo destino associado; em
STL o label localizado atrs da instruo JU.
LAD
label
---------------------------------( JMP )
STL
JU label
Rtulos (labels)
O label marca o ponto onde o programa ir continuar a execuo, aps o
salto. Instrues ou segmentos localizados entre o jump e o label no sero
executadas.
O label obrigatoriamente deve estar localizado no mesmo bloco
(OB,FB,FC) que a instruo jump a que est associada.
51
Introduo
Saltos condicionais ocorrem sempre em funo do estado do RLO.
Salto Condicional RLO = 1 (JC)
O jump condicional JC executado se e somente se o RLO for 1.
Estando o RLO=1 a instruo se comporta da mesma maneira que um jump
incondicional. Porm se o RLO=0 a instruo jump ignorada e a execuo do
programa continua a partir da instruo seguinte.
Salto Condicional RLO =0 (JCN)
O jump condicional JCN executado se e somente se o RLO = 0.
Estando o RLO=0 a instruo se comporta da mesma maneira que um jump
incondicional. Porm se o RLO=1 a instruo jump ignorada e a execuo do
programa continua a partir da instruo seguinte.
JCB/JNB
Alm das instrues acima, existe duas outras opes em STL que so a
combinao do RLO e o bit BR:
1- Jump se RLO = 1 com RLO armazenado em BR (JCB)
2- Jump se RLO = 0 com RLO armazenado em BR (JNB)
Ambas instrues trabalham da maneira que JC e JCN trabalham; o
jump executado baseado no RLO. As instrues jump JCB e JNB salvam
adicionalmente o RLO no bit BR da palavra de status.
Nota:
Se o jump condicional no satisfeito, o programa continua a processar
as instrues seguintes ao jump e o RLO setado para 1.
52
Cdigo BCD
O dgito de um nmero decimal poder ser codificados com quatro dgitos
binrios. Esta representao deriva do fato que o maior nmero decimal de 1
dgito, que o nmero 9, necessita de pelo menos quatro posies para a
representao em binria.
Para representar os dez dgitos decimais 0 at 9 em cdigo BCD voc
usa a mesma representao como voc usaria para nmeros binrios de 0 at
9.
De 16 combinaes possveis de quatro dgitos binrios, seis no so
utilizadas. Estas combinaes proibidas so chamadas de pseudo tetrad.
INTEGER (INTEIRO)
O tipo de dados INT um inteiro (16 bits). O bit de sinal (bit no. 15)
indica se voc est tratando com nmeros positivos ou negativos (0 =
positivo, 1=negativo). A faixa de um inteiro (16 bit) est entre -32768 e
+32767.
Um inteiro ocupa uma palavra de memria. Em formato binrio, um
inteiro negativo representado com o complemento de dois de um nmero
inteiro positivo. Voc chega ao complemento de dois de um inteiro positivo
quando inverte o estado do sinal de todos os bits e adiciona 1 ao resultado.
NMERO REAL
Um nmero real (tambm chamado de nmero de ponto flutuante) um
nmero positivo ou negativo que abrange valores tais como 0,339 ou -11,32.
53
Voc pode tambm trocar o nmero real com um expoente como potncia
inteira de 10, com que o nmero real tem que ser multiplicado, de forma a
atingir o valor desejado. Como resultado, o nmero 1024 pode ser expresso
como 1.024E3.
O numero real ocupa duas palavras de memria e o sinal do nmero
definido pelo bit mais significativo. Os bits restantes representam o expoente e
a mantissa.
A faixa na qual o nmero real est compreendido -3.402823 10 38 a
3.402823 1038
54
(LAD /FBD)
STL
Descrio
BCD_I /
BCD_DI
TRUNC
TRUNC
DI_REAL
DTR
I_DI
ITD
ROUND
RND
CEIL
RND+
55
WAND_W
A instruo Word AND combina dois valores digitais especificados na
entrada IN1 e IN2 bit a bit, baseado na tabela verdade AND. O resultado da
operao salvo no endereo OUT. A instruo executada se o sinal de
entrada de EN=1. ENO tem o mesmo estado do sinal de EN.
Tabela Verdade AND:
MW10
W#16#0FF
F
MW30
WOR_W
A instruo Word ORcombina dois valores digitais baseados na tabela
verdade OR bit a bit, para valores de entrada IN1 e IN2. O resultado da
operao OR salvo no endereo OUT. A instruo executada , se o estado
da entrada EN=1. ENO tem o mesmo estado do sinal de EN.
Tabela verdade OR:
MW32
= 0100 0010 0110 1010
W#16#0001 = 0000 0000 0000 0001
MW32
= 0100 0010 0110 1011
WXOR_W
56
57
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
Subtrao
SUB_I Subtrai inteiros
SUB_DI Subtrai inteiros duplos
SUB_R Subtrai nmeros reais
58
Status do Programa
Com o Editor LAD/STL/FBD, voc pode exibir o programa e o fluxo do
sinal na linguagem de programao desejada.
1 LAD/FBD:
Mostra o fluxo de corrente entre os elementos e os valores de entrada e
sada dos blocos.
STL:
Mostra os endereos, o RLO e os registros importantes para a
depurao do programa.
Monitor./Modificando Variveis
As variveis definidas pelo usurio podem ser exibidas ou mudadas online com a CPU usando a opo PLC Monitor/Modify.
Inicializando o Status
1. Abrir o bloco de programa on-line pelo editor (LAD,STL/FBD).
2. Selecionar Debug Monitor (no menu do editor LAD/STL/FBD).
3. Resultado: O status da network selecionada e das seguintes so
atualizados.
Nota
Para mudar a forma de visualizao (ex.: entre LAD e STL), o status
deve estar desligado. Selecionando novamente Debug Monitor , a marca
antes de Monitor desaparece. Para mudar a linguagem de programao
selecione View LAD, FBD ou STL no menu do editor de Programas. Ento o
status do programa pode ser selecionado novamente, depois que a forma de
visualizao foi mudada.
60
Modo de Status
H dois modos de operao para a funo de Status do Bloco. Isto
torna possvel selecionar o modo processo ou laboratrio para o bloco aberto
on-line.
Modo Process
O status dos operandos do programa avaliado somente no primeiro
scan. Este modo causa uma menor carga no tempo de ciclo.
Modo Laboratory
O status dos operandos avaliado todo scan. O tempo de ciclo pode ser
aumentado significativamente neste modo.
Seleo do Modo
1. Use o editor LAD/STL/FBD para abrir o bloco on-line.
2. Selecione a linguagem que voc deseja (LAD, STL, or FBD).
3. Selecione Debug Call Environment.
4. Selecione Process ou Laboratory. (Process setado como padro).
Resultado:
Quando voc selecionar a opo Monitor o status operado no modo
selecionado.
61
62
Chamando Blocos
63
Parmetros EM/ENO
EN/ENO
Em Diagrama de Contatos (LAD) e em Blocos Funcionais (FBD) existe
um sinal de habilitao do bloco (EN), isto , o bloco executado se e somente
se o RLO=1 nesta entrada
Possui tambm uma sada correspondente (ENO), que indica o se o bloco foi
executado corretamente.
Funcionamento
1 -se EN no ativado (0), o bloco no executado, e o ENO no
ativado (0).
2- se EN ativado (1),o bloco executado; se o bloco executado sem
erro, ENO ativada (1)
3- se EN ativada (1), o bloco executado, se ocorre um erro na
execuo do bloco, o ENO no ativado (0).
EN/ENO em FBD
EN/ENO em STL
Em STL, o EN e ENO tem que ser emulado com instrues de jump
salvando o RLO no resultado binrio BR. Isto necessrio se se deseja
programar a condio ENO em um bloco de usurio (caso de erro de
execuo).
A I 1.0
JNB SALT
CALL FC1
SALT: A BR
64
= Q 5.0
obrigatoriamente tem que ser iniciadas a cada ciclo do bloco, no servindo para
armazenar dados de um ciclo para o outro.
Colunas da Tabela
End. local: um endereo relativo da memria local, criado automaticamente
pelo sistema. Pode-se eventualmente acessar a varivel por este endereo
porm se possvel sempre usar o nome simblico.
1- Nome: o nome simblico para a varivel que ser usado com a seo de
cdigo do programa.
2- Tipo de dado: tipo de dado da varivel. Ex.: BOOL (Booleana), INT (Inteira)
3- Valor inicial: campo opcional onde pode-se definir o valor inicial ou de startup.
4- Comentrio: campo opcional que contm o comentrio descritivo sobre a
varivel.
66
Parmetros de um Bloco
67
Tipos de Parmetros
Os parmetros de um bloco podem ser:
1- in parmetros de entrada
2- out parmetros de sada
3- in_out parmetros de entrada/sada
68
69
Variveis Estticas
Os blocos do tipo FB possuem adicionalmente variveis do tipo estticas
(stat). Quanto edio o uso desta varivel igual a varivel temporria. A
varivel esttica porm existe fisicamente ( armazenada no DB instance)
sendo portanto possvel utilizar o valor armazenado no ciclo anterior.
Limites
Sendo uma rea de memria da CPU, existem limites para criao e uso
destas variveis. Estes limites dependem do tipo de CPU e da organizao do
programa. Detalhes podem ser vistos no captulo sobre Documentao.
Nota
Pode ocorrer de que um nome simblico de varivel local tenha o
mesmo nome simblico de uma varivel global. Para diferenciar isto as
variveis globais so identificadas por aspas (nome_simbol).
70
Informaes do Sistema
Acesso
Para ler as informaes sobre a CPU, ativar o menu de comando VIEW
Online Hardware Diagnostic e clicar no boto Expanded diagnostic
Information.
71
Informaes da CPU
Na figura a anterior v-se os dados gerais da CPU -312-5 do PLC S7300.
Note o item Version que informa qual a verso do mdulo.
72
Performance da CPU
73
Ocupao da Memria
Memory
Esta pasta fornece informaes sobre a ocupao da memria pelo
programa do usurio.
Work Memory
Esta rea da RAM acessada durante a execuo do programa do
usurio. A memria de trabalho contm somente informaes necessrias
para o processamento do programa na CPU. A memria de trabalho
integrada na memria RAM da CPU, no podendo ser expandida.
Esta memria muito importante para a definio do tamanho mximo de
programa executvel.
Load Memory
A memria de carga uma memria intermediria onde o programa
armazenado quando transferido para a CPU. Como esta memria possui no
somente o programa executvel, mas outras informaes necessrias para a
edio do programa (por ex., tipo de dados do DB) esta memria sempre
maior que a memria de trabalho.
So apresentadas duas colunas de ocupao: uma referente memria
integrada CPU e outra memria adicional inserida (carto F-EPROM).
Comprimindo
Pode-se eliminar espaos existentes na memria de trabalho utilizando o boto
de comando Compress. Estes espaos originam-se de correes de
programas na CPU. Isto , porque blocos alterados so sempre inseridos no
final da rea memria, enquanto que os blocos antigos so declarados
invlidos. A compresso da memria reloca a RAM para limpar os espaos
feitos nesta fragmentao, e torna a RAM mais eficiente.
74
Time System
Esta pasta possui informaes a respeito de data/hora e funes similares.
Relgio de Tempo Real
As CPUs possuem um relgio de tempo real integrado (exceto CPU312) . Aqui
pode-se ler a hora/data da CPU, alm de informaes sobre o sincronismo o
relgio.
Medidor de Tempo Decorrido
Existe na CPU uma funo de sistema (SFC) para medio de tempo decorrido
de um evento (por ex. tempo de funcionamento de um motor). Caso utilizada,
possvel acessar o tempo decorrido nesta pasta.
75
Referncia Bibliogrfica
76