Você está na página 1de 24

Autmato programvel

Exerccios prticos

L1
L2 M
400 VAC
L3 3~

Bobina do
230 VAC contactor
G~

Sada

PLC

Rel

230 VAC
24 VDC
~
+

Detector de entrada

Lucnio Preza de Arajo


ESCOLA SECUNDRIA CARLOS AMARANTE

E-mail: lucinio@yahoo.com
http://www.prof2000.pt/users/lpa
Para que serve a linguagem de programao?

O funcionamento de um autmato programvel determinado por um


programa armazenado na sua memria.
Esse programa uma sucesso de instrues que o autmato vai realizar e
que pode ser escrito em vrias linguagens como a linguagem em diagrama de
contactos e a linguagem em lista de instrues.

Linguagens de programao

Vamos aplicar as linguagens de programao referidas anteriormente a um


exemplo de um circuito elctrico muito simples:
s
a
a , b interruptores entradas
s bobina - sada
b
Funo lgica: s = a + b

A linguagem em diagrama de contactos (Ladder Diagram LD) permite escrever as


instrues do programa do autmato sob forma grfica.
. s
a

Este tipo de linguagem de programao utilizado na maioria dos autmatos


pelo facto de apresentar semelhana com os esquemas de rels utilizados nos
automatismos industriais de lgica cablada.

A linguagem em lista de instrues (Instruction List IL) permite escrever um


programa sob forma de linhas de programas. Cada linha de programa uma
instruo que o autmato compreende.

Linhas do programa Instruo (mnemnicas) Operando


0 Load LD a
1 Or OR b
2 Out OUT s

NOTA:
Mnemnicas so abreviaturas das palavras que designam as instrues.
As instrues, sob a forma de mnemnicas, variam ligeiramente conforme o
fabricante do autmato.

Autmatos programveis Pgina 2 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

As variveis de entrada a, b e de sada s sero substitudas pelos cdigos


referentes s entradas e sadas dos respectivos autmatos.
OMRON

Autmato SYSMAC C20K

Dispe de 20 E/S (12 entradas e 8 sadas).


Os dois primeiros dgitos indicam o canal de E/S (00 entradas e 01
sadas) e os dois ltimos a E/S a utilizar (00 a 11 nas entradas e 00 a 07
nas sadas).
As entradas vo desde 0000 a 0011
As sadas vo desde 0100 a 0107

Alimentao do autmato
100 - 240 VAC
50 Hz/60Hz
60 VA

Entradas
24 VDC
7 mA

Sadas
24 VDC/250 VAC
2 A Max.

Consola de programao PRO 15

Autmatos programveis Pgina 3 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Permite a programao do autmato, linha a linha, em linguagem lista de instrues

Modos de operao

PROGRAM Utiliza-se este modo para escrever/editar o programa.


MONITOR Este modo usado na fase de teste e afinao do programa.
RUN O autmato executa o programa.

Funes das teclas

Teclas numricas (cor branca)

Tecla CLR clear (cor vermelha): Tecla usada para cancelar a operao em
curso e para limpar o ecr.

Teclas operativas (cor amarela): Teclas usadas na edio do programa.

SRCH: Procurar instrues.


MONTR: Visualizar estado ou valores de variveis (monitorizao).
EXT: Visualizar, em simultneo, 3 canais (palavras) consecutivos no ecr.
CHG: Em modo Monitor, permite alterar valores.
INS: Inserir instrues.
DEL: Apagar instrues.
WRITE: Validar as linhas do programa.
e : Deslocar o cursor para cima e para baixo.

Autmatos programveis Pgina 4 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Teclas de instrues (cor cinzenta)

SHIFT: Para aceder indicao superior das teclas.


FUN: Seleccionar uma funo com cdigo numrico.
CNT: Contador.
TIM: Temporizador.
CH: Especifica um canal (palavra) da rea de memria do autmato.
CONT: Especifica um bit (contacto).
SFT: Registo de deslocamento.
#: Especifica uma constante numrica.
*: Especifica um endereamento indirecto.

Escrever o programa

1. Seleccionar o modo Program;


2. Premir a tecla CLR at se obter a primeira linha do programa 0000;
3. Escrever o programa em lista de instrues, linha a linha, validando
cada linha com a tecla WRITE. A linha do programa incrementada
automaticamente;
4. Terminar obrigatoriamente o programa com a instruo END FUN (01).

Inserir instrues (modo Program)

1. Posicionar-se na linha de instruo posterior instruo a inserir;


2. Escrever a instruo e premir a tecla INS;

3. Premir a tecla para validar a nova instruo.

Apagar instrues (modo Program)

1. Posicionar-se na linha de instruo que se pretende apagar;


2. Premir a tecla DEL;

3. Premir a tecla para validar a instruo.

