Markdown Editor

Manufacturing Integration Design Template (ISA-95, OPC UA)

ERP-MES-shop floor integration: ISA-95 levels, scope split, B2MML exchanges, OPC UA, unified namespace, zones and conduits, plant rollout

Arquitectura sectorialCompletaANSI/ISA-95.00.01-2025; B2MML V0700; OPC UA 1.05; MQTT 5.0; Sparkplug 3.0.0; IEC 62443-3-2manufacturingisa95integration

Cómo usar: Use it when connecting ERP, MES, LIMS, historian and SCADA for one plant or a multi-plant programme. Fill the level mapping and the functional scope split first, then the exchange catalogue with object, verb, latency class and owner. The main pitfall is letting ERP and MES both own the same function or master record.

Vista previa

Manufacturing Integration Design (ISA-95): [Plant or programme name]

Solution design for integrating enterprise systems (ERP, PLM, quality, maintenance) with manufacturing operations management (MES, LIMS, warehouse, historian) and the shop floor (SCADA, PLC, machines). The structure follows the functional hierarchy and object models of the ANSI/ISA-95 series (Part 1: ANSI/ISA-95.00.01-2025, IEC 62264-1 modified), uses B2MML V0700 (MESA) or OPC UA (OPC UA 1.05, IEC 62541) for information exchange, offers a unified namespace option on MQTT 5.0 and Sparkplug 3.0, and partitions the OT/IT boundary into zones and conduits as described in IEC 62443-3-2. Replace every [bracketed] value and every row marked Example.

Document control

FieldValue
Document ID[MFG-INT-001]
Version[0.1]
Status[Draft / In review / Approved / Superseded]
Owner[@manufacturing-solution-architect]
Approvers/reviewers[@plant-manager], [@ot-security-lead], [@erp-architect], [@mes-product-owner], [@quality-lead]
Plants in scope[Plant code, site name, country]
Industry and production type[Discrete / Batch / Continuous / Mixed], [regulated: GMP, IATF 16949, AS9100, none]
ERP and MES products[ERP product and release], [MES product and release]
Standards basisANSI/ISA-95.00.01-2025 and Parts 2 to 8, B2MML V0700, OPC UA 1.05, MQTT 5.0, Sparkplug 3.0.0, IEC 62443-3-2:2020 and 62443-3-3:2013
Classification[Internal / Confidential]
Last updatedYYYY-MM-DD

Approvals

RoleNameDecisionDate
Plant manager[@name][Approve / Approve with conditions / Reject]YYYY-MM-DD
OT security[@name][Decision]YYYY-MM-DD
Enterprise architecture[@name][Decision]YYYY-MM-DD
Quality (validated systems)[@name][Decision]YYYY-MM-DD

Revision history

VersionDateAuthorChange summary
0.1YYYY-MM-DD[@name]First draft
1.0YYYY-MM-DD[@name]Example: Approved for pilot plant P01
1.1YYYY-MM-DD[@name]Example: Added unified namespace for line telemetry; plant P02 deviations

Contents

1. Scope, drivers and constraints

1.1 Scope

In scopeOut of scope
Example: Order release from ERP to MES, production confirmation and goods movement back to ERP for plant P01Finance and sales processes inside ERP
Example: Material genealogy from goods receipt to finished goodsMachine control logic in PLCs
Example: Line telemetry to the historian and the data platformDevice provisioning and firmware updates (see edge and IoT design)
[Item][Item]

1.2 Business drivers

IDDriverMeasureTarget
DRV-001 (Example)End-to-end lot traceability for recallsTime to produce a forward and backward genealogy reportUnder [15 minutes]
DRV-002 (Example)Remove manual re-keying of production confirmationsShare of confirmations posted automatically[98 %]
DRV-003 (Example)Reliable OEE per lineLines with automated availability, performance and quality data[All lines in P01]
[DRV-NNN][Driver][Measure][Target]

1.3 Constraints and assumptions

  • Example: The ERP remains the system of record for material master, bills of materials and routings; MES receives them and never edits them.
  • Example: Production must continue for [8 hours] without ERP connectivity.
  • Example: The MES is a validated system under [GMP regulation]; any interface change follows change control.
  • [Constraint or assumption]

2. Requirements

