Carregando o progresso local…
PLC Gym
Início do PLC GymNível 1, 0 XP · seu progresso
Glossário

Laço em uma máquina real

Um laço é um código que se repete. Nas linguagens de texto de CLP, o mais usual é o FOR. SCL e texto estruturado também têm WHILE e REPEAT, embora as missões do PLC Gym usem FOR.

Um laço não é a mesma coisa que a varredura, mesmo que a varredura também se repita. O laço inteiro é executado dentro de uma varredura, e a varredura não pode terminar até o laço terminar.

Uma varredura tem um limite de tempo. Na Logix, o watchdog de cada tarefa é de 500 ms por padrão, e ultrapassá-lo é uma falha grave. O tempo máximo de ciclo de um S7-1500 é de 150 ms por padrão, e ultrapassá-lo para a CPU, a menos que o OB 80 trate isso.

Laço: um exemplo resolvido

Um programa confere 20 temperaturas de tanque para ver se alguma passa do limite. Um laço FOR visita cada posição do array, e EXIT sai dele assim que encontra uma. Tudo isso acontece em uma única varredura.

Laço: um erro comum

Usar um laço para esperar um sinal. WHILE NOT ValveOpen nunca termina se a válvula demora, porque a varredura não consegue seguir adiante. Use um temporizador ou um passo, e confira de novo na próxima varredura.

Ainda com dúvida sobre este? Pergunte no Vestiário.