sitrain blocos de orgazação
TRANSCRIPT
Blocos de organização
SITRAIN
© Siemens AG 2009. All rights reserved.
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 2 / 28 Siemens AG © 2009
Objetivos da aprendizagem
O participante irá ...
... entender a diferença entre "Restart", "Warm restart"e "Cold start"
... entender o princípio do processo de interrupção
... familiarizar-se com "Time-of-day interrupt", "Cyclic interrupt", "Hardware interrupt" e "Diagnostic interrupt"
... familiarizar-se com os OBs de erro e habilitar-se a usá-los
... habilitar-se a interpretar as informações de partida dos OBs
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 3 / 28 Siemens AG © 2009
Blocos de organização: Visão geral
Ciclo
Partida
Sistema operacional
Pro
cess
amen
to d
e in
terr
up
ção
Hardware
Hardware
Diagnóstico
Tempo
OB1
FB
Instance
OB10x
OB20x
OB20x
OB82
FC
FC
FC
É possível aplicar mais de um OB em um projeto.
Global
FCGlobal
FB
Instance
FC
FC
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 4 / 28 Siemens AG © 2009
Blocos de organização: Propriedades
OB – blocos de organização:
A interface entre o sistema operacional e o programa do usuário.
OBs podem ser programados pelo usuário, isto permite controlar a reação da CPU.
Blocos de organização são chamados pelo sistema operacional para os seguintes eventos:
Comportamento da partida.
Processamento de programa cíclico.
Execução de programas dirigidos à interrupção.
Manipulação de erros.
OB
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 5 / 28 Siemens AG © 2009
Eventos que ativam um OB
Classe de evento No. OB Quantidade Gatilho do evento Prio Classe
Programa cíclico 1, >=200 >= 1 Término da partida ou fim do último OB cíclico
1 1
Partida 100, >= 200
>= 0 Transição STOP - RUN 1
Interrupção atraso >= 200 Máx. 4 Tempo de atraso tenha decorrido 3 2
Interrupção cíclica >= 200 Máx. 4 Expirou o tempo especificado 4
Interrupção de Hardware >= 200 Máx. 50 - Borda de subida- Borda de descida
5
- HSC: CV=PV- HSC: Mudou direção de contagem- HSC: Reset externo
6
Interrupção de diagnóstico
82 0/1 Falha em um módulo 9
Interrupção estouro de tempo
80 0/1 - Excedido tempo máximo de ciclo- Estouro de fila- Perda de interrupção durante uma sobrecarga de interrupções
26 3
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 6 / 28 Siemens AG © 2009
Interrupção de programas cíclicos
Escreve PIQ
Lê PII
Início OB1
InterrupçãoInícioOB2xy
FimContinua
OB1Interrupção
Início OB2xy
Início OB80Fim
Continua OB2xy
Fim
Continua OB1Fim
Início OB2xy
Fim
.
.
Sistema operacional
Pro
cess
amen
to d
e in
terr
up
ção
Hardware
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 7 / 28 Siemens AG © 2009
Blocos de organização cíclicos:
O projeto pode ser estruturado pela chamada de diversos blocos de organização cíclicos.
Partes relacionadas do projeto podem ser processadas em um OB cíclico.
Blocos de organização cíclicos não possuem qualquer informação de partida.
A sequência de chamadas depende do número do bloco.
OB1
OB 20x
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 8 / 28 Siemens AG © 2009
Blocos de organização de partida (startup):
O programa de partida é executado uma vez na transição STOP RUN.
Especifique condições limites para partida, p.ex. valores iniciais para "RUN“.
Diversos OBs de partida são possíveis.
A sequência de chamada é determinada pelo número do bloco.
Blocos de organização de partida contém informações de partida.
OB 100
OB 20x
Tag Tipo de dado Descrição
LostRetentive Bool=1, se áreas de dados retentivos devem ser apagadas
LostRTC Bool =1, se o relógio de tempo real deve ser apagado
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 9 / 28 Siemens AG © 2009
Interrupções atraso de tempo
Quantidade (interrupções atraso de tempo + interrupções cíclicas) <= 4.
O sistema operacional inicia o OB de interrupção atraso de tempo após um tempo parametrizado ter decorrido. O atraso de tempo inicia quando a instrução SRT_DINT é chamada.
OBs de interrupção de atraso de tempo não possuem quaisquer informações de partida.
OB 20x
OB 200
Condição de partida
Número do OB
Atraso de tempo
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 10 / 28 Siemens AG © 2009
Interrupções cíclicas
RUN OB200 OB200 OB200Intervalo de tempo
OOB1 B1OB1 OB1 OB1 OB1 OB1 O B1 Prioridade 1
Prioridade 4
Sequência de interrupções cíclicas:
Intervalo de tempo
Intervalo de tempo
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 11 / 28 Siemens AG © 2009
Desvio de fase em interrupções cíclicas
20 ms Phase shift
OB 202
OB 204
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 12 / 28 Siemens AG © 2009
Interrupções de hardware
OB 20x
OB 200
Respostas para sinais externos ao programa do usuário.
Interrupções de hardware podem ser gatilhadas por contadores de alta velocidade ou canais de entrada.
Existem três possibilidades com interrupção de hardware:
Um evento ser atribuído somente a um OB de interrupção de hardware.
Um evento deve ser atribuído para diferentes OBs de interrupção de hardware. Por esta razão, o atual alarme do OB de interrupção de hardware deve ser desacoplado no programa utilizando o comando DETACH e um novo OB de interrupção de hardware deve ser atribuído com ATTACH.
Diversos eventos podem ser atribuídos a um OB de interrupção de hardware.
OBs de interrupção de hardware não possuem quaisquer informações de partida.
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 13 / 28 Siemens AG © 2009
Habilitação da interrupção de hardware
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 14 / 28 Siemens AG © 2009
Interrupção de hardware - Programa
I 0.0
I 0.0
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 15 / 28 Siemens AG © 2009
Anexar / desanexar interrupções de hardware
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 16 / 28 Siemens AG © 2009
Habilita diagnóstico de interrupção
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 17 / 28 Siemens AG © 2009
Identificador de hardware
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 18 / 28 Siemens AG © 2009
Diagnósticos do OB82
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 19 / 28 Siemens AG © 2009
Estouro de tempo – OB 80:
OB 80
O OB de estouro de tempo é chamado nas seguintes situações:
Tempo máximo de ciclo excedido.
Um OB chamado (p.ex. interrup.cíclica) ainda está em execução.
Estouro da fila de OBs de interrupção.
Uma interrupção foi perdida devido sobrecarga de interrupção.
OB de estouro de tempo contém informações de partida
Tag Tipo de dado Descrição
fault_id BYTE
0x01: Tempo máx. ciclo excedido0x02: OB chamado ainda em execução0x07: Estouro da fila0x09: Perda de interrupção devido sobrecarga
csg_OBnr OB_ANY No. do OB sendo processado durante a falha
csg_prio UINT Prio. do OB sendo processado durante a falha
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 20 / 28 Siemens AG © 2009
Eventos que não ativam um OB:
Evento Prio Resposta do sistema
Conectar/desconectar um módulo 21 STOP
Erro de acesso ao I/O na atualização da imagem de processo 22 Ignora
Programação de erro em um bloco 23 STOP
Erro de acesso ao I/O em um bloco 24 STOP
Tempo máximo de ciclo excedido duas vezes 27 STOP
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 21 / 28 Siemens AG © 2009
Exercício 9-1: Ajuste a monitoração do tempo de ciclo da CPU para 1000 ms
2. Transfira a configuração modificada para a CPU
1. Ajuste a monitoração do tempo de ciclo
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 22 / 28 Siemens AG © 2009
Exercício 9-2: Insira o bloco "FC_RemainProg" (FC66)no programa do usuário
I 0.1
I 0.2
I 0.3
Q 4.1
I 0.0
DI DO
L_Operation
T_OFF
T_RIGHT
T_LEFT
T_ON
Q 5.0L_Conv_Fault
I 1.0 T_Ackn_Fault
Marque e arraste
Então verifiquetodas as funções
prévias do programa
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 23 / 28 Siemens AG © 2009
Exercício 9-3:Adicione "OB_HW-Interrupt" (OB240)
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 24 / 28 Siemens AG © 2009
Exercício 9-4: Habilite e atribua um OB de interrupção de hardware
Falling edge 2
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 25 / 28 Siemens AG © 2009
Exercício 9-5:Programe um OB de interrupção de hardware
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 26 / 28 Siemens AG © 2009
Exercício 9-6:Adicione o "OB_Cyclic-Interrupt" (OB235)
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 27 / 28 Siemens AG © 2009
Exercício 9-7:Programe o "OB_Cyclic-Interrupt" (OB235)
Potenciômetro para simulaçãodo valor do peso: IW 96
0V
-10V +10V
Potenciômetro: 0 ........................... 10V
Módulo entr.an.: 0 ........................... 27648 units
Peso: 0 ........................... 500 kg
Hardware Programa
SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 28 / 28 Siemens AG © 2009
Exercício 9-8:Retorno da esteira para peças rejeitadas
Potenciômetro para simulação do valor do peso:
0 .... 10V 0 ..... 500kg
Peças boas, se peso OK (M35.0 = '1')
100 kg <= peso <= 400 kg
Ponto de remoção
Peças rejeitadas Peças boas
A esteira retorna para transportar peças rejeitadas:
Se M35.0 = '0' retornar peça para estação 3 (“Bay 3", I8.7)
0V
-10V +10V