2.1 Functional requirements

IDRequirementPriorityAcceptance criterion
FR-001 (Example)Released production orders reach MES with material list, routing and target quantityMustOrder visible in MES within [2 minutes] of release in 100 % of test cases
FR-002 (Example)MES reports operation confirmations, scrap and consumed lots back to ERPMustERP stock and order status match MES at end of shift
FR-003 (Example)Quality results from LIMS gate the release of a batch in MES and ERPMustA batch with a failed result cannot be released in either system
FR-004 (Example)Maintenance work orders raised from machine alarmsShouldAlarm class A creates a work order with equipment ID and fault code
FR-005 (Example)Equipment state and counts published per line for OEEMustState changes visible to OEE within [5 seconds]
[FR-NNN][Requirement][Must / Should / Could][Criterion]

2.2 Quality attributes

IDAttributeRequirementVerification
NFR-001 (Example)AvailabilityShop floor execution continues during ERP or WAN outage for [8 hours]Planned outage test in section 12
NFR-002 (Example)Data integrityNo production confirmation lost or duplicatedIdempotency and reconciliation tests
NFR-003 (Example)LatencyTelemetry from line to site broker under [1 second] at the 95th percentileLoad test with [n] tags
NFR-004 (Example)SecurityConduits meet the target security level in section 10Zone and conduit review, penetration test
NFR-005 (Example)AuditabilityElectronic records keep who, what and when for [regulated] dataAudit trail review by quality
[NFR-NNN][Attribute][Requirement][Verification]

3. Level mapping

The level numbers follow the functional hierarchy of ANSI/ISA-95.00.01-2025 (IEC 62264-1). The descriptions are original summaries; obtain the standard for its normative models.

LevelFunctional role (summary)Time frame (typical)Systems in this plant
4Business planning and logistics: plant schedule, material use, delivery, shippingMonths, weeks, daysExample: ERP, PLM, advanced planning
3Manufacturing operations management: dispatching, detailed scheduling, execution tracking, quality, maintenance and inventory operationsDays, shifts, hours, minutesExample: MES, LIMS, warehouse management, historian, CMMS on site
2Monitoring and supervisory controlMinutes, secondsExample: SCADA, HMI, batch control system
1Sensing and manipulating the processSeconds, millisecondsExample: PLCs, drives, remote I/O
0The physical processContinuousExample: Filling line, mixer, packer

4. Functional scope split

Use the four categories of operations management named in ANSI/ISA-95.00.03 (production, quality, maintenance, inventory). For each activity, mark the owning system (O), the systems that consume its result (C) and any system that must not perform it (X).

ActivityERPMESLIMSWMSCMMSSCADADecision note
Plant master schedule (Example)OCERP plans to the day
Detailed scheduling and sequencing (Example)XOCMES sequences per line and shift
Dispatching work to lines (Example)OC
Execution tracking and confirmations (Example)COC
Material genealogy (Example)COCCMES is the genealogy record
Quality test execution and results (Example)CCO
Batch disposition and release (Example)CCOQuality person signs in LIMS
Maintenance work order management (Example)CCOC
Inventory movements inside the plant (Example)CCO
[Activity][O / C / X][Note]

Decision criteria for borderline functions:

  • Place a function at level 3 when it must keep running during a level 4 outage or needs decisions in minutes rather than hours.
  • Place a function at level 4 when it needs data from several plants or drives financial postings.
  • Never let two systems hold writable copies of the same master record. Name one system of record per object in section 5.

5. Information model

5.1 Objects and system of record

Object (ISA-95 model name)System of recordKey identifiersNotes
Material definition, material lot (Example)ERP for definition, MES for lots created in productionMaterial number, lot IDLot IDs unique across plants: prefix with plant code
Equipment and equipment hierarchy (Example)MES, synchronised from CMMS functional locationsEnterprise, site, area, work centre, work unitHierarchy is the basis of the namespace in section 7
Physical asset (Example)CMMSSerial number, asset tagLinked to equipment by asset mapping
Personnel class and person (Example)HR system via identity providerEmployee ID, qualificationQualifications gate operations in MES
Process segment (Example)PLMSegment ID, version
Product definition (BOM, routing) (Example)ERP and PLMMaterial, BOM and routing versionMES holds read-only copies
Operations schedule and operations request (Example)ERP to MESOrder number
Operations performance and response (Example)MES to ERPOrder number, confirmation counter
[Object][System][Identifiers][Notes]