Autmatos programveis Pgina 5 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Operadores lgicos elementares

Exerccio n1

Operador E (AND)

Descrio: Circuito srie

Pretende-se que a sada 0100 esteja activa (ON), quando e s quando a


entrada 0000 esteja activa (ON) e a entrada 0002 esteja tambm activa (ON).

Diagrama de contactos:

(0000)

(0002)

(0100)

Lista de instrues:

0000 0002

0100

NOTAS:

LD Load Inicia uma linha lgica ou bloco lgico.

AND Ligao srie de contactos abertos.

OUT Instruo de sada de linha.

Autmatos programveis Pgina 6 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

obrigatrio terminar qualquer programa com a instruo END, acessvel na


consola de programao por FUN (01).

Exerccio n2

Operador E (AND)

Descrio: Circuito srie

Pretende-se que a sada 0100 esteja activa (ON), quando e s quando a


entrada 0000 esteja activa (ON) e a entrada 0001 esteja inactiva (OFF).

Diagrama de contactos:

Lista de instrues:

NOTAS:

AND NOT Ligao srie de contactos fechados.

Autmatos programveis Pgina 7 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Para obter o operador AND NOT necessrio premir sucessivamente as teclas


AND e NOT da consola de programao.

Exerccio n3

Operador OU (OR)

Descrio: Circuito paralelo

Pretende-se que a sada 0100 esteja activa (ON), quando a entrada 0000
esteja activa (ON) ou a entrada 0001 esteja activa (ON).

Diagrama de contactos:

(0000) (0001)

(0100)

Lista de instrues:

0000 0001

0100

Autmatos programveis Pgina 8 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

NOTA:

OR Ligao paralelo de contacto aberto.

Exerccio n4

Descrio: Circuito paralelo srie

Pretende-se comandar o arranque e a paragem de um motor assncrono


trifsico, atravs de dois botes S1 (arranque) e S0 (paragem). A aco sobre o
boto S1, leva ao arranque do motor, mantendo-se nessa situao at uma
ordem de paragem por aco no boto S0.

Comandar o contactor de potncia, atravs da sada 0101.

Diagrama de contactos:

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0101
0001 OR 0000
0002 AND NOT 0001
0003 OUT 0101
0004 END

NOTAS:

A manuteno do estado de ligado, mesmo quando o boto S1 regressa


posio de aberto, torna-se possvel graa auto-alimentao promovida pelo
bit de sada (0101).

Autmatos programveis Pgina 9 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

O nmero de sada OUT fixo, pelo que no se pode repetir um mesmo


nmero de sada, no entanto, o nmero de contactos associados a cada uma
das sadas (tanto abertos como fechados) ilimitado.

Exerccio n5

Descrio: Pretende-se implementar no autmato, a seguinte expresso


booleana:

S = (A . B + A ). C

Arbitrariamente, associaremos a cada uma das trs variveis de entrada A, B e


C, as entradas, 0000, 0001 e 0002 e a sada 0105.

Diagrama de contactos:

0000 0001 0002


S
0105
A B C
0000

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0000
0001 AND 0001
0002 OR 0000
0003 AND 0002
0004 OUT 0105
0005 END

Autmatos programveis Pgina 10 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

NOTA:

O nmero de contactos abertos ou fechados que se podem utilizar num


programa por cada uma das entradas ilimitado, isto , pode-se repetir o
mesmo nmero de contacto (aberto ou fechado) quantas vezes quisermos.

Blocos Lgicos Instruo OR LD

Exerccio n 6

Descrio: Pretende-se implementar no autmato, a seguinte expresso


booleana:

S = (A . B + A . B). C

Arbitrariamente, associaremos a cada uma das trs variveis de entrada A, B e


C, as entradas 0000, 0001 e 0002 e a sada 0105.

Diagrama de contactos:

0000 0001 0002


S
0105
A B C
0000 0001

A B

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0000
0001 AND 0001
0002 LD 0000
0003 AND 0001
0004 OR LD
0005 AND 0002
0006 OUT 0105
0007 END

Autmatos programveis Pgina 11 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

NOTAS:

Um bloco lgico inicia-se sempre com a instruo LD.


A instruo OR LD permite realizar o paralelo de dois blocos lgicos, ou seja,
permite realizar um OR lgico entre dois blocos.

Blocos Lgicos Instruo OR LD

Exerccio n 7

Diagrama de contactos:

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0000
0001 AND NOT 0001
0002 LD NOT 0002
0003 AND NOT 0003
0004 OR LD
0005 LD 0004

Autmatos programveis Pgina 12 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

0006 AND 0005


0007 OR LD
0008 OUT 0101
0009 END

NOTAS:

Um bloco lgico inicia-se sempre com a instruo LD.


