1 / 15

Instruções Dependentes do Estado Lógico Binário

Instruções Dependentes do Estado Lógico Binário. Registradores e Áreas de Memória em uma CPU S7. Acumuladores. ACCU4. 32 Bit. Somente S7-400. Memória de Carga - Blocos Lógicos - Blocos de Dados. ACCU3. 32 Bit. ACCU2. 32 Bit. Memória de Trabalho - Blocos Lógicos - Blocos de Dados.

tal
Download Presentation

Instruções Dependentes do Estado Lógico Binário

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Instruções Dependentes do Estado Lógico Binário

  2. Registradores e Áreas de Memória em uma CPU S7 Acumuladores ACCU4 32 Bit Somente S7-400 Memória de Carga - Blocos Lógicos - Blocos de Dados ACCU3 32 Bit ACCU2 32 Bit Memória de Trabalho - Blocos Lógicos - Blocos de Dados 32 Bit ACCU1 L, A, O,... Registradores de Endereços AR1 32 Bit Área de I/O T, S, =,... AR2 32 Bit Memória de Sistema - Imagem de processo de entrada - Imagem de processo de saída - Bit de memória - Temporizadores - Contadores - Pilha de Dados Locais - Pilha de Interrupção - Pilha de Blocos Registrador de Bloco de Dados Tamanho DB DB aberto Tamanho DI DI aberto 16 Bit 16 Bit Palavra de Status Status Bits 16 Bit Áreas de Memórias na CPU S7 Registradores na CPU S7

  3. Estrutura da Palavra de Status Significado dos bits na palavra de status Bit Tarefa Grandeza Significado 0 /FC 20 Primeiro Cheque 1 RLO 21 Resultado Lógico da Operação 2 STA 22 Status 3 OR 23 Or (ou) 4 OS 24 Estouro Armazenado 5 OV 25 Estouro 6 CC0 26 Bit de Resultado 7 CC1 27 Bit de Resultado 8 BR 28 Resultado Binário 9...15 sem 29 ..210 função

  4. Checando os Bits de Status • Cheque em STL A OV Verifica o estouro de capacidade A OS Verifica o estouro de capacidade memorizado A BR Verifica o bit de memória BR • Cheque do Resultado Binário (CC0, CC1) A ==0 Resultado igual a 0 A > 0 Resultado maior que 0 A <>0 Resultado não igual a 0 A =<0 Resultado menor que ou igual a 0 etc. A UO Operação não permitida • Cheque em LAD e em FBD M 4.0 M 4.0 S OV >0 S

  5. Instruções com Bits de Status Instrução Significado Exemplo SET Fixa o RLO em "1" SET //RLO-1-bit de memória = M 0.1 CLR Fixa RLO em "0" CLR //RLO-0-bit de memória NOT Inverte o RLO O Manual O Automático NOT; = modo de operação = M0.0 SAVE Salva o RLO no resultado binário A BR Verifica o resultado binário I 1.0 I 1.1 I 1.2 SAVE BR Q 4.2 Q 5.0

  6. FC23 M10.0 I0.0 ( ) ENO EN Step_display Step_bit _memory QW12 MW12 ADD_I M10.1 ( ) ENO EN MW100 OUT 345 IN1 987 IN2 Bit BR e ENO em uma Chamada de Bloco ou Função Complexa LAD STL Network 1: Programa Cíclico Network 1: Programa Cíclico A I 0.0 JNB _001 CALL FC 23 Step_bit_memory :=MW12 Step_display :=QW12_001: A BR = M 10.0 Network 2: ??? Network 2: ??? L 345 L 987 +I T MW 100 AN OV SAVE CLR A BR = M 10.1

  7. Funções de salto (Jump) dependentes dos Bits de Status JU Label1) Salto Incondicional JC Label1) salta se o bit "RLO" =1 JCN Label1) salto se o bit "RLO" = 0 JCB Label1) salto se o bit "RLO" = 1 e salva RLO JNB Label1) salto se o bit "RLO" = 0 e salva RLO JBI Label1) salto se o bit "BR" = 1 JBNI Label1) salto se o bit "BR" = 0 JO Label1) salto se o bit "OV" na palavra de status =1 JOS Label1) salto se o bit "OS" na palavra de status =1 1) Rótulo (Label) pode ser constituído de até 4 dígitos alfanuméricos

  8. Funções de Salto dependentes dos Códigos de Condição JZ Label1) Salta se na palavra de status o bit "CC1"=0 e "CC0"=0 (Resultado = 0) JN Label1) Salta se na palavra de status o bit "CC1" não for igual a "CC0" (Resultado <> 0) JP Label1) Salta se na palavra de status o bit "CC1"=1 e "CC0"=0 (Resultado > 0) JM Label1) Salta se na palavra de status o bit "CC1"=0 e "CC0"=1 (Resultado < 0) JPZ Label1) Combina os saltos JZ e JP (Resultado >= 0) JMZ Label1) Combina os saltos JM e JZ (Resultado <= 0) JUO Label1) Salta se: número real inválido “desordenado” ou divisão por zero 1) Rótulo (Label) pode ser constituído de até 4 dígitos alfanuméricos

  9. Programação do Distribuidor de Saltos Modo de Operação Exemplo: Distribuidor de saltos com 3 entradas L Recipe no // Carrega o número 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 ... Carrega o número do salto JL Over JU Label_1 . . . JU Label_n Instruções paraACCU1 > n Over: Instruções para ACCU1 = 0 Label_1: . . . Label_n: Instruções para ACCU1 = n

  10. Programação de Instruções de Loop (voltas) Exemplo: Instruções de Loop (voltas) com 4 varreduras L +4 // Carrega o contador de voltas NEXT: T MW10 // Início do loop . // Código . // Código . // Código L MW10 // Carrega o contador de voltas // novamente LOOP NEXT // Contador de voltas -1 e // salta para o rótulo NEXT // se Accu 1> 0 Modo de Operação Inicializa o contador de voltas Transfere para o contador de voltas NEXT: Sessão de códigos a serem executados diversas vezes Carrega o contador de voltas no ACCU1. LOOP NEXT (Decrementa ACCU1 ACCU1<>0?) Sim Não Continuar

  11. RET Instruções de Fim de Bloco • BE Fim de Bloco • BEUFim de Bloco Incondicional (dentro de um bloco) • BEC Fim de Bloco Condicional (dependente do RLO) (RET) mostrado em LAD mostrado em FBD

  12. Chaves de teste no simulador Chave rotativa 1 2 3 4 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 215 27 20 Exercício 1.1: Salto após uma Subtração BTD converte p/ DINT BTD converte p/ DINT - D Resultado positivo (>=0) Resultado negativo [JM Label] Escreve o valor de IW 4 no display Deleta o display Chave rotativa: IW4 (IW2, mod. 32 bit) Chaves de teste: IW0 (IW0, mod. 32 bit) Display: QW12 (QW6, mod. 32 bit)

  13. Chaves de teste no simulador Chave rotativa 1 2 3 4 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 215 27 20 Exercício 1.2: Salto após uma Multiplicação BTD converte p/ DINT BTD converte p/ DINT *I Sem estouro Converte o resultado para BCD DTB Estouro [JO Label] Escreve o resultado no display Apaga o display Chave rotativa: IW4 (IW2, mod. 32 bit) Chaves de teste: IW0 (IW0, mod. 32 bit) Display: QW12 (QW6, mod. 32 bit)

  14. Exercício 1.3: Programando um Distribuidor de Saltos Função: Chave rotativa 1 [JL Label] 1 Motor_girar para direita 2 Motor_girar para esquerda 3 Desligar motor 4 Ligar buzina 5 Desligar buzina Label: Saltar via salto para lista Endereços: 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

  15. www.apostilastecnicas.com

More Related