27
SIMATIC S7 Siemens Serviços Técnicos 2004. Todos os direitos reservados. Data: 09/03/14 Arquivo: S7-Service.1 Funções e Blocos de Funções

03 funções e blocos de funções

Embed Size (px)

Citation preview

Page 1: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.1

Funções e Blocos de Funções

Page 2: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.2

Introdução

Variáveis Temporárias

• são apagadas após o bloco associado ter sido executado

• armazenamento temporário na Pilha L

• utilizável em OBs / FCs / FBs

Variáveis Estáticas

• são retidas mesmo após a execução do bloco

• armazenamento permanente em DBs

• só pode ser usado em FBs

Dados / Variáveis Locais

(válido somente em um bloco)

Dados / Variáveis Globais

(válidos no programa todo)

• PII / PIQ

• I/ O

• M / T / C

• áreas DB

simbólicoabsoluto

Acesso

Page 3: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.3

Variáveis Temporárias

Page 4: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.4

Execução

Tamanho da Pilha de Dados Locais

For S7-300:

Tamanho da Pilha

Classe de Prioridade

256 bytes1

27

Tamanho total: 1.5 Kbyte

(CPU 313..316)

Tamanho total: 1.5 Kbyte

(CPU 313..316)

Startup (executa uma única vez)

Execução cíclica

256 bytes

256 bytes

256 bytes12

3

2Execuçãocontroladapor tempo

Interrupção Horário-do-Dia

Interrupção Atraso-no-Tempo

Interrupção Cíclica

Erro manipulação varredura

256 bytes16

28

26256 bytes

Execução ativadapor evento

Interrupção de Hardware

Erro manipulação no startup

Page 5: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.5

Bytes Necessários de um Bloco na Pilha de Dados Locais

rechts

Page 6: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.6

25

6 B

yte

s

Evento

Ocupação na pilha L

1

OB1

OB 1

1

Sistemaoperac.

Ocupação Total na Pilha de Dados Local

FC 2

c/variáveistemporár.

OB1

FC2

FC1

3

3

OB1

FC1

4

4

OB1

FC1

6

6

FC 3

c/variáveistemporár.

OB1

FC3

FC1

5

5

FC 1

c/variáveistemporár.

2

OB1

FC1

2

7

OB1

7

Page 7: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.7

Exercício: Uso de Variáveis Temporárias

trocado pela variável temporária

"Packages"

Page 8: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.8

Exemplo de uma Mensagem Mostrada Indicando um Problema no Processo

Disturbance

LED

Acknowledge

Report Memory

Edge Mem. Bit

Disturb. Input

Acknowl.

Flash Freq.

Disturb. Input

Display

RS

&

=

>=1&QS

RP

Report Memory

Report Memory

Sugestão de Solução

Tarefa

Page 9: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.9

Disturb.input

Report memory

Acknowledge

Edge mem.bit

Display

Flash freq.

FC 20

Chamada

Parâmetros Atribuíveis dos Blocos

A I 1.2

R M 40.0

A I 1.3

FP M 40.1

S M 40.0

A M 40.0

A M 10.3

O

ANM 40.0

A I 1.3

= Q 8.3

Bloco com parâmetros não atribuídos

Parâmetros formais

M 40.0

M 40.1I 1.3

I 1.2 A 8.3

M 10.3

Parâmetros atuais

A #Acknowledge

R #Report Memory

U #Disturb. input

FP #Edge mem. bit

S #Report memory

A #Report memory

A #Flashing freq.

O

AN #Reportmemory

A #Disturb. input

= #Display

Bloco com parâmetros atribuídos

Programa

Page 10: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.10

Parâmetros Atribuíveis dos Blocos

Uso Mostra graficamente

Read only To the left of the block

Write only To the right of the block

Tipo de parâmetro

Input parameter

Output parameter

In/out parameter

Declaração

in

out

In_out Read / write To the left of the block

Parâmetros formais

Tabela de declaração do bloco FC 20

Page 11: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.11

Editando um Parâmetro Atribuível de um Bloco

Aqui foi, p.ex., de bloco FC s/ parâmetro atribuído:

• com endereçamento absoluto: I1.3

• com endereçamento simbólico: “End_left"

Page 12: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.12

Chamando um Parâmetro Atribuível de um Bloco

Network 3: Primeira chamada

Network 4: Segunda chamada

Disturb.input

Acknowledge

Flash freq.

Report memory

Edge mem. bit

Display

M40.1

“Position error"

ENO

EN

“End left"

....

“Acknow.button"

M10.3

M40.0

FC20

Disturb.input

Acknowledge

Flash freq.

Report memory

Edge mem. bit

Display

M40.3

Q9.4

ENO

EN

“End right"

A8.1

“Acknow.button"

M10.3

M40.2

FC20

simbólico

absoluto

Endereçamento

Símbolos Símbolos Locais --> Parâmetros formais

Tabela desímbolos

Símbolos Globais

Page 13: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.13

LAD/FBD STL

Usando os Parâmetros EN/ENO nas Chamadas de Bloco

CALL FC 1 NOP 0

Exemplo

?? . ?

FC 1

EN ENO

FC 2

EN ENO

FC 3

EN ENO =

FC 1

EN ENO?? . ?Chamada incondicional

A I 0.1 JNB _001

CALL FC 1 _001: A BR

= Q 9.0

FC 1EN ENOI 0.1 =

Q 9.0

Chamada condicional

Page 14: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.14

Tabela de declaração do bloco FC 20

Exercício: Criando um Parâmetro Atribuível de um Bloco FC

Bloco comparâmetros não atribuídos

Bloco FC 20 comparâmetros atribuídos

A I 1.2R M 40.0A I 1.3FP M 40.1S M 40.0A M 40.0A M 10.3OAN M 40.0A I 1.3= Q 9.3(Q5.3)

A #AcknowledgeR #Report memoryA #Disturb. ...::::::::

2.

1.

Page 15: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.15

Exercício: Chamando um Parâmetro Atribuível de um Bloco FC

Disturb. input

Report memory

Acknowledge

Edge mem. bitDisplay

Flash freq.Parâmetros atribuídosdo FC20 na 1a. chamada

M 40.0

M 40.1I 1.3

I 1.2 Q 9.3 (Q 5.3)

M 10.3

FC 20

Disturb. input

Report memory

Acknowledge

Edge mem. bitDisplay

Flash freq.

M 40.2

M 40.3I 1.4

I 1.2 Q 9.4 (Q 5.4)

M 10.3

FC 20

Parâmetros atribuídosdo FC20 na 2a. chamada

Page 16: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.16

Blocos de Funções (FBs)

FB 2

EN

Disturb. input

Acknowledge Display

Flash freq. ENO

DB 2

OB 1

Tabela declaração do bloco de funções

Page 17: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.17

Blocos de Funções para Mostrar Mensagens

Tabela de declaração do bloco de função

Bloco de dadosinstance

Page 18: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.18

Gerando Blocos de Dados Instance

1. Gera o DB instance na chamada do FB 2. Criar um novo DB instance

Page 19: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.19

O Modelo Múltiplo Instance

DB10

O Modelo Instance

FB20

OB 1

Call FB20, DB10Disturb._Input:=Acknowledge:=Flash_Freq:=Display:=

DB11

FB20

Call FB20, DB11Disturb._Input:=Acknowledge:=Flash_Freq:=Display:=

DB12

FB20

Call FB20, DB12Disturb._Input:=Acknowledge:=Flash_Freq:=Display:=

O Modelo Múltiplo Instance

FB 100

DB100

Call FB100, DB100

OB 1

stat Dist_1 FB20

stat Dist_2 FB20

Parâmetros evariáveis estáticasda 2a. chamada do FB20

Call Dist_2Disturb._Input:=Acknowledge:=Flash_Freq:=Display:=

Parâmetros evariáveis estáticasda 1a. chamada do FB20

Call Dist_1Disturb._Input:=Acknowledge:=Flash_Freq:=Display:=

Page 20: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.20

Inserindo/Apagando Parâmetros de Bloco Posteriormente

Save

Page 21: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.21

Correções Quando Chamando Blocos Modificados

Quando o bloco chamado é aberto:

Com o botão direito

Page 22: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.22

Exercício: Editando um Bloco de Funções

Tabela de declaração do bloco FB 20 1.

Sessão de programa doFB 20

A #AcknowledgeR #Report memoryA #Disturb. ...::

2.

Page 23: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.23

Chamando e Testando um Bloco de Funções

(Q 5.3)

(Q 5.3)

Page 24: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.24

Convertendo um FC em um FB usando Programas Fonte (1)

Page 25: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.25

Convertendo um FC em um FB usando Programas Fonte (2)

::

::

Page 26: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.26

Exercício: Reconhecendo Tipos de Variáveis

Absoluta Simbólica Temporária Estática Parâmetro

L #Number_1

T #Max_value

T MW 40

Instrução

L #Number_2

L #Intermediate_resultL “Number_1"

T #Number_2

Global Local

Page 27: 03   funções e blocos de funções

SIMATIC S7Siemens Serviços Técnicos 2004. Todos os direitos reservados.

Data: 09/03/14Arquivo: S7-Service.27

Resumo: Chamada de Blocos

• CALL FC1

• UC FC1

• CC FC1

STL

LAD

FBDFC1

EN

ENO

FC1EN ENO

FC1

( CALL )

FB

Sem parâm., sem DB inst.

• UC FB1

• CC FB1

FB1EN

ENO

FB1EN ENO

CALL

Com parâmetros

• CALL FC2 Par1: ... Par2: ... Par3: ...

FC2EN ENO

Par3

Par1

Par2

FC2EN

ENO

Par1

Par2

Par3

Com parâm., c/ DB inst.

• CALL FB2, DB3 Par1: ... Par2: ... Par3: ...

FB2EN ENO

Par3

Par1

Par2

DB3

FB2EN

ENO

Par3

Par1

Par2

DB3

Sem parâmetrosLin-guagem

FC

FC1