5.2 Identifier and versioning rules

IDRuleRationale
IDR-001 (Example)Equipment IDs follow site.area.workcentre.unit, lower case, no spacesSame path in MES, historian and namespace
IDR-002 (Example)Every master data message carries a version and effective dateMES can hold the next version before it applies
IDR-003 (Example)Units of measure use the ERP unit codes, converted only in one mapping serviceAvoids silent rounding differences
[IDR-NNN][Rule][Rationale]

6. Information exchanges

6.1 Exchange catalogue

IDFromToISA-95 objectVerb patternFormat and transportTriggerLatency classOwner
MX-001 (Example)ERPMESMaterial definitionSYNC (ERP is record)B2MML V0700 over integration platform queueMaster data changeNear real time (minutes)@erp-integration
MX-002 (Example)ERPMESOperations schedulePROCESS, then ACKNOWLEDGEB2MML over queueOrder releaseNear real time@erp-integration
MX-003 (Example)MESERPOperations performancePROCESS, then ACKNOWLEDGEB2MML or ERP API via integration platformOperation complete, end of shiftNear real time with end-of-shift reconciliation@mes-team
MX-004 (Example)MESLIMSSample requestPROCESSREST APISampling point reachedSeconds@mes-team
MX-005 (Example)LIMSMES, ERPQuality result and dispositionSHOW, CHANGEREST and B2MMLResult approvedMinutes@quality-it
MX-006 (Example)SCADAHistorian, MESEquipment state, counts, process valuesPublishOPC UA subscription or MQTT SparkplugValue changeSub-second@ot-engineering
MX-007 (Example)MESBatch controlRecipe and setpointsWrite with confirmationOPC UA methodsBatch startSeconds@ot-engineering
MX-008 (Example)SCADA alarm serviceCMMSMaintenance requestPROCESS, then ACKNOWLEDGEREST API via integration platformClass A alarmMinutes@maintenance-it
[MX-NNN][From][To][Object][Verb][Format][Trigger][Class][@owner]

6.2 Order-to-confirmation sequence

The sequence shows exchanges MX-002 and MX-003 for one production order, including the acknowledgement path that tells MES whether ERP accepted each confirmation.

6.3 Message rules

  • Give every transactional message a unique message ID and a business key (order and confirmation counter) so the receiver can discard duplicates.
  • Queue outbound confirmations in MES while ERP is unreachable; replay them in order per order number when it returns.
  • Reject, never silently correct, a message with an unknown material or equipment ID; route it to an error queue with an owner and a response time.
  • Reconcile ERP stock and order status against MES at the end of each shift; report differences to the shift lead.
  • Version the schema used on each interface and record it in the exchange catalogue. B2MML V0700 is not fully backward compatible with V0600, so plan the upgrade per interface.

7. Integration architecture and unified namespace option

7.1 Options

OptionDescriptionStrengthsWeaknessesFit
A. Point to point (Example)ERP connector in MES, direct OPC UA readsFast to startEvery new consumer adds a connection; hard to monitorOne line, one MES
B. Integration platform plus OPC UA (Example)Transactions through an integration platform; telemetry through OPC UA to historianClear ownership, mature toolingTelemetry consumers each need OPC UA accessMost single-plant programmes
C. Integration platform plus unified namespace (Example)Transactions as in B; telemetry and state on an MQTT broker in a site hierarchy, Sparkplug payloadsOne place to discover current state; consumers decoupledNeeds namespace governance; broker becomes criticalMulti-plant, many data consumers

Chosen option: [Example: C]. Reason: [Example: six consumers of line data are planned, and two more plants follow in 18 months].

7.2 Unified namespace design (if option C)

A unified namespace (industry practice, not a formal standard) is a broker-hosted topic hierarchy that mirrors the equipment hierarchy and holds the current state of the operation. Design rules:

