continue to be sent to the Data Source if one of the PI Servers becomes unavailable for any reason. Data Source Points The following table identifies the points that are required to manage failover and the values used for each PI attribute. The following table explains each of the points required on the data source in more detail. Point Description Value / Default ActiveID Monitored by the interfaces to determine which interface is currently sending data to PI. ActiveID must be initialized so that when the interfaces read it for the first time, it is not an error. ActiveID can also be used to force failover. For example, if the current Primary is IF-Node 1 and ActiveID is 1, you can manually change ActiveID to 2. This causes the interface at to transition to the primary role and the interface at IFNode1 to transition to the backup role. From 0 to the highest Interface Failover ID number / None) Updated by the redundant Interfaces Can be changed manually to initiate a manual failover Heartbeat 1 Updated periodically by the interface on IFNode1. The interface on IF-Node2 monitors this value to determine if the interface on IFNode1 has become unresponsive. Values range between 0 and 31 / None Updated by the Interface on IF-Node1 Heartbeat 2 Updated periodically by the interface on IFNode2. The interface on IF-Node1 monitors this value to determine if the interface on IFNode2 has become unresponsive. Values range between 0 and 31 / None Updated by the Interface on IF-Node2
The following table describes the extended descriptor for the above PI tags in more detail. PI Tag ExDesc Required / Optional Description Value [UFO2_ACTIVEID] Required Active ID tag The ExDesc must start with the case sensitive string: [UFO2_ACTIVEID]. The pointsource must match the interfaces’ point source. Location1 must match the ID for the interfaces. Location5 is the COLD failover retry interval in minutes. This can be used to specify how long before an interface retries to connect to the device in a COLD failover configuration. (See the description of COLD failover retry interval for a detailed explanation.) 0 – highest Interface Failover ID Updated by the redundant Interfaces [UFO2_HEARTBEAT:#] (IF-Node1) Required Heartbeat 1 Tag The ExDesc must start with the case sensitive string: [UFO2_HEARTBEAT:#] The number following the colon (:) must be the Failover ID for the interface running on IFNode1. The pointsource must match the interfaces’ point source. Location1 must match the ID for the interfaces. 0 – 31 / None Updated by the Interface on IFNode1 [UFO2_HEARTBEAT:#] (IF-Node2) Required Heartbeat 2 Tag The ExDesc must start with the case sensitive string: [UFO2_HEARTBEAT:#] The number following the colon (:) must be the Failover ID for the interface running on IFNode2. The pointsource must match the interfaces’ point source. Location1 must match the id for the interfaces. 0 – 31 / None Updated by the Interface on IFNode2
Message Putsnap system error %d, %d Putsnap no longer in system error %d, %d Meaning We have/had a problem sending data to PI. These are system errors. Message Putsnapsx not implemented %d Getsnapshotx not implemented Meaning You need to install a more recent version of the API. This one does not handle extended API calls, and we require those. Message Unable to translate string. Meaning We have to use Unicode with the OPC Server, because it is required for COM. We tried to translate some string value from a PI tag from its ASCII to Unicode, and we failed. The particular value in that particular tag would be most interesting to look at, since if it’s valid ASCII printable data, it should be translatable. Message Unable to initialize server object Meaning We cannot run. Possibly you are trying to run under an account with insufficient privileges. Message No OPC Server specified Meaning You did not put \SERVER=servername into the opcint.bat file. Or you ran the interface interactively rather than as a service, but you did not edit the opcint.bat file to put everything on one line first. Message Can’t find status tag, ignoring Can’t find queue tag, ignoring Status tag is not Digital tag, ignoring Queue tag is not Integer tag, ignoring Meaning You specified a status/queue tag, but either it does not exist or it’s not the correct datatype tag, so we are ignoring it. Message Can’t connect to OPC Server, going into slow cycle wait Meaning We tried to connect to the server, but could not. We will continue to try to connect. There should be another message before this one that gives more information about exactly what call failed. Look at that message, and correct whatever it says is wrong. Otherwise, the interface will continually try to connect.. Message Unable to create clock drift timer Meaning We cannot keep track of clock drift, because we cannot create a timer. Your system could be out of resources.
Error 80040154 Class not registered. Meaning This error may occur if the interface cannot obtain the OPC server information from the registry. In some cases, the problem is identical to that described for error 80040111 (ClassFactory cannot supply requested class). Error 80070005 General access denied error. Meaning This is the most common DCOM security error. Either the user account associated with the OPC interface does not have permission to use the server, or the account cannot be authenticated by the server. Error 8007007e The specified module could not be found. Meaning This indicates a problem with the installation of the OPC server. The executable file for the OPC server cannot be loaded. Error 800706ba The RPC server is unavailable. Meaning This indicates a problem with the OPC server, or a network problem. Error 80080005 Server execution failed. Meaning Generic failure error. Advise failed errors Error 80040202 Unable to open the access token of the current thread. Meaning The interface node cannot authenticate the user account associated with the OPC server. This error may also occur if the OPC server cannot establish a new connection to the interface because of a network problem (in particular, a firewall that prevents incoming connections from the OPC server). Error 80070005 General access denied error. Meaning Either the user account associated with the OPC server does not have permission to call back to the interface, or the account cannot be authenticated by the interface node. Error 80070008 Not enough storage is available to process this command. Meaning Out of memory. Error 8007000e Server out of memory Meaning Out of memory.