OSIsoft PI Data Import

Pro This data connector is only available in Visplore Professional.


Visplore can directly connect to OSIsoft PI servers and import data from there (tags, attributes, assets, ...). As an official OSIsoft partner, Visplore adds value to your PI system in various ways, as shown in this video: https://visplore.com/partnering-with-osisoft/.
Typical use cases with PI data are:




Requirements and setup

Visplore connects to a PI server using the PI Web API.

Requirements for the PI Server:

Optional ways of accessing data from PI Server:

Visplore needs a config file to know where the PI server is located and other details for connecting. Please ask your contact person at Visplore GmbH for that config file. They will set it up for you, and will need these three bits of information from your PI admin:

  1. The host name of the PI Web API. Specifically, the full endpoint name with the used protocol, for example: https://www.server.my/piwebapi
  2. The port, in case of a dedicated port being used. If not, Visplore uses the defaults: 80 for http, and 443 for https
  3. The authentication method. Visplore supports “Kerberos”, “NTLM”, and “Basic”.

Note: The "Host" part of the SPN should refer to the machine that's verifying the Kerberos authentication, which may be a different one than the machine running the PI Web API and other PI services

Finally, the config file needs to be put in the right location. Visplore supports 3 different locations, as described in this documentation.
Once the file is in place, and you restart Visplore, there should be a new option in the welcome dialog. In case there are multiple connections defined in "HistorianSources", you will be asked which one to use.





Overview: Importing data from PI

Visplore always imports data from PI in the form of one data table, with values taken at a common time resolution. Tags are the table columns, timestamps are the table rows. All tags are sampled at the same timestamps. These timestamps can either be a regular raster (e.g. sampled in 1-minute resolution), or the raw events of one particular tag (e.g. whenever a specific tag changes value). It's currently not possible to load the raw events for each tag separately. But the benefit of a common sampling is that you can do correlation analysis, scatter plots, regression and other analyses of values observed at the same time.


As an overview, importing and analyzing data from PI follows these steps:

The following sections describe these steps in more detail.

Note: PI import means, data is fetched for a desired time period and desired set of tags from the PI server. Then, the imported data is available in Visplore (in RAM) without extra data fetching, and be analyzed at high performance. Users can add tags or change time periods later, but this is triggered explicitly by the user. Visplore does not incur a constant load on the PI server.





PI Import dialog

Once you have chosen "PI System" in the welcome dialog and have pressed OK, the following import dialog is shown:

In the import dialog you can follow the below workflow:

    1. Specify the time interval.

    • "Relative" time interval (e.g. last 7 days) is most useful for setting up a dashboard or an analysis that is to be looked at regularly for the newest data.
    • Pro tip: if you want to load multiple time intervals, see the FAQ section below for how to achieve this.

    2. Specify temporal resolution.

    • Important to note: sampling means, the values of the tags are interpolated at these time points (e.g. every 10 minutes). Depending on the "step" attribute of a tag, this interpolation is either linear or just referring to the most recent value.
    • You can choose whether to import the data rows in a regular raster or based on a specified event.
    • Regular Raster:
      • When choosing this option, a data row for each interval (e.g. for each second) is created by the specified time interval. The values of imported tags are interpolated if no data point lies at a specific time point.
      • It allows resolutions down to microseconds.
      • Note that the data import can become very time-consuming – if you use seconds resolution or below. Maybe try it out with a larger time interval, like 1 day first.
    • Event:
      • Allows you to specify one "trigger" tag. For example, whenever a new manual measurement is taken. This would lead to all other imported tags being sampled, whenever the trigger tag has a new value ("on value changed").

    3. Specify the column structure (how are tags named).

    • You can either search tags by name ("tag search") or by asset structure ("Asset Framework"). This also influences how the tags are named.
    • You can represent assets either ‘as categories’ or ‘as part of the tag name’
    • As part of tag name: Each asset is imported as a distinct data attribute (time-series)
    • As categories: Selected tags are imported as single data attributes, including data from all selected assets, with an additional categorical column differentiating the asset. Only the leafs of the asset tree are treated as assets. Data from parents are duplicated for leafs to enable correlations, unless the tag name of leaf is identical with the parent.

    4. Specify asset comparison preference (Only available for Asset Framework)

    • Add Tag Names: When checked, an extra column is created per data channel, holding the original tag name
    • Additional categories per hierarchy level: When checked, a categorical data attribute per hierarchy level in the asset framework would be created
    • Treat AF hierarchy levels as separate assets: When checked, each level of the hierarchy are treated as assets, instead of just the leafs.

    5. Specify tags to load.

    • Click "Add for import".
      • This leads to another dialog for searching tags by name or selection from the Asset Framework. For more details on these dialogs, see the sections below.
    • After adding some tags through the aforementioned dialogs, the list below "Data points to import" contains all the tags you have already added.
    • You can now repeat the first step, click "Add for import" again and add more tags. Thereby, composing your list step by step.
    • Optionally save your list when finished by using the disk button . You can also load lists at this point with the folder button which adds them to your current list.

    6. When you're done, press OK to confirm the import.

    A Visplore cockpit will start. You can confirm the "Role assignment dialog" by pressing OK. Then you should see some visualizations and can start analyzing the data.

 

The next sections provide more details on the possibilities for specifying which tags to load during import.





Prerequisite: the PI search crawler service must be running, see the setup section above.

When searching tags by name (if set in the "Column Structure" at the import dialog), the following dialog is shown after you click "Add for import":

