OPC Client Connection using C++


I would like to know if there is documentation somewhere that covers how to create an OPC Client Connection using C/C++ to the Ignition OPC-UA Server. I have a need to make a client application that connects to a special data analizer card as well as connecting to a Siemens S7 PLC to access just two tags and then generate an Excel file from the collected data from the two systems. I would like this client application to be in the C/C++ envirnoment since it is a unique hardward interface requirement. I have used the Ignition software several times in the past for standard SCADA/Data collection off of PLCs and just used the Ignition UI to do this, but now I want to use just the OPC-UA server feature and make a client connection into that from another development environement. I have read that Ignition is suppose to be able to do that, however I have not found any details of how to to it. I just need access to two tags.



Have you checked a company called Softing. The sell clients for OPC and I believe they have one in C/C++. Also check the OPC foundation website, they have good info there too.



Yes, Softing is worth looking at, as well as http://www.unified-automation.com/.

If you’re familiar with Java, and are using the Ignition gateway anyhow for the siemens driver, you might also consider writing a small module for Ignition that simply exposes the data you want over a Servlet (http response). But, if you’re trying to build a more flexible product that can connect to any UA server, definitely check out those two companies for C/C++ SDKs.