Manufatura inteligente

Coleta de dados do chão de fábrica: métodos, ferramentas e uma arquitetura prática

Planilhas manuais, tags de CLP, sensores de retrofit e gateways de borda coletam dados do chão de fábrica de formas diferentes. Compare os métodos, escolha o certo para cada máquina e centralize tudo em um único namespace MQTT.

Ilustração de coleta de dados do chão de fábrica com máquinas antigas, CLPs, sensores de retrofit e um gateway de borda enviando dados para um broker MQTT
Rode isso no seu próprio broker MQTTTenha um broker MQTT privado e gerenciado no plano Free e comece com exemplos de código prontos.
Teste grátis Exemplos de código Sem cartão de crédito

A coleta de dados do chão de fábrica é a base de todo projeto de manufatura inteligente: nenhum dashboard, indicador de OEE ou modelo preditivo é melhor que os dados por trás dele. Este guia compara os quatro principais métodos de coleta, mostra quando cada um se encaixa e explica como centralizar tudo em um único namespace MQTT, para que novas máquinas e novos consumidores possam ser adicionados sem retrabalho.

Quais dados você está realmente coletando?

Antes de escolher um método, liste as perguntas que você quer responder. A maioria das plantas começa com um punhado de sinais que respondem à maior parte das perguntas do dia a dia:

Tipo de dado Exemplo Origem típica Frequência típica
Estado da máquina Rodando, ociosa, parada, setup Bit de CLP, torre de sinalização, sensor de corrente Por mudança
Contagens Peças boas, refugo Contador do CLP, sensor de proximidade Por mudança ou por minuto
Variáveis de processo Temperatura, pressão, velocidade Tags de CLP, sensores analógicos 1 a 10 segundos
Motivos de parada Falta de material, troca de ferramenta Apontamento do operador Por evento
Resultados de qualidade Aprovado/reprovado, dimensão medida Estação de teste, instrumento Por peça
Energia kWh, kW Medidor de energia 1 a 60 segundos

Estado e contagens bastam para análises de OEE e de paradas, e é por isso que costumam ser o ponto de partida. Os códigos de motivo vêm das pessoas, não das máquinas, então toda arquitetura precisa de uma forma de os operadores contribuírem. Para desenhar esses códigos, veja códigos de motivo de parada.

Métodos de coleta de dados do chão de fábrica comparados

1. Coleta manual

Folhas de papel, planilhas ou apontamentos em terminais preenchidos pelos operadores. Custa quase nada para começar e captura um contexto que as máquinas não conhecem, como o motivo de uma linha ter parado. Suas fraquezas são bem conhecidas: os apontamentos são feitos de memória no fim do turno, as paradas curtas desaparecem e os dados chegam tarde demais para que se possa agir.

A coleta manual continua útil para códigos de motivo e verificações, mas deve ser digital (um formulário em tablet que publica um evento) e limitada ao que só uma pessoa pode fornecer.

2. Leitura do CLP

Máquinas modernas têm um CLP que já conhece estado, contagens e muitas variáveis de processo. Ler essas tags pelo protocolo da máquina (Modbus TCP, OPC UA, EtherNet/IP, S7 e outros) fornece os dados mais ricos sem hardware novo.

O problema é o acesso. Os fabricantes de máquinas podem não documentar os endereços das tags, o CLP pode estar bloqueado e alterar o código do CLP pode afetar a garantia. Combine com o responsável pela máquina antes de escrever qualquer coisa em um controlador; a leitura geralmente é de baixo risco.

3. Sensores de retrofit

Em máquinas mais antigas, sem controladores acessíveis, acrescente sensores por fora: um transformador de corrente no motor principal para detectar se está rodando ou ociosa, um sensor de proximidade ou fotoelétrico para contar peças, um sensor de vibração ou temperatura para dados de condição ou um sensor de luz na torre de sinalização. Sensores sem fio tornam a instalação rápida; veja sensores industriais sem fio para conhecer as opções.

Sensores de retrofit enxergam menos que o CLP, mas funcionam em qualquer máquina, independentemente da idade ou da marca, e nunca tocam o sistema de controle.

4. Gateways de borda

