Você está na página 1de 61

Controladores Lógicos

Programáveis - Prática

z Faculdade de Engenharia de Sorocaba


e Flash Engenharia e Desenvolvimento
Ltda

Instrutores – Joel Rocha Pinto


Willerson Moreira Ferraz
Software STEP 7 –Micro/Win32

zO STEP 7 – Micro/Win32 é o software criado


pela SIEMENS para implementações utilizando
o micro CLP S7-200.
z Utilizaremos a versão V3. 2 . 34
Visão geral
Editor Ladder
Editor Ladder
Editor STL
Editor Bloco de Funções
Editor de Símbolos
Editor de Símbolos
Editor de Estados
Editor de Estados FORCE

UNFORCE

ATIVA CURRENT VALUE


Editor de Estados
Editor de Estados
Bloco de Dados
z Através deste aplicativo o usuário pode definir valores iniciais às
suas variáveis
z Ao iniciar a execução do programa o CLP atribuirá às variáveis
os valores e estados pré-definidos neste editor.
Bloco de Sistema
z Aplicativo usado para configurar os principais
parâmetros do CLP, entre os quais podemos destacar:
z Filtro das entradas digitais e analógicas
z Tabela de manipulação das saídas digitais
z Áreas retentivas
z Senhas de acesso
z Portas de comunicação
Bloco de Sistema
Referência Cruzada
z Localiza e apresenta todas as áreas de memória do CLP
(variáveis, entradas, saídas, temporizadores, etc) e as re´pectivas
networks em que são utilizadas. É uma ferramenta útil durante a
elaboração do programa, bem como em atividades de
manutenção e expansão.
Comunicação
Comunicação
CRIANDO UM PROJETO
Configuração
do Hardware Saída + Vcc

Comum - Vcc
Controladores lógicos
programáveis - Prática
a) Inicie um novo projeto;
b) Defina a CPU a ser utilizada;
c) Salve o projeto criado;
d) Insira a lógica de programação;
e) Compile o projeto;
f) Corrija os erros se necessário;
g) Defina os parâmetros da comunicação;
h) Defina as propriedades da comunicação PC/PPI;
i) Teste a configuração;
j) Faça o download do projeto;
k) Coloque o programa em execução;
Experiência 1 – Portas Lógicas
Simular portas AND, OR e inversora (NOT).
AND OR
Entrad Entrad Saída Entrada Entrada Saída
a I0.0 a I0.1 Q0.0 I0.2 I0.3 Q0.1
0 0 0 0 0 0
0 1 0 0 1 1
1 0 0 1 0 1
1 1 1 1 1 1
NOT
Entrada I0.4 Saída Q0.2
0 1
1 0
Experiência 2 - Misturador
1o passo – Encha o tanque com o ingrediente 1.
2o passo – Encha o tanque com o ingrediente 2.
(a utilização do 1o ou do 2o ingrediente são independentes)
3o passo – Monitore o nível do tanque para o acionamento da chave “High-Level”,
utilizando um sensor de nível .
4o passo – Manter o status da bomba se a chave “Start” está aberta , isto é , a chave
"start'' deve ser independente ( também perceba que o contato a ser utilizado deve ser
normal fechado ) .
5o passo – Comece a misturar os ingredientes e o período de aquecimento (10s por
exemplo).
6o passo – Ligue o motor do misturador e a válvula de vapor ( através destes haverá a
mistura e aquecimento , respectivamente ) .
7o passo – Drene o tanque da mistura através da válvula "Drain Valve"( válvula de
drenagem ) e do motor "Drain Pump"( bomba de drenagem ).
8o passo – Crie um modo de contar quantas vezes este processo ( descrito do 1o ao 7o
passo ) é realizado por completo .
Experiência 3 - Iogurte
Funcionamento :
1- A Botoeira liga inicia o processo e a Desliga encerra;
2 - A Válvula de Entrada do Tanque é acionada;
3 - A Válvula do Tanque de Leite é acionada por 10 segundos, fechando - se em
seguida;
4 - A Válvula do Tanque de Glicose é acionada por 15 segundos, fechando - se em
seguida;
5 - O Motor do Agitador é ligado;
6 - A Válvula do Tanque de Essência é acionada por 5 segundos, fechando - se em
seguida;
7 - A Válvula do Tanque de Gordura é acionada por 10 segundos, fechando - se em
seguida;
8 - O Motor do Agitador é desligado depois de 15 segundos da entrada de todos os
ingredientes.
9 - Após o Motor do Agitador ser desligado, a Válvula de Saída do Tanque de
Mistura é acionada.
10 - O ciclo termina.
Experiência 4 - Nível
Desenvolver sistema de controle de nível de um
tanque. O sistema deve monitorar nível mínimo e
nível máximo e possuir opção de controle manual.
O sistema deve:
a) Acionar a bomba quando o nível estiver abaixo do mínimo
desejado;
b) Desligar a bomba quando o fluído atingir o nível desejado;
c) Quando a chave comutadora estiver na posição manual,
inibir o funcionamento dos sensores;
d) Quando a chave comutadora estiver na posição automático,
inibir o funcionamento das botoeiras de controle da bomba;
Experiência 5 - Esteira
Uma indústria de caixas metálicas deseja utilizar
uma esteira automatizada para transportar seus
produtos do setor de produção até o setor de
expedição.

