Curso Básico de CLP — Siemens S7-1200

Aula 05 • Linguagem LADDER (LAD): Contatos, Bobinas, Selagem e Intertravamento
Progresso 0%

Módulo 05 — Linguagem LADDER (LAD)

Ladder é a linguagem mais usada em chão de fábrica porque lembra comando elétrico: contatos e bobinas. Nesta aula você vai dominar o essencial: NA/NF, bobina, selagem, intertravamento, e vai entender uma regra crítica: ordem de execução no scan.

Objetivos da Aula

  • Entender como o Ladder representa lógica booleana.
  • Diferenciar contato NA (—| |—) e NF (—|/|—) e quando usar cada um.
  • Usar bobina (—( )—) e selagem (latch) corretamente.
  • Aplicar intertravamento e prioridade de parada/falha.
  • Montar o clássico Start/Stop + térmico no S7-1200.
Resultado esperado: você consegue criar 3 redes (networks) organizadas e com comentários, prontas para download.

1) Ladder = lógica booleana visual

Pense no Ladder como “fiação lógica” dentro do CLP. Cada rede (Network) é avaliada no scan. Se a lógica da esquerda para a direita der verdadeiro, a bobina no final “energiza” (fica 1).

Regra do jogo: Ladder é executado em ordem (Network 1, 2, 3...). Se você escreve duas redes mexendo na mesma bobina, a última pode “ganhar”. Evite isso.

Tradução rápida

  • Série = AND (tudo precisa estar verdadeiro)
  • Paralelo = OR (qualquer ramo verdadeiro)
  • Contato NF = NOT (negação do sinal)
SÉRIE (AND)                      PARALELO (OR)
--| |----| |----( )--            --| |----+----( )--
 A      B     OUT                 A    |
                                         +--| |--+
                                            B
        

2) Elementos básicos (NA, NF, Bobina)

Símbolo Nome Verdadeiro quando... Uso típico
—| |— Contato NA Variável = 1 Start, sensor presente, permissivas
—|/|— Contato NF Variável = 0 Stop (NF), falha, emergência (lógica de segurança exige cuidado)
—( )— Bobina Energiza se a rede for verdadeira Acionar saída (Q) ou memória (M/DB)
Dica prática: Botão Stop normalmente é NF no campo por segurança (fio rompido = para). No programa, você pode representar isso como “permissiva OK”.

Exemplo simples

--| |----------------( )--
 I_Start              Q_Motor
        

Esse exemplo liga o motor enquanto o Start estiver pressionado — por isso precisamos de selagem.

3) Selagem (Start/Stop clássico)

Selagem mantém o comando ligado após soltar o Start. Você faz isso com um ramo paralelo usando o próprio estado do motor.

Selagem básica

--|/|----+----| |-----------( )--
 I_Stop  |   I_Start         Q_Motor
         |
         +----| |-----------+
              Q_Motor
        
  • I_Stop (NF) deve estar OK para permitir.
  • I_Start liga e a bobina Q_Motor sela pelo ramo paralelo.
  • Ao apertar Stop, a permissiva abre e derruba tudo.
Pegadinha: selar com Q_Motor funciona em exemplos didáticos, mas em campo você pode preferir um bit interno M_MotorCmd (comanda) e outro I_MotorFB (feedback), quando existir.

4) Intertravamento e prioridade (parada/falha)

Intertravamento = permissivas que precisam estar OK para liberar o comando. Prioridade = garantir que Stop/falha “ganhem” sempre.

Exemplos de permissivas

  • Térmico OK (contato NF no campo) → no programa vira permissiva “OK”.
  • Nível mínimo para bomba → não pode ligar se não tiver água.
  • Porta fechada → habilita máquina.

Intertravamento com térmico

--|/|----| |----+----| |---------( )--
 I_Stop  I_TermicoOK |  I_Start    Q_Motor
                    |
                    +----| |------+
                         Q_Motor
        
Prioridade: coloque Stop e falhas em série no início da rede. Assim, se qualquer uma atuar, derruba o comando.

5) Exemplo completo — Motor/Bomba (recomendado para seu projeto base)

Vamos usar as tags da Aula 03/04 (ajuste endereços conforme seu hardware).

Entradas: I_Start (I0.0) BOOL I_Stop (I0.1) BOOL (botão NF no campo) I_TermicoOK (I0.2) BOOL (NF do relé térmico = OK) Saídas: Q_Motor (Q0.0) BOOL Memórias (opcional, recomendado): M_MotorCmd (M0.0) BOOL (comando interno)

Network 1 — Comando interno (M_MotorCmd) com selagem + permissivas

--|/|----| |----+----| |---------( )--
 I_Stop  I_TermicoOK |  I_Start   M_MotorCmd
                    |
                    +----| |------+
                         M_MotorCmd
        

Network 2 — Saída física (Q_Motor) segue o comando interno

--| |-------------------------( )--
 M_MotorCmd                    Q_Motor
        
Por que separar? Porque você evita mexer na bobina de saída em várias redes e ganha espaço para inserir permissivas, falhas e modos (Manual/Auto) depois.

Opcional — Network 3 (alarme de falha)

--|/|-------------------------( )--
 I_TermicoOK                   M_FalhaTermico
        

Se o térmico não estiver OK, seta uma falha. Depois você cria reset e sinalização (Módulo 09).

6) Boas práticas no TIA (LAD)

Checklist de qualidade

  • Uma bobina “de verdade” (Q) deve ser escrita em um lugar (uma rede/bloco).
  • Use comentários em cada Network: “Comando motor”, “Intertravamento”, “Falha”.
  • Use tags padronizadas (I_, Q_, M_).
  • Separe comando interno e saída física quando o projeto começar a crescer.
  • Teste online: forçar entradas, monitorar contatos e bobinas no Ladder.
Dica de comissionamento: monitore a rede com status (verde) e confirme “onde” a lógica está travando: Stop? Térmico? Falta de permissiva?
Nota: segurança de máquinas (emergência, portas, etc.) pode exigir arquitetura dedicada (relé de segurança/PLC safety). Aqui estamos focando em lógica básica de automação.

7) Quiz rápido (fixação)

Responda e clique em Corrigir. O resultado fica salvo.

1) Em Ladder, contatos em série representam:

2) Selagem serve para:

3) Para garantir prioridade de parada/falha, é melhor:

Acerte 3/3 para marcar a aula como concluída.
Próxima aula (Aula 06 — Temporizadores): TON, TOF, TP + aplicações reais (partida temporizada, atraso de desligamento, pulso).
⬅️ Voltar Aula 04 ▶️ Ir para Aula 06
Engenheiro de Software Roberto Vitor Vilela