Real-Time Measurement and Control

Showing results for 
Search instead for 
Did you mean: 

Is it possible to put an OPC server on the cRIO controller?

I'm designing a control system including a cRIO-9012 controller and a HMI PC. Main program is placed on the cRIO controller and is communicating(ethernet) with a HMI program using shared variables via an OPC server on the HMI PC. This works fine, but since the HMI PC is more likely to crash than the cRIO controller, I want to place the OPC server on the cRIO controller. The reason for this is that if the HMI PC crashes I still need to get ESD signals from an external control system connected to the network.
I tried to deploy the OPC server on the cRIO controller but got this message:
"OPC1 \\\OPC Library 1\OPC1 deployment failed (error: -1967357950, IAK_SHARED:  (Hex 0x8ABC8002) The I\O Server is not setup in MXS. The first time the "Network Variable Engine" service launches it will do so. Please verify that the "Network Variable Engine" service is running.)"
I'm not sure what I'm doing wrong, and I'm not sure what the error message is trying to tell me. So if anyone could help me I would be grateful:)
0 Kudos
Message 1 of 4
The short answer is no. You cannot run an OPC server on cRIO or have it act as an OPC client. OPC is based on COM which is inherently a MS Windows technology. In this case cRIO is no different than other PLCs, they all require their own OPC server running on a Windows system. Here's a KnowledgeBase with more information.

Recently, the OPC foundation has released a new specification called OPC UA (Unified Architecture). OPC UA is designed to be platform independent and in theory could be embedded on a PAC like cRIO. As with any new specification, it will take time for companies to adopt the new specification. NI is keeping a close eye on this development and we look forward to integrating this technology into our platform in the future.

Message 2 of 4
What kind of HMI program are you using?

0 Kudos
Message 3 of 4

Sorry for the delay..


I'm using an industrial ATEX compliant computer with Microsoft Embedded XP . The HMI software I'm using is Labview. I have the Labview DSC module with the Run-time system add-on module. This module have the extra features I need for datalogging, OPC-server, etc. The DSC module also have symbol library for making better looking HMI's.


At the moment my system works fine, but the OPC-server/variable engine gives me troubles sometimes. Especially when my computer where I do the development gets another IP-adress. (Happens if I'm away from work for a longer periode). Then I get errors when I launch the VI, telling me that the OPC server can't find the variables, and refers to the old IP-adress. I always find a way around the problem, and get it to work again, but it is very annoying when it happens, and is very time consumingSmiley Mad


I don't have the excact error code at the moment, but can post it if it happens again...



0 Kudos
Message 4 of 4