Ir al contenido

Modelar datos de fábrica

Disponible enEdgeCloudEnterprise

Los datos industriales de máquinas y equipos con ubicaciones físicas se modelan normalmente según el estándar ISA-95.

Terminal window
Enterprise (Level 4)
└── Site (Level 3/4)
└── Area (Level 3)
└── Work Center / Process Cell (Level 2/3)
└── Equipment / Unit (Level 1/2)
└── Control Module / Device (Level 0/1)

Para objetos de planificación y proceso de negocio, como órdenes de producción y planes de trabajo en un ERP, modela los datos según su contexto de negocio.

Terminal window
Factory / Business Domain / Business Object / Topic Type / Topic
  • Business Domain: Confirma el proceso o sistema de negocio al que pertenecen los datos.

    Terminal window
    ERP
    MES
    WMS
    QMS
    EAM
    LIMS
    Planning
    Inventory
    Maintenance
    Quality
    Logistics
    ...
  • Business Object: El objeto gestionado principal dentro del dominio de negocio.

    Terminal window
    ProductionOrders
    WorkOrderPlan
    MaterialInventory
    QualityInspection
    MaintenanceOrders
    PurchaseOrders
    Shipments
    ...
  • Topic Type: Elige el tipo de dato entre Metric, Action y State.

    Topic Type Used for Examples
    STATE Estado actual o hechos actuales Estado de orden de trabajo, estado de orden, estado de equipo
    METRIC Valores numéricos que cambian continuamente Temperatura, velocidad, producción, OEE, consumo de energía
    ACTION Comandos para ejecutores externos Iniciar equipo, detener equipo, restablecer alarma, solicitar despacho de orden de trabajo
Terminal window
DemoFactory
└── ERP
├── ProductionOrders
│ └── State
│ ├── UpsertProductionOrder
│ └── OrderList
└── WorkOrderPlan
├── Metric
│ └── SplitCount
└── State
├── PlanStatus
└── WorkOrderList

Tier0 uses 3 fixed topic types: Metric, Action, and State to avoid topic explosion.

  • Usa Metric para datos en tiempo real de alta frecuencia

    Coloca mediciones y telemetría de alta frecuencia bajo Metric en lugar de ampliar el namespace para cada detalle de señal.

    Terminal window
    Factory_A
    └── SMT_Line_1
    └── Machine_001
    ├── Temperature_Value
    ├── Temperature_Unit
    ├── Temperature_Status
    └── Speed_Value
  • Usa State para datos de estado de baja frecuencia

    Coloca estados de baja frecuencia, snapshots y estado de negocio actual bajo State. Evita crear un topic nuevo para cada entidad cambiante, como trabajos, lotes u órdenes.

    Terminal window
    Factory_A
    └── SMT_Line_1
    └── State
    ├── Job_001
    ├── Job_002
    └── Job_003
  • Usa Action para datos de acción de baja frecuencia

    Coloca comandos, solicitudes y acciones de operador bajo Action. Mantén las entradas de la acción como campos de un topic en lugar de crear un topic por parámetro.

    Terminal window
    Factory_A
    └── SMT_Line_1
    └── Machine_001
    ├── Start_Command
    ├── Target_Height
    └── Light_On

Al estructurar el topic payload, considera tanto los datos que se consumen como los datos que se escriben de vuelta.

  • Action

    Los payloads de Action incluyen automáticamente _timestamp, que registra cuándo se almacenan los datos en la base de datos de Tier0.

    Terminal window
    {
    "light_turn_on": true,
    "height_adjust": 12.5,
    "_timestamp": "2026-07-10T10:00:00Z"
    }
  • Metric

    Los payloads de Metric incluyen automáticamente _timestamp, que registra cuándo se almacenan los datos en la base de datos de Tier0, y _quality, que representa la calidad de los datos.

    Terminal window
    {
    "production_order_id": "PO-20260710-001",
    "plan_id": "PLAN-001",
    "plan_number": "WOP-20260710-001",
    "split_count": 3,
    "updated_at": "2026-07-10T10:00:00Z",
    "_timestamp": "2026-07-10T10:00:00Z",
    "_quality": "Good"
    }
  • State

    Los payloads de State incluyen automáticamente _timestamp, que registra cuándo se almacenan los datos en la base de datos de Tier0.

    Terminal window
    {
    "event_id": "EVT-001",
    "event_type": "UPSERT",
    "source": "ERP",
    "production_order_id": "PO-20260710-001",
    "order_number": "PO-001",
    "product_code": "SKU-1001",
    "planned_qty": 1200,
    "unit": "pcs",
    "status": "Released",
    "due_date": "2026-07-12T00:00:00Z",
    "updated_at": "2026-07-10T10:00:00Z",
    "_timestamp": "2026-07-10T10:00:00Z"
    }