O sistema deve:
a) Reconhecer que o produto foi colado sobre a esteira;
b) Iniciar o transporte;
c) Verificar se a altura está dentro do especificado;
d) Acionar sistema de alarme em caso de produto reprovado
ou enviá-lo para a expedição em caso de aprovação.
a) Aguardar sinal do sensor óptico de entrada sinalizando que o
produto foi posicionado sobre a esteira;
b) Alimentar motor da esteira;
c) Aguardar sinal dos sensores de controle de altura;
• Altura dentro do especificado – acender lâmpada verde;
• Aguardar sinal do sensor de fim de linha;
• Interromper alimentação do motor;
• Aguardar retirada da caixa;
• Retornar a rotina de início;
• Altura fora do especificado – acender lâmpada vermelha;
• Interromper alimentação do motor;
• Aguardar retirada da caixa da área de teste;
• Retornar a rotina de inicialização.
Controladores lógicos
programáveis - Prática
Utilizando o Status Chart
Após alguns anos o sensor de altura reprovada danificou-se e a
empresa não possui peça de reposição. Para impedir que a
produção pare vamos utilizar a função FORCE, que consiste em
atribuir valor fixo a um determinado endereço, independente da
lógica do programa.
a) Carregue o STATUS CHART;
b) Digite o endereço do sensor de altura reprovada;
c) Clique na opção SINGLE READ para ler o estado do sensor;
d) Digite o valor 0 na coluna NEW VALUE;
e) Clique na opção FORCE;
f) Retorne ao Editor Ladder;
g) Verifique o staus do programa através do Ladder Status On
Experiência 6 - Lógica
Dada a lógica de comando digital abaixo, escreva um programa
equivalente para CLP em linguagem Ladder. (Questão do
Exame Nacional de Cursos 1998)
Experiência 7 – Reversão Motor
Projete um controle capaz de inverter o sentido de rotação de um
motor trifásico.
OBS: Para mudarmos o sentido de rotação de um motor trifásico
é necessário que mudemos duas das três fases , isto é , que a fase
A se torne B e que a fase B se torne A

PS. Fazer : I0.0 = Botão para ligar


I0.1 = Botão de emergência
I0.2 = Acionamento frente
I0.3 = Acionamento ré
Q0.0 = Chave KM2
Q0.1 = Chave KM1
Experiência 8 – Radar

A prefeitura de Sorocaba solicitou que a sua empresa


