Diagramas_de_Contato

20
Programação de CLPs por Diagramas de Contato 1. Diagramas de Contato 2. Um CLP Genérico 3. Instruções de Entrada e Saída 4. Instruções Booleanas 5. Circuitos de Intertravamento 6. Detecção de Borda 7. Temporizadores 8. Contadores 9. Exemplo 1/20

description

No Description

Transcript of Diagramas_de_Contato

Page 1: Diagramas_de_Contato

Programação de CLPs porDiagramas de Contato

1. Diagramas de Contato

2. Um CLP Genérico

3. Instruções de Entrada e Saída

4. Instruções Booleanas

5. Circuitos de Intertravamento

6. Detecção de Borda

7. Temporizadores

8. Contadores

9. Exemplo

1/20

Page 2: Diagramas_de_Contato

1. Diagramas de Contato

Os diagramas de contato são uma forma de programação deCLPs por meio de símbolos gráficos, representando contatos(contacts) e bobinas (coils).

Os contatos e bobinas correspondem a variáveis booleanasarmazenadas na memória intermediária do CLP.

Os contatos e bobinas são conectados por ligações (links) emramos (rungs) como num diagrama de lógica a relé.

As expressões booleanas calculadas a cada ciclo devarredura do CLP correspondem à avaliação lógicaseqüencial do diagrama de contatos.

Um contato é representado como abaixo, onde se identificaum contato, associado à variável booleana A, interna ao CLP,e suas ligações.

A--||--

Os contatos são usados como acesso ao estado de umavariável interna no cálculo de expressões booleanas. Contatonormalmente aberto

A--||--

O estado da ligação à direita écopiado para a ligação à esquerdase o estado de A é verdadeiro. Casocontrário, o estado da ligação àdireita é falso.

Contatonormalmente fechado

A--|/|--

O estado da ligação à direita écopiado para a ligação à esquerdase o estado de A é falso, casocontrário, o estado da ligação àdireita é verdadeiro.

2/20

Page 3: Diagramas_de_Contato

Contatosensível àtransiçãopositiva

A--|P|--

O estado da ligação à direita éverdadeiro por um ciclo devarredura se o estado da ligação àesquerda é verdadeiro e umatransição positiva da variável A édetectada.

Uma bobina é representada como na figura abaixo, ondeidentifica-se uma bobina, associada a uma variável booleanaQ.

Q--( )--

As bobinas alteram os estados das variáveis associadas.

Bobinanormal

Q--( )--

O estado da ligação da esquerda écopiado para a variável Q e para aligação à direita.

Bobinanegativa Q

--(\)--

O estado da ligação à esquerda écopiado para a ligação à direita, e anegação do estado da ligação àesquerda é copiada para a variávelQ.

BobinaLatch(Set)

Q--(S)--

O estado de Q passa paraverdadeiro quando a ligação àesquerda vai para verdadeiro, e nãose altera em caso contrário.

BobinaLatch(Reset)

Q--(R)--

O estado de Q passa para falsoquando a ligação à direita vai paraverdadeiro, e não se altera em casocontrário.

Bobinasensívelàtransiçãopositiva

Q--(P)--

O estado de Q passa paraverdadeiro por um ciclo devarredura cada vez que a ligação àesquerda vai de falso paraverdadeiro.

3/20

Page 4: Diagramas_de_Contato

2. Um CLP genérico

Para fins de ilustração de diversos aspectos da programaçãopor diagramas de contato, introduz-se um CLP ilustrativo:

Informações sobre o CLP:

• 8 entradas a relé, endereçadas pelas variáveis I0 a I7• 8 saídas a relé, endereçadas pelas variáveis Q0 a Q7• Variáveis auxiliares, endereçadas por F0, F1, ...• Temporizadores, endereçados por T0, T1, ...• Contadores, endereçados por C0, C1, ...

4/20

I0 I2 I4 I5 I6 I7I1 I3 GND

Q0 Q2 Q4 Q5 Q6 Q7Q1 Q3 GND

CLP Genérico

Page 5: Diagramas_de_Contato