IDRule
UNS-001 (Example)Topic root follows the equipment hierarchy: enterprise/site/area/line/cell
UNS-002 (Example)Line telemetry uses Sparkplug 3.0.0 topics and payloads; MES events use plain MQTT 5.0 with JSON payloads under a separate events branch
UNS-003 (Example)Retained messages hold the last known state; birth and death certificates mark edge node health
UNS-004 (Example)Each branch has a named owner and a published schema in the data catalogue
UNS-005 (Example)Transactions with ERP stay on the integration platform; the namespace only publishes their outcome
UNS-006 (Example)Brokers are clustered per site; a bridge to the enterprise broker crosses the DMZ outbound only
[UNS-NNN][Rule]

7.3 Integration components

ComponentProduct or serviceLevel and zoneOwner
Integration platform (Example)[Product]Level 4, enterprise zone@integration-team
Site MQTT broker cluster (Example)[Product]Level 3, site operations zone@ot-engineering
OPC UA aggregation server (Example)[Product]Level 3, site operations zone@ot-engineering
Historian (Example)[Product]Level 3, with replica in DMZ@ot-engineering
[Component][Product][Level, zone][@owner]

8. OPC UA design

TopicDecision
Specification baselineExample: OPC UA 1.05 (parts at 1.05.0x on reference.opcfoundation.org); check each server's supported profiles
Communication patternExample: Client/server subscriptions from aggregation server to SCADA; PubSub over MQTT for new lines
Information modelsExample: OPC UA for Machinery (Part 1 building blocks) for machine identification and state; OPC 10030 ISA-95 Common Object Model for equipment and material classes where the MES supports it
Address space namingExample: Browse paths match equipment IDs in section 5.2
Security mode and policyExample: Sign and encrypt, with the strongest policy supported by every server; no None endpoints outside commissioning
CertificatesExample: Plant certificate authority, 2-year validity, renewal [60 days] before expiry, trust lists managed centrally
User authorisationExample: Role-based: read-only for historian, write only for MES service account on recipe nodes
Write accessExample: Writes to level 1 only through batch control or MES methods that confirm the result
[Topic][Decision]

9. Historian and operational data

ItemDecision
Data capturedExample: [n] tags across [m] lines: process values, states, counts, alarms
Sampling and compressionExample: Exception-based capture with deadband per tag class
RetentionExample: [2 years] raw at site, [10 years] aggregates in the data platform
ContextExample: Each value tagged with equipment ID, order and lot from MES
Path to enterpriseExample: Historian replica in DMZ, then batch and streaming feeds to the data platform
Data qualityExample: Quality flag on every value; stale data alarm after [5 minutes]
Regulated recordsExample: Electronic batch records kept in MES with audit trail, not in the historian

Details of the analytical platform belong in Data Platform Architecture (architecture/data-platform-architecture).

10. OT/IT boundary: zones, conduits and security levels

10.1 Zones

Zone IDZoneAssetsTarget security level (SL-T)Owner
Z-ENT (Example)EnterpriseERP, integration platform, data platformPer IT policy@it-security
Z-DMZ (Example)Industrial DMZHistorian replica, MQTT bridge, patch and AV relay, remote access gatewaySL 3@ot-security-lead
Z-OPS (Example)Site operations (level 3)MES, LIMS client servers, site broker, OPC UA aggregation serverSL 2@ot-security-lead
Z-CTL-L1 (Example)Line 1 control (levels 1 and 2)SCADA, HMI, PLCs of line 1SL 2@ot-engineering
Z-SIS (Example)Safety instrumented systemsSafety PLCsSL 3, no conduit to Z-ENT@process-safety
[Z-NNN][Zone][Assets][SL][@owner]

10.2 Conduits

Conduit IDBetweenAllowed flowsDirectionControls
C-01 (Example)Z-ENT and Z-DMZMX-001 to MX-003 via integration platform; analytics reads of historian replicaInitiated from DMZ where possibleFirewall allow list, TLS, mutual authentication
C-02 (Example)Z-DMZ and Z-OPSHistorian replication, broker bridge, MES web servicesInitiated from Z-OPS outboundFirewall, no direct enterprise to level 3 sessions
C-03 (Example)Z-OPS and Z-CTL-L1OPC UA subscriptions, recipe writes, alarm events for MX-008OPC UA client in Z-OPSSign and encrypt, write allow list per node
C-04 (Example)Remote accessVendor support to Z-CTL-L1Brokered session from DMZ gatewayMulti-factor, time-boxed approval, session recording
[C-NN][Zones][Flows][Direction][Controls]

