OPC Server implemented by Visual C app


Thread Starter

Robert Scott

I have written lots of data acquisition software on PCs using primitive C and the Win32 API. Many of these applications have interfaced with PLCs through discrete digital I/O. Now I have been asked by the PLC guy if I can replace my use of discrete I/O with an OPC Server over Ethernet (to simplify wiring). What new programming capabilities do I need to acquire in order to do this? I have never used OPC, Ole, .NET, or COM. But I am very familiar with Windows application programming using the primitive Win32 API. I have heard of Kepware, but upon browsing their website, I see nothing that says how my Win32 application can interface with it.
What protocol do you need to use? There can be lots of solutions for what you want to do other than using OPC. If you do decide to use OPC then the following company sells libraries.


This isn't intended as a recommendation for them by the way, so it's strictly caveat emptor.

If you can tell us what protocol you need to use then someone may be able to recommend a simpler or cheaper solution.

Tallak Tveide

As the OPC standard is closed you will have to pay to read it. Otherwise the python opc library is easy to read. The OPC libraries (paid) I guess should make your job easier by giving you a higher level of abstraction

I know that ignition sells software that stores OPC data in a database, which might be an easier access point for your C program


Wassim Daoud

There is an OPC solution for storing OPC data into the database ... Here is a link to learn more on how: http://is.gd/i6cOD (copy it and paste in your browser)

Wassim Daoud
Global Solutions Architect