instalasse radares de controle de velocidade nas ruas
de acesso ao centro da cidade.
O radar fotográfico será disparado quando o carro
passar entre dois sensores num tempo menor que 2
segundos e conta o número de carros que passou
pelo local.
a) Esperar sinal do sensor 1;
b) Disparar temporizador e incrementar contador de carros;
c) Esperar sinal do sensor 2;
d) Parar temporizador após recebimento do sinal do sensor 2;
e) Verificar tempo;
f) Se tempo menor que 2 segundos, disparar foto e reinicializar
temporizador;
g) Se tempo maior que dois segundos, reinicializar temporizador
Controladores lógicos
programáveis - Prática

Utilizando o Time of Day Clock


A fim de evitar recursos dos motoristas multados a
Prefeitura de Sorocaba necessita registrar o dia e
horário em que ocorre uma determinada infração,
sendo assim, você precisa ajustar o relógio interno da
CPU.
Menu PLC
Opção Time of Day Clock
Experiência 9 – Cabos

Uma indústria de cabos deseja instalar em sua linha de


produção um sistema de verificação de furos na capa
do produto final. O sistema deve ter dois pontos de
monitoração e ser capaz de corrigir os defeitos
apresentados.
a) Aguardar sinal dos sensores de defeito;
b) Incrementar contador a cada sinal enviado por um dos
sensores de defeito;
c) Disponibilizar botão de reset para contador de furos;
d) Verificar quantidade de furos;
5 < furos < 15 - Realizar conserto;
Furos > 16 – Acionar alarme e interromper funcionamento da
malha de controle
e) A máquina de conserto deve ser desligada após sinal enviado
por sensor de fim de conserto;
Máquina de conserto
Código de entrada = 00000000 – máquina desligada
Código de entrada = 11111111 – potência máxima
Linguagem LADDER – Contatos
Contato aberto: o contato aberto se fecha quando
a entrada correspondente estiver em nível lógico 1.

Contato fechado: o contato fechado se abre


quando a entrada correspondente estiver em nível
lógico 1.

Contato inversor - inverte o nível lógico de entrada.

Contato de transição de subida – Fornece


alimentação por um ciclo para cada borda de
subida presente na entrada.
Linguagem LADDER – Saídas
Saída: Este bloco pode representar uma saída física ou
uma memória e estará em nível lógico 1 quando os
contatos que a antecedem estiverem fechados.

Set – atribui nível lógico 1 para n endereços a partir do


endereço inicial especificado

Reset - atribui nível lógico 0 para n endereços a partir


do endereço inicial especificado
Temporizadores e contadores
Timer on delay - realiza a contagem de 0 até o
valor predisposto em PT. Quando o valor real é
igual ao valor em PT, é imposto nível lógico 1 ao
bit de saída do temporizador. Não há contagem a
partir deste momento.

Timer retentive on delay - realiza a contagem de 0


até o valor predisposto em PT. Quando o valor real é
igual ao valor em PT, é imposto nível lógico atual. 1
ao bit de saída do temporizador. Não há contagem a
partir deste momento. Quando a entrada de
habilitação vai a zero, este temporizador memoriza a
valor de contagem. Habilitando novamente o timer, a
contagem continua a partir do valor armazenado.
Timebase: Txx
1 ms T0, T32, T64, T96
10 ms T1-T4, T33-T36, T65-T68, T97-T100
100ms T5-T31, T37-T63, T69-T95, T101-T255
Temporizadores e contadores
Count up - realiza a contagem para cima nas bordas
de subida do sinal de entrada presente em CU.
Quando o valor real é maior ou igual ao valor em PV
é imposto nível lógico 1 ao bit de saída do contador.
A contagem ocorre até 32767. Nível lógico 1 na
entrada R reinicia a contagem.

Cont up / down - realiza a contagem para cima nas


