Sitrain blocos de orgazação

Post on 18-Jul-2015

90 views 9 download

Transcript of Sitrain blocos de orgazação

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