310 likes | 486 Views
Universal Data Adapter. Ray Verhoeff. Agenda. Features and Benefits How does it work? Building UDA points Systems supported Deploying UDA Writing a COM Connector. Client Applications. PI Server. PI-UDA. COM. TCP / IP. PI Interfaces. DCS / PLC & Other Data Sources. UDA Architecture.
E N D
Universal Data Adapter Ray Verhoeff
Agenda • Features and Benefits • How does it work? • Building UDA points • Systems supported • Deploying UDA • Writing a COM Connector
Client Applications PI Server PI-UDA COM TCP / IP PI Interfaces DCS / PLC & Other Data Sources UDA Architecture PIArchive COM Connectors Foreign Historians
Supports all client software Any PI-API and PI-SDK application, including yours Client Applications
Supports all interfaces as long as foreign data system can support insert of data Interfaces
Base PI NetMgr Snapshot Archive How does it work? Client Connections
Snapshot from PI Request PI NetMgr Response RPC Call Snapshot RPC Response Snapshot Array
Snapshot from UDA Request PI NetMgr Response RPC Call Snapshot RPC Response COM call Return Data COMConnector Foreign Data System
COM Connector IPIUDAPointConnector COM Object IPIUDASnapshotConnector IPIUDAHistoryConnector Foreign API Foreign Data System
Three identifying point attributes uda_progid String Name of COM object uda_strmap String uda_lmap Integer Defining UDA Points
Two point attributes insufficient? Developers are free to define additional attributes Use PI-SDK or PI-API to “call back” into PI COM Connector provided with “connect back” information name of system and TCP/IP port Defining UDA Points
Currently, build points using available PI tools piconfig Tag Configurator Honeywell PHD “udaphdbuild” utility Point Building
New product to synchronize PI and UDA databases with DCS database edit, delete, create Auto Point Sync
Three Modules GUI to configure rules & settings Sync Engine to monitor DCS for changes APS Connector to get DCS database information (DCS specific) Communication between three modules is based on COM APS Runs on NT Auto Point Sync
APS Connectors • APS Connectors implemented on NT • Vendor API on NT • Vendor API on VMS & UNIX • DCE RPC
APS Connectors • Fisher-Rosemount CHIP • OSI PItoPI • Honeywell PHD • NT-based interfaces first
APS Future • Initial release synchronizes existing interface points (edit, delete) • Second release provides point creation • APS development will be integrated with standard interface development
APS can monitor Foreign System Create new UDA mapped points APS-defined interface could be exposed by COM Connector Point Building for UDA
UDA can host “native” points Calculated points Batch points Alarm points Hybrid Systems
Honeywell PHD Microsoft OLE DB Aspen Tech CIMIO IP/21, InfoPlus, InfoPlusX Aspen Tech CIM/21 ABB Enterprise Historian OSI-provided COM Connectors
Foxboro Historian Westinghouse Historian Wonderware Westinghouse Enterprise Process Historian Possible COM Connectors
Deployment - 1 UDA UDA PHD “PointX” PointX PHD sees 1 “client” Client connections
Deployment - 2 UDAs UDA “PointX” Client connections PHD PointX UDA PHD sees 2 “clients” “PointX” Client connections
Deployment - “n” UDAs UDA UDA UDA UDA PHD UDA PHD sees n “clients” UDA UDA
Situation: Many clients call for a snapshot of a single point Does this mean many calls to the COM Connector? Multiple Snapshot Calls
Snapshot subsystem signs up for exceptions in the Connector Exceptions received from the Connector are stored in PI’s snapshot The multiple client calls are resolved in the PI snapshot Multiple Snapshot Calls
COM object written to OSI specifications Only software component coded to interact with foreign data system Spec will be published enable you to build COM Connectors to proprietary data systems Building a COM Connector
You will be expected to implement: get snapshot put snapshot get archive values compressed interpolated timed plottable Building a COM Connector
You will be expected to implement: Sign-up/unsign-up for exceptions get exceptions Building a COM Connector
Buildable using C++, VB uses COM Variant data types PI coerces result into PI internal data type Exception: PI Digital Tags COM Connector responsible for translating foreign string to Digital code Building a COM Connector