The MES writes to the PLC as well as reading from it.
Every MES/MOM project lives or dies on the connection to the machines. Reading counts, cycles and alarms up is the half everyone scopes. Writing recipes, setpoints and run authorisations back down is the half that stops a line running the wrong product. The console below does both.
Integration is most of the project.
You can buy the best MES on the market and still be typing yesterday's counts into it. Direct integration is what turns an MES from a record of what happened into something that can act while the shift is running, and it has to work in both directions to do that.
- Recipes & setpoints to the PLC
- Changeover parameters
- Tool-offset updates
- Remote start / stop · run authorization
- Counts, good / reject, cycle times
- Process values & actuals
- States, stops & downtime reasons
- Alarms & energy
Drive a simulated line yourself.
This console simulates one packaging line. The MES is subscribed to its tags, so telemetry streams up the left-hand side as values change. Use the controls on the right to write down to the PLC: move the speed setpoint, download a recipe, start or stop the line, and watch the machine answer.
Reading the truth, automatically.
The MES subscribes to the machine's tags and receives an update the moment a value changes — no polling, no clipboards. Counts, cycle times, process values and stop reasons become an objective, timestamped record of what actually happened.
That stream is what powers real OEE, genealogy and traceability. The tag traffic you see scrolling is the MES reading nodes like ns=2;s=Line3.GoodCount.
Writing back to the line.
Reading is half the job. The MES also writes back: it downloads the correct recipe and setpoints to the PLC for the order being run, pushes changeover parameters and tool offsets, and issues remote start/stop and run authorizations.
This is what removes the wrong-recipe error class entirely — the line physically cannot run the wrong settings, because the MES set them. Every write is governed: authorized, interlocked, and subordinate to the PLC's own safety logic.
Compare the two directions.
Most "machine connectivity" projects stop at reading. That gets you dashboards. The return on an MES comes from the other half — the ability to act on the line — and the two are engineered together, over the same connection.
| COLLECTMACHINE → MES | COMMANDMES → MACHINE | |
|---|---|---|
| What it does | Reads the machine's reality into the MES, continuously | Pushes the MES's decisions down onto the machine |
| Typical payload | Counts, cycle times, process values, states, stops, alarms, energy | Recipes, setpoints, changeover parameters, tool offsets, start/stop |
| OPC UA service | Subscribe & Read — monitored items push on change | Write & Call — values and methods sent to nodes |
| Triggered by | The machine — a value changing on the line | The MES — an order dispatch, changeover, or correction |
| The payoff | Real OEE, traceability, genealogy, live visibility | Zero wrong-recipe runs, faster changeovers, enforced standards |
| Without it | Re-keyed data — late, sparse, unreliable | Every correction is a manual trip to the HMI |
How they actually
speak: OPC UA.
You saw opc.tcp:// in the console. OPC UA is the standard that lets an MES talk to a machine regardless of who built it, and it's the default on new equipment. Here's the 60-second version.
SUBSCRIBE
CALL
One standard, any machine.
OPC stands for Open Platform Communications — an industrial standard for moving data between machines and software without caring who made either. OPC UA (Unified Architecture) is the modern, secure version that has become the default for MES integration.
It works as client / server. The machine runs a server that publishes its data as an address space — a tree of nodes, or tags, each with an ID like ns=2;s=Line3.Speed. The MES connects as a client and uses a handful of standard services: read and subscribe to collect data up, write and call to send commands down.
That single, secure channel — authenticated with certificates and encrypted — is how both halves of the integration travel. The older OPC Classic (DA) did the same job on Windows-only COM; OPC UA replaced it with a cross-platform, security-first design.
Common questions
about machine integration.
Why is machine integration critical to an MES/MOM project?
An MES is only as good as the data it can trust and the actions it can take. Manual data entry is slow, sparse, and biased — and an MES that can only read cannot enforce anything. Direct, bidirectional machine integration gives the MES a continuous, objective stream of what actually happened, plus the ability to act on it: downloading the right recipe, setting the right speed, authorizing the right run. Without it, an MES becomes an expensive reporting tool fed by paper.
What does bidirectional machine integration mean?
Data flows both ways. Upward — collect — counts, cycle times, process values, states, stops and alarms stream from PLCs and sensors into the MES. Downward — command — the MES writes back to the machine: downloading recipes and setpoints to a PLC, sending changeover parameters, updating tool offsets, and issuing remote start/stop or run authorizations. The value is in closing the loop, not just the read.
What is OPC and OPC UA?
OPC (Open Platform Communications) is the industrial standard for moving data between machines and software regardless of vendor. OPC UA (Unified Architecture) is the modern version: a secure, platform-independent client/server protocol. The machine exposes an OPC UA server whose address space holds nodes (tags) like ns=2;s=Line3.Speed; the MES connects as a client and uses standard services to read, subscribe to, and write those nodes — which is exactly how both directions of integration are delivered.
Can an MES change machine settings, or only read them?
A properly integrated MES can do both — within strict, governed limits. Through OPC UA write services it pushes setpoints, recipes, changeover parameters and tool offsets, and triggers start/stop — but these writes are gated by authorization, interlocks, and the PLC's own safety logic. The PLC always remains the system of control; the MES orchestrates what the line should be doing, it does not bypass machine safety.
What happens if machine integration is missing or one-way only?
With no integration, operators re-key data into the MES — late, incomplete, and unreliable — and the MES cannot enforce settings. With read-only integration you get good visibility, but every correction is still a manual trip to the HMI, so wrong-recipe and wrong-setpoint errors persist. Full bidirectional integration closes the loop: the MES not only sees a problem, it prevents and corrects it.
Your MES is only as good as its connection to the machines.
Reading data up and writing commands back down, over OPC UA, MQTT or direct PLC drivers, is the work that happens before anyone sees a dashboard.