Vous êtes sur la page 1sur 46

IST / DEEC / SSC

LEEC / MEEC 2004-2005

Automao de Processos Industriais


Linguagens de Programao de PLCs Ladder diagram

Docentes: Prof. Paulo Jorge Oliveira Eng. Bruno Cardeira

e-mail: pjcro @ isr.ist.utl.pt


Tel: 21 8418053 ou 2053 (interno)

IST / DEEC / SSC

Automao de Processos Industriais

Programa da Cadeira:
Cap. 2 - Introduo aos PLCs ... Cap. 3 - Linguagens de Programao de PLCs [2 semanas] Descrio de linguagens standard (IEC-1131-3). Ladder Diagram; Instruction List; Structured Text. Ambientes de desenvolvimento. ... Cap. 4 - GRAFCET (Sequential Function Chart) [2 semanas]
API P. Oliveira Pg. 2

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Linguagens de programao de PLCs (IEC 1131-3) 1131Ladder Diagram Structured Text


If %I1.0 THEN %Q2.1 := TRUE ELSE %Q2.2 := FALSE END_IF

Instruction List
LD AND ANDN OR ST %M12 %I1.0 %I1.1 %M10 %Q2.0

Sequential Function Chart (GRAFCET) 1


(1) m

2
(2) b

Direita

3
(3) p

Carrega

4
(2) a

Esquerda

API

P. Oliveira

Pg. 3

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Linguagens de programao de PLCs (IEC 1131-3) 1131Ladder Diagram Structured Text


If %I1.0 THEN %Q2.1 := TRUE ELSE %Q2.2 := FALSE END_IF

Instruction List
LD AND ANDN OR ST %M12 %I1.0 %I1.1 %M10 %Q2.0

Sequential Function Chart (GRAFCET) 1


(1) m

2
(2) b

Direita

3
(3) p

Carrega

4
(2) a

Esquerda

API

P. Oliveira

Pg. 4

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram

Input Instructions

Output Instructions

API

P. Oliveira

Pg. 5

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Tipos de operandos:

API

P. Oliveira

Pg. 6

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Instrues Bsicas


Load
Contacto aberto: contacto efectuado (resultado 1) enquanto o bit de controlo est a 1. Contacto fechado: contacto efectuado (resultado 1) enquanto o bit de controlo est a 0.
P

Contacto no flanco ascendente: contacto efectuado durante um ciclo quando se detecta um flanco ascendente no bit de controlo. Contacto no flanco descendente: contacto efectuado %Q2.0 I1.0 durante um cicloquando se detecta um flanco descendente t no bit de controlo.
Q2.0

N %I1.0 P

t API P. Oliveira Pg. 7

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Instrues Bsicas


Operandos das instrues de Load

API

P. Oliveira

Pg. 8

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Instrues Bsicas


Store
O resultado da funo lgica activa o enrolamento (coil) respectivo. O resultado negado da funo lgica activa o enrolamento associado. O resultado da funo lgica armazenado no rel associado (sets the latch).
%I1.0

O resultado da funo lgica limpa o estado do rel %Q2.0 I1.0 associado (resets the latch)
S
Q2.0

t API P. Oliveira Pg. 9

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Instrues Bsicas


Operandos das instrues de Store

API

P. Oliveira

Pg. 10

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Notao Allen Bradley


Rels com latch e unlatch

API

P. Oliveira

Pg. 11

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Instrues tipo rel Exemplo:

API

P. Oliveira

Pg. 12

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Instrues Bsicas


AND
%I1.0 %I1.0 %Q2.0

AND do operando com o resultado da operao I1.0 lgica anterior.


t

ANDQ2.0 operando com a negao do resultado da do operao anterior.


t
P

AND do flanco ascendente com o resultado da operao anterior. AND do flanco descendente com o resultado da operao anterior.

API

P. Oliveira

Pg. 13

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Instrues Bsicas


