
No engineering curriculum has ever had a required course called “Industrial Data Communication.” Engineers learn PID theory, mass and energy balances, and if they’re lucky, one semester of ladder logic. What almost nobody learns, and what almost all of them need within two years on the job, is how a DCS, a PLC, an analyzer, a historian, and a spreadsheet are supposed to talk to each other. That gap has a name: OPC, and most engineers meet it for the first time on a live troubleshooting call, staring at a tag that reads “Bad” quality with no idea why.
Before 1996, there was no shared standard. An HMI that needed data from a PLC needed a custom driver for that PLC; if a historian wanted the same data, it needed its own[1]. Engineers called it the M×N problem: M data sources, N applications, and close to M times N integrations to maintain. Five vendors- Fisher-Rosemount, Rockwell Software, Opto 22, Intellution, and Intuitive Technology- released the first OPC specification in August 1996 [2]. Now you needed one server per data source, and any compliant client could read it. Three decades on, that standard runs in more than 82 million applications worldwide [3]
Strip away the acronyms and OPC is one idea: put a translator next to every data source, and let every application talk to the translator instead of learning each source’s native language. The translator is the OPC server. Anything consuming the data – historian, HMI, spreadsheet, custom application – is an OPC client and connects the same way, no matter what runs underneath. That one pattern covers most plant work: getting a gas chromatograph reading into the DCS to trim a loop, or letting an operator type a lab value on an HMI screen and have it download as a setpoint.
OPC Classic was built on Microsoft’s COM and DCOM: Windows-only, and famously fragile across machines. OPC UA (Unified Architecture) followed in 2006 and became the international standard IEC 62541 [4]. It dropped the COM dependency, folded real-time, historical, and alarm data into one framework, and built security in rather than bolting it on [5].
| OPC Classic | OPC UA | |
| Released | 1996 | 2006; IEC 62541 |
| Platform | Windows only (COM/DCOM) | Platform-independent |
| Data types | Separate spec each: DA, HDA, A&E | Unified, plus PubSub (Part 14) |
| Security | None built in | X.509 authentication, signing, encryption |
| Network reach | Needs DCOM tunneling | opc.tcp, HTTPS, MQTT/AMQP |
Plants rarely run only one. Classic is embedded in legacy DCS and PLC firmware that isn’t being replaced anytime soon; UA is where new IIoT and cloud work happens. Knowing both isn’t optional – it’s the job.
Security is built in, but it is not switched on. Most UA servers ship with security mode “None” and anonymous access enabled – convenient at commissioning, dangerous left that way in a running plant [6]. Production connections should use SignAndEncrypt with a policy such as Basic256Sha256, plus user authentication on top of certificate-based application authentication [7].
PubSub is how OPC reaches the cloud. Part 14 of the UA specification added publish/subscribe in 2018, in which publishers and subscribers exchange data through a broker rather than via a direct session [8]. That is what lets OPC UA data ride over MQTT or AMQP – the protocols behind most industrial cloud platforms – without losing UA’s typed data model [9].
OPC rarely announces itself as “today’s OPC task.” It arrives disguised as an ordinary project request, and the engineer who recognizes it solves it in an afternoon.
DCOM configuration has a well-earned reputation as one of the most frustrating corners of industrial IT: GUIDs, launch and access permissions, firewall rules that behave differently on every version of Windows. None of that is process control knowledge, and none of it is taught anywhere – it is learned by breaking something under time pressure.
A checklist before escalating a “Bad” quality tag: confirm the server is running, and its device connection is healthy; check DCOM permissions and firewall rules if it is Classic; verify the client’s item path matches what the server exposes; and for UA, check certificate trust and security-mode mismatch first – a rejected certificate looks identical to a dead connection.
PiControl Solutions built OPC500 – “OPC Communications Theory and Practicals” – for exactly these engineers: people who need OPC to work, not people planning to become developers. It runs as a 2-day classroom course or 16 hours online for process control, application, and instrumentation engineers, analyzer, boiler, and DCS technicians, and supervisors.
It covers more than 40 topics – specifications, COM/DCOM configuration and troubleshooting, OPC DA and HDA, alarms and events, tunneling, OPC UA, SCADA – but the part that closes the gap is hands-on. Participants install PiOPCServer, PiBridge, PiLogger, and PiLims on their own machines, connect servers to clients, move data both directions against a live DCS/PLC scenario, and troubleshoot failures that only appear when something is genuinely running.
OPC has stood between “every vendor speaks its own language” and “any application can read any data source” since 1996, and it will keep doing that whether or not the engineers relying on it were ever taught how. The ones who install a server, connect a client, and break a connection on purpose – so they know what broken looks like – stop being blindsided by it.
To register for OPC500 or learn more about PiControl Solutions’ training programs, contact info@PiControlSolutions.com or call us at +1 832 495-6436.