A instruo OR LD permite realizar o paralelo de dois blocos lgicos, ou seja,
permite realizar um OR lgico entre dois blocos.

Blocos Lgicos Instruo AND LD

Exerccio n 8

Diagrama de contactos: Circuito srie paralelo

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0000
0001 AND NOT 0001
0002 LD 0002
0003 AND 0003
0004 OR 0004

Autmatos programveis Pgina 13 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

0005 OR 0005
0006 AND LD
0007 OUT 0101
0008 END

NOTAS:

Um bloco lgico inicia-se sempre com a instruo LD.


A instruo AND LD permite ligar em srie dois blocos lgicos, ou seja, permite
realizar um AND lgico entre dois blocos.

Blocos Lgicos Instrues OR LD e AND LD

Exerccio n 9

Em circuitos lgicos com alguma complexidade, e uma vez que este modelo de
autmato no faz uso de parntesis, utilizam-se instrues AND LD e OR LD
que associam blocos lgicos.

Diagrama de contactos: Circuito srie paralelo

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD NOT 0000


0001 AND 0001
0002 LD 0002

Autmatos programveis Pgina 14 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

0003 AND 0003


0004 LD NOT 0004
0005 AND 0005
0006 OR LD
0007 AND LD
0008 OUT 0101
0009 END

NOTAS:

Um bloco lgico inicia-se sempre com a instruo LD.


A instruo OR LD permite realizar o paralelo de dois blocos lgicos, ou seja,
permite realizar um OR lgico entre dois blocos.
A instruo AND LD permite ligar em srie dois blocos lgicos, ou seja, permite
realizar um AND lgico entre dois blocos.

Blocos Lgicos Instrues OR LD e AND LD

Exerccio n 10

Diagrama de contactos:

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD NOT 0000


0001 LD 0001

Autmatos programveis Pgina 15 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

0002 LD 0002
0003 AND 0003
0004 OR LD
0005 AND LD
0006 LD NOT 0004
0007 AND 0005
0008 OR LD
0009 LD NOT 0006
0010 AND 0007
0011 OR LD
0012 OUT 0101
0013 END

NOTAS:

Um bloco lgico inicia-se sempre com a instruo LD.


A instruo OR LD permite realizar o paralelo de dois blocos lgicos, ou seja,
permite realizar um OR lgico entre dois blocos.
A instruo AND LD permite ligar em srie dois blocos lgicos, ou seja, permite
realizar um AND lgico entre dois blocos.

Blocos Lgicos Instruo OR LD

Exerccio n 11

Note que este diagrama de contactos equivalente ao do exerccio anterior.


Com este novo diagrama, consegue-se um programa mais curto e mais rpido
na execuo.

Diagrama de contactos:

Autmatos programveis Pgina 16 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0002
0001 AND 0003
0002 OR 0001
0003 AND NOT 0000
0004 LD NOT 0004
0005 AND 0005
0006 OR LD
0007 LD NOT 0006
0008 AND 0007
0009 OR LD
0010 OUT 0101
0011 END

Instruo TR

Exerccio n12

Descrio: No diagrama abaixo, vo usar-se os bits temporrios TR 0 e TR 1,


para guardar as condies de execuo nos pontos de ramificao.

Diagrama de contactos:

Autmatos programveis Pgina 17 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0000
0001 AND 0001
0002 OUT TR 0
0003 AND 0002
0004 OUT TR 1
0005 AND 0003
0006 OUT 0100
0007 LD TR 1
0008 AND 0004
0009 OUT 0101
0010 LD TR 0
0011 AND 0005
0012 OUT 0102
0013 END

NOTA:
Os bits de memria temporrios (TR) servem para guardar temporariamente o
estado lgico de ns de circuitos com vrias ramificaes para as sadas.

Instrues DIFU, DIFD e KEEP

Exerccio n 13

Descrio:

A ligao do motor monofsico faz-se segundo os esquemas de comando e de


potncia da figura.

230 VAC

Autmatos programveis Pgina 18 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Diagrama de contactos: Lista de instrues:

(S0) Nmero de Cdigo de Operando


linha operao

(K) Set
0000 LD 0000
(S1) Reset
0001 DIFU 1000
0002 LD 1000
0003 LD 0001
0004 KEEP 0100
NOTAS: 0005 END
As instrues DIFU, DIFD e KEEP obtm-
se atravs das funes FUN(13), FUN(14) e FUN(11).
DIFU: (Differentiate Up) Na transio 0 1 de um bit gerado o valor lgico 1.
DIFD: (Differentiate Down) Na transio 1 0 de um bit gerado o valor
lgico 1.
KEEP: Permite atravs das suas entradas de controlo, manipular o estado de
um bit biestvel. O estado lgico deste bit determinado por duas condies
lgicas: uma set e outra reset. O bit programado vai a1 se a condio set for
momentaneamente a On; o bit vai a 0 se a condio reset for
momentaneamente a On.

