Pulso Borda Subida e Descida como Detectar em Ladder no PLC / CLP Siemens Tia Portal
Como Detetar Borda de Subida e Descida no TIA Portal
Na automação industrial, a linguagem SCL (Structured Control Language) é amplamente utilizada para lógicas complexas e processamento de dados. No entanto, uma dúvida comum é como realizar a deteção de bordas (pulsos) nesta linguagem textual, algo que é visualmente simples em Ladder, mas exige atenção na sintaxe SCL.
Neste artigo, vamos aprender a utilizar os blocos padrão e como construir a tua própria lógica de pulso para CLPs Siemens S7-1200 e S7-1500.
1. O que são Bordas de Subida e Descida?
A deteção de borda permite que o CLP execute uma ação apenas no instante da mudança de estado:
Borda de Subida (R_TRIG): Deteta quando o sinal passa de 0 para 1.
Borda de Descida (F_TRIG): Deteta quando o sinal passa de 1 para 0.
2. Utilizando os Blocos Padrão: R_TRIG e F_TRIG
Para os CLPs mais modernos (S7-1200 e S7-1500), o TIA Portal disponibiliza blocos de sistema prontos para usar em SCL.
Exemplo de Borda de Subida com R_TRIG:
Para utilizar, deves declarar uma instância do bloco (normalmente na área Static do teu FB).
// Chamada do bloco de borda de subida
"Instancia_R_TRIG"(CLK := "Botao_Liga",
Q => "Pulso_Gerado");
// Lógica utilizando o pulso
IF "Pulso_Gerado" THEN
"Motor" := TRUE;
END_IF;
CLK: É a variável de entrada que queres monitorizar.
Q: É a saída que gera o pulso de apenas um ciclo de scan.
3. Deteção de Borda em CLPs Antigos (S7-300 / S7-400)
Em modelos antigos ou quando queres economizar instâncias de blocos, podes criar a tua própria lógica de deteção utilizando uma variável de memória (auxiliar).
Lógica Manual de Borda de Subida:
// Deteta a transição de 0 para 1
"Pulso" := "Botao" AND NOT "Memoria_Auxiliar";
// Atualiza a memória para o próximo ciclo
"Memoria_Auxiliar" := "Botao";
IF "Pulso" THEN
// Ação a ser executada
END_IF;
Esta forma é extremamente eficiente em termos de processamento e não exige a criação de blocos de dados extras.
Por que usar Deteção de Borda em SCL?
Contadores: Evita que um contador incremente múltiplas vezes enquanto o botão estiver pressionado.
Comandos de Set/Reset: Garante que um comando de "Ligar" seja enviado apenas uma vez, permitindo que outras partes do programa possam desligar o equipamento mesmo que o botão físico continue pressionado.
Cálculos Matemáticos: Ideal para executar um cálculo ou registar um valor de sensor exatamente no momento de um evento.
Conclusão
Dominar a deteção de bordas em SCL é um passo essencial para qualquer programador que deseja criar códigos limpos e funcionais no TIA Portal. Quer utilizes os blocos R_TRIG/F_TRIG ou a lógica manual com memória auxiliar, a precisão do teu programa industrial irá aumentar significativamente.
Gostaste deste tutorial técnico? Deixa o teu comentário abaixo e partilha qual a tua linguagem de programação favorita no TIA Portal!
Linguagem LADDER.
Lógicas e funções existentes no TIA Portal, como utilizar e cuidados.
Se Inscreva em Nosso Canal Youtube:
https://goo.gl/1P1oBS


0 comentários
COMENTÁRIOS AGORA