Integration · Reference architecture

Connect OPC UA to TEEPTRAK OEE platform

ProductTEEPTRAK OEE platform
CategoryReference architecture
OPC UA roleClient

A reference architecture page: how a commercial OEE platform consumes OPC UA, using TEEPTRAK as the worked example. The pattern is the same for any OEE product - an OPC UA client subscribes to state, counts and reasons, and the platform supplies the context the machine does not have.

Before you start

  • An OPC UA server on the machine, or a gateway in front of one that has none.
  • A state source. A boolean 'running' bit is workable but a state machine is far better, and the difference shows up in every downtime report.
  • A counter for good and reject parts. An edge-detected boolean is a fallback, not a design.
  • Certificate trust between the platform's collector and each server.
  • A source for planned production time and order context, which is not the machine.

Setting it up

  1. Establish what the machine actually exposesConnect with a generic client, read the ServerCapabilities codes and check type definitions against MachineToolType, a PackML state machine or the Machinery building blocks. This determines whether the integration is a mapping exercise or per-machine tag work, and it takes minutes.
  2. Map state before valuesAvailability comes from a state machine, not from inferring activity from a spindle current. Where MachineryItemState and MachineryOperationMode exist, map both - operation mode is what separates planned downtime from a breakdown.
  3. Map counters, not edgesPoint the platform at a counter node and handle resets and rollovers explicitly. Edge-detecting a boolean at a sampling interval loses parts at speed.
  4. Subscribe to reasons as eventsPart 9 conditions with a ConditionClassId give timestamped, categorised downtime reasons that attribute cleanly. Reasons inferred from a sampled register do not.
  5. Tune the subscription for the analytics cadenceOne second is usually ample for OEE. Deadband analogues, use a status-and-value trigger on counters, size queues, and add a heartbeat so a dead connection is distinguishable from an idle machine.
  6. Supply the context the machine lacksPlanned production time, shift calendars, order and routing, and standard cycle times come from the platform's own configuration or from ERP/MES. Targeting ISA-95 Job Control V2 is the standards-based route where the MES supports it.

What the address space looks like

A collector subscribing to a set of nodes per machine, mapped onto the platform's internal equipment model. Where the machine implements a companion specification the mapping is portable across vendors; where it does not, the mapping is per-machine and has to be maintained as firmware changes. That difference is the main argument for insisting on a companion spec at procurement rather than after installation.

The traps

  • A boolean running bit cannot distinguish changeover from breakdown, so the resulting availability figure is wrong in a way that is very hard to debug later. Push for a state machine and an operation mode during specification.
  • Counter rollover and reset handling is a real source of phantom production. Confirm the counter's width and reset behaviour with the machine builder.
  • PLC-embedded servers frequently populate only ServerTimestamp meaningfully. A downtime record with the wrong timestamp is worse than no record.
  • Certificate trust across a fleet is the practical schedule risk on any OEE rollout, not the OPC UA integration itself.
  • Subscription and session limits on embedded servers are far lower than on PC-based ones. Check them before designing one subscription per tag.

Getting OEE data out of it

This is the whole subject of the page. Availability from state and operation mode, performance from counters against a stated ideal cycle time with the program revision recorded, quality from reject and rework counts, reasons from condition events. The boundary is firm and worth stating in any specification: planned production time, shift calendars, orders and standard cycle times are not in the machine and must come from the platform or the MES.

Verify before you rely on this: Platform capabilities and connector options change between releases. This page describes the architectural pattern rather than a product specification; confirm current connector capabilities with the vendor. Licence names, option packs, firmware levels and platform support in this area change between releases and are not stated as fact here. Confirm the current requirements with the vendor for your exact product version before you commit to a delivery date.

Last verified 7 September 2026 against OPC UA 1.05.07. OPC UA Connect is an educational resource and is not affiliated with the OPC Foundation.

Free download
OPC UA Machine Data → OEE Mapping Kit
Which nodes to subscribe to, how they become Availability, Performance and Quality, and which companion specification already gives you the answer, so you stop inventing tags.
Get the free mapping kit →
Free, no course, no login