bordas de subida do sinal de entrada presente em CU
ou para baixo nas bordas de subida do sinal de entrada
presente em CD. Quando o valor real é maior ou igual
ao valor em PV é imposto nível lógico 1 ao bit de
saída do contador. A contagem ocorre até 32767.
Nível lógico 1 na entrada R reinicia a contagem.
Ladder - Blocos de comparação
Contato de igualdade de byte - Este contato é
fechado quando o valor do byte armazenado no
endereço 1 é igual ao valor do byte armazenado no
endereço 2.

Contato de byte maior ou igual - Este contato é


fechado quando o valor do byte armazenado no
endereço 1 é maior ou igual ao valor do byte
armazenado no endereço 2.

Contato de byte menor ou igual - Este contato é


fechado quando o valor do byte armazenado no
endereço 1 é menor ou igual ao valor do byte
armazenado no endereço 2.
Ladder - Incrementos / decrementos
Increment byte - Este bloco adiciona 1 ao
valor do byte da entrada IN e disponibiliza o
resultado no byte da saída OUT. O incremento
ocorre toda vez que a entrada EN assume nível
lógico 1.

Decrement byte - Este bloco decrementa 1


do valor do byte da entrada IN e disponibiliza
o resultado no byte da saída OUT. O
decremento ocorre toda vez que a entrada EN
assume nível lógico 1.
Ladder - Operadores matemáticos
Add Integer - Este bloco disponibiliza na
saída o resultado da soma entre as entradas de
16 bits IN1 e IN2. A adição ocorre quando a
entrada EN apresenta nível lógico 1.

Subtract Integer - Este bloco disponibiliza na


saída o resultado da subtração entre as entradas
de 16 bits IN1 e IN2. A subtração ocorre
quando a entrada EN apresenta nível lógico 1.
Ladder - Operadores matemáticos
Multiply Integer - Este bloco
disponibiliza na saída o resultado da
multiplicação entre as entradas de 16 bits
IN1 e IN2. A multiplicação ocorre quando
a entrada EN apresenta nível lógico 1.

Divide Integer - Este bloco disponibiliza


na saída o resultado da divisão entre as
entradas de 16 bits IN1 e IN2. A divisão
ocorre quando a entrada EN apresenta
nível lógico 1.
Ladder - Blocos de movimentação

Move byte - Este bloco move o byte


da entrada IN para a saída OUT. O
conteúdo da entrada não é alterado.
Ladder - Funções de deslocamento
Shift right byte – este bloco desloca para direita
o conteúdo binário da entrada IN, o número de
vezes determinado por N. O deslocamento ocorre
quando EN=1 e o resultado é carregado no
endereço de saída OUT. Os bits mais
significativos são preenchidos com zero.

Shift left byte– este bloco desloca para


esquerda o conteúdo binário da entrada IN o
número de vezes determinado por N. O
deslocamento ocorre quando EN=1 e o
resultado é carregado no endereço de saída
OUT. Os bits menos significativos são
preenchidos com zero.
Ladder - Controle de fluxo do
programa
Uncoditional end - Bloco a ser utilizado para
encerrar programa do usuário

Stop - Este bloco provoca a interrupção do


processamento do programa.

Jump - Este bloco provoca um pulo do


ponteiro do programa para o label
especificado.
Ladder - Controle de fluxo do
programa
Label - Este bloco define o destino do
pulo de uma instrução JMP.

Call - Este bloco transfere o controle do


programa para a subrotina especificada.

Subrotine - Este bloco identifica o início de


uma subrotina.

Return - utilizado ao final de toda subrotina


para que o controle volte ao corpo principal do
programa.
Ladder – Instruções lógicas

AND BYTE - Este bloco carrega na


saída OUT o resultado da operação AND
entre as entradas IN1 e IN2.

OR BYTE – Este bloco carrega na


saída OUT o resultado da operação OR
entre as entradas IN1 e IN2
Ladder – Instruções lógicas

INVERSOR – Este bloco realiza o


complemento do byte da entrada IN e
carrega o resultado na saída OUT.

Você também pode gostar