Rules: no flow crosses more than one zone boundary without terminating in the DMZ; every exchange in section 6 maps to exactly one conduit path; the safety zone has no conduit to the enterprise. Device-level controls and patching are covered by the edge and IoT design and the plant OT security programme.

11. Latency, availability and offline operation

11.1 Latency classes

ClassTargetExchanges
Control (Example)Milliseconds, stays inside level 1 and 2None in this design
Supervisory (Example)Under 1 secondMX-006
Operations (Example)Seconds to minutesMX-004, MX-005, MX-007, MX-008
Business (Example)Minutes, with reconciliation per shiftMX-001 to MX-003

11.2 Degraded modes

FailureEffectBehaviourRecovery
ERP or WAN down (Example)No new orders, no postingsMES runs released orders for up to [8 hours]; confirmations queue locallyReplay in order; shift reconciliation
MES down (Example)No dispatching or genealogyPaper or local HMI fallback procedure [SOP-ID]; lines continue current ordersBack-entry of records, quality review
Site broker down (Example)Telemetry consumers staleEdge nodes buffer [n hours]; historian keeps OPC UA pathBroker cluster failover, store and forward
Historian down (Example)Gaps in trendsOPC UA server buffers; data backfilledBackfill and data quality flag
[Failure][Effect][Behaviour][Recovery]

Availability targets and recovery objectives per system: [Example: MES 99.9 % during production hours, RTO 1 hour, RPO 5 minutes]. Use Resilience Tiering and HA/DR Design (architecture/resilience-tiering-ha-dr-design) for the tier definitions.

12. Testing, validation and acceptance

IDTestScopePass criterionEvidence
TST-001 (Example)Interface contract testsMX-001 to MX-008Valid and invalid messages handled as specifiedTest report per interface
TST-002 (Example)End-to-end order to stockPilot line, three productsERP stock equals MES after five shiftsReconciliation report
TST-003 (Example)ERP outagePilot lineProduction continues 8 hours; zero lost confirmationsOutage test record
TST-004 (Example)GenealogyForward and backward trace of a finished lotReport complete within target in DRV-001Trace report
TST-005 (Example)Zone and conduit verificationAll conduitsOnly flows in section 10.2 passFirewall rule review, scan results
TST-006 (Example)Computer system validationRegulated interfacesApproved IQ, OQ, PQ protocols executedValidation summary report
TST-007 (Example)Telemetry loadSite broker and OPC UA path with [n] tagsNFR-003 met at the 95th percentileLoad test report
[TST-NNN][Test][Scope][Criterion][Evidence]

12.1 Traceability

RequirementExchange or design elementTest
FR-001 (Example)MX-002TST-001, TST-002
FR-002 (Example)MX-003TST-001, TST-002, TST-003
FR-003 (Example)MX-004, MX-005TST-001, TST-002
FR-004 (Example)MX-008TST-001
FR-005 (Example)MX-006, section 7.2TST-001
NFR-001 (Example)Section 11.2TST-003
NFR-002 (Example)Section 6.3 message rulesTST-002, TST-003
NFR-003 (Example)MX-006, section 11.1TST-007
NFR-004 (Example)Section 10TST-005
NFR-005 (Example)Section 9, regulated recordsTST-006
[ID][Element][Test]

13. Rollout per plant

WavePlantLinesGo-liveDeviations from templateReadiness owner
1 (Example)P01 pilot2 of 6YYYY-MM-DDNone@plant-p01
2 (Example)P01 remainder4YYYY-MM-DDLine 5 uses legacy SCADA without OPC UA: gateway required@plant-p01
3 (Example)P028YYYY-MM-DDBatch process: recipe exchange MX-007 extended@plant-p02
[Wave][Plant][Lines]YYYY-MM-DD[Deviations][@owner]

Plant readiness checklist (original wording):

  • Equipment hierarchy loaded and agreed with maintenance.
  • Master data for the first products synchronised and checked by the plant.
  • Zone and conduit rules implemented and tested.
  • Operators and shift leads trained on normal and degraded modes.
  • Hypercare roster agreed; see Hypercare Plan (ops/hypercare-plan) and Cutover Plan (project/cutover-plan).