Um gateway é um pequeno computador industrial que conversa localmente com CLPs e sensores e encaminha os dados adiante. Ele cuida da tradução de protocolos, do buffer durante quedas de rede, da filtragem (publicar por mudança em vez de a cada varredura) e de acrescentar contexto, como a posição da máquina na hierarquia da planta.

Método Riqueza dos dados Esforço por máquina Toca o sistema de controle Ideal para
Manual Baixa, mas com contexto Muito baixo Não Códigos de motivo, verificações
Leitura do CLP Alta Médio Somente leitura Máquinas modernas
Sensores de retrofit Média Baixo Não Máquinas antigas
Gateway de borda Alta Médio Somente leitura Parques mistos, muitos protocolos

A maioria das plantas acaba com uma combinação: gateways lendo CLPs nas linhas mais novas, sensores de retrofit nas mais antigas e tablets para os códigos de motivo.

Centralizando os dados do chão de fábrica com MQTT

O método escolhido para cada máquina importa menos do que o destino dos dados. Se cada coletor grava no seu próprio banco de dados, você recriou os silos que queria eliminar. O padrão melhor: todo coletor publica em um único broker MQTT com uma estrutura de topics consistente, e todo consumidor assina.

acme/plant1/machining/line1/cnc4/state      {"state":"RUNNING","ts":...}   retained
acme/plant1/machining/line1/cnc4/count      {"good":1,"scrap":0,"ts":...}
acme/plant1/machining/line1/cnc4/spindle    {"tempC":41.8,"rpm":8000,"ts":...}
acme/plant1/machining/line1/cnc4/reason     {"code":"TOOL_CHANGE","by":"op17"}

O caminho segue a hierarquia ISA-95 descrita em topics MQTT ISA-95. Se um valor veio de um CLP, de um sensor alicate ou de um tablet passa a ser um detalhe de implementação: os consumidores só enxergam o topic. Esse mesmo fluxo organizado é o que permite, mais adiante, alimentar um gêmeo digital da linha.

Um exemplo mínimo de gateway

O script Python a seguir lê dois holding registers de um dispositivo Modbus TCP (um código de estado e um contador de peças), publica o estado por mudança como mensagem retained e publica os incrementos de contagem. Ele usa pymodbus 3.x e paho-mqtt 2.x e roda em um Raspberry Pi ou em qualquer PC industrial pequeno.

import json
import time
import uuid

import paho.mqtt.client as mqtt
from pymodbus.client import ModbusTcpClient

PLC_IP = "192.168.10.50"
BASE = "connectmq/demo/sfdc-91be/line1/cnc4"   # substitua 91be pelo seu próprio id
STATES = {0: "STOPPED", 1: "RUNNING", 2: "IDLE", 3: "FAULT"}

mq = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2,
                 client_id=f"gw-cnc4-{uuid.uuid4().hex[:6]}")
mq.will_set(f"{BASE}/gateway", json.dumps({"online": False}), qos=1, retain=True)
mq.connect("broker.connectmq.com", 1883, keepalive=30)
mq.loop_start()
mq.publish(f"{BASE}/gateway", json.dumps({"online": True}), qos=1, retain=True)

plc = ModbusTcpClient(PLC_IP, port=502)
last_state, last_count = None, None

while True:
    if not plc.connected:
        plc.connect()
    rr = plc.read_holding_registers(0, count=2)
    if rr.isError():
        print("Modbus read failed:", rr)
        time.sleep(5)
        continue
    state = STATES.get(rr.registers[0], "UNKNOWN")
    count = rr.registers[1]
    now = time.time()

    if state != last_state:
        mq.publish(f"{BASE}/state", json.dumps({"state": state, "ts": now}), qos=1, retain=True)
        last_state = state

    if last_count is not None and count != last_count:
        delta = (count - last_count) % 65536   # trata o estouro do contador de 16 bits
        mq.publish(f"{BASE}/count", json.dumps({"good": delta, "total": count, "ts": now}), qos=1)
    last_count = count
    time.sleep(1)

