UniInt End User



Download 1.93 Mb.
Page66/79
Date29.09.2022
Size1.93 Mb.
#59623
1   ...   62   63   64   65   66   67   68   69   ...   79
UniInt Interface User Manual
PI BASemAPI

Steady State Operation


Steady state operation is considered the normal operating condition. In this state, the primary interface is actively collecting data and sending its data to PI. The primary interface is also updating its heartbeat point, monitoring the heartbeat point for the backup interface, and checking the active ID point every failover update interval. The backup interface is actively collecting and queuing data but not sending that data to PI. It too is updating its heartbeat point, monitoring the heartbeat point for the primary interface, and checking the active ID point every failover update interval. As long as the heartbeat point for the primary interface indicates that it is operating properly and the active ID point has not changed, the backup interface will continue in this mode of operation.
The interaction of the control points is fundamental to failover. The discussion that follows only refers to the data written to the control points on the data source. However, every value written to the control points on the data source is echoed to the control tags on the PI Server. Updating of the control tags is assumed to take place unless communication with the PI Server is interrupted. The updates to the PI server will be buffered by bufserv or BufSS in this case.
Each interface participating in the failover solution will queue two failover intervals worth of data to prevent any data loss. When a failover occurs, there may be a period of overlapping data for up to 2 intervals. The exact amount of overlap is determined by the timing and the cause of the failover and may be different every time. Using the default update interval of 1 second will result in overlapping data between 0 and 2 seconds. The no data loss claim is based on a single point of failure. If both interfaces have trouble collecting data for the same period of time, data will be lost during that time.
As mentioned above, each interface has its own heartbeat point. In normal operation, the value of the Heartbeat point on the data source is incremented by UniInt from 1 – 15 and then wraps around to a value of 1 again. UniInt increments the heartbeat point on the data source every failover update interval. The default failover update interval is 1 second. UniInt also reads the value of the heartbeat point for the other interface copy participating in failover every failover update interval. If the connection to the PI Server is lost, the value of the heartbeat point will be incremented from 17 – 31 and then wrap around to a value of 17 again. Once the connection to the PI Server is restored, the heartbeat values will revert back to the 1 – 15 range. During a normal shutdown process, the heartbeat value will be set to zero.
During steady state, the ActiveID will equal the value of the failover ID of the primary interface. This value is set by UniInt when the interface enters the primary state and is not updated again by the primary interface until it shuts down gracefully. During shutdown, the primary interface will set the ActiveID to zero before shutting down. The backup interface has the ability to assume control as primary even if the current primary is not experiencing problem. This can be accomplished by setting the ActiveID control point on the data source to the ActiveID of the desired interface copy.
As previously mentioned the backup interface actively collects data but does not send its data to PI. To eliminate any data loss during a failover, the backup interface queues data in memory for two failover update intervals. The data in the queue is continuously updated to contain the most recent data. Data older than two update intervals is discarded if the primary interface is in a good status as determined by the backup. If the backup interface transitions to the primary, it will have data in its queue to send to PI. This queued data is sent to PI using the same function calls that would have been used had the interface been in a primary state when the function call was received from UniInt. If UniInt receives data without a timestamp, the primary copy uses the current PI time to timestamp data sent to PI. Likewise, the backup copy timestamps data it receives without a timestamp with the current PI time before queuing its data. This preserves the accuracy of the timestamps.

Download 1.93 Mb.

Share with your friends:
1   ...   62   63   64   65   66   67   68   69   ...   79




The database is protected by copyright ©ininet.org 2024
send message

    Main page