OR
OR do operando com o resultado da operao lgica anterior. OR do operando com a negao do resultado da operao anterior. OR do flanco ascendente com o resultado da operao anterior. OR do flanco descendente com o resultado da operao anterior.

API

P. Oliveira

Pg. 14

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Instrues Bsicas


XOR

API

P. Oliveira

Pg. 15

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Construo de degraus
Input Instructions Output Instructions

S se energizam as sadas cuja funo lgica de entrada tem o valor lgico verdadeiro avaliadas da esquerda para a direita e de cima para baixo (Schneider, Micro PLCs).
API P. Oliveira Pg. 16

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo:

API

P. Oliveira

Pg. 17

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo:

API

P. Oliveira

Pg. 18

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo:

API

P. Oliveira

Pg. 19

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo:

API

P. Oliveira

Pg. 20

10

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Caso Geral Entradas e Sadas em paralelo, com derivaes

Nota: estudar limitaes e potencialidades do sistema de desenvolvimento com que se pretende tralhar
API P. Oliveira Pg. 21

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Contactos imbrincados e soluo alternativa

API

P. Oliveira

Pg. 22

11

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Contactos verticais e soluo alternativa

API

P. Oliveira

Pg. 23

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Contactos verticais e soluo alternativa

Outro exemplo:

API

P. Oliveira

Pg. 24

12

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram

Rels temporizados Ou Timers

API

P. Oliveira

Pg. 25

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram

Caractersticas:
Identificador: %TMi IN TON TOFF TP TB 0..63 no TSX37 para activao On delay Off delay Monoestvel 1mn (def.), 1s, 100ms, 10ms

Rels temporizados Ou Timers


%TMi IN
MODE: TON TB: 1mn TM.P: 9999 MODIF: Y

Entrada: Modo:

Base de Tempo: Q

Valor programado: %TMi.P 0...9999 (def.) tempo=TB*TMi.P Valor Actual: %TMi.V 0...TMi.P (pode ser lido ou testado) Modificao: Y/N modificao a partir de terminal
P. Oliveira Pg. 26

API

13

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Rels temporizados Ou Timers


Smbolos utilizados

API

P. Oliveira

Pg. 27

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo:

API

P. Oliveira

Pg. 28

14

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo:

API

P. Oliveira

Pg. 29

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Modo: TP

Rels temporizados Ou Timers


%TMi IN
MODE: TP TB: 100msec TM.P: 5 MODIF: Y

Funcionamento como mono-estvel ou gerador de impulso de durao pr-programada

IN

Q
Q
500ms 500ms

TMi.P

TMi.V

API

P. Oliveira

Pg. 30

15

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Implementao de timers no PLC-5 da Allen-Bradley:

Dois mtodos de representao alternativos...

API

P. Oliveira

Pg. 31

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Funcionamento de timers no PLC-5 da Allen-Bradley

API

P. Oliveira

Pg. 32

16

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer on-delay

API

P. Oliveira

Pg. 33

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer on-delay com ligao sada

API

P. Oliveira

Pg. 34

17

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer on-delay

API

P. Oliveira

Pg. 35

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer on-delay
Solenide energizado se o interruptor estiver fechado 12 segundos

API

P. Oliveira

Pg. 36

18

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer on-delay
Se PB2 fr actuado liga o motor de bombagem de leo. Quando a presso subir PS1 vai detectar a subida da presso. e ligar motor principal. 15 segundos depois arranca o motor de alimentao principal.

API

P. Oliveira

Pg. 37

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer programado off-delay

API

P. Oliveira

Pg. 38

19

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer programado off-delay

API

P. Oliveira

Pg. 39

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timer programado off-delay

API

P. Oliveira

Pg. 40

20

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de timers programados on-delay e off-delay

API

P. Oliveira

Pg. 41

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Timers


Exemplo:

API

P. Oliveira

Pg. 42

21

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Timers com retno

API

P. Oliveira

Pg. 43

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo com timers com retno

API

P. Oliveira

Pg. 44

