cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Choose Language Hide Translation Bar
MES data retrieval add-in - Aspentech IP.21 and Osisoft PI (Aveva)
CAPEGA
Level III

This add-in automates data extraction tasks from Aspentech IP.21 and Osisoft PI (Aveva) historians.

This way, you can use JMP to diagnose manufacturing problems and monitor several tags daily and weekly. See our review for more industrial data science applications.

 

If you would like JMP to support historians natively, give it a thumbs up in the wishlist.

 

Requirements

  • JMP v15 or higher
  • Aspen Manufacturing Suite (Aspen InfoPlus.21®) and its ODBC driver.
  • OSIsoft PI Client Tools (PI Process Book) and its OLEDB driver.
  • Access to the server (via Window’s active directory) 
  • Be connected to your enterprise network (usually VPN). 

 

Functionalities

CAPEGA_0-1662454430600.png

 

The interface allows users to:

  1. Select a server from a server list or manual input (edit server address) 
  2. Find tags showing them in a table using either tag name or description
  3. Add selected tags or paste tag names when copied from a spreadsheet
  4. Filter by start and end date (now and 24 h earlier by default)
  5. Select the extraction type (interpolated, average and actual values)
  6. Select the extraction period (10 minutes by default)  

 

The extraction is done tag by tag with a high limit of rows (100,000) per tag to not saturate the server.

You can check the log to track the progress of the data extraction. It should be fast enough for most cases unless limited by connectivity speed (e.g., VPN). Please notify in advance your OT/IT team if you are planning for massive data extractions.

After you extract data for both IP21/PI servers, you can UPDATE, REFRESH, and ADD new tags to the table with one click.

CAPEGA_1-1662454430604.png

 

 

The timestamp in UTC format (TS_UTC column) will be used, so keep it in your table. Likewise, if you want to change the names of your tag columns, we recommend creating new columns using formulas to refer to them.

 

What’s the difference between update() and refresh()?

Both will automatically obtain recent data from MES. 

  • UPDATE increments the table size (adding new rows below)
  • REFRESH keeps the same table size (updating first and then deleting old data from the top, so it maintains the number of rows).

Use update() to keep track of all new and old data.

 

How can I organize all the tags (columns) after the extraction?

You can easily group and ungroup the tags with our Column Organizer add-in 

CAPEGA_2-1662454430607.png

 

License

This add-in is open-source (BSD clause 3). The code is available in the GitHub repository.

https://github.com/industrial-data/JMP-MES-connector

 

Serverlist

If you have a list of servers, you can load it using the example provided on GitHub. Notice the “MES_serverlist.csv” should have “;” instead of “,” to work.

To have as a new default your own server list, change the address in the GUI editor within the source code. 

 

Creating your add-in

You can modify the source code and GUI at your will.  The requisite is to keep the specific ID as “MES_Addin”. The steps to go from source code to add-in can be seen below.

CAPEGA_3-1662454430603.png

 

Roadmap

We have several improvements in mind. 

  • Code refactoring (IP21/PI data steps as external functions to avoid code duplication).
  • Migrate to RestAPI authentication
  • Add filters by tag value (e.g., product grade)
  • Add more extraction options  

 Meanwhile, suggestions, issues, and pull requests are more than welcome.

If you are only using PI, you should check a similar add-in with some of these features already developed.

Aveva/OSISoft PI Tools from @ih 

https://community.jmp.com/t5/JMP-Add-Ins/Aveva-OSISoft-PI-Tools/ta-p/224525