Sei sulla pagina 1di 25

Autmato programvel Exerccios prticos

L1 L2 400 VAC L3 Bobina do contactor

M 3~

230 VAC

G~
Sada

PLC

Rel

230 VAC 24 VDC

+
Detector de entrada

ESCOLA SECUNDRIA CARLOS AMARANTE


Lucnio Preza de Arajo 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:
a s

a , b interruptores entradas s bobina - sada 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 0 1 2 Instruo Load Or Out (mnemnicas) LD OR OUT Operando a b s

NOTA: Mnemnicas so abreviaturas das palavras que designam as instrues.

Autmatos programveis

Pgina 2 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE As instrues, sob a forma de mnemnicas, variam ligeiramente conforme o fabricante do autmato. 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.

Autmatos programveis

Pgina 3 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Consola de programao PRO 15


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 25

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 25

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 0100

0002

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 25

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 25

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 0100

0001

Autmatos programveis

Pgina 8 de 25

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 0000 0001 0002 0003 0004

Cdigo de operao LD OR AND NOT OUT END

Operando 0101 0000 0001 0101

Autmatos programveis

Pgina 9 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

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). 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 C
0105

A
0000

Lista de instrues:

Nmero de linha

Cdigo de operao

Operando

Autmatos programveis

Pgina 10 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

0000 0001 0002 0003 0004 0005 NOTA:

LD AND OR AND OUT END

0000 0001 0000 0002 0105

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 C
0105

A
0000

B
0001

Lista de instrues:

Nmero de linha

Cdigo de operao

Operando

Autmatos programveis

Pgina 11 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

0000 0001 0002 0003 0004 0005 0006 0007

LD AND LD AND OR LD AND OUT END

0000 0001 0000 0001 0002 0105

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:

Autmatos programveis

Pgina 12 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Nmero de linha 0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 NOTAS:

Cdigo de operao LD AND NOT LD NOT AND NOT OR LD LD AND OR LD OUT END

Operando 0000 0001 0002 0003 0004 0005 0101

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:

Autmatos programveis

Pgina 13 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Nmero de linha 0000 0001 0002 0003 0004 0005 0006 0007 0008

Cdigo de operao LD AND NOT LD AND OR OR AND LD OUT END

Operando 0000 0001 0002 0003 0004 0005 0101

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:

Autmatos programveis

Pgina 14 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Nmero de linha 0000 0001 0002 0003 0004 0005 0006 0007 0008 0009

Cdigo de operao LD NOT AND LD AND LD NOT AND OR LD AND LD OUT END

Operando 0000 0001 0002 0003 0004 0005 0101

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:

Autmatos programveis

Pgina 15 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Nmero de linha 0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 NOTAS:

Cdigo de operao LD NOT LD LD AND OR LD AND LD LD NOT AND OR LD LD NOT AND OR LD OUT END

Operando 0000 0001 0002 0003 0004 0005 0006 0007 0101

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 contactos:

de

Autmatos programveis

Pgina 16 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Lista de instrues:

Nmero de linha 0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011

Cdigo de operao LD AND OR AND NOT LD NOT AND OR LD LD NOT AND OR LD OUT END

Operando 0002 0003 0001 0000 0004 0005 0006 0007 0101

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 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Lista de instrues:

Nmero de linha 0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013

Cdigo de operao LD AND OUT TR 0 AND OUT TR 1 AND OUT LD TR 1 AND OUT LD TR 0 AND OUT END

Operando 0000 0001 0002 0003 0100 0004 0101 0005 0102

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:
230 VAC

A ligao do motor monofsico faz-se segundo os esquemas de comando e de potncia da figura.

Autmatos programveis

Pgina 18 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

Diagrama de contactos:
(S0)

Lista de instrues:
Nmero de linha Cdigo de operao Operando

(K) (S1)

Set Reset

0000 0001 0002 0003 0004 0005

LD DIFU LD LD KEEP END

000 0 100 0 100 0 000 1 010 0

NOTAS: 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

Autmatos programveis

Pgina 19 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

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

0000

DIFU 1000

Lista de instrues:

Nmero de linha 0000 0001 0002 0003 0004 0005 0006 0007 0008

Cdigo de operao LD AND NOT LD NOT AND OR LD OUT LD DIFU END

Operando 0105 1000 0105 1000 0105 0000 1000

Instruo de Temporizao (TIM)

Autmatos programveis

Pgina 20 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE 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

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 0000 0001 0002 0003 0004

Cdigo de operao LD TIM 10 # 0050 LD TIM10 OUT END

Operando 0001 0100

Autmatos programveis

Pgina 21 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

NOTA: TIM 10 # 0050

Tempo pr-defenido (dcimas de segundos) rea de memria

Instruo de Temporizao (TIM) Exerccio n 16

Para que o contacto associado ao temporizador TIM 10 feche, isto , passe de OFF a ON, necessrio que o sinal de entrada (neste caso 0001) se mantenha fechado (ON) pelo menos durante o tempo da temporizao (neste caso 5 segundos).

Temporizao desoperao (ao repouso) Descrio: A sada 0100 fica ON quando activada a entrada 0004, sendo desactivada 5 segundos aps. Diagrama temporal

Sada

Diagrama de contactos:

Lista de instrues:

Nmero de linha 0000 0001 0002 0003 0004 0005

Cdigo de operao LD TIM 10 # 0050 LD OR AND NOT TIM 10 OUT

Operando 0004 0004 0100 0100

Autmatos programveis

Pgina 22 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

0006 NOTA: TIM 10 # 0050

END

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

Diagrama de contactos:

Lista de instrues:

Nmero de linha

Cdigo de operao

Operando

Autmatos programveis

Pgina 23 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

0000 0001 0002 0003 0004 0005 0006 0007 0008

LD TIM 20 # 0030 LD TIM 10 # 0050 LD TIM 20 OR AND NOT TIM 10 OUT END

0003 0003 0100 0100

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 entradas, respectivamente entrada de impulsos para decrementao A e de reposio ou de reset R. CNT R
N SV

A CNTR Se o contador for reversvel (CNTR), dispe de outra entrada B de impulsos para incrementao. B R Diagrama de contactos:
0001

N SV

0002

CNT40 #10

CNT40 0100

Lista de instrues:

Nmero de linha

Cdigo de operao

Operando

Autmatos programveis

Pgina 24 de 25

ESCOLA SECUNDRIA CARLOS AMARANTE

0000 0001 0002 0003 0004 0005 NOTA: CNT 40 # 10

LD LD CNT 40 # 10 LD CNT 40 OUT END

0001 0002 0100

(SV) Valor de contagem (N) rea de memria

Por cada impulso OFF-ON na entrada A (0001 no exemplo) o valor SV (10 no exemplo) decrementado de uma unidade desde o valor pr-seleccionado at zero, fechando o contacto (CNT40 no exemplo) associado ao contador. Um impulso na entrada de reset R coloca o valor SV no valor inicial.

Autmatos programveis

Pgina 25 de 25

Potrebbero piacerti anche