14. Operations, risks and decisions

14.1 RACI

ActivityPlant OT engineeringIT integration teamMES product ownerOT securityQuality
Interface monitoring (Example)CR/AIII
Error queue handling (Example)CRAC
Namespace governance (Example)RCAC
Conduit rule changes (Example)CCIR/A
Validated interface change (Example)CRCCA

14.2 Risks

IDRiskLikelihoodImpactResponseOwner
RSK-001 (Example)Master data quality blocks order releaseHighHighData cleansing before wave 1, MX-001 validation rules@erp-architect
RSK-002 (Example)Legacy SCADA lacks secure OPC UAMediumMediumProtocol gateway in the line control zone (Z-CTL-L1 pattern), compensating controls@ot-engineering
RSK-003 (Example)Namespace grows without governanceMediumMediumUNS-004 ownership, schema registry@mes-product-owner
[RSK-NNN][Risk][L / M / H][L / M / H][Response][@owner]

14.3 Decisions

IDDecisionAlternatives consideredDate
DEC-001 (Example)MES owns detailed schedulingERP finite schedulingYYYY-MM-DD
DEC-002 (Example)Unified namespace for telemetry, integration platform for transactionsNamespace for everythingYYYY-MM-DD
[DEC-NNN][Decision][Alternatives]YYYY-MM-DD

Record significant decisions in full in an Architecture Decision Log (architecture/architecture-decision-log).

15. Glossary and references

15.1 Glossary

TermMeaning
MESManufacturing execution system: the level 3 system that dispatches and tracks production
B2MMLBusiness To Manufacturing Markup Language: XML schemas from MESA that implement ISA-95 models
Unified namespaceBroker topic hierarchy that mirrors the plant structure and holds current state
SparkplugEclipse specification for MQTT topics, payloads and state management in industrial systems
ZoneGroup of assets that share security requirements
ConduitControlled communication path between zones
SL-TTarget security level for a zone or conduit
GenealogyRecord of which material lots went into which produced lots

15.2 References

ReferenceVersion or dateUse
ANSI/ISA-95.00.01-2025 (IEC 62264-1 Mod), Enterprise-Control System Integration Part 1: Models and Terminology, isa.org2025 (announced 2025-04-10)Levels, functional model
ANSI/ISA-95.00.02-2018, .03-2013, .04-2018, .05-2018, .06-2014, .07-2017, .08-2020, isa.orgAs listed on the ISA-95 page; check current editionsObjects, activities, transactions, messaging, profiles
B2MML V0700, MESA International, mesa.orgV0700 (announced December 2020)Message schemas
OPC UA specification, OPC Foundation, reference.opcfoundation.org; IEC 62541 series1.05 (parts at 1.05.0x)OPC UA design
OPC 10030 ISA-95 Common Object Model; OPC 10031-4 ISA-95 Job ControlCurrent OPC Foundation releasesInformation models
MQTT Version 5.0, OASIS Standard2019-03-07Broker transport
Sparkplug 3.0.0, Eclipse Foundation (also ISO/IEC 20237)3.0.0 (2022)Namespace payloads
IEC 62443-3-2:2020, IEC 62443-3-3:2013, webstore.iec.chEditions as listed; check for newer editionsZones, conduits, security levels
[Internal OT security standard][Version][Use]

Standard and licence note

Structure aligned with the ANSI/ISA-95 series (Part 1: ANSI/ISA-95.00.01-2025, IEC 62264-1 modified, and Parts 2 to 8), the IEC 62443-3-2 zone and conduit method and IEC 62443-3-3 security levels; based on the public OPC UA specification (OPC Foundation, release 1.05), MQTT 5.0 (OASIS) and Sparkplug 3.0.0 (Eclipse Foundation), with B2MML V0700 named as the MESA implementation of ISA-95. ISA and IEC standards are copyrighted: this template uses only part numbers, level numbers and model names, and all descriptions are original text written for this collection; obtain the standards for normative requirements. The unified namespace is described as industry practice, not as a standard. Check the current official editions before use. OPC UA is a trademark of the OPC Foundation and Sparkplug is a trademark of the Eclipse Foundation; this template is not affiliated with or endorsed by them. Template licence: MIT.

Plantillas relacionadas