1. You can specify which attribute to search in (e.g. name, tag type, description, etc.).

2. Add additional clauses with the "+" sign, and remove them with the "-" sign.

3. If "All Conditions are complied" is selected, then all of the conditions [1] must be met by the results.

 

Note: if you use "Contains", you don't need to type asterisks '*' before or after the search string. A blank between two word parts is interpreted as an "AND" operator.

Troubleshooting, if your tags can't be found: see the Troubleshooting section at the bottom of the page.





Select tags from PI Asset Framework (PI AF)

To load data from PI Asset Framework switch the column structure method to "By Asset Structure" at the import dialog, then click "Add for import".

In the following dialog, select the tags by navigating the hierarchy of the asset framework.

1. Make sure the right asset database is set on top.

2. Navigate the hierarchy and select the assets on the left with the checkmarks that you want to import tags from.

3. Then the right side shows all tags and data points that are *directly* connected to that selected AF node on the left side. If you want to access tags that are in subnodes, you have to select the subnodes on the left.


Important:

Troubleshooting, if your tags can't be found: see the Troubleshooting section at the bottom of the page.





Saving and loading tag lists

After you have composed a list you would like to import, it is possible to save the list for later uses which is especially helpful when working with longer tag lists because you don't have to repeat the whole selection process of the tags again.


By clicking on the save button above the list in the "Import Data" dialog, the current tag list can be saved as a file without extension. This file can be loaded into another Visplore session with the load button.

Important:

Within the PI dialogs which show a tag list, you can press "CTRL + C" to save the tags to the clipboard and paste that list (full tag paths) into another program like a text editor. In the same way, you can press "CTRL + V" in Visplore to paste any full path of a tag into the tag list. This is super-useful if you already have the full path in another tool (e.g. in PI System management tools, Processbook, etc.).


Also note: it's possible to load tag list files exported from PI Vision as well, see the next section.





Load tag lists from PI Vision

From PI Vision, it's possible to export the data of a display as a CSV file. Visplore can read the tag list from such a CSV file through the import tag list functionality described in the previous section. This is a fast way of looking at the same tags in Visplore that you just had in PI Vision.

How to export CSVs from PI Vision is described here: https://docs.osisoft.com/en-US/bundle/pi-vision/page/export-data-from-a-display.html

Note: Visplore currently only imports the tag list. In future versions, it may also read in the time period from the CSV, in order to produce the same graph as you just had in PI Vision.





Setting up operational dashboards on live data

PI System usually contains fresh and up-to-date live data. Visplore allows to create analysis dashboards that work with this latest data. These dashboards can be used easily to monitor the latest production or quality data without any further setup effort. Furthermore, these dashboards can be shared among multiple users. Setup an operational dashboard on live data as follows:

Import your data using the PI System as described in the above sections. To see the latest data, you may want to use a relative time interval (e.g. "last 24 hours" or "last 7 days").

Configure your visualizations as needed.

Save your analysis as a .visplore file by clicking Save icon. Use the checkbox "Keep link to data source" when saving your analysis, as seen below. See the chapter Saving and loading the analysis for details.

Use checkbox Keep link to data source

Optionally, share this file with other users. Loading such an analysis (either by double-clicking on the .visplore file or through the welcome dialog) allows you to load the most recent data from now or the most recent data from when the file was saved.


Note: When sharing a .visplore file with other users, they need to have the PI System configured in Visplore, too.

When your database schema changes, it usually results in a different data table. In this case, it might happen that out-of-date .visplore files throw a warning or do not load at all. In this case, you can try to import your data through the PI Import dialog first, and then apply the old .visplore file and select "apply to current data" when asked. Now save your analysis with a new file name, again with the "Keep link to data source" option.

Now you can perform routine analysis on your live data on a regular basis, thus operationalizing your analysis.

If you have questions about this, please get in touch with us via Questions and Feedback. We are happy to provide you with details!





Changing the time interval and adding tags later on

You can add tags to your analysis even after you have imported the data into Visplore.

Click the blue PI icon in the top toolbar of Visplore There, you can adjust the time period later on, which triggers a re-import from the PI server, but keeps all of the analysis as it just was. This is very important for applying an analysis to the newest data later on. E.g. loading a Visplore file with an analysis, then applying it to a new time interval using this feature. When using relative time intervals, it's also possible to set an auto-update interval here, e.g. every 1 minute or every 10 minutes. This is useful for setting up a screen that always shows the newest data.

To add new tags, click “Add tags from PI” button.

Then, click on "Add for import" and select the new tags you would like to import.


Note: if the initial import method was via tag search / Asset Framework, adding tags later on will only be possible through the same method.

Note: the "Data points to import" dialog, where you see the list of imported tags, also allows you to look up the list of imported tags later on, during the analysis. You can even export the list by pressing "CTRL + C" while in this dialog, and then paste it from the clipboard into another tool (e.g. Notepad). In the same way, you can press "CTRL + V" to paste a list of full tag paths into this dialog, coming from another tool.





Frequently asked questions

Where can I see / export the list of imported tags later on?

Can I import multiple time periods at once?

Can I import PI event frames?

Can I set up a live screen that always shows the newest PI data?

Can I fully automate the analysis?

Does Visplore incur a constant load on the PI server?

Where do the credentials for the PI connection come from? Can I use credentials from active directory?





Troubleshooting

Establishing the initial connection:

Troubleshooting PI Tag Search:

If the assets you expect are not showing up when searching by Asset Framework: