Top Banner
1 API P. Oliveira Pág. 1 IST / DEEC / SSC Linguagens de Programação de PLCs Structured Text Docentes: Prof. Paulo Jorge Oliveira e-mail: pjcro @ isr.ist.utl.pt Eng. Bruno Cardeira LEEC / MEEC 2004-2005 Automação Automação de de Processos Industriais Processos Industriais Tel: 21 8418053 ou 2053 (interno) IST / DEEC / SSC API P. Oliveira Pág. 2 IST / DEEC / SSC Cap. 2 - Introdução aos PLCs ... Cap. 3 - Linguagens de Programação de PLCs [2 semanas] Descrição de linguagens standard (IEC-1131-3). Ladder Diagrams; Instruction list; Structured Text. Ambientes de desenvolvimento. ... Cap. 4 - GRAFCET (Sequential Function Chart) [2 semanas] Automação de Processos Industriais Programa da Cadeira: Programa da Cadeira:
18
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: API_C3_ST

1

API P. Oliveira Pág. 1

IST / DEEC / SSC

Linguagens de Programação de PLCsStructured Text

Docentes: Prof. Paulo Jorge Oliveira e-mail: pjcro @ isr.ist.utl.ptEng. Bruno Cardeira

LEEC / MEEC 2004-2005

Automação Automação de de

Processos IndustriaisProcessos Industriais

Tel: 21 8418053 ou 2053 (interno)

IST / DEEC / SSC

API P. Oliveira Pág. 2

IST / DEEC / SSC

Cap. 2 - Introdução aos PLCs...Cap. 3 - Linguagens de Programação de PLCs [2 semanas]

Descrição de linguagens standard (IEC-1131-3).

Ladder Diagrams; Instruction list; Structured Text.

Ambientes de desenvolvimento....Cap. 4 - GRAFCET (Sequential Function Chart) [2 semanas]

Automação de Processos Industriais

Programa da Cadeira:Programa da Cadeira:

Page 2: API_C3_ST

2

API P. Oliveira Pág. 3

IST / DEEC / SSC

Linguagens de programação de Linguagens de programação de PLCsPLCs(IEC 1131(IEC 1131--3)3)

Cap. 3 - Linguagens de Programação de PLCs

Structured Text

Instruction List

Structured Text

Sequential Function Chart(GRAFCET)

LD %M12AND %I1.0ANDN %I1.1OR %M10ST %Q2.0

If %I1.0 THEN%Q2.1 := TRUE

ELSE%Q2.2 := FALSE

END_IF

1

Direita

(1) m

2

3(2) b

(3) p

4

(2) a

Carrega

Esquerda

API P. Oliveira Pág. 4

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Page 3: API_C3_ST

3

API P. Oliveira Pág. 5

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextTextUma secção de programa é composta por sequências

Uma sequência é equivalente a um secção de ladder diagram (um ou mais degraus).

Legenda:1 – label - identificador único (%Li, i=0...999)2 – comentários - aumentar legibilidade (* limitado a 256 bytes *)3 – instruções

API P. Oliveira Pág. 6

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Instruções Básicas

Load

P

N

Contacto aberto: contacto efectuadoenquanto o bit de controlo está a 1.

Contacto fechado: contacto efectuado enquanto o bit de controlo está a 0.

Contacto efectuado durante um ciclo quando sedetecta um flanco ascendente no bit de controlo.

Contacto efectuado durante um ciclo quando sedetecta um flanco descendente no bit de controlo.

StructuredStructured TextText

:=

:=NOT

:=RE

:=FE

Page 4: API_C3_ST

4

API P. Oliveira Pág. 7

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Instruções Básicas

Store

O resultado da função lógica activa o coil.

O resultado negado da função lógica activa o coil.

O resultado da função lógica é armazenado no reléassociado (sets the latch).

S

R O resultado da função lógica é limpa o estado do reléassociado (resets the latch)

StructuredStructured TextText

:=

:=NOT

SET

RESET

API P. Oliveira Pág. 8

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Instruções Básicas

AND

AND do operando com o resultado da operação lógica anterior.

AND do operando com a negaçãodo resultado da operação anterior.

AND do flanco ascendente com oresultado da operação anterior.

AND do flanco descendente com oresultado da operação anterior.

P

N

StructuredStructured TextText

AND

AND(NOT...)

AND(FE...)

AND(RE...)

Page 5: API_C3_ST

5

API P. Oliveira Pág. 9

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Instruções Básicas

OR

OR do operando com o resultadoda operação lógica anterior.

OR do operando com a negação doresultado da operação anterior.

OR do flanco ascendente com oresultado da operação anterior.

OR do flanco descendente como resultado da operação anterior.

P

N

StructuredStructured TextText

OR

OR(NOT...)

OR(FE...)

OR(RE...)

API P. Oliveira Pág. 10

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Exemplo:

Page 6: API_C3_ST

6

API P. Oliveira Pág. 11

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Instruções Básicas

XOR

StructuredStructured TextText

API P. Oliveira Pág. 12

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Instruções Básicas pata tabelas de bitsStructuredStructured TextText

Page 7: API_C3_ST

7

API P. Oliveira Pág. 13

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Relés temporizadosOu

Timers

StructuredStructured TextText

API P. Oliveira Pág. 14

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Relés temporizadosOu

Timers

Características:

Identificador: %TMi 0..63 no TSX37

Entrada: IN para activação

Modo: TON On delayTOFF Off delayTP Monoestável

