Sitrain blocos de orgazação

28
Blocos de organização SITRAIN © Siemens AG 2009. All rights reserved.

Transcript of Sitrain blocos de orgazação

Page 1: Sitrain blocos de orgazação

Blocos de organização

SITRAIN

© Siemens AG 2009. All rights reserved.

Page 2: Sitrain blocos de orgazação

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

Page 3: Sitrain blocos de orgazação

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

Page 4: Sitrain blocos de orgazação

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

Page 5: Sitrain blocos de orgazação

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

Page 6: Sitrain blocos de orgazação

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

Page 7: Sitrain blocos de orgazação

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

Page 8: Sitrain blocos de orgazação

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

Page 9: Sitrain blocos de orgazação

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

Page 10: Sitrain blocos de orgazação

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

Page 11: Sitrain blocos de orgazação

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

Page 12: Sitrain blocos de orgazação

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.

Page 13: Sitrain blocos de orgazação

SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 13 / 28 Siemens AG © 2009

Habilitação da interrupção de hardware

Page 14: Sitrain blocos de orgazação

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

Page 15: Sitrain blocos de orgazação

SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 15 / 28 Siemens AG © 2009

Anexar / desanexar interrupções de hardware

Page 16: Sitrain blocos de orgazação

SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 16 / 28 Siemens AG © 2009

Habilita diagnóstico de interrupção

Page 17: Sitrain blocos de orgazação

SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 17 / 28 Siemens AG © 2009

Identificador de hardware

Page 18: Sitrain blocos de orgazação

SITRAIN Capítulo 9ST-MICRO1 / Blocos de organização Página 18 / 28 Siemens AG © 2009

Diagnósticos do OB82

Page 19: Sitrain blocos de orgazação

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

Page 20: Sitrain blocos de orgazação

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

Page 21: Sitrain blocos de orgazação

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

Page 22: Sitrain blocos de orgazação

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

Page 23: Sitrain blocos de orgazação

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)

Page 24: Sitrain blocos de orgazação

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

Page 25: Sitrain blocos de orgazação

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

Page 26: Sitrain blocos de orgazação

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)

Page 27: Sitrain blocos de orgazação

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

Page 28: Sitrain blocos de orgazação

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