O mesmo script funciona sem alterações com um broker ConnectMQ privado depois que você acrescenta credenciais e TLS. A mensagem de last will marca o gateway como offline se ele perder a conexão, para que os dashboards consigam distinguir "máquina parada" de "estamos sem dados". No servidor MQTT público tudo pode ser lido por qualquer pessoa, então use-o apenas com valores simulados; para máquinas reais, mude para credenciais privadas e TLS.

Checklist de coleta de dados do chão de fábrica

Use esta lista antes de expandir para além de uma linha piloto:

  1. Defina as perguntas primeiro e colete apenas os sinais que as respondem.
  2. Combine uma hierarquia de topics que espelhe o layout da sua planta e documente-a.
  3. Coloque o timestamp na origem (gateway ou controlador), em UTC.
  4. Publique por mudança os estados e as contagens; amostre as variáveis de processo em uma frequência fixa razoável.
  5. Mantenha o estado atual como retained para que novos assinantes o vejam imediatamente.
  6. Sinalize a qualidade dos dados: gateway online/offline via last will, falhas de sensor como valores explícitos.
  7. Trate o estouro de contadores e os reinícios do gateway sem contar em dobro.
  8. Dê a cada dispositivo seu próprio client ID e credenciais.
  9. Deixe os operadores acrescentarem contexto com um formulário digital simples de códigos de motivo.
  10. Confira os dados com a realidade por uma semana antes que alguém construa KPIs em cima deles.

Da coleta ao valor

Com os dados fluindo, os próximos passos são diretos: monitoramento do status de máquinas em uma tela na linha, análise de OEE e de paradas e, depois, integração com MES ou com a manutenção. Cada um é apenas mais um assinante.

O broker no meio deveria ser a menor das suas preocupações. O ConnectMQ é um broker MQTT gerenciado com MQTT 3.1.1 e 5.0, endpoints TLS e WebSocket seguro, um explorador de topics ao vivo e uma visão de dispositivos agrupada pelos níveis ISA-95, o que facilita confirmar que cada coletor publica no lugar certo. Regras de alerta por limite no portal podem avisar quando um valor como a temperatura do spindle ultrapassa um patamar. O guia de manufatura inteligente mostra como essas peças se encaixam em um roteiro completo para a planta, e o servidor MQTT público gratuito é o caminho mais rápido para testar seu script de gateway antes de criar credenciais.

Comece a coletar dados do chão de fábrica com o ConnectMQ

Crie um broker no plano Serverless gratuito em app.connectmq.com, sem cartão de crédito, e aponte seu primeiro gateway para ele com o username, a senha e o client ID gerados.

Perguntas frequentes

Qual é a forma mais barata de começar a coleta de dados do chão de fábrica?

Um sensor de corrente ou de contagem de peças em uma máquina gargalo, um pequeno gateway e um broker gratuito. Só isso já fornece tempo rodando, tempo ocioso e produção da máquina que limita a sua linha.

Devo ler os dados do CLP ou acrescentar sensores?

Leia o CLP quando tiver acesso e documentação, porque ele já guarda dados ricos. Use sensores de retrofit em máquinas antigas ou bloqueadas, onde o acesso ao CLP é impossível ou arriscado.

Com que frequência os dados de máquina devem ser coletados?

Estados e contagens devem ser publicados por mudança. Variáveis de processo costumam ser amostradas a cada 1 a 10 segundos, o que basta para dashboards e análise de tendências sem inundar a rede.

Preciso de um MES para a coleta de dados do chão de fábrica?

Não. Coleta, dashboards e OEE podem rodar diretamente sobre dados MQTT. Um MES passa a ser útil mais tarde, quando você precisar de acompanhamento de ordens, genealogia e fluxos de trabalho obrigatórios.

Artigos relacionados

OEE vs TEEP vs OOE: qual indicador você deve usar?

OEE, OOE e TEEP compartilham os mesmos fatores de desempenho e qualidade, mas medem contra bases de tempo diferentes. Esta comparação resolve um único exemplo e lista os sinais MQTT de que cada indicador precisa.

8 min de leitura

Todos os artigos →

Seu broker MQTT privado está a poucos cliques de distância

Crie uma conta, receba as credenciais do seu broker e conecte seu primeiro dispositivo — sem servidores para instalar, atualizar ou escalar.