3. Instruções de entrada e saída

Programa básico de entrada e saída

| I0 Q0 ||--||------( )--|| |

Leitura de variável negada

| I0 Q0 ||--|/|-----( )--|| |

Atribuição de valor invertido

| I0 Q0 ||--||------(/)--|| |

5/20

I0 I2 I4 I5 I6 I7I1 I3 GND

Q0 Q2 Q4 Q5 Q6 Q7Q1 Q3 GND

CLP Genérico

Vc

Lamp

R S~

- +

CH

Page 6: Diagramas_de_Contato

Lógica duplamente invertida

| I0 Q0 ||--|/|-----(/)--|| |

As entradas podem também ser de natureza invertida, comocontatos e botoeiras normalmente fechadas (NF).

O uso de contatos NF no diagrama de contatos facilita amanutenção quando pela disponibilidade de LEDs no paineldo CLP.

6/20

Page 7: Diagramas_de_Contato

4. Instruções Booleanas

Operação ‘E’

| I1 I2 I3 Q0 ||--||----||----||----( )--|| |

Operação ‘OU’

| I1 Q1 ||--||--|--( )--|| I2 | ||--||--| || I3 | ||--||--| |

Lógica elaborada

| I0 I1 I4 I5 Q0 ||--||-----||--|--||--|--||----( )--|| I2 I3 | | ||--||-----||--| | || I1 I2 | ||--||--|--||--|------| || I6 | I7 | ||--||--|--||--| || |

7/20

Page 8: Diagramas_de_Contato

Programa implementado com flags ou relés auxiliares

| I0 I1 F0 ||--||----||----------( )--|| I2 I3 F1 ||--||----||----------( )--|| F0 I4 F2 ||--||------|---||----( )--|| F1 | ||--||------| || I1 F3 ||--||------|---------( )--|| I6 | ||--||------| || I2 F4 ||--||------|---------( )--|| I7 | ||--||------| || F3 F4 F5 ||--||----||----------( )--|| F2 I5 Q0 ||--||------|---||----( )--|| F5 | ||--||------| || |

8/20

Page 9: Diagramas_de_Contato

5. Circuitos de memorização ou intertravamento

Memorização ou auto-retenção de uma variável

| I0 Q0 ||--||--|--( )--|| Q0 | ||--||--| |

¿É possível com lógica de relés físicos?

Aplicação - acionamento por botoeiras de liga e desliga:

Programa de liga-desliga com prioridade para odesligamento

| I0 I1 Q0 ||--||--|--|/|---( )--|| Q0 | ||--||--| |

9/20

I0 I2 I4 I5 I6 I7I1 I3 GND

Q0 Q2 Q4 Q5 Q6 Q7Q1 Q3 GND

CLP Genérico

Vc

R S~

- +

Desl

Lig

K

Page 10: Diagramas_de_Contato

Programa de liga-desliga com prioridade para o ligamento

| Q0 I1 Q0 ||--||----|/|--|--( )--|| I0 | ||--||---------| |

Usando bobinas de set-reset

| I0 Q0 ||--||------(S)--|| I1 Q0 ||--||------(R)--|| |

| I1 Q0 ||--||------(R)--|| I0 Q0 ||--||------(S)--|| |

Qual é a prioridade nos circuitos acima?

10/20

Page 11: Diagramas_de_Contato

6. Circuito de Detecção de Borda

Existem situações no controle discreto em que o estado deuma variável não é suficiente como informação, mas sim oinstante de transição de um estado a outro.

Diferença entre a extração de uma condição ou de umevento de um sinal.

Exemplo de um programa que realiza deteção de borda desubida em uma variável de um CLP. Utiliza-se o conceito deciclo de varredura:

| I0 F1 F0 ||--||----|\|----( )--|| I0 F1 ||--||-----------( )--|| |

¿Como se implementa tal circuito com lógica de relés pura?

¿Como seria um circuito detetor de borda descendente?

11/20

I0

F0

F1

Page 12: Diagramas_de_Contato

Exemplo de circuito de liga-desliga com uma só botoeira

Programa correspondente:

| I0 F1 F0 ||--||--|\|---------( )--|| I0 F1 ||--||--------------( )--|| F0 Q0 Q0 ||--||--|\|--|------( )--|| F0 Q0 | ||--|/|--||--| || |

¿Seria possível fazê-lo com lógica a relés pura?

12/20

I0 I2 I4 I5 I6 I7I1 I3 GND

Q0 Q2 Q4 Q5 Q6 Q7Q1 Q3 GND

CLP Genérico

Vc

R S~

- +

Boto

K

Page 13: Diagramas_de_Contato

7. Temporizadores

Seguindo o modelo dos antigos relés de tempo, o tipo detemporização mais comum em CLPs é o retardo naenergização.

Exemplo

| I0 3 T0 ||--||----( )--|| || T0 Q0 ||--||----( )--|| |

Exemplo de uso do temporizador – circuito Estrela-Triângulopara acionamento de motor.

13/20

I0

T0

Q0

t > 3st < 3s

t = 3s

Page 14: Diagramas_de_Contato

Esquemas de temporização

Temporiozador com retardo no desligamento

Sugestão de programa

| Q0 T0 Q0 ||--||----|\|--|---------( )--|| I0 | I0 T T0 ||--||---------|--|\|----( )--|

Temporizador com retardo na energização e nodesligamento

14/20

I0

Q0

t < t1 t > t1

t1 t2

I0

Q0

T T

Page 15: Diagramas_de_Contato

Sugestão de programa

| I0 t1 T1 ||--||-------------------( )--|| Q0 T2 Q0 ||--||----|\|--|---------( )--|| T1 | T1 t2 T2 ||--||---------|--|\|----( )--|

Temporizador de tempo definido

Sugestão de programa

| I0 T T0 ||--||--|---------( )--|| Q0 | T0 Q0 ||--||--|--|\|----( )--|

Temporizador limitado no tempo

15/20

I0

Q0

t < T t > T

T

I0

Q0

t < T t > T

T T

Page 16: Diagramas_de_Contato

Sugestão de programa:

| I0 T T0 ||--||--|---------( )--|| | T0 Q0 || |--|\|----( )--|

Temporizador por tempo t apos o desligamento

Sugestão de programa:

| F0 T0 F0 ||--||----|\|--|----------( )--|| I0 | I0 T T0 ||--||---------|--|\|--|--( )--|| | Q0 | | |--( )--|

Oscilador astável

16/20

Q0

t1 t2

I0

Q0

T T

Page 17: Diagramas_de_Contato

Sugestão de programa

| T1 t2 T2||--|\|----( )--|| T2 t1 T1||--||-----( )--|| T2 Q0 ||--||-----( )--|

17/20

Page 18: Diagramas_de_Contato

8. Contadores

Por intermédio de contadores, é possível quantificar aocorrência de eventos impulsionais no processo controlado.

No contador mais simples possível, o valor da contagem éatribuído ao contador por uma função SET, a função RESETpára a contagem, e a identificação é feita por uma bobina.

A cada pulso na bobina a contagem é decrementada, atéchegar a zero.

Analise o programa abaixo:

| I0 5 C0 ||--||----(S)--|| I1 C0 ||--||----( )--|| I2 C0 ||--||----(R)--|| C0 Q0 ||--||----( )--|

18/20

Page 19: Diagramas_de_Contato

19/20

I0

I1

I2

Q0

4 3 2 1 0 4 3 4 3

Page 20: Diagramas_de_Contato

9. Exemplo

Um vaso misturador possui uma válvula de entrada, ummotor misturador e uma única chave de detecção de nível(vide figura). Ambas as válvulas são acionadas porsolenóides. A chave de nível fecha quando o vaso está cheioe permanece fechada até que o vaso esteja vazio.

[Figura 12.38 - p. 559]

Desenhe um diagrama de contatos para que seja feito oseguinte:

a) Quando o botão início é pressionado, a válvula de entradaabre até que o vaso fique cheio.b) O misturador então é ligado por 5 minutos.c) A válvula de saída abre até que o vaso fique vazio.

20/20