22

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Timers


Exemplo: (procurar no PLC da Schneider ou discutir implementao)

API

P. Oliveira

Pg. 45

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo:
SW On para iniciar Antes do motor arrancar, lubrificar 10s com leo SW off para parar. Continuar a lubrificar mais 15 segundos. Quando a bomba estiver a funcionar 3 horas, desligar o motor e acender luz piloto para avisar da necessidade de trocar o filtro. Reset disponvel para depois de trocar o filtro.
API P. Oliveira Pg. 46

23

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Timers em cascata

API

P. Oliveira

Pg. 47

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Timers em cascata (circuito oscilatrio)

API

P. Oliveira

Pg. 48

24

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Timers para tempos muito longos

API

P. Oliveira

Pg. 49

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de um semforo

API

P. Oliveira

Pg. 50

25

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Exemplo de semforos em duas direces

API

P. Oliveira

Pg. 51

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Exemplo de semforos em duas direces

API

P. Oliveira

Pg. 52

26

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Contadores

API

Aplicaes tpicas

P. Oliveira

Pg. 53

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Contadores

Caractersticas:
Identificador: %Ci 0..31 no TSX37 0...9999 (def.) 0...Ci.P (no pode ser escrito) modificao a partir de terminal Reset Ci.V=0 Preset Ci.V=Ci.P Count Up Count Down Overrun %Ci.E=1 %Ci.V=0Done %Ci.D=1 %Ci.V=Ci.P Full %Ci.F=1 %Ci.V=9999->0
P. Oliveira Pg. 54

%Ci R S
CP: 9999 MODIF: Y

Valor programado: %Ci.P Valor Actual: %Ci.V E D F Sadas: >9999 Modificao: Entradas: Y/N R S CU CD E D F

CU CD

API

27

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Implementao de Contadores no PLC-5 da Allen-Bradley:

Estrutura interna

Representao

API

P. Oliveira

Pg. 55

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Implementao de Contadores no PLC-5 da Allen-Bradley:


Representaes alternativas

API

P. Oliveira

Pg. 56

28

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Up-counters

Implementao de um contador incremental ascendente e respectivo diagrama temporal


API P. Oliveira Pg. 57

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Up-counters


Exemplo: contagem de peas

API

P. Oliveira

Pg. 58

29

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Exemplo

API

P. Oliveira

Pg. 59

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Up/down-counters

API

P. Oliveira

Pg. 60

30

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Up/down-counters

API

P. Oliveira

Pg. 61

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Up/down-counters


Exemplo:
garagem com lotao

API

P. Oliveira

Pg. 62

31

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Contadores em cascata


Exemplo:

API

P. Oliveira

Pg. 63

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Contadores em cascata


Exemplo:
Relgio para 24 horas

API

P. Oliveira

Pg. 64

32

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Contadores em cascata


Exemplo:
Memorizar hora de um evento

API

P. Oliveira

Pg. 65

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Encoder incremental

API

P. Oliveira

Pg. 66

33

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Encoder incremental


Exemplo: contador usado para medir um comprimento

API

P. Oliveira

Pg. 67

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de contadores usados em conjunto com timers

Funcionamento:
Aps boto de start M1 comea a funcionar. Aps 15 placas M1 pra e M2 comea a funcionar. Aps operar M2 por 5 segundos, parar. Recomear sequncia.

API

P. Oliveira

Pg. 68

34

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de contadores usados em conjunto com timers (cont.)

Funcionamento:
Aps boto de start M1 comea a funcionar. Aps 15 placas M1 pra e M2 comea a funcionar. Aps operar M2 por 5 segundos, parar. Recomear sequncia.

API

P. Oliveira

Pg. 69

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de contadores usados em conjunto com timers Exemplo: Funcionamento:
Aps boto de start o timer e o contador so autorizados. O contador incrementado por cada pea que processada. O timer conta 1 minuto. No final o bit de enable interrompe a contagem do contador.

API

P. Oliveira

