Skip to main content

OSIsoft PI System™

Connect to OSIsoft PI System™ for industrial data collection and visualization using OIBus with the embedded PI driver in OIBus Agent.

System Requirements
  • OIBus Agent must be installed on a Windows machine
  • Can be installed on PI Server machine or separate machine with PI SDK configured

Connection Settings

SettingDescriptionDefault ValueNotes
Remote agent URLAgent endpoint (e.g., http://host:2224)-Required for all connections
Retry intervalTime (ms) to wait before retrying connection10000Recommended: 5000-15000ms

Throttling Settings

You can optimize data requests using throttling configurations. These settings help manage large data intervals and network conditions effectively.

Key Throttling Parameters

SettingDescriptionData TypeExample Value
Max read intervalMaximum duration (in seconds) for each data request interval. Larger intervals are automatically divided into smaller chunks not exceeding this value.Seconds3600
Read delayDelay (in milliseconds) between consecutive data requests. Helps prevent server overload.Milliseconds1000
OverlapTime overlap (in milliseconds) between consecutive queries to ensure data continuity. This value is subtracted from the @StartTime of the next query.Milliseconds60000

How Throttling Works

  1. Interval Division:
  • Large time ranges are automatically split into smaller intervals
  • Each sub-interval does not exceed the Max read interval duration
  • Example: A 24-hour request with Max read interval = 3600 (1 hour) will be split into 24 separate 1-hour requests
  1. Request Timing:
  • The Read delay introduces a pause between consecutive requests
  • Helps manage server load and prevents rate limiting
  • Particularly useful during network instability or when querying large datasets
  1. Data Continuity:
  • The Overlap setting ensures no gaps in your data
  • Creates a time buffer between consecutive queries
  • Example: With Overlap = 60000 (1 minute), each query will include 1 minute of overlapping data with the previous query
Overlap Functionality

The overlap setting modifies the @StartTime of each query by subtracting the overlap value from the calculated start time. This adjustment applies to the entire query range, not to individual sub-intervals when large requests are split into smaller chunks.

This functionality is particularly useful when:

  • New data is ingested after previous queries have executed
  • You need to account for potential ingestion delays in the source system

Example: With overlap=60000 (1 minute), a query for the interval [10:00-11:00] will actually request [9:59-11:00], ensuring capture of any late-arriving data from the previous time period.

ScenarioMax read intervalRead delayOverlap
Stable network, small datasets3600 (1 hour)5000 (no overlap)
Unstable network1800 (30 min)20000 (no overlap)
Large historical retrievals7200 (2 hours)10000 (no overlap)
Real-time with occasional gaps900 (15 min)20015000 (15 sec)

Item Configuration

Point Access Methods

SettingDescriptionExample Value
TypeAccess method: pointId (single point) or pointQuery (multiple points)pointId or pointQuery
Point IDFully qualified point ID (without server name)\\CDT158\SINUSOID
Point QueryQuery selector for multiple points (see PI Point Query Syntax)Name:='SINUSOID'
Reference Names
  • For pointId: Item name serves as reference in JSON payloads
  • For pointQuery: PI name is used as reference

OSIsoft PI SDK Configuration

Installation Requirements

  1. Install PI SDK on agent machine
  2. During installation, specify default data server
  3. If installing remotely:
  • PI SDK must be properly configured
  • PI System Access (PSA) must be installed

User Configuration

  1. Create domain user account (accessible from both machines)
  • If domain doesn't exist, create identical local users with same password
  1. Configure OIBus Agent service to run as this user

Trust Configuration

  1. Open PI System Management Tools
  2. Navigate to Mapping & TrustsTrusts tab
  3. Create new trust with:
  • OIBus Agent machine IP and Net Mask
  • Domain (if applicable)
  • PI Identity to connect with

Mapping Configuration

  1. In PI System Management Tools
  2. Navigate to Mapping & TrustsMappings tab
  3. Create new mapping with:
  • OIBus Agent service user
  • PI Identity from trust configuration
Log Access

View system logs in PI System Management Tools: OperationMessages Logs

Configuration Screenshots

  1. SDK Installation: PI SDK installation Specify default data server during installation

  2. Trust Configuration: PI SDK add trust Configure trust for agent machine

  3. Trust List: PI SDK list trust Verified trust configuration

  4. Mapping Creation: PI SDK add mapping Map agent user to PI identity

  5. Mapping List: PI SDK list trust Verified user mapping