Instruo DIFU

Exerccio n 14

Descrio:

Pretende-se que sempre que se pressionar um boto de presso P (entrada


0000) a lmpada L (sada 0105) acenda se estiver apagada ou apague se
estiver acesa.

Diagrama de contactos:

0105 1000
0105

0105 1000

Autmatos programveis Pgina 19 de 24


0000
DIFU 1000
ESCOLA SECUNDRIA CARLOS AMARANTE

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0105
0001 AND NOT 1000
0002 LD NOT 0105
0003 AND 1000
0004 OR LD
0005 OUT 0105
0006 LD 0000
0007 DIFU 1000
0008 END

Instruo de Temporizao (TIM)

Exerccio n 15

Temporizao operao (ao trabalho)

Descrio: O temporizador activado quando a sua condio de execuo


fica ON e reinicializado quando esta fica OFF. Uma vez activado, a instruo
TIM mede o tempo em intervalos de 0.1 segundo a partir do valor de SV (set
value). Se a condio de execuo se mantiver ON durante um perodo de
tempo suficiente para que o tempo diminua at zero, a sada utilizada ser
posta ON e assim permanecer at reinicializao do temporizador. (isto ,
at que a condio de execuo passe a OFF).

Diagrama temporal

Sada

Autmatos programveis Pgina 20 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

No exemplo da figura, a sada 0100 ficar ON, 5 segundos aps a aco sobre
a entrada 0001.

Diagrama de contactos:

Lista e instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0001
0001 TIM 10 # 0050
0002 LD TIM10
0003 OUT 0100
0004 END NOTA:
Para que o contacto associado ao
temporizador TIM 10 feche, isto , passe de
TIM 10 # 0050
OFF a ON, necessrio que o sinal de
Tempo pr-defenido
entrada (neste caso 0001)
(dcimas desesegundos)
mantenha
fechado (ON) pelo menos durante o tempo
da temporizao (neste caso 5 segundos).
rea de memria
Instruo de Temporizao (TIM)

Exerccio n 16

Temporizao desoperao (ao repouso)

Descrio: A sada 0100 fica ON quando activada a entrada 0004, sendo


desactivada 5 segundos aps.

Diagrama temporal

Sada

Autmatos programveis Pgina 21 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Diagrama de contactos:

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0004
0001 TIM 10 # 0050
0002 LD 0004
0003 OR 0100
0004 AND NOT TIM 10
0005 OUT 0100
0006 END

NOTA:
TIM 10 # 0050
Tempo pr-defenido
(dcimas de segundos)

rea de memria
Instruo de Temporizao (TIM)

Exerccio n 17

Temporizao operao e desoperao

Descrio: A sada 0100 fica ON, 3 segundos depois de activada a entrada


0003, sendo desactivada 5 segundos aps ter sido activada a entrada 0003.

Diagrama temporal

Sada 0100
2

Autmatos programveis Pgina 22 de 24


ESCOLA SECUNDRIA CARLOS AMARANTE

Diagrama de contactos:

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 LD 0003
0001 TIM 20 # 0030
0002 LD 0003
0003 TIM 10 # 0050
0004 LD TIM 20
0005 OR 0100
0006 AND NOT TIM 10
0007 OUT 0100
0008 END

NOTA:
Se for um temporizador TIMH o tempo expressa-se em milsimas de segundo.
Instruo CNT (Contadores)

Exerccio n 18

A
Descrio: Os contadores (CNT) dispem de duas CNT
entradas, respectivamente entrada de impulsos para R N
decrementao A e de reposio ou de reset R. SV

A
CNTR
Se o contador for reversvel (CNTR), dispe de outra B
entrada B de impulsos para incrementao.
N
R SV
Autmatos programveis Pgina 23 de 24
ESCOLA SECUNDRIA CARLOS AMARANTE

Diagrama de contactos:

0001

CNT40
0002 #10

CNT40
0100

Lista de instrues:

Nmero de linha Cdigo de operao Operando

0000 0001
0001 LD 0002
0002 LD
0003 CNT 40 # 10
0004 LD CNT 40 0100
0005 OUT
END
Por cada impulso OFF-ON na entrada A
NOTA: (0001 no exemplo) o valor SV (10 no exemplo)
CNT 40 # 10 decrementado de uma unidade desde o valor
pr-seleccionado at zero, fechando o contacto
(SV) Valor de contagem
(CNT40 no exemplo) associado ao contador.
Um impulso na entrada de reset R coloca o
(N) rea de memria valor SV no valor inicial.

Autmatos programveis Pgina 24 de 24

Você também pode gostar