Base de Tempo: TB 1mn (def.), 1s, 100ms, 10ms

Valor programado: %TMi.P 0...9999 (def.)tempo=TB*TMi.P

Valor Actual: %TMi.V 0...TMi.P (pode serlido ou testado)

Modificação: Y/N modificação a partir de terminal

IN Q

%TMi

MODE: TONTB: 1mn

TM.P: 9999MODIF: Y

StructuredStructured TextText

Page 8: API_C3_ST

8

API P. Oliveira Pág. 15

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Relés temporizadosOu

Timers

StructuredStructured TextText

IF %I1.1 THENSTART %TM1;

END_IF;%Q2.3 := %TM1.Q

API P. Oliveira Pág. 16

IST / DEEC / SSC

Exemplo:

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Page 9: API_C3_ST

9

API P. Oliveira Pág. 17

IST / DEEC / SSC

Contadores

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Aplicações típicas

API P. Oliveira Pág. 18

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Características:

Identificador: %Ci 0..31 no TSX37

Valor programado: %Ci.P 0...9999 (def.)Valor Actual: %Ci.V 0...Ci.P (não pode ser escrito)

Modificação: Y/N modificação a partir de terminal

Entradas: R Reset Ci.V=0S Preset Ci.V=Ci.PCU Count UpCD Count Down

Saídas: E Overrun %Ci.E=1 %Ci.V=0->9999

D Done %Ci.D=1 %Ci.V=Ci.PF Full %Ci.F=1 %Ci.V=9999->0

E

%Ci

CP: 9999MODIF: Y

RS

CUCD

D

F

StructuredStructured TextText

Contadores

Page 10: API_C3_ST

10

API P. Oliveira Pág. 19

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

ContadoresExemplo:

IF %I1.1 THENRESET %C8;

END_IF;IF (%I1.2 AND %M0) THEN

UP %C8;END_IF;%Q2.0 := %C8.D;

API P. Oliveira Pág. 20

IST / DEEC / SSC

Processamento Numérico

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Funções Algébricas e Lógicas

Page 11: API_C3_ST

11

API P. Oliveira Pág. 21

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Processamento Numérico

StructuredStructured TextText

Funções Aritméticas de words e double words

API P. Oliveira Pág. 22

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Processamento Numérico

StructuredStructured TextText

Exemplo de uso de Funções Aritméticas

IF %M0 THEN%MW0 := %MW10 + 100;

END_IF;IF %I3.2 THEN

%MW0 := SQRT(%MW10);END_IF;IF RE %I3.3 THEN

INC %MW100;END_IF;

Page 12: API_C3_ST

12

API P. Oliveira Pág. 23

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Processamento Numérico

StructuredStructured TextText

Exemplo de uso de Funções Aritméticas

IF %M0 THEN%MW0 := %MW1 + %MW2;

END_IF;IF %S18 THEN

%MW10 := 32767; RESET %S18;ELSE

%MW10 := %MW0;END_IF;

API P. Oliveira Pág. 24

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Processamento Numérico

StructuredStructured TextText

Funções Lógicas

Page 13: API_C3_ST

13

API P. Oliveira Pág. 25

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Processamento Numérico

StructuredStructured TextText

Exemplo de uso de Funções Lógicas

API P. Oliveira Pág. 26

IST / DEEC / SSC

Manipulação de Tabelas Numéricos

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Page 14: API_C3_ST

14

API P. Oliveira Pág. 27

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

Processamento Numérico de floats

StructuredStructured TextText

API P. Oliveira Pág. 28

IST / DEEC / SSC

Estruturas de Controlo de Fluxo

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Sub-rotinas (imbrincadas)

Chamada e retorno

Exemplo:

Page 15: API_C3_ST

15

API P. Oliveira Pág. 29

IST / DEEC / SSC

Estruturas de Controlo de Fluxo

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Saltos condicionais e Incondicionais

API P. Oliveira Pág. 30

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Exemplo de uso de Saltos condicionais e Incondicionais

Estruturas de Controlo de Fluxo

Page 16: API_C3_ST

16

API P. Oliveira Pág. 31

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

IF ... THEN ... ELSE ...

Estruturas de Controlo de Fluxo

API P. Oliveira Pág. 32

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Ciclo WHILE

Estruturas de Controlo de Fluxo

Exemplo:

Page 17: API_C3_ST

17

API P. Oliveira Pág. 33

IST / DEEC / SSC Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Ciclo REPEAT ... UNTIL

Ciclo FOR ... DO

EXIT para abortar a execução de uma extrutura de controlo de fluxo.

Outras Estruturas de Controlo de Fluxo

Exemplo:

API P. Oliveira Pág. 34

IST / DEEC / SSC

Estruturas de Controlo de Fluxo

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

Instruções de Halt

Nota: pára todos os processos

Máscaras de eventos

Page 18: API_C3_ST

18

API P. Oliveira Pág. 35

IST / DEEC / SSC

Instruções para manipulação da data, tempo e duração.

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

API P. Oliveira Pág. 36

IST / DEEC / SSC

Existem outras instruções mais avançadas (ver manual de referência)

Cap. 3 - Linguagens de Programação de PLCs

StructuredStructured TextText

• Mono-estável

• Registos de 256 words (LIFO ou FIFO)

• DRUM Programador ciclico

• Comparadores

• Shift-registers...• Funções de manipulação de floats

• Funções de conversão de bases e de tipo