Skip to Content

Comando PB IoT — Contador de Rajadas de Pulsos

PB conta os pulsos de uma rajada em uma entrada e entrega o número cru. Serve para ler equipamentos que codificam um valor como quantidade de pulsos: códigos de pisca de painéis e ECUs, controladores que emitem códigos de falha por contagem, gestos de tecla.

O design é deliberadamente agnóstico: o equipamento conta, o servidor interpreta — o significado de cada contagem é mapeado pela plataforma.

Disponível desde o firmware v1.09.25 (SPIDER/SMART; no ZERO responde RPB NA).


Como funciona?

  1. Cada flanco na porta (após o debounce) soma um pulso à rajada em curso.
  2. Quando passa o gap de silêncio, a rajada é fechada.
  3. Aplicam-se os filtros de paridade e faixa: se não passarem, a contagem é descartada sem tocar em nada (funcionam como checksum implícito).
  4. A contagem aceita fica em QPB e dispara o sinal PB do motor de eventos.

gap = 0 significa PB desligado (padrão de fábrica). PB convive com PC e FC na mesma porta, sem modo excludente.


Comandos

Configurar em uma linha

>SPB00,200,20,1,2,32< // gap 200 ms, debounce 20 ms, somente pares, faixa 2-32 >RPB00,200,20,1,2,32,0,0<

Os campos são incrementais: os que forem omitidos conservam seu valor. A resposta do SPB é sempre o QPB resultante — e a resposta pode ser copiada de volta como set (os dois campos finais de estado são ignorados).

Ajustes individuais

>SPB00G200< // gap de fechamento em ms (0 = desligar PB) >SPB00D20< // debounce em ms >SPB00P1< // paridade: 0=qualquer, 1=pares, 2=ímpares >SPB00R2,32< // faixa aceita (0,0 = sem limite) >SPB00Z< // reseta contagem/sequência (a config fica)

Consultar

>QPB00< >RPB00,200,20,1,2,32,8,3< // última rajada: 8 pulsos, sequência 3

Padrões de fábrica: gap 0 (desligado), debounce 20 ms, paridade 0, faixa 0,0. Tudo persiste em NVS; a contagem e a sequência não (perdem-se ao reiniciar).


No motor de eventos e EVAL

  • Sinal PB com índice: >SRLA0E;TRG=PB00+;ACC={...}< — ativa-se ao fechar uma rajada aceita.
  • Função MPB(puerto;campo) em EVAL:
    • MPB(0;0) = última contagem aceita
    • MPB(0;1) = número de sequência (para deduplicar no servidor)
    • MPB(0;2) = segundos desde a última rajada (frescor do dado)

Em EVAL os argumentos são separados com ponto e vírgula: MPB(0;0). Escrever MPB(0,0) dá erro — a vírgula é o separador de campos do relatório.

Relatório típico: template UC com $MPB(0;0)|,|$MPB(0;1) disparado pelo sinal PB00, e o servidor deduplica por sequência e mapeia o significado da contagem.


Compatibilidade

💾Firmware:v1.09.25
SP-IOT
SM-IOT

Em uma porta com PB ativo convém deixar a janela FC em 0: a janela do FC reinstala a interrupção e pode perder um flanco no meio da rajada.


Ver Também

Última atualização