Académique Documents
Professionnel Documents
Culture Documents
CLP S7 - 300
S e r v i o N a c i o n a l d e A p r e n d i z a g e m I n d u s t r i a l
Escola SENAI Joo Martins Coube
Rua Virglio Malta, 11!! Centro
"auru#S$ CE$% 1&'1(!!'
)one#*a+% ,1-. /1'-/0''
e1ail% senaibauru2s34senai4br
2
Sumrio
)a1lia SIMA5IC '(
Instalan6o o S5E$ & 1(
Intro6u7o ao 8ar69are S& !(
: So*t9are S5E$ & -(
Con*iguran6o e 3ara1etri;an6o o S& (0
$rinc3ios b<sicos &=
: e6itor 6e 3rogra1as ='
:3era7>es l?gicas b<sicas 1'@
5e13ori;a6ores, Conta6ores e Co13ara6ores 11(
ConAerso, o3era7o l?gica 6igital, 1ate1<tica, 6esloca1ento 1!=
3
4
Famlia SIMATIC
SIMA5IC
A famlia SMATC representa no somente uma linha de CLPs, e sim toda uma linha
de produtos de AUTOMAO TOTALMENTE NTEGRADA.
SIMA5IC S&
Os Controladores Lgicos Programveis da famlia SMATC S7 podem ser divididos
em : Micro PLC (S7 200), pequeno/mdio porte (S7 300) e mdio/grande porte (S7
400).
SIMA5IC M&
O CLP M7 um computador PC AT compatvel, com o mesmo desempenho, a
mesma funcionalidade e o ambiente de programao de um microcomputador.
5
SIMA5IC C&
Este um sistema completo, a combinao do CLP (S7 300) e um painel de
operao (HM Operador nterface) em uma nica unidade.
So*t9are
O SMATC Software um projeto modular. Ele consiste do Software Bsico STEP 7 e
Pacotes Opcionais, instalados a parte. Os Pacotes Opcionais podem ser linguagem de
programao adicionais tais como S7-GRAPH, SCL, CFC,SFC e pacotes para
diagnsticos, simulaes, documentao e Teleservice.
5er1inais 6e $rogra1a7o
So PCs AT compatveis com todos as interfaces necessrias e software bsicos de
programao pr-instalados. Disponveis desde laptop at desktop.
Re6es 6e Co1unica7o
As redesAS-, Profibus e ndustrial Ethenert esto disponveis para troca de dados
entre sistemas de PLCs.
I#: Bistribu6os
Para economizar em cabos, existe a possibilidade da utilizao de /Os remotos em
um projeto distribudo. Uma configurao distribuda, no que se refere sua
parametrizao/programao, no difere de uma configurao central.
Inter*ace 8o1e1M<Cuina
Para comunicao Homem-Mquina, existe a nterface de Operao SMATC HM.
Estas interfaces so totalmente integrveis toda a famlia SMATC.
6
S&!''
O S7-200 o micro-CLP da famlia SMATC S7
Caractersticas
O S7-200 tem as seguintes caractersticas e funes:
Baixo preo
"Totalmente compacto com fonte de alimentao, CPU e entradas/sadas
integradas em um nico dispositivo.
"Micro PLC com funes integradas
Pode ser expandido em at sete mdulos
Software baseado em DOS ou Windows (STEP 7 MCRO/DOS ou STEP 7
MCRO/WN)
)un7>es
Alimentao das entradas digitais (sensores) integrada
Forar entradas e sadas
Acesso direto s entradas/sadas
Relgio de tempo real integrado
Dois potencimetros analgicos integrados
Duas sadas em pulsos integradas
7
Entradas digitais comandadas por interrupes
Contadores de alta velocidade integrados (7 a 20kHz).
S&!''
O S7-200 o micro-CLP da famlia SMATC S7.
Caractersticas
baixo preo
Totalmente compacto com fonte de alimentao, CPU e entrada/sadas intregadas
em um nico dispositivo.
Micro PLCcom funes integradas
Pode ser expandido em at sete mdulos
Solfware baseado em DOS ou Windows (STEP 7 MCRO/DOS ou STEP 7
MCRO/WN)
)un7>es
Alimentao das entradas digitais (sensores) integrada
Forar entradas e sadas
Acesso direto s entradas/sadas
Relgio de tempo real integrado
Dois potencimetros analgicos integrados
8
Duas sadas em pulsos integradas
Entradas digitais comandadas por interrupes
Contadores de alta velocidade integrados (7 a 20kHz).
S&/''
O S7-300 o pequeno e totalmente modular CLP da famlia SMATC S7.
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 (MP), PROFBUS e industrial
Ethernet
Conexo central com PC acessa todos os mdulos (FM e CP)
Sem regras para alocao das placas
Configurao e parametrizao via software STEP 7
9
S&-''
O controlador lgico programvel S7-400 abrange aplicaes de mdio e grande porte.
A famlia da CPU S7-400 tem um set de instrues poderoso (igual ao do S7-300) e
esquema de endereamento simples.
Me1?ria 6e 5rabalDo
A partir de 48 KB at 2 mega.
Sinais Bigitais
A partir de 64K at 256K.
Sinais Anal?gticos
A partir de 4K at 16K.
Me1orE MarFers
Flags A partir de 4K at 16K.
5e13o 6e Ciclo
A partir de 0,08
Custo1i;e
2.Selecione a pasta de Linguagem
3.Selecione a linguagem desejada:
SMATC = alemo;
EC = nternacional (ingls)
I13ortante
Existem duas selees independentes:
Lngua do Editor seleciona o idioma da ferramenta STEP 7
(ingls/alemo/espanhol/italiano/francs)
Lngua dos Mnemnicos seleciona o idioma em que o programa do usurio
ser escrito (ingls/alemo)
21
Meta
Checar a parametrizao correta da interface da PG.
$roce6i1ento
Clique na barra de tarefas Iniciar
Selecionar SIMA5IC S5E$ & Setting tDe $H#$C Inter*ace
Depois de voc ter selecionado Carto $C#M$I clique no boto
$ro3rie6a6es
Checar se o endereo local da PG est setado para 0.
22
Mne1Jnicos
Antes de editar um programa, necessrio escolher entre 2 opes de mnemnicos
para exibio das construes no editor de programa.
Pode-se escolher entre EC (nternacionais/ngls) ou SMATC (Alemo).
Meta
Selecionar os mnemnicos desejados.
$roce6i1ento
1.nicie o SMATC Manager
2.selecione no menu de comandos :3tions Custo1i;e4
3.Escolha a language4
4.Escolha a linguagem mnemnicos desejada e confirme com ":K
23
Resulta6o
Quando programando, um dos seguintes modos ser exibo:
Exemplo de instrues STL em linguagem nternacional: A 1.O //AND Entrada
(nput) 1.0
Exemplo de instrues STL em linguagem SMATC: U E 1.0 //UND Entrada
(Eingang) 1.0
24
Introduo ao Hardware S7
Bi1ens>es
CPU212 = 160x80x62mm
CPU214 = 197x80x62mm
CPU215 = 218x80x62mm
CPU216 = 218x80x62mm
Me1?ria%
6e trabalDo ,RAM. 1 Kbyte 4 Kbyte 8Kbyte 8KByte
6e instru7>es 185 inastrues 2K 4K 4K
Registra6ores 6e Ba6os
0.5 words 2k words 2.5k words 5k words
25
I#: onboar6
8 D / 6 DO 14 D / 10 DO 14 D / 10 DO 24 D / 16 DO
Ca3aci6a6e 6e E+3anso
2 mdulos de expanso 7 Mdulos de expanso
Interru37>es
1 ent. inter., 1 contad. 4 ent. inter., 3 contad. 4 ent. nter., 3 contad.
nterrup. (2kHz) interrup.(2z 7 kHz; 1z2 kHz) interrup. (2x20 KHz; 1x2kHz)
Conta6ores#5e13ori;a6os
64/64 128/128 128/256 256/256
5e13o 6e E+ecu7o (por 1K/instrues)
1.2 ms 0.8 ms 0.8 ms 0.8 ms
Co1unica7o
1x PP / Freeport 1x PP/ Freeport / MP 1x PP 1x PP /Freeport
1x Profibus 1x PP
Manuten7o
Livre de Manuteno, no necessita de bateria
Set 6e o3era7>es%
Bsicas, standard, operaes especiais, PD integrado, receive +PD, funes de
receive, funes aritmticas (operaes em ponto fixo e ponto flutuante), funes de
jump, funes de loop, funes de converso de cdigo.
Mo6elos
Cada CPU por sua vez possue diferentes modelos para as diferentes tenso dos /Os.
26
Bi1ens>es
CPU221 = 90x80x62mm
CPU222 = 90x80x62mm
CPU224 = 120.5x80x62mm
CPU226 = 196x80x62mm
Me1?ria%
6e trabalDo ,RAM. 4kByte 4kByte 8kByte 8kByte
6e instru7>es 1.3 k 1.3 k 2.6 k 2.6 k
Registra6ores 6e Ba6os
1k words 1k words 2.5k words 2.5k words
I#: onboar6
6 D / 4 DO 8 D / 6 DO 14 D / 10 DO 24 D / 16 D
Ca3aci6a6e 6e E+3anso
Nenhum mdulo 2 mdulos 7 mdulos de expanso
27
Interru37>es
4 ent. nter., 4 contad. 4 ent. nter., 4 contad. 4 ent. nter., 6 contad.
nterrup. (30 kHz) interrup. (30 kHz) interrup. (30 kHz)
Conta6ores#5e13ori;a6ores
256/256 256/256 256/256 256/256
5e13o 6e E+ecu7o (por 1k/instrues)
0.37 ms 0.37 ms 0.37 ms 0.37 ms
Co1unica7o
1x PP/Freeport/MP 2x PP/
Freeport/MP
Manuten7o
Livre de manuteno, no necessita de bateria
Set 6e o3era7>es
Bsicas, standard, operaes especiais, PD integrado, receive+PD, funo de
receive, funes aritimticas (operao em ponto fixo e pomto flutuante), funes de
jump, funes de loop, funes de conservao de cdigo.
Mo6elos
Cada CPU por sua vez possue diferentes modelos para as diferentes tenso dos /Os
28
M?64 Be Sinal SM
O mdulo de sinal recebe do campo os sinais eltricos e os adapta aos vrios nveis
de sinais dos mdulos:
Entrada/sada digital
Entrada/sada analgica (tenso, corrente, resistncia, termo elementos)
Acessrios: conectados frontais
M?64 6e Inter*ace IM
O mdulo de interface torna possvel a configurao de vrios trilhos/bastidores de
expanso. Estes mdulos fazem a conexo entre os trilhos/bastidores:
Mdulo de Transmisso, conectado no Rack Central.
Mdulos de Recepo, conectando no Rack de Expanso.
O mdulo combinado Send/Receive uma soluo econmica para
configurao com dois trilhos; nest caso no trilho de expanso so permitidos somente
mdulos de /O (SM). Por ex. M365 no S7-300
29
M?64 6e )un7o )M
O mdulo de funo oferece "funes especiais:
Contagem
Posicionamento
Regulao em malha fechada
M?64 6e Co1unica7o C$
Mdulos de comunicao oferecem as seguintes possibilidades de rede:
Comunicao ponto a ponto
PROFBUS
ndustrial Ethernet
No S7-300 o endereamento dos mdulos de /O, CP e FM so slot-orientados, isto ,
o seu endereo depende da posio do mdulo no trilho. Alguns slots so reservados:
OS CPU e M.
SloE 1%
Os -Fonte de alimentao. Obrigatoriamente no primeiro slot. No associado nenhum
endereo para a fonte de alimentao.
30
Slot !%
CPU; dever estar localizada prxima a fonte de alimentao. No associado
nenhum endereo para a CPU (veremos mais tarde endereo MP).
Slot /%
Mdulo de interface (M). Para conectar racks de expanso. No associado nenhum
endereo para a M. At mesmo se a M no estiver presente, ela dever ser
considerada no esquema de endereamento do slot. O slot 3 logicamente reservado
pela CPU para a M.
Slot -%
Mdulos de sinais. Slot 4 considerado o primeiro slot para mdulos de entrada e
sada (ou CP ou FM). Um exemplo de endereamento exibido abaixo para um carto
de digital (entrada = , sada = Q):
I13ortante
A CPU 315-2DP permite que os endereos sejam livremente definidos.
31
En6ere7a1ento Bigital
O endereamento das entradas () e sadas (Q) digitais comea com o endereo 0 para
o mdulo de sinal localizado no slot 4 (1 slot para SM).AA 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.
5abela I1age1 6a $eri*eria
Aos sinais digitais do CLP corresponde uma rea na CPU que contm o estado atual
das entradas e as sadas. Esta rea denomina Tabela magem da Periferia de Entrada
(P) e de Sada (PQ) so atualizadas automaticamente pela CPU a cada incio e fim
de ciclo respectivamente. Pode-se acessar estas reas ( e Q) em bits, bytes, words ou
doubl words, como mostrando nos exemplos a seguir:
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 /O do diagrama
acima, isto corresponde ao primeiro ponto no mdulo 2)
QB100 refere-se ao dado no byte 100 da tabela imagem da periferia de sada.
32
W100 refere-se ao dado que arquivado nos bytes 100 e 101 da tabela
imagem da periferia de entrada.
QD24 refere-se ao dado que arquivada nos bytes 24, 25, 26, 27 da tabela
imagem da periferia de sada.
En6ere7a1ento Bigital 6o S&-''
O S7-400 permite a definio pelo usurio do endereamento dos mdulos. Caso no
seja definido pelo usurio, o CLP assume um endereamento defalt paraos mdulos,
cada mdulo ocupado 4 bytes (32 bits). O endereamento digital segue o seguinte
padro:
nicio Endereamento Digital = (nmero slot fsico 1) x 4
Exemplo: Endereo inicial do mdulo digital no slot 4 12.0
En6ere7a1ento Anal?gico
O endereamento das entradas e sadas analgicas comea no endereo 256 para o
mdulo de sinal localizado no slot 4 (1 slot para SM). A figura acima mostra o
esquema de endereamento dos mdulos analgicos. Cada mdulo analgico ocupa
33
16 bytes de endereos, independentes do tipo de mdulo, sendo que cada canal
analgico ocupa dois bytes de dados.
Acesso aos Sinais Anal?gicos
As /O analgicas acessam uma rea de memria denominada Periferia (P e PQ) da
CPU.Os sinais analgicos, ao contrario dos sinais digitais, no possuem uma tabela
imagem (P ou PQ), 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 $IL e para
sada analgica $ML
NO s7-300 o endereamento para sinais analgicos comea com 256, sendo portanto
que o primeiro rack ir ento ser PW256. O ltimo endereo analgico 766 (para o
S7-300).
E+e13lo
Para acessar os dados do segundo canal no primeiro mdulo no rack 2, o endereo da
entrada analgica e PW514.
En6ere7a1ento Anal?gico no S&-''
Os S7-400 tambm suporta opcionalmente endereamento padro para mdulos
analgicos. O endereamento analgico defalt segue o seguinte padro:
Endereo nicial Analgico = (nmero do slot 1) x 64 + 512
Exemplo inicial de um mdulo analgico no slot 4 704.
34
Ba6os 5Gcnicos
A famlia S7-300 suporta um set de instrues e endereamento comuns. A figura
mostra as especificaes tcnicas mais importantes para as CPUs 312 a 315.
NN1eros 6e "locos
Diferenas nas quantidades de nmeros de blocos (FB, FC, DB).
- CPU 312 CPU 315
- 32 FB 192 FB
32FC 192 FC
63DB 255 DB
FB Blocos de Funes
FC Funes
DB Blocos de Dados
C$I /OO I)M
As CPUs FM so caracterizadas no somente por possurem entradas/sadas
integradas na CPU (on-bord) como tambm funes especiais incorporadas.
35
5rilDos ,1.
Para as CPUs 312/313. possvel a montagem em somente um trilho (sem expanso)
5rilDos ,!.
As CPUs 314 a 318 suportam at quatro trilhos (3 trilhos de expanso).
Cone+o B$
Os S7s 315-2 DP / 318-2 DP possuem uma interface adicional para PROFBUS-DP
(Periferia Distribuda) e permitem a livre escolha do endereamento dos mdulos de /
5i3os 6e C$I%
Um range completo de CPUs supre todas as exigncias de desempenho individuais
no que se refere a tempo de execuo, tamanho da memria de trabalho e nmero de
blocos.
E ainda mais, as CPUs 400 possuem integrada pelo menos uma interface MP /
PROFBUS-DP (mestre).
36
$ e C"IS
Cada S7-400 equipado com um barramento paralelo 1,5
PAB ou )"B
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 VEW, o editor de Programa converter todos os
segmentos de programa que podem ser convertidos. Segmentos de programa no
conversveisse 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).
92
O Editor de Programas possui duas reas com funes bem definidas: tabela de
declaraes e a seo de instrues.
5abela 6e Beclara7>es
Esta tabela serve para declarar variveis e parmetros para o bloco. As variveis
locais (temporrias) so definidas para uso o bloco nesta tabela.
A parametrizao toma possvel passar variveis entre blocos para que sejam usados
universalmente.
93
Se7o 6e Instru7>es
Nesta rea especificadas a seqncia e a lgica do programa (instrues).
Durante e edio dos operandos, a sintaxe checada, destacando imediatamente
qualquer erro.
Cada pequena lgica do programa definida dentro de um segmento (Network).
Entende-se como lgica, a combinao de blocos que resultar numa sada/flag sendo
ou no acionado.
Nas linguagens LAD/FBD o prprio Editor no permite que seja realizado mais que
uma lgica por segmento. No modo STL possvel ter vrias lgicas por segmento,
porm se compromete a capacidade de se visualizar em outras linguagens (LAD/FBD).
Co1ent<rios
O editor permite ainda op acrscimo de comentrios; ttulo e comentrio do bloco e
ttulo e comentrio para cada segmento. Atravs da funo ViewCoomentar pode-
se visualizar ou no estes comentrios.
Intro6u7o
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
94
programa. Aps isto, digita-se o endereo dos operandos (por ex.10.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.
Ele1entos Co1uns co1 Seus Zcones
F2 Scan para sinal 1 (contato fechado)
F3 Scan para sinal 0(contato aberto)
F4 Output coil (sada)
F8 Ramificao para baixo (abrindo)
F9 Ramificao para cima (fechando)
Cat<logo 6e Instru7>es
Outros elementos (instrues) so acessadas pelo catlogo de instrues, acessado
pelo cone ao lado ou pela combinao das teclas Ctlr[K
95
Intro6u7o
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.
Co1ent<rios
Os comentrios so editados como no modo diagrama de contatos.
Corre7>es
Posicione o cursor do mouse sobre e elemento e pressione a tecla DEL.
96
Regras
-blocos padres (flipflops, contadores, temporizadores, operaes matemticas, etc.)
podem tambm ter um outro bloco com operaes lgicas binrias (&, >=1, XOR)
associado. As excees para esta regra so os blocos de comparao.
-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.
-deletando umbloco, todas as ramificaes que so conectadas com a entrada
booleana,com exceo da ramificao principal, so deletadas.
-modo de sobre-escrever disponvel para troca simples de elementos do mesmo tipo.
Esta demonstrao auxilia a familiarizar-se com os itens de menu para a edio e
depurao do seu bloco. Estas ferramentas so necessrias quando voc for escrever
o seu programa no prximo exerccio.
97
Ser demonstrado o seguinte:
-edio de um bloco pr-existente
-seleo de uma linguagem de programao LAD/FBD/STL
-criar segmentos (networks)
-usar os elementos da barra de ferramentas
-usar os elementos do catlogo de instrues
-salvar um bloco de programas
-transferir um bloco de programa para o PLC
-selecionar o modo on-line
-exibir o status do programa
:bTetiAo
Editar o OB1 (criado automaticamente sem instrues).
$roce6i1ento
1. destaque a pasta "locFs do S7 Program, subordinado estao de Hardware.
2. selecione no campo de dilogo Vie9XX S:**line
3. selecione OB1 (double click)
98
4. com ajuda dos smbolos na barra de ferramentas, digite o seguinte programa em
ladder.
Resulta6o
Notas
-para posicionar o primeiro elemento, aponte o cursor para a linha da network.
-use os smbolos de programa da barra de ferramentas.
-posicione o cursor em cima do smbolo (tecla TAB ou mouse) para digitar o endereo.
-use a tecla TAB para saltar entre os elementos.
Depois do bloco aberto, pode-se escolher entre os mtodos de representao LAD
(Diagrama Ladder), FBD (Blocos de funo) e STL (Lista de instrues). Todas as
instrues so sempre convertidas para STL, porm a converso para LAD/FBD nem
sempre ocorre em todos os segmentos.
99
:bTetiAos
Selecionar a linguagem de programao para edio do bloco.
$roce6i1ento
1.abrir um bloco para edio (por ex. o OB1 do exerccio anterior)
2.selecionar o modo de edio/visualizao:
-LAD, selecionar no menu de comando Vie9PAB4
STL, selecionar no menu de comando Vie9S5P4
-FBD, selecionar no menu de comando Vie9)"B4
Resulta6o
Seu programa representado em um dos seguintes tipos de representao:
100
Como qualquer editor de programas/textos, necessrio salvar seu trabalho aps a
edio. sto como um Save normal do Windows, o qual pode ser usado com os dois
procedimentos exibidos acima.
Quando usado o comando de menu )ile SaAe As, deve-se especificar o projeto,
programa e o nome do bloco para este arquivo.
Depois de salvo, este bloco se encontra como um cone na pasta "locFs do
projeto/programa em que foi salvo. Pode-se utilizar o SMATC Manager como o
Explorerpara copiar ou mover o bloco para outros projetos, CPUs, etc.
:bTetiAo
Salvar um bloco de programa.
$roce6i1ento
1.selecionar no menu de comando )ile SaAe ou clique no cone Save.
2.ou selecione no menu de comando )ile SaAe As e especifique o arquivo de
destino.
Resulta6o
1.salva o bloco de programa com o nome especificado quando o bloco est aberto
101
2.com Save As o bloco de programa salvo com o nome que voc digitar.
Nota
O programa no copiado para a CPU atravs do procedimento SAVE
Depois editado o programa, o prximo passo transferir o bloco para a CPU. Usando
p Editor LAD/STL/FBD, pode-se transferir um bloco individualmente enquanto ele
estiver aberto, ou pode-se usar alternativamente o SMATC Manager para transferir o
bloco. O procedimento para usar o SMATC Manager descrito nos prximos
exerccios (transferindo o programa).
:bTetiAo
Transferir um bloco (OB1) para a CPU com o editor LAD/STL/FBD.
$roce6i1ento
Quando editor LAD/STL/FBD est aberto.....
1.selecionar o menu de comando $PCBo9nloa6 (click no cone Download exibido
acima).
(responda as questes no menu de exibio)
102
Quando voc responde com Yes,o bloco presente na CPU sobre escrito.
Quando voc responde com No, o bloco original permanece na CPU, e seu bloco no
transferido. Para este exerccio selecione Yes, porque voc deseja usar um novo
bloco por voc editado, e no o bloco antigo.
Resulta6o
Seu novo programa escrito na CPU.
On-line significa que os objetivos exibidos so os blocos residentes a CPU. Esta
conexo no depende da CPU estar em modo RUN ou modo STOP. Com o STEP7
voc pode estabelecer conexo de dois mtodos:
103
:bTetiAos
Usar o Editor LAD/STL/FBD para estabelecer conexo com a CPU.
$roce6i1ento
Use o Editor S& PAB#S5P#)"B para abrir ou editar o bloco na CPU.
1.selecione Program S7 Blocks (LAD/STL/FBD)
2.selecione no menu de commando )ile :3en
3.selecione a opo Vie9 :nline da lista drop-down.
Depois que foi selecionado On-line, o dispositivo de programao seta a conexo. Os
blocos localizados na CPU so exibidos no menu. Para editar ou depurar um desses
blocos, selecione o bloco pertinente na lista. possvel ter mais que um bloco aberto
simultaneamente. Quando voc executar este procedimento e selecionar a opo
Arrangeno item Windows do menu, voc pode ver os dois blocos simultaneamente.
:bTetiAo
Usar o SMATC Manager para estabelecer a conexo com a CPU.
$roce6i1ento
: SIMA5IC Manager pode tambm ser usado para abrir ou editar blocos na CPU (o
Editor LAD/STL/FBD iniciado automaticamente).
1.inicie o SMATC Manager.
2.selecione no menu de comando Vie9 :nline4
Quando voc selecionar o diretrio da CPU, o SMATC Manager exibe os nomes de
todos blocos localizados na CPU. Voc tambm pode usar este menu para abrir blocos
para edio e depurao de programas.
104
O bloco deve ser aberto on-line para que o processo seja monitorado. A seo de
instruo dos blocos exibe o estado de operao quando os valores mudam. Em LAD,
um cdigo de cores exibe o fluxo de corrente, e contatos abertos ou elementos so
representados por linha pontilhada. Entre outras coisas, as cores e os tipos de linhas
podem ser mudados via a funo do menu :3tions PAB#S5P#)"B4
:bTetiAo
Depurar o bloco enquanto ele est sendo processado pela CPU.
$roce6i1ento
1.use um dos procedimentos do exerccio anterior para selecionar o bloco que deseja
testar (modo on-line).
2.selecione o mtodo de representao Vie9 PAB#S5P ou )"B4
3.selecione no menu de comando Bebug Monitor4
Resulta6o
Os elementos do programa e os smbolos so exibidos e ativados se logicamente
verdadeiros. Os valores que no so Logicamente Verdadeirosno so destacados.
105
O#era%es &'i"as $si"as
Heral
As instrues de BT 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. nstrues de BT 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).
nstrues de bit:
-scan para sinal 1
-scan para sinal 0
-sada
106
-conector
-setar sada
-resetar sada
-setar/resetar flip flop
-RLO negado
-salvar RLO
A descrio das instrues baseada nos exemplos acima.
ANB
Se e somente se o estado do sinal 10.0 = 1 e 10.1 = 1, o resultado da operao lgica
(RLO) 1, e a sada Q4 torna-se 1. Se uma ou ambas as entradas tem sinal 0, o RLO
0 e a sada torna-se 0.
:R
Se o estado do sinal 10.2 = 1 ou 10.3 = 1, o RLO 1 e a sada Q4.1 torna-se 1. Se
nenhuma das entradas for 1, o RLO = 0, e a sada torna-se 0.
O:R
A instruo XOR torna o RLO 1 se so1ente se uma das entradas for 1. Se nenhuma
das entradas for 1 ou se ambas forem 1, o RLO 0, e a sada torna-se 0.
107
RP:
As instrues vistam at agora tratam principalmente de checks e designaes. sto
significa: O scan processa o estado do sinal de entrada, sada, memory markers
(flag), e designa um estado de sinal para sada ou memory markers (flag).
Dois ou mais bits que forem checados em funo de uma associao qualquer geram
uma operao lgica. O resultado desses checks o resultado da operao lgica
(RLO). O resultado da operao lgica de uma AND ou uma OR pode ento ser
designado a uma sada ou a uma memria (flag).
)irst CDecF
O termo first check (primeira checagem) indica que est sendo executada aprimeira
instruo de uma lgica. sto significa que uma nova operao lgica se iniciou, e que
o resultado (RLO) da operao lgica anterior no ser considerado.
sto torna sem importncia, qual instruo (por ex. AND ou OR) est sendo utilizada
como primeira instruo de uma lgica escrita em STL.
O First check gerado automaticamente pelo CLP sempre que uma lgica foi
encerrada (por ex. uma sada foi setada) ou um novo bloco foi iniciado.
108
Heral
A funo Flip-flopconsiste de operaes de SET e RESET. As operaes se SET e
RESET somente so executadas quando RLO=1.Quando o RLO=0, o estado atual
permanece inalterado. Se as condies para ambos, set e reset so verdadeiras
simultaneamente, ento em STL, a instruo programada por ultimo 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 1.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
1.1=1, mesmo por um nico ciclo, a sada Q5.0 torna-se 0.
)li3*lo3 Set#Reset
Se o estado do sinal de entrada S=1, e a entrada R=0, o endereo (bloco acima)
setado.
109
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).
)li3*lo3 Reset#Set
Com este tipo de bloco, o set dominante.
N:5
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.
CPR
O RLO torna-se 0 com a instruo CLEAR, independente da condio anterior...
SE5
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 BNARY
RESULT (BR) da palavra de status.
110
A "R
O RLO arquivado pode ser checado novamente usando a instruo A BR
A avaliao do flanco de impulso freqentemente necessria em um programa, na
realidade, sempre quando no programa um a entrada muda para ON ou para OFF, ou
quando o endereo setado ou resetado.
)lanco 6e I13ulso $ositiAo
Quando a entrada 1.0muda seu estado de 0 para 1, como mostrado na figura acima, a
instruo FP identifica esta mudana de estado, denominada de flanco de impulso
positivo, e resulta em um RLO=1por somente um ciclo, ocorrendo um pulso de
largura de um ciclo na sada Q5.0.
Para uma instruo FP, uma memria auxiliar (flag) deve ser especificada (pode
tambm ser bit de dados) no qual o estado do RLO arquivado. Esta a maneira pela
qual uma mudana de sinal pode ser identificada no prximo ciclo.
)lanco 6e I13ulso NegatiAo
Para um flanco de mpulso Negativo, o pulso de scan ocorre quando o RLO muda de
1para 0.
111
O smbolo para isto em STL o FN, e em LAD, existe a letra Nno smbolo de sada.
:bTetiAo
Entender os elementos lgicos comuns e combinaes de operaes lgicas binrias,
e comear familiarizar-se com o Editor S7 LAD/STL/FBD digitando operaes lgicas.
$roce6i1ento
1.editar um OB1 (se existente, delatar o seu contedo)
2.digitar as operaes lgicas mostradas. Usar uma network para cada funo
3.salvar, carregar e depurar blocos na CPU
(quando carregando, especificar se o OB1 ir sobrescrever o da CPU)
Resulta6o
No modo Debug, pode-se visualizar o resultado das operaes lgicas.
112
:bTetiAo
Programe o modo de operao dos componentes para a mquina de carimbar de
acordo com as especificaes abaixo.
O sistema iniciado atravs da entrada 1. 1 (boto ligar, contato NA)
O sistema desligado atravs da entrada 1. 2 (boto com trava, contato NF)
A sada Q5. 5 acende a lmpada quando o sistema est ligado.
Quando o sistema ligado, o modo de operao pode ser selecionado:
-com 1.3=0 a operao manual selecionada e com 1.3=1 a operao automtica
selecionada.
-com o pulso na entrada 1. 4, o modo de operao aceita.
O modo de operao dever ser sinalizado por lmpada (manual=Q4. 6,
automtico=Q4.7).
113
Durante a operao manual, a esteira pode ser movimentada para frente com os
botes no retentivos 1. 5(Q4.0) e para trs com 1.6(Q4.1) respectivamente.
$roce6i1ento
Desenvolva um programa para o controle do modo de operao.
1.use os emdereos /O e os dispositivos mostrados acima.
2.criar um programa S7 com o nome MAQ_CARMBARno projeto PRO1.
3.escreva um programa para implementar as partes desta aplicao no FC15 e chame
o FC15 no OB1.
4.salve, transfira e depure seu programa no dispositivo de treinamento.
Resulta6o
Teste o funcionamento no simulador, selecionando o modo de operao.
Teste a operao em Manual (ligar para frente/trs)
114
Tem#ori!adores( Contadores e
Com#aradores
O S7 oferece trs opes de temporizadores com atraso (delay timer):
:nBelaE 5i1er S\:B5
Retardo na energizao
115
:**BelaE 5IMER S\:))B5
Retardo na Desenergizao
RetentiAa :NBelaE S\:B5S
Retardo na energizao com reteno
116
O S7 oferece duas opes de temporizadores de pulso:
$ulse
S_PULSE pulso
E+ten6e6 $ulse
S_PEXT
Pulso Extendido
117
As trs opes de contadores existentes so descritos a seguir. Uma rea de memria
reservada para os contadores. Esta rea de memria reserva uma palavra de 16 bits
para cada endereo de contador at 256 (dependendo da capacidade da CPU). O
valor mximo presetado 999 (BCD).
Conta6or Crescente S\CI
Com m flanco de impulsoosiona entrada S, o contador selado com o valor da
entrada SC. niciando m 0 ou SC, o contador conta crescentemente a cada vez que
existe um flanco de impulso positivo na entrada CU. A sada Q sempre 1, enquanto o
valor de CV no for igual a 0. Se houver um flanco de impulso positivo na entrada R o
contador resetado, isto , o contador setado com o valor 0.
Conta6or Becrescente S\CB
Com um flanco de impulsopositivo na entrada S, o contador setado com o valor da
entrada SC. (niciando com ) ou SC, o contador conta decrescentemente a cada vez
que existir um flanco de impulso positivo na entrada CD. A sada Q sempre 1,
enquanto o valor CV no for igual a 0. Se houver um flanco de impulso positivo na
entrada R o contador resetado, isto ,o contador setado com o valor 0.
I$ # Bo9n Counter S\CIB
Combinao de contadores crescente e decrescente.
118
5e134 :nBelaE SB
Se o RLO de 0 para 1, o temporizador SD inicializado. Se o temporizador estiver
funcionando, e o RLO mudar de 1 para 0, o temporizador para.
5e134 :**BelaE S)
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.
5e134 6e $ulso S$
Se o RLO muda de 0 para 1, o temporizador SP recebe o valor do tempo. O
temporizador funciona com tempo especfico, contando que RLO = 1. Se o RLO mudar
de 1 para 0 com o temporizador funcionando,o temporizador para.
5e134 $ulso E+ten6i6o 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, contando que o
temporizador esteja funcionando.
119
5e134 :nBelaE RetentiAo SS
Se o RLO muda de 0 para 1,o temporizador SS recebe o valor de tempo. O
temporizador funciona com o tempo especfico, at mesmo se o RLO mudar
novamente para 0 antes que o temporizador pare de funcionar. Se o RLO mudar de 0
para 1, o temporizador setado novamente. O estado do sinal do tempo de scan
resulta em RLO = 1, contando que o temporizador esteja funcionando.
Conta6or Crescente CI
A bobina CU incrementa de 1 o valor de um contador especfico, se o RLO mudar de 0
para 1.
Conta6or Becrescente CB
A bobina CD decrementa de 1 o valor de um contador especfico, se o RLO mudar de )
para 1.
Heral
Acumuladores so memrias auxiliares na CPU para troca de dados entre vrios
endereos, para comparao e operaes matemticas. Os S7-300 tem dois ACCUs
(acumuladores) com 32 bits cada, e os S7-400 tem quatro acumuladores com 32 bits
cada.
120
:3era7o 6e Carga P:AB
As operaes de carga sempre usam o ACCU1. Quando o valor carregado no
ACCU1, o valor arquivado posicionando a direita, e as posies no utilizadas so
deletadas. O valor anterior do ACCU1 deslocado para o ACCU2 durante a carga.
:3era7>es 6e 5rans*er]ncia 5rans*er
Durante a transferncia, o contedo do ACCU1 copiado para rea de memria de
destino (o contedo permanece no ACCU1). Se somente um byte transferido, os oito
bits da direita so usados (ver figura).
RP:
As instrues de load e transfer so independentes do RLO e so, portanto sempre
executadas. Em LAD e FBD, possvel carregar e transferir condicionalmente
utilizando-se a entrada EM do bloco M:VE4
Em STL, voc pode implementar isto com jumps condicionais.
M:VE ,KAB#)"B.
A instruo MOVE torna possvel designar valores a variveis. Se a entrada EN
ativada, o valor presente na entrada N copiado para o endereo especificado para
sada 0. ENO tem o mesmo estado do sinal que EN.
121
P an6 5 ,S5P.
As instrues Poa6 e 5rans*er permitem programar troca de dados entre reas de
memria. Load e Transfer so executados incondicionalmente e
independementemente 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.
Co13ara7o
Com as instrues de comparao, voc pode comparar os seguintes pares de valores
numricos.
-dois inteiros (cada um com 16 bits)
-dois inteiros duplos (cada um com 32 bits)
-dois nmeros reais (EEE nmero e ponto flutuante, cada um com 32 bits)
122
Rela7o
Todas as instrues de comparao comparam os valores N1 e N2 baseados nas
seguintes relaes:
-N1 igual a (==) N2
-N1 diferente de (<>) N2
-N1 maior que (>) N2
-N1 menor que (<) N2
-N1 maior que ou igual a (>=) N2
-N1 menor que ou igual a (<=) N2
RP:
Se a comparao satisfeita, o resultado da operao lgica 1.
Salto Incon6icional
A instruo Jump ncondicional 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.
123
R?tulos ,labels.
O label marca o ponto onde o programa ir continuar a execuo, aps o salto.
nstrues 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.
Intro6u7o
Saltos condicionais ocorrem sempre em funo do estado do RLO.
Salto Con6icional RP: X 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
124
RLO=0 a instruo jump ignorada e a execuo de programa continua a partir da
instruo seguinte.
Salto Con6icional RP:X' ,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.
JC"#JN"
Alm das instrues acima, existe duas outras opes em STL que so a combinao
do RLO e o bit BR:
-jump se RLO = 1 com RLO armazenado em BR (JC")
-jump se RLO = 0 com RLO armazenado em BR (JN")
Ambas instrues trabalham da maneira que JC e JCN trabalham; o jump executado
baseado no ROLO. 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 .
125
Rel] 6e Controle Mestre
O Master Control Relay uma chave lpgica mestre para energizar ou desenergizar o
fluxo de tenso. Quando desenergizadotoda a seqncia lgica seguinte ser zerada
(RLO=0) ao invs de ser executada. Se a lgica Mster Control Relay estiver ativa
(RLO=1) considera-se que o sistema est energizado. Por sua vez se a lgica estiver
inativa (RLO=0) considera-se que o sistema est desenergizado.
:bserAa7o
As instrues SET e RESET dentro de uma MCR inativo (desenergizado) no alteram
o valor da sada/flag. A instruo de transferncia (=) zera a sada/flag quando o MCR
est inativo.
MCRA
A instruo MCR ActiAe ativa a funo Mster Control Relay. S instrues Mster
Control Relay On e Mster Control Relay Off MCA< e aMCR> devem seguir a
instruo MCRA.
MCRR
A instruo Master Control RelaE :n marca o inicio da zona de controle lgico. MCR<
abre a rea MCR e trigga instrues que armazenam o RLO na pilha MCR. A pilha
126
pode ter at oito entradas. sto significa que at oito nveis de controle individuais
podem ser includas entre os comandos MCRA e MCRD.
MCRS
A instruo Master Control RelaE :** marca o fim da rea de controle lgico. O MCR>
combinado com o mais prximo MCR<.
MCRB
A instruo MCRB BeactiAate desativa a funo MCR. Voc no pode programar
nenhma rea MCR depois do MCRD. Esta instruo uma exigncia para a
associao lgica com MCRA.
:bTetiAo
Continue a aplicao do exerccio 8.2. A aplicao dever trabalhar da seguinte forma:
Controle 6e esteira e1 o3era7o auto1<tica
Em operao automtica, o motor do transportador (Q4. 0) ligar e permanecer ligado
at que botoeira de desligar (1. 2) abra ou at que o sensor de peas altas (0. 7) fique
ativo, iniciando a operao de carimbar. Esta e monitorada pelos sensores de
carimbador avanado (0. 3) e carimbador recuado (0. 2). Depois a pea expulsa e
monitorada pelos sensores de expulso avanada (0. 5) e expulso recuada (0. 4). A
127
vlvula do carimbador est localizada na sada Q4. 3 e a vlvula do expulsor est
localizada na sada Q4.4.
A pea deve ser mantida pressionada pelo cilindro de carimbar por 3s, sendo isto
sinalizado atravs da sada Q5. 0.
Contan6o as 3e7as
Existem dois sensores destinados a registrar peas baixas e altas. O sensor 0.7
registra as peas altas e o sensor 1.0 registra as peas baixas.
Peas altas e baixas devem ser contadas assim que sistema parta (C1 peas altas, C2
peas baixas). O nmero de peas altas e registradas em MW100 e o nmero de
peas baixas registrado em MW102.
$roce6i1ento
1.desenvolva um programa no bloco FC16 e adicione a chamada no OB1 (Projeto
PRO1, programa MAQ_CARMBAR). No FC15 voc tambm dever modificar a
network na qual o movimento da esteira para frente programado.
2.testar s soluo no dispositivo de treinamento.
Resulta6o
Simule a funo de operao automtica e de contagem.
128
Con)erso( O#erao &'i"a
*iital( Matemti"a( *eslo"amento
C?6igo "CB
O dgito de um nmero decimal pode ser codificado 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 utilizados, estas
combinaes proibidasso chamadas de pseudo tetrad.
129
Integer ,Inteiro.
O tipo de dados IN5 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 bits) est entre 32768 e +32767.
Um inteiro ocupa uma palavra de memria. Em formado 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 invertem o estado do sinal de
todos os bits e adiciona 1 ao resultado.
NN1ero Real
Um nN1ero real (tambm chamado de nmero de ponto flutuante) um nmero
positivo ou negativo que abrange valores tais como 0,339 ou 11,32. Voc pode
tambm trocar o nmero real comum 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 nmero real ocupa duas palavras de memria e o sinal do nmero definido pelo bit
mais significativo. Os bitss restantes representam o expoente e a mantissa.
A faixa na qual o nmero real est compreendido 3.402823 10
38
a 3.402823 10
38
.
130
Existem vrias possibilidades de converso. Todas as instrues tm o seguinte
formato:
EN X Enable in3ut
A converso executada somente se o RLO verdadeiro (=1).
EN: X Enable out3ut
A sada Enable output tem o mesmo estado de sinal que EM (EN=ENO), a menos que
tenha havido um erro durante a converso. Por exemplo, a instruo Round fornece o
EBO=0 para uma violao de faixa vlida.
IN X Valor 6e entra6a
Valor a ser convertido
:ut X Aalor 6e sa6a
Valor convertido
,PAB#)"B. S5P Bescri7o
BCD_ / BCD_D BT/BTD Converte cdigo binrio em formato decimal (BCD,
Binary Code for Decimal digitis) em formato inteiro.
TRUNC TRUNC Converte ponto flutuante (real 32 bit EEE) em inteiro
duplo.
D_REAL DTR Converte inteiro duplo em nmero real.
_D TD Corverte inteiro em inteiro duplo.
ROUND RND Converte um nmero real em inteiro duplo e arredonda o
resultado para o prximo nmero.
CEL RND+ Converte um nmero real em inteiro duplo e arredonda o
resultado para o mais prximo inteiro menor ou o mesmo
nmero.
131
LANB\L
A instruo Word ANDcombina dois valores digitais especificados na entrada N1 e
N2 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 EM=1. ENO tem o
mesmo estado do sinal de EN.
Tabela Verdade AND
MW 10 = 0100 010 0 1100 0100
W#16#OFFF = 0000 1111 1111 1111
MW30 = 0000 0100 1100 0100
L:R\L
A instruo Word ORcombina dois valores digitais baseados na tabela verdade OR
bit a bit, para valores de entrada N1 e N2. 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.
132
Tabela verdade OR:
MW32 = 0100 0010 0110 1010
W#16#0001 = 0000 0000 0000 0001
MW32 = 0100 0010 0110 1011
LO:R\L
A instruo Word Exclusive ORcombina dois valores binrios das entradas EN1 e
EN2 bit a bit e de acordo com a tabela verdade OR Exclusive. O resultado da operao
WXOR salvo no endereo OUT. a instruo ativada, se a entrada EN=1.ENO tem o
mesmo estado do sinal de EN.
Tabela verdade XOR
W0 = 0100 0100 1100 1010
MW28 = 0110 0010 1011 1001
MW24 = 0010 0110 0111 0011
Existem vrias funes aritmticas, como exibidas abaixo. As instrues tm o
seguinte formato:
133
EN X 8abilita entra6a
A instruo ser executada se e somente se o RLO verdadeiro (RLO=1).
EN: X 8abilita sa6a
A sada Enable output tem o mesmo estado de sinal que EN (EN=ENO),a menos que
tenha havido um erro durante a converso. Por exemplo, a instruo DV_ fornece
ENO=0 quando se faz uma diviso por zero.
IN1 X Entra6a 1
1.valor aritmtico da isntruo.
IN! X Entra6a !
2.valor aritmtico da instruo.
: X Sa6a
Resultado da operao aritmtica.
A6i7o
ADD_ Soma inteiros
ADD_D Soma inteiros duplos
ADD_R Soma nmeros reais
Subtra7o
SUB_ Subtrai inteiro
SUB_D Subtrai inteiros duplos
SUB_R Subtrai nmeros reais
Multi3lica7o
MUL_ Multiplica inteiros
MUL_D Multiplica inteiros duplos
MUL_R Multiplica nmeros reais
BiAiso
DV_ Divide inteiros
DV_D Divide inteiros duplos
DV_R Divide nmeros reais
134
Existem vrias funes matemticas e trigonomtricas com pontos flutuantes, como
mostrado abaixo. Estas instrues tm o seguinte formato.
EN X 8abilita entra6a
A instruo ser executada se e somente se o RLO verdadeiro (RLO=1).
EN: X 8abilita sa6a
A sada Enable output tem o mesmo estado de sinal que EN (EN=ENO), a menos que
tenha havido um erro durante a converso. Por exemplo, quando h um overflow.
IN X Valor 6e Entra6a
1 operando da instruo (nmero real).
: X Valor 6e Sa6a
Resultado da operao (nmero real)
A"S
Valor Absoluto de um nmero real
AC:S
Arco Coseno para um nmero real (resultado em radianos)
135
ASIN
Arco Seno para um nmero real (resultado em radianos)
A5AN
Arco Tangente para um nmero real (resultado em radianos)
C:S
Coseno para um nmero real (resultado em radianos)
EO$
Expoente para nmero real
PN
Logaritmo Natural para um nmero
SMR
Raiz de um nmero real
SMR5
Raiz Quadrada de um nmero real
SIN
Seno de um nmero real (resultado em radiano)
5AN
Tangente de um nmero real (resultado em radiano)
136
SDi*t # Rotate
Com as instrues Shift e Rotate,voc pode deslocar o contedo da mas baixa Word
do Acumulador 1 ou o contedo do acumulador para a direita ou para esquerda, bit a
bit. A instruo (por exemplo, SLW=desloca palavra para esquerda) determina a
direo da operao de deslocamento. O parmetro N especfica o nmero de bits a
serem deslocados. Na operao de deslocamento de palavra, os bits vazios so
preenchidos com o bit (MSB) de sinal (0=positivo e 1=negativo). Na operao de
rotao, os bits vazios so preenchidos com o contedo que foi rotacionado.
Instru7>es 6e Besloca1entos% SP8\L
Deslocamento de uma Word para esquerda. Os bits de 0 at 15 do acumulador so
deslocados para esquerda de N bits (posies). Bits vazios so preenchidos com zero.
S8P\BL
Deslocamento de uma Word dupla para esquerda. O contedo do Acumulador 1
deslocado bit a bit, N bits (posies) para esquerda. Bits vazios so preenchidos com
zero.
S8R\L
Deslocamento de uma Word para direita. Os bits de 0 at 15 do Acumulador so
deslocados para direita de N bits (posies). Bits vazios so preenchidos com zero.
137
S8R\I
Deslocamento de um nteiro para Direita. Os bits de 0 a 15 do Acumulador so
deslocados para direita de N bits. Bits vazios so preenchidos com o valor do bit de
sinal (bit 15).
S8R\BI
Deslocamento de um nteiro Duplo para Direita. O contedo do Acumulador 1
deslocado para direita bit a bit de N bits. Bits vazios so preenchidos com o valor do bit
de sinal (bit 31).
Instru7o 6e Rota7o
R:P\BL
Rotaciona uma Word dupla para esquerda. O contedo do Acumulador 1 rotacionado
bit a bit N bits para esquerda.
R:R\BL
Rotaciona uma Word dupla para direita. O contedo do Acumulador 1 rotacionado bit
a bit N bits para direira.
138
Este execcio contm exemplos com as seguintes funes:
Net9orF 1%
Um contador crescente que dispara quando a entrada 0.0 mudar de 0 para 1. O valor
corrente salvo na MW4 em BCD.
Net9orF !%
O valor convertido para duplo inteiro e ento REAL (Um valor BCD no pode ser
diretamente convertido o para nmero REAL). O resultado da segunda converso
dividido pelo valor 6.0. O nmero em ponto flutuante, que , o resultado da diviso,
salvo na MD20.
Net9orF /%
A MD20 arredondada para inteiro e ento convertido de duplo inteiro para valor BCD.
O valor BCD transferido para o a sada MD50.
:bTetiAos
1.familiarizar-se com as instrues.
2.manusear o Browser (catlogo) de instrues e o help de funes.
$roce6i1ento
1.criar um programa com o nome MATEMATno projeto PRO1.
2.editar, salvar, transferir e depurar as operaes lgicas exibidas acima usando o
Editor de Programas (Voc pode trabalhar em LAD, FBD ou STL).
Resulta6o
Quando acionado (contador crescente)0. 0 pode-se ver como a sada incrementada
de um para cada mltiplo de seis (por exemplo, para o status igual a 7 contador, deve
ser exibido 1)
139
:bTetiAo
Continue a aplicao de exerccio 8.1; contando as peas. Quando os contadores
forem usados lembrar que os contadores contam at 999. Para nmeros maiores,
vrios contadores podem ser usados em srie.
Ento, a contagem deve ser feita por meio de operaes aritmticas. Para
gerenciamento, os dados de produo especificados no slide devem estar tambm
disponveis.
$roce6i1ento
1. No FC 16 (Programa MAQ_CARMBAR), apagar as networks com funes de
contar peas.
2. Criar o FC 18 para assumir a funo de contagem. Depois que o sistema
ligado, os valores nas MW 100/102/104 so apagados. Com os pulsos de 0.7 ou 1.0,
as peas so contadas com incrementos de 1. A soma das peas altas e baixas MW
104.
3. Chame o FC18 do OB1
4. Transfira todos os blocos para a CPU e teste o seu programa.
140