Pg. 70

35

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Exemplo de contadores usados em conjunto com timers
Utilizar timer a comandar um contador para obter intervalos de tempo grandes.

API

P. Oliveira

Pg. 71

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram Contadores


Exemplo:

API

P. Oliveira

Pg. 72

36

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Processamento Numrico

Funes Algbricas e Lgicas

API

P. Oliveira

Pg. 73

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Processamento Numrico Funes Aritmticas

API

P. Oliveira

Pg. 74

37

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Processamento Numrico Exemplo de uso de Funes Aritmticas

Utilizao em conjunto com varivel de sistema %S18 flag de overflow


API P. Oliveira Pg. 75

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Processamento Numrico Funes Lgicas

API

P. Oliveira

Pg. 76

38

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Processamento Numrico Exemplo de uso de Funes Lgicas

API

P. Oliveira

Pg. 77

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Processamento Numrico Prioridades de Execuo de Operaes

API

P. Oliveira

Pg. 78

39

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Estruturas de Controlo de Fluxo Sub-rotinas (imbrincadas) Chamada e retorno

API

P. Oliveira

Pg. 79

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Estruturas de Controlo de Fluxo Saltos condicionais e Incondicionais

API

P. Oliveira

Pg. 80

40

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Estruturas de Controlo de Fluxo Exemplo de uso de Saltos condicionais e Incondicionais

ATENO A LOOPS INFINITOS E ... NO BOM ESTILO DE PROGRAMAO!... Dificulta a compreenso...

API

P. Oliveira

Pg. 81

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Estruturas de Controlo de Fluxo Instrues de Halt

Nota: pra todos os processos Mscaras de eventos

API

P. Oliveira

Pg. 82

41

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Existem outras instrues mais avanadas (ver manual de referncia) Mono-estvel Registos de 256 words (LIFO ou FIFO) DRUM Programador ciclico Comparadores Shift-registers ... Funes de manipulao de floats Funes de converso de bases e de tipo
API P. Oliveira Pg. 83

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Manipulao de Tabelas Numricos

API

P. Oliveira

Pg. 84

42

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
No caso prtico de cada PLC existem limitaes nas matrizes de ligaes Exemplo:

API

P. Oliveira

Pg. 85

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
H que ter em conta as potencialidades e limitaes das ferramentas para escrita de programas e ...

API

P. Oliveira

Pg. 86

43

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
das ferramentas para desenvolvimento e debug de programas.

API

P. Oliveira

Pg. 87

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Informao de Sistema: bits de sistema

Ver manual para os restantes 100 bits gerados...

API

P. Oliveira

Pg. 88

44

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Informao de Sistema: words de sistema

Ver manual para as restantes 140 words...

API

P. Oliveira

Pg. 89

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Estrutura de Software
Sas (LD)

MAST Master Task Program Composta por sections


Oven1 (GRAFCET) PRL (LD) Chart POST (IL)

Executada Ciclica ou Periodicamente


Cleaning (IL) Drying (LD)

SR0

API

P. Oliveira

Pg. 90

45

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Estrutura de Software FAST Fast Task Program Prioridade Superior MAST Executada Periodicamente (1-255ms) Verificada por um Watchdog, que afecta %S11 %S31 Enables ou disables a FAST %S33 contm o tempo de execuo da tarefa FAST

API

P. Oliveira

Pg. 91

IST / DEEC / SSC

Cap. 3 - Linguagens de Programao de PLCs

Ladder diagram
Estrutura de Software Event Processes Processos que reagem rpido s mudanas no exterior (16 no Micro 3722 EV0 a EV15) Prioridade Superior MAST e FAST!

Geradores de eventos
Entradas 0 a 3 do mdulo 1, em mudana transio Contadores Recepo de telegramas %S38 Enables ou disables processos por evento tambm pode ser com MASKEVT() e UNMASKEVT()
API P. Oliveira Pg. 92

46

Vous aimerez peut-être aussi