Exercise 1

Document created by johnsbjo on Mar 20, 2019
Version 1Show Document
  • View in full screen mode

Calvin La

Bjorn Johnson

Radix Engineering & Software




Configuring a Simple PI System

Exercise 1.

How might you approach addressing [Stale or Digital State Error] points?

From the knowledge-base article KB00384 there are several recommended solutions when trying to address stale points.

  1. Stale/Bad Points plug-in for PI SMT
    1. The error code displayed in PI SMT can be reviewed according to the listings in the Knowledge-base article KB01298
  2. Daily back-up
    1. A user can add commands to the server backup routine to record PI point issues
  3. Interface I/O Rate tags and Interface Health tags
    1. The PI system can be configured to write the number and type of PI point errors to tags to record the quantities and types of PI tag issues.

The user can manually inspect what issues may cause PI point errors.

  1. Check interface buffering
    1. The user can review buffering performance to check for events getting stuck in buffering queues due to network issues.
      1. Buffer queues may become corrupted after “ungraceful shutdowns”, per KB00384.
    2. The buffer sources can be reviewed with the piartool -bfs. The user should then identify the  source of the stale tags.
    3. KB000384 points to KB00127 for instructions on reviewing buffered sources.
    4. KB000384 also points to KB00363 for instructions on how to confirm if events are getting stuck in the buffer.
  2. Performance Equations
    1. A performance equation can be configured to write the names of stale tags from a deliberately selected group.
    2. This method has drawbacks. A limited number of PI Tags can be examined through this method.
    3. I am familiar with doing this in Asset Analytics, but the article points to “The Performance Equation Scheduler”. I have not gotten a chance to use the PES. Will follow up when time permits.
  3. ACE calculations
    1. Ace equations are written in Visual Basic and can perform a similar task to the one outlined in the Performance Equations write-up.
  4. Notifications
    1. High-priority points can be constantly monitored with a PI Notification.
    2. This method come with the same limitation as a Performance Equation. A relatively limited number of PI Tags can be evaluated in this manner.


Lastly, the user should review the causes of bad or stale data. KB00384 cites the following examples.


“Common causes for stale or bad data include:

  • Network issues (routing, disconnections, package damage, slowness) between the PI Server and PI Interfaces;
  • Shutdown of the PI Interface computer, or the PI Interface itself;
  • Connection issues between the PI Interface computer and the source device;
  • Inadvertent modification of point attributes affecting data collection.”


The user should try to trace their way back through the data stream, checking for probable causes along the way. Points that are no longer in use should have their Scan attribute set to “Off”, so that they are not flagged as stale.


What questions should you ask? (There are probably many more, these are what come to mind)

  • What type of PI Point issues are persistent?
  • How long has the issue persisted, and did the start date coincide with another event (an outage or crash)?
  • What types of diagnostics are available?
    • Check interface buffering
    • Performance Equations
    • ACE Calculations
    • Notifications
  • Is there a systematic cause to the PI Point issues?



Lastly: The most recent PI point issue associated with CDEP158 was "Shutdown". KB01298 indicates that PI Shutdown Subsystem write "the SHUTDOWN digital state to all PI points when PI is started". This likely coincides with the virtual environment being shut down.


The current value was 10.


The Previous 5 values, starting 1 hour ago were:


ValueEvent Time
13/20/2019 7:41:52 PM
Shutdown3/19/2019 11:33:20 PM
103/19/2019 11:31:15 PM
93/19/2019 11:30:45 PM
73/19/2019 10:11:45 PM