Vous êtes sur la page 1sur 14

Siemens Ltda.

Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 1
Contedo Pg.
Registradores e reas de Memria em uma CPU S7...................................................................... 2
Estrutura da Status Word ................................................................................................................. 3
Checando os Bits de Status ............................................................................................................. 4
Instrues com os Status Bits .......................................................................................................... 5
Bit BR e ENO em uma Chamada de Bloco ou Funes Complexas .............................................. 6
Funes de Salto Dependentes do Status Bits ................................................................................ 7
Funes de Salto Dependentes dos Cdigos de Condio ............................................................. 8
Programao do Distribuidor de Saltos ........................................................................................... 9
Programao de Instrues de Loop ............................................................................................... 10
Instrues para Fim de Bloco .......................................................................................................... 11
Exerccio 1.1: Salto depois de uma Subtrao ................................................................................ 12
Exerccio 1.2: Salto depois de uma Multiplicao ........................................................................... 13
Exerccio 1.3: Programando um Distribuidor de Saltos ................................................................... 14
Data: 4/10/2007
Arquivo: PRO2_01P.1
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Instrues Dependentes do Estado Lgico Binrio
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 2
Viso Geral Uma CPU-S7 contm vrios registradores e reas de memria para
assegurar uma execuo eficiente do programa.
Registradores da CPUOs registradores da CPU so usados para enderear ou processar dados. Os
dados podem, com ajuda de comandos associados (L, T,...), ser trocados
entre reas de memrias e registradores da CPU:
Acumuladores: Dois (com S7-300) ou quatro (S7-400) acumuladores so
usados para instrues byte, word e double word em operaes aritmticas,
comparaes e outras.
Registrador de Endereos: Dois registradores de endereo so usados
como ponteiros para o registro de endereamento indireto.
Registrador de Bloco de Dados: Os registradores de bloco de dados contm
os nmeros dos blocos de dados que esto abertos(ativos). Assim possvel
que dois DBs estejam simultaneamente abertos; um DB com ajuda do
registrador de DB e o outro como DB instance com o registrador DI.
Palavra de Status: Contm vrios bits, que refletem o resultado ou o estado
lgico de instrues individuais dentro da execuo de programa.
reas de Memria A memria das CPUs S7 podem ser divididas em quatro reas:
A memria de carga usada para armazenar o programa de usurio sem a
funo de endereamento simblico ou comentrio. A memria de carga pode
ser RAM ou memria FEPROM.
A memria de trabalho (RAM integrada) usada para armazenar a parte
pertinente do programa de S7 necessrio para sua execuo. A execuo do
programa utiliza exclusivamente partes da memria de trabalho.
A rea de I/O permite o acesso direto das entradas e sadas dos sinais
conectados aos mdulos ou dispositivos de campo.
A memria do sistema (RAM) contm reas, como a tabela de imagem de
processo de entradas e sadas, memria de bits, temporizadores e
contadores. Adicionalmente, pilha de dados locais, pilha de blocos e a pilha
de interrupo.
Data: 4/10/2007
Arquivo: PRO2_01P.2
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Registradores e reas de Memria em uma CPU S7
Acumuladores
ACCU1
ACCU4
ACCU3
ACCU2
Somente
S7-400
AR2
AR1
Registradores de Endereos
DB aberto
Registrador de Bloco de Dados
DI aberto
Status Bits
Palavra de Status
32 Bit
32 Bit
32 Bit
32 Bit
32 Bit
32 Bit
16 Bit 16 Bit
16 Bit
Memria de Carga
- Blocos Lgicos
- Blocos de Dados
Memria de Trabalho
- Blocos Lgicos
- Blocos de Dados
rea de I/O
Memria de Sistema
- Imagem de processo de entrada
- Imagem de processo de sada
- Bit de memria
- Temporizadores
- Contadores
- Pilha de Dados Locais
- Pilha de Interrupo
- Pilha de Blocos
Registradores na CPU S7 reas de Memrias na CPU S7
T, S, =,...
L, A, O,...
Tamanho DB
Tamanho DI
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 3
Palavra de Status Os bits individuais da palavra de status, fornecem a informao sobre o
resultado ou o estado lgico da instrues executadas como tambm erros
que possam ter surgido.
Voc pode integrar o estado do sinal dos status bits diretamente em seu
programa usando lgicas binrias e assim controlar o fluxo do programa.
Primeiro Cheque O bit 0 da palavra de status chamado de bit de primeiro cheque (/FC= First
Check). A condio 0 no bit /FC indica, que uma nova seqncia lgica est
comeando em seu programa. O barra diagonal na frente da abreviao FC
indica que o bit de /FC negado.
Resultado Lgico O bit 1 da palavra de status o bit RLO (RLO= Result of Logic Operation).
usado como memria temporria em operaes de lgica binrias.
Uma instruo gerada pelo texto de uma instruo lgica checa, por exemplo,
o estado do sinal de um contato e o combina logicamente com o resultado do
cheque (bit de estado) de acordo com as regras da lgica booleana com o bit
de RLO. O resultado da operao lgica armazenado de volta no bit de
RLO.
Bit de Status O bit de status (bit 2) salva o valor de um bit endereado. O bit de status
sempre mostra, por varredura (A, AN, O,...) ou instrues de escrita (=, S, R,)
o estado do bit endereado.
Bit OR O bit OR utilizado quando voc executa uma operao lgica AND antes de
uma OR com a instruo O. O bit OR indica que uma operao lgica AND foi
executada anteriormente e recebeu o valor 1, pelo qual o resultado da
operao lgica OR est sempre determinado como sendo 1.
Bit OV O bit OV (estouro de capacidade) mostra um erro em uma instruo
matemtica ou em uma instruo de comparao com nmeros em ponto
flutuante. O bit 1 ou 0 de acordo com o resultado da operao da
instruo matemtica ou da instruo de comparao realizada.
Data: 4/10/2007
Arquivo: PRO2_01P.3
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Estrutura da Palavra de Status
Bit Tarefa Grandeza Significado
0 /FC 2
0
Primeiro Cheque
1 RLO 2
1
Resultado Lgico da Operao
2 STA 2
2
Status
3 OR 2
3
Or (ou)
4 OS 2
4
Estouro Armazenado
5 OV 2
5
Estouro
6 CC0 2
6
Bit de Resultado
7 CC1 2
7
Bit de Resultado
8 BR 2
8
Resultado Binrio
9...15 sem 2
9
..2
10
funo
Significado dos bits na palavra de status
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 4
Bit OS O bit OS (estouro de capacidade memorizada) estabelecido juntamente com
o bit OV. O bit OS permanece memorizado depois de uma nova instruo
matemtica, quer dizer, no mudado pelo resultado da prxima instruo
matemtica.
Assim voc tem a oportunidade, at mesmo em um local posterior em seu
programa, avaliar um estouro de capacidade de um nmero ou uma instruo
com nmeros Reais invlidos.
O bit OS somente zerado com os comandos: JOS (salta, se OS = 1),
chamadas de bloco e fim de bloco.
CC1 e CC0 Os bits CC1 e CC0 (cdigos de condies) informam sobre os seguintes
resultados:
resultado de uma instruo matemtica.
ou instruo de comparao.
uma instruo lgica de palavra, ou
sobre os bits jogados fora por uma instruo de deslocamento.
Os cdigos de condio CC1 e CC0 podem ser testados indiretamente por
meios das seguintes instrues.
CC1 CC0 Checa,se
0 0 A ==0 Resultado = 0 (ACCU2 = ACCU1)
1 0 A >0 Resultado > 0 (ACCU2 > ACCU1)
0 1 A <0 Resultado < 0 (ACCU2 < ACCU1)
1 1 A AO Operao invlida (por ex. diviso por 0).
Adicionalmente, existem funes de salto(Jump), que verificam os cdigos de
condio e assim permitem que o programa seja estruturvel.
LAD/FBD Voc pode encontrar estas funes representadas em LAD ou FBD, no
catlogo de instrues na pasta bits de status.
Data: 4/10/2007
Arquivo: PRO2_01P.4
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Checando os Bits de Status
OV
S >0
M 4.0
M 4.0
S
Cheque em STL
A OV Verifica o estouro de capacidade
A OS Verifica o estouro de capacidade memorizado
A BR Verifica o bit de memria BR
Cheque do Resultado Binrio (CC0, CC1)
A ==0 Resultado igual a 0
A > 0 Resultado maior que 0
A <>0 Resultado no igual a 0
A =<0 Resultado menor que ou igual a 0
etc.
A UO Operao no permitida
Cheque em LAD e em FBD
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 5
L STW/T STW Tambm possvel carregar a palavra de estado (status word) inteira e salva-
la para uma verificao posterior (scan).
L STW Carrega a palavra de status
T MW 114 Salva na palavra de memria 114
Com a instruo de T STW, a palavra de estado pode, por exemplo, ser
carregada com uma palavra de estado previamente salva. Os bits 0, 2, 3, 9
..15 no so influenciados por esta instruo.
Mudana de RLO Com STEP 7 existe um nmero de instrues para influenciar o RLO.
Com SET voc fixa o resultado lgico da operao em 1", com CLR para "0".
Paralelo a isto, o bit da status STA tambm pode ser fixado em "1 ou em "0".
Ambas as instrues so independente das condies.
SET e CLR tambm zeram os bits de estado OR e /FC, isto , uma nova linha
de condies comea em seguida.
A instruo NOT nega ou inverte o resultado lgico da operao.
Bit BR O bit BR representa um bit de memria interna, na qual o RLO pode ser
salvo antes de uma nova variao do RLO. Isto est desta forma, para que o
RLO, novamente esteja disponvel para o reinicio de uma linha de condies
que tenha sido suspensa.
Se voc edita um bloco de funo ou uma funo e quer chamar isto em LAD,
voc tem que administrar o bit BR. O bit BR corresponde a sada (ENO) para
os blocos em LAD.
Fixar e Zerar Com a instruo SAVE voc salva o RLO no registrador de resultado binrio
o Bit BR (BR). A instruo SAVE transmite o estado do RLO para o bit BR.
SAVE executada independente de qualquer condio e no afeta nenhum
dos demais bits de status.
Data: 4/10/2007
Arquivo: PRO2_01P.5
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Instrues com Bits de Status
Instruo Significado Exemplo
SET Fixa o RLO em "1" SET //RLO-1-bit de memria
= M 0.1
CLR Fixa RLO em "0" CLR //RLO-0-bit de memria
NOT Inverte o RLO O Manual
O Automtico
NOT;
= modo de operao
= M0.0
SAVE Salva o RLO no resultado binrio
A BR Verifica o resultado binrio
I 1.0 I 1.1 I 1.2
BR Q 4.2 Q 5.0
SAVE
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 6
EN = habilita entrada O usurio pode modificar a chamada com ajuda da entrada EN(enable input)
que existe em toda caixa de chamada de bloco ou uma funo complexa em
Diagrama de Contatos (corresponde chamada condicional em STEP 5).
Se EN no estiver ativada (p.e. o sinal estiver em estado "0"), ento a
caixa no executar sua funo. A sada de habilitao ENO (enable
output), conseqentemente, tambm no ser ativada.
Se EN estiver ativada (p.e. o sinal estiver em estado lgico "1"), ento a
funo da caixa ser executada.
ENO = O bloco chamado ou a funo complexa pode ser sinalizado, com ajuda da
habilita sada habilitao de sada ENO, se no for executado ou executado sem erro.
O bit-BR da palavra de status est disponvel ao usurio para se salvar erros.
O bit-BR automaticamente fixado em 1na partida de uma classe de
prioridade. Subseqentemente o bit-BR s modificado pelos blocos, no
pelo sistema.
Se um erro surgir durante o processamento, o usurio pode "salvar" este
estado de erro atravs do reset do bit-BR. Depois do processamento de uma
caixa em LAD/FBD, o estado do bit-BR copiado para o parmetro de sada
ENO.
Ento, um mecanismo de anlise de estado de erro est disponvel no STEP
7. Desta forma, por exemplo, um bloco chamado pode informar a chamada de
blocos se o processamento foi executado livre de erro ou no.
Nota O parmetro de EN no um parmetro de entrada verdadeiro. Se este for
criado, ento duas instrues uma com um salto condicional para um rtulo
(Label) e o rtulo recuado so gerados automaticamente.
Da mesma maneira, ENO no um parmetro de sada verdadeiro. Se ENO
determinado, ento so geradas duas instrues para copiar o bit BR no
parmetro de sada atual, automaticamente.
Data: 4/10/2007
Arquivo: PRO2_01P.6
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Bit BR e ENO em uma Chamada de Bloco ou Funo Complexa
LAD STL
Network 1: Programa Cclico
FC23
I0.0
EN
MW12
Step_bit
_memory
Step_
display
ENO ( )
M10.0
QW12
Network 2: ???
ADD_I
EN
345 IN1
OUT
ENO ( )
M10.1
MW100
987 IN2
Network 1: Programa Cclico
A I 0.0
JNB _001
CALL FC 23
Step_bit_memory :=MW12
Step_display :=QW12
_001:A BR
= M 10.0
Network 2: ???
L 345
L 987
+I
T MW 100
AN OV
SAVE
CLR
A BR
= M 10.1
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 7
Funes de Salto Com esta funo de controle lgico voc pode interromper o processamento
(Jump) linear de um programa e continuar em um outro local dentro do bloco. Uma
ramificao de programa pode ser executa independentemente de uma
condio ou ento somente quando uma determinada condio for satisfeita.
Salto Incondicional A funo de salto JU sempre executada, isto , executa o salto
independentemente de qualquer condio. JU interrompe o processamento
linear de um programa e reinicia no rtulo (Label) da instruo de salto
(Jump). JU no afeta os bits de status.
Funes de Salto Uma ramificao de programa pode ocorrer dependente do estado do bit
com RLO e BR RLO e bit BR. Adicionalmente, existe a possibilidade de durante a verificao
do bit RLO salva-lo ao mesmo tempo no bit BR.
As funes de salto dependentes do RLO (JC, JCN) so acionadas, no
somente para condies atendidas mas tambm para condies no
atendidas, os bits de status STA e RLO vo para "1" e os bits OR e /FC vo
para "0".
As funes de salto com "RLO memorizado" (JCB, JNB) salva em todos os
casos o estado do bit de RLO no bit BR. Os bits restantes STA, RLO, OR e
/FC so de outra maneira tratados do mesmo modo que aquelas funes de
salto (jump) que no salva o RLO.
As funes de salto (jump) (JBI, JNBI) dependentes do bit BR determinam os
bits da STA, no somente para condies atendidas mas tambm para
condies no atendidas, o bit de estado STA vai para 1 e os bits OR and
/FC vo para "0". Os bits RLO e BR permanecem inalterados.
Data: 4/10/2007
Arquivo: PRO2_01P.7
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Funes de salto (Jump) dependentes dos Bits de Status
JU Label
1)
Salto Incondicional
JC Label
1)
salta se o bit "RLO" =1
JCN Label
1)
salto se o bit "RLO" = 0
JCB Label
1)
salto se o bit "RLO" = 1 e salva RLO
JNB Label
1)
salto se o bit "RLO" = 0 e salva RLO
JBI Label
1)
salto se o bit "BR" = 1
JBNI Label
1)
salto se o bit "BR" = 0
JO Label
1)
salto se o bit "OV" na palavra de status =1
JOS Label
1)
salto se o bit "OS" na palavra de status =1
1)
Rtulo (Label) pode ser constitudo de at 4 dgitos
alfanumricos
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 8
Funes de salto Os saltos JO e JOS so executados se um estouro tiver ocorrido. Em uma
com OV e OS rotina de clculo com diversas instrues executadas sucessivamente, a
avaliao do bit OV deve ser realizada aps cada funo matemtica. Uma
instruo matemtica que gera um estouro, cujo resultado mascara a faixa de
nmeros permitidos, zera o bit OV.
Para permitir avaliar um estouro de faixa de nmeros permissveis no fim de
uma rotina de clculo, checa-se o bit OS. O bit OS somente zerado com
chamada de blocos e fim de bloco bem como com salto JOS.
Os bits restantes na palavra de status no so alterados com as funes de
salto JO e JOS.
Funes de salto Uma funo de programa pode ser dependente dos bits de status CC0 e
com CC0 e CC1 CC1.
Deste modo, voc pode, por exemplo, checar se o resultado de um clculo
positivo, negativo ou zero.
As funes de salto dependem dos bits de status CC0 e CC1 e no alteram
qualquer bit de status. O resultado da operao lgica monitorvel por
saltos e pode ser utilizado por conseqentes operaes lgicas no programa
do usurio (no alterado pelo /FC).
Exemplo Subtrao de dois inteiros com subseqente avaliao:
L MW2
L MW8
-I
JZ ZERO // ocorre o salto se o resultado for igual a "0"
// Instrues, se o resultado for diferente de "0"
ZERO: NOP 0 // Instrues p/reao quando resultado for igual "0"
Data: 4/10/2007
Arquivo: PRO2_01P.8
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Funes de Salto dependentes dos Cdigos de Condio
JZ Label
1)
Salta se na palavra de status o bit "CC1"=0 e "CC0"=0
(Resultado = 0)
JN Label
1)
Salta se na palavra de status o bit "CC1" no for igual a "CC0"
(Resultado <> 0)
JP Label
1)
Salta se na palavra de status o bit "CC1"=1 e "CC0"=0
(Resultado > 0)
JM Label
1)
Salta se na palavra de status o bit "CC1"=0 e "CC0"=1
(Resultado < 0)
JPZ Label
1)
Combina os saltos JZ e JP
(Resultado >= 0)
JMZ Label
1)
Combina os saltos JM e JZ
(Resultado <= 0)
JUO Label
1)
Salta se: nmero real invlido desordenado ou diviso por zero
1)
Rtulo (Label) pode ser constitudo de at 4 dgitos
alfanumricos
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 9
Distribuidor de saltos O distribuidor de saltos JL permite o salto meta para uma seo do programa
dependendo de um nmero de salto. A instruo JL trabalha junto com uma
lista de funes de salto JU.
Esta lista segue imediatamente aps JL e pode incluir no mximo de 255
entradas. Com JL existe um rtulo de salto que aponta para o fim da lista, isto
, a primeira instruo aps o fim da lista.
Somente instrues JU podem ser utilizadas entre a JL <Label> e o <Label>:
<instruo>. Se 0 estiver guardado no ACCU1-L-L, a primeira instruo de
salto executada, com 1 a segunda, etc. Se o nmero for maior do que o
tamanho da lista, JL salta para o fim da lista.
A instruo JL executada apesar de quaisquer condies e desta forma no
altera os bits de status.
Nota Os saltos podem tomar lugar dentro do comprimento total do bloco (mesmo
alm dos limites do network). Por esta razo, os nomes dos rtulos dos saltos
dentro de um bloco devem ser nicos.
Somente possvel saltar dentro do bloco de programa, desde que a
distncia de salto possa somente ser determinada para os saltos por meio
dos rtulos dos saltos. O comprimento do rtulo de salto limitado a quatro
caracteres alfanumricos, pelo qual o primeiro caracter deve ser uma letra.
feita distino entre letras maisculas e minsculas no rtulo dos saltos.
Uma instruo deve sempre ser colocada depois do rtulo do salto separada
por :. A mxima distncia de salto 32768 ou + 32767 palavras de cdigo
de programa. O mximo nmero atual de instrues que voc pode sobre
saltar depende do misto de instrues utilizadas em seu programa (instrues
de uma, duas ou trs palavras).
Data: 4/10/2007
Arquivo: PRO2_01P.9
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Programao do Distribuidor de Saltos
Carrega o
nmero do salto
JL Over
.
.
.
Instrues para
ACCU1 > n
Exemplo: Distribuidor de saltos com 3 entradas
L Recipe no // Carrega o nmero da receita
JL OVER // Distribuidor de saltos com 3 entradas
JU Rec0 // Salta para receita No. 0 (ACCU1 = 0)
JU Rec1 // Salta para receita No. 1 (ACCU1 = 1)
JU Rec2 // Salta para receita No. 2 (ACCU1 = 2)
OVER: JU ERROR // Salta se ACCU1 > 2
...
Rec0: L DBW4
...
Rec1: L DBW6
...
Rec2: L DBW8
...
ERROR: CLR
...
Modo de Operao
Label_n:
JU Label_1
JU Label_n
Instrues para
ACCU1 = 0
.
.
.
Instrues para
ACCU1 = n
Over:
Label_1:
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 10
Instruo de Loop A instruo de volta LOOP permite uma programao simplificada de loop.
Para a programao da instruo de loop o nmero desejado de execues a
serem realizadas carregado no ACCU1-L. LOOP interpreta a palavra da
direita do ACCU 1 como um nmero inteiro no sinalizado de 16 bits na faixa
de valores entre 0 a 65535.
Com cada execuo da instruo LOOP, o valor em ACCU1-L
decrementado de um. Subseqentemente, o valor comparado com zero. Se
o valor diferente de zero, um salto toma lugar para o rtulo de salto
designado na instruo LOOP. Se o valor igual a zero, no h salto e a
prxima instruo, aps a instruo LOOP, ser executada.
Nota O contador de voltas no deve ser inicializado com 0, porque isto ir causar
um loop a ser executado 65535 vezes.
Data: 4/10/2007
Arquivo: PRO2_01P.10
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Programao de Instrues de Loop (voltas)
Inicializa o
contador de voltas
LOOP NEXT
(Decrementa ACCU1
ACCU1<>0?)
Sim
No
Continuar
NEXT:
Sesso de cdigos
a serem executados
diversas vezes
Carrega o contador de
voltas no ACCU1.
Exemplo: Instrues de Loop (voltas)
com 4 varreduras
L +4 // Carrega o contador de voltas
NEXT: T MW10 // Incio do loop
. // Cdigo
. // Cdigo
. // Cdigo
L MW10 // Carrega o contador de voltas
// novamente
LOOP NEXT // Contador de voltas -1 e
// salta para o rtulo NEXT
// se Accu 1> 0
Modo de Operao
Transfere para o
contador de voltas
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 11
Funes de Voc pode terminar o processamento de blocos com BEC dependendo do
Fim de Bloco resultado lgico operacional ou com BEU ou BE independentemente das
condies.
BE A instruo BE termina o processamento do programa no bloco de programa
corrente. BE sempre a ltima instruo do bloco. Esta automaticamente
criada pelo STEP 7 quando um bloco salvo. Desta forma, esta no tem que
ser introduzida separadamente.
O sistema operacional diversifica suas atividades de chamada de blocos e
recomea o processamento de programas pela primeira instruo aps a
chamada do programa. A rea de dados locais reservada pelo bloco
habilitada uma vez de novo.
BEU A instruo BEU termina o processamento do programa do bloco de
programa corrente da mesma forma que BE.
Diferentemente da instruo BE, voc pode programar BEU repetidas vezes
dentro de um bloco. A seco de programa aps a instruo BEU somente
ser processada se houver um salto para esta parte do programa.
BEC O bloco finalizado dependendo do valor do bit RLO. Se RLO = 1, o
processamento do programa finalizado no bloco corrente e recomea no
prximo bloco chamado com a primeira instruo aps a chamada de
programa.
A rea de dados locais reservada pelo bloco habilitada uma vez de novo.
Se RLO = 0, a instruo BEC no executada. A CPU fixa o RLO em 1 e
processa a instruo seguinte a BEC.
Data: 4/10/2007
Arquivo: PRO2_01P.11
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
BE Fim de Bloco
BEU Fim de Bloco Incondicional (dentro de um bloco)
BEC Fim de Bloco Condicional (dependente do RLO)
(RET) mostrado em LAD
mostrado em FBD
Instrues de Fim de Bloco
RET
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 12
Data: 4/10/2007
Arquivo: PRO2_01P.12
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Exerccio 1.1: Salto aps uma Subtrao
Chave rotativa
1 2 3 4
- D
Resultado positivo (>=0)
Escreve o valor de IW 4
no display
Deleta o display
Resultado negativo
[JM Label]
converte p/
DINT
converte p/
DINT
BTD
BTD
Chave rotativa: IW4 (IW2, mod. 32 bit)
Chaves de teste: IW0 (IW0, mod. 32 bit)
Display: QW12 (QW6, mod. 32 bit)
2
0
2
15
2
7
Chaves de teste no simulador
0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0
Vista Geral Com funes de salto, o processamento linear de um programa pode ser
interrompido e continuar em outro local. Um salto pode ser realizado,
particularmente, em funo de condies ou resultados.
Objetivo do Exerccio Programao de uma funo de salto, esta executada dependendo do
resultado da subtrao.
Enunciado Gerar um projeto PRO2 e subseqentemente uma pasta de programa S7 com
o nome EXERCCIO e criar um FC 11 com a seguinte funcionalidade:
1. Carregar a palavra de entrada da chave rotativa e das chaves de teste
como valor codificado em BCD nos acumuladores.
2. Subseqentemente executar uma converso dos valores para DINT.
Para a converso usar o comando BTD (BCD_TO_DINT). Este comando
assegura que os valores lidos sejam interpretados como um nmero
decimal positivo de quatro dgitos.
3. Ento subtrair o valor gerado pelas chaves de teste do valor gerado pela
chave rotativa.
4. Executar, dependendo do resultado, as seguintes aes:
Resultado < 0: apaga o display do simulador, isto , transfere 0 para o
display.
Resultado >= 0: escreve o valor codificado BCD da chave rotativa no
display.
Notas: usar o comando de salto "JM [Label] para o caso distinto. Para
mascarar erros de converso durante o ajuste dos nmeros, programar o
OB 121com uma instruo: NOP 0.
5. Chamar o FC 11 no OB 1 e transferir os blocos (OB 1, OB 121 e FC 11)
na CPU S7.
6. Teste seu programa.
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 13
Objetivo do Exerccio Programao de uma funo de salto, esta executada dependendo do
resultado da multiplicao.
Enunciado Criar um FC 12 com a seguinte funcionalidade: :
1. Carregar a palavra de entrada da chave rotativa e das chaves de teste
como valor codificado em BCD (sem sinal) nos acumuladores.
2. Subseqentemente executar uma converso dos valores para DINT.
Para a converso usar o comando BTD (BCD_TO_DINT). Este comando
assegura que os valores lidos sejam interpretados como um nmero
decimal positivo de quatro dgitos.
3. Ento execute uma multiplicao em 16 bits.
4. Cheque seu resultados dos clculos para Estouro e execute as
seguintes aes:
Estouro: apague o display
Sem Estouro: execute a converso do resultado em um nmero BCD
positivo correspondente e mostre o resultado (pelo menos com os ltimos
quatro menos significativos) no display.
Notas: use o comando de salto "JO [Label] para testar o Estouro. Para
mascarar erros de converso durante o ajuste dos nmeros, programar o
OB 121 com uma instruo: NOP 0.
5. Chamar o FC 11 no OB 1 e transferir os blocos (OB 1, OB 121 e FC 11)
na CPU S7.
6. Teste seu programa.
Data: 4/10/2007
Arquivo: PRO2_01P.13
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Exerccio 1.2: Salto aps uma Multiplicao
*I
Sem estouro
Escreve o resultado
no display
Apaga o display
Estouro
[JO Label]
DTB
Converte o resultado
para BCD
Chave rotativa: IW4 (IW2, mod. 32 bit)
Chaves de teste: IW0 (IW0, mod. 32 bit)
Display: QW12 (QW6, mod. 32 bit)
Chave rotativa
1 2 3 4
converte p/
DINT
converte p/
DINT
BTD
BTD
2
0
2
15
2
7
Chaves de teste no simulador
0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0
Siemens Ltda.
Training Center
ST-7PRO2
Instr. Dependentes Estado Lg. Binrio Pgina 14
Objetivo do Exerccio Familiarizar voc com o uso de Salto para Lista.
Enunciado Criar um FC 13 com a seguinte funcionalidade:
Um nmero de 1a 5 pode ser passado via o parmetro de entrada
"Seleo com o tipo de dado INT.
Dependendo do nmero passado, as seguintes aes so executadas:
1: O motor gira para direita
2: O motor gira para esquerda.
3: O motor para.
4: A buzina ligada.
5: A buzina desligada.
Todos os outros nmeros so interpretados como erros, isto , o
parmetro de sada ENO fixado para FALSO.
Procedimento 1. Criar um FC 13 com a funcionalidade descrita acima.
Na implementao do salto para lista note que somente saltos absolutos
podem ser utilizados.
2. Chamar FC 13 no OB 1 em dependncia do I 0.0.
O valor do parmetro de entrada "Seleo" ser passado ou ajustado
com ajuda da chave rotativa no simulador e ser aceito com um valor de
nvel positive no I 0.0.
4. No caso de um erro, isto , o valor da "Seleo ser maior que 5 ou menor
que 1, a sada Q 8.0 ser zerada no OB 1 via o parmetro ENO.
5. Transferir o OB 1 e o FC 13 e testar o programa.
Data: 4/10/2007
Arquivo: PRO2_01P.14
SIMATIC S7
Siemens AG 1998. All rights reserved.
Conhecimento em Automao
Training Center
Exerccio 1.3: Programando um Distribuidor de Saltos
Chave rotativa
1
1
2
3
4
5
Motor_girar para direita
Motor_girar para esquerda
Desligar motor
Ligar buzina
Desligar buzina
Saltar via salto para lista
Funo:
[JL Label]
Label:
Endereos: S7-300 (16-Bit) S7-300 (32-Bit)
I0.0 I0.0
Q8.0 Q4.0
Motor_direita: Q20.5 Q8.5
Motor_esquerda: Q20.6 Q8.6
Buzina: Q20.7 Q8.